Skip to main content
POST

Authorizations

Authorization
string
header
required

OAuth 2.0 client-credentials flow for external machine-to-machine integrations.

Headers

Idempotency-Key
string

Optional. Retry safety is handled for you: when this header is absent DropHub derives the key from the reference you already send — the order number on a shipment create, the shipment id on a cancel — scoped to your merchant account. Two calls naming the same order are treated as one submission and the second returns the original result. Send your own key only if you want to control the replay window yourself; an explicit key always wins.

Required string length: 16 - 128
Example:

"merchant-order-20260822-0001"

Body

application/json
reference
string
required

Merchant order/reference number and default idempotency key.

Required string length: 1 - 128
pickup
object
required

Use either a saved pickup code or a coordinate pin.

destination
object
required
recipient
object
required
parcel
object
codAmount
number<decimal>

Omit for prepaid shipments; currency is SAR.

Must be a multiple of 0.01
pickupWindow
object

Response

Minimal partner-safe shipment

id
string<uuid>
required
reference
string
required
status
enum<string>
required
Available options:
CREATED,
ASSIGNED,
PICKED_UP,
OUT_FOR_DELIVERY,
DELIVERED,
FAILED,
CANCELLED
trackingUrl
string<uri-reference>
required
createdAt
string<date-time>
required
version
integer<int64>
required
Required range: x >= 0
codAmount
number<decimal> | null
Required range: x >= 0