Hold shipments
Changed onHolds one or more shipments until a given date. A shipment on hold has the on_hold status, and you can't purchase a label for it while it's on hold. On the hold_until_date, the shipment is released automatically and returns to the pending status. You can hold up to 500 shipments at once.
hold_until_date is a date-only value: any time component you send is ignored, and the date must be later than today.
Shipments that cannot be held — because they are not found, are cancelled, or have a purchased label — are reported in errors, and the remaining shipments are still held. If only some of the shipments were held, the response status is 207. If none of them could be held, the response status is 404 when at least one shipment was not found, or 400 otherwise, and shipment_ids is empty.
To hold a single shipment, use Hold a shipment.
Request
- Base URL: https://api.shipengine.com
- URL: https://api.shipengine.com/v1/shipments/hold
- Auth: API key in header API-Key
Request body
Example request
{
"shipment_ids": [
"se-202902255",
"se-202902256"
],
"hold_until_date": "2026-10-15"
}Response
The request was a success.
Example response
{
"shipment_ids": [
"se-202902255",
"se-202902256"
],
"hold_until_date": "2026-10-15T00:00:00Z",
"errors": [
{
"error_source": "shipengine",
"error_type": "validation",
"error_code": "invalid_field_value",
"message": "Body of request cannot be null.",
"carrier_id": "se-28529731",
"carrier_code": "dhl_express",
"field_name": "shipment.ship_to.phone_number"
}
],
"request_id": "aa3d8e8e-462b-4476-9618-72db7f7b7009"
}Changes
- ▲
the
/request property's minLength was increased from0to1 - ▲
added the pattern
^se(-[a-z0-9]+)+$to the request property/ - ▲
the
/request property type changed from no type tostring - ▲
the
/response's property type changed from no type toobjectfor status - ▲
the
/response's property type changed from no type toobjectfor status - ▲
the
/response's property type changed from no type toobjectfor status - ▲
the
/response's property type changed from no type toobjectfor status - ▲
the
/response's property type changed from no type toobjectfor status - ▲
the
/response's property type changed from no type tostringfor status - ▲
the
/response's property type changed from no type tostringfor status - ●
removed from the
/request propertyallOflist - ●
the
/request property's maxLength was set to25 - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
added the optional property
//to the response with the status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
removed from the
/response propertyallOflist for the response status - ○
the
/response's property pattern^se(-[a-z0-9]+)+$was added for the status - ○
the
/response's property pattern^se(-[a-z0-9]+)+$was added for the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status - ○
added the required property
//to the response with the status
- ▲
- ○
endpoint added
- ○