Void a shipment¶
Shipments
Mutation
Cancel a shipment before it leaves the origin facility. Voids release reserved inventory, stop label scanning, and prevent accidental pickups.
Verb
DELETE
Allowed window
Until first hub scan
Side effects
Label revoked · billing reversed
Preconditions¶
- Shipment must be in
CREATEDorREADY_FOR_PICKUPstatus. - Any outstanding pickup requests are auto-cancelled.
- Attempting to void after the first scan returns
409 Conflict.
Endpoint overview¶
DELETE
Path param
URL: `{{ url }}/api/v2/shipments/{{ shipmentId }}/void/`
- Requires `shipment.write` scope.
- No request body—only the URL path and auth header.
- Idempotent: repeating the call on an already voided shipment returns the same payload.
Request example¶
DELETE /api/v2/shipments/E9C5308D/void/ HTTP/1.1
Host: {{ url }}
Authorization: Bearer {{ token }}
Accept: application/json
Success response¶
{
"status": 200,
"message": "shipment has been voided"
}
Response fields¶
| Field | Description |
|---|---|
status |
HTTP-style status code indicating success (200). |
message |
Human-readable confirmation. |
Next step: After a successful void, delete any cached labels and notify the customer that the shipment will not be collected.