Update Shipment
Replaces a shipment. This can be used to correct a tracking number, or to record a cost once the carrier has billed for it.
The complete shipment must be passed. Any fields left out will be updated as blank.
Your API key, found under Store Settings on the API tab. This should be kept server-side.
Your store ID, found under Store Settings on the API tab.
Order Desk's internal order ID. This is not your source_id.
736745Order Desk's internal ID for the shipment.
44821Carrier-assigned tracking number. Use n/a if no tracking number is applicable.
1Z999AA10123456784Carrier code such as USPS or FedEx, when available.
UPSShipping service name, such as First Class International.
UPS GroundFinal shipment weight.
2.4Your cost to send the shipment.
9.5Current shipment status, used by the EasyPost webhook.
If omitted, Order Desk attempts to determine it from the tracking number format and carrier code.
The shipment was updated.
Either success or error.
Describes the result. Always present when an error occurs.
Time taken to process the request.
0.1524 secondsThe request was rejected. message names the problem.
Authentication failed. See the Authentication guide, and note that an invalid store ID blocks your store rather than simply failing the request.
No record matches that ID in your store.
You are sending too fast. Wait X-Retry-After seconds. See
the Rate Limits guide.
The request could not be completed.
curl "https://app.orderdesk.me/api/v2/orders/736745/shipments/44821" \
-X PUT \
-H "ORDERDESK-STORE-ID: your-store-id" \
-H "ORDERDESK-API-KEY: your-api-key" \
-H "Content-Type: application/json" \
-d '{"tracking_number": "1Z999AA10123456784", "carrier_code": "UPS", "shipment_method": "UPS 2nd Day Air", "weight": 2.4, "cost": 14.2}'
{
"status": "success",
"message": "Shipment Updated",
"execution_time": "0.1524 seconds"
}Last updated
Was this helpful?

