Confirm pending quote (create shipment)

View as Markdown
Confirm a pending parcel quote. Pass a `rate_id` from the quote's `rates[]` when rates are present. - **Export air** — buys the selected carrier rate and returns `tracking_code` and `label_url`. - **Import air** — confirms the SendHQ warehouse-intake quote and moves it to `booked`; no `rate_id` or carrier label is required. - **Ocean** — confirms the single SendHQ `Ocean Freight` estimate and moves the quote to `booked`; no carrier label is created. Returns `QUOTE_RATE_OUTDATED` when the `rate_id` is older than one hour — `GET` the quote to refresh rates first.

Authentication

X-Api-Keystring
API Key authentication via header

Path parameters

idstringRequired
Parcel quote token

Request

This endpoint expects an object.
rate_idstringOptional
Rate ID from the quote's rates array. Required when the quote returned rates.

Response

OK — shipment created

parcel_quote_idstringOptional
statusenumOptional
sourcestringOptional
directionstringOptional
referencestringOptional
rateslist of objectsOptional
senderobjectOptional
recipientobjectOptional
packageobjectOptional

Air weight/dimensions, or ocean packages[] nested under package in responses.

cargo_volumestringOptional

Human-readable cargo summary, e.g. 2 x 40' (ocean) or 5 kg (air).

origin_detailsobjectOptional
dest_detailsobjectOptional
parcel_detailsobjectOptional
tracking_codestring or nullOptional
label_urlstring or nullOptional
selected_rateobject or nullOptional
tracker_idstring or nullOptional
purchased_atdatetime or nullOptional

Legacy booking timestamp when status is booked. Same moment as booked_at. Not payment confirmation for ocean/import intake quotes.

booked_atdatetime or nullOptional

When the quote became booked. Null while pending.

estimated_pricedouble or nullOptional

NGN total from selected_rate.rate. For ocean/import intake, provisional until warehouse receive; customer payment is invoiced separately.

created_atdatetimeOptional

Errors

401
Unauthorized Error
422
Unprocessable Entity Error