Get delivery details
Returns the current state of an in-progress or completed delivery — status, courier, quote, timeline history, and POD media.
The legacy path GET /v1/deliveries/{deliveryID} is deprecated (21 May 2026) and will be obsoleted on 21 November 2026. New integrations must use GET /express/v1/deliveries/{deliveryID}.
Headers
Parameters
DEL-EXP-20260805-0001.This response carries the same status vocabulary and courier / media / failure fields as the v2 webhook payload. Poll it to recover state after a missed webhook — but treat webhooks as the primary channel; polling won't tell you about transitions you slept through.
Response envelope
Every successful response is wrapped in a common envelope:
"Success" on a 200 OK.Response fields
CASHLESS, COD, CASH, or QRIS.ARRIVED_AT_PICKUP_POINT / ARRIVED_AT_DESTINATION, return statuses PENDING_RETURN / IN_RETURN / FAILED_IN_RETURN / ON_HOLD / RETURNED, the write-off status DISPOSED, and failure statuses FAILED_PICKUP / FAILED_DELIVERY / FAILED.null in sandbox.null for a driver with no photo on file — render a fallback rather than a broken image.type, url, and createdAt. Empty until the first proof is captured. See Media types below.status, createdAt, created_at (formatted), notes, and reasonCode.category, type, and name of the service.code and symbol, e.g. IDR / Rp.pickup and dropoff estimated timestamps (ISO 8601).address, coordinates (latitude, longitude), and notes.address, coordinates, and notes.name, type, description, quantity, weight, length, width, height (dimensions null if not provided). type is one of REGULAR, SPECIAL, SENSITIVE, HIGH_VALUE, OTHER — REGULAR when it wasn't set on create. Deliveries created before type was introduced return null."spouse". Populated alongside actualRecipientName.text, type (e.g. NOTE), and url.FAILED_PICKUP / FAILED_DELIVERY / FAILED and CANCELLED — contains failedReason string. null otherwise, including on FAILED_IN_RETURN — read that failure's reason from its timelines[] entry instead.amount when payment method involves cash collection. null otherwise.null before pickup and on FAILED_PICKUP."On Time", "Late", or "Waiting" — SLA status of the pickup leg."On Time", "Late", or "Waiting" — SLA status of the delivery leg.Media types
Changed in v2. The single FAILED_PROOF media type has been split into FAILED_PICKUP_PROOF / FAILED_DELIVERY_PROOF on the EXPRESS path. If you match on media type to render POD galleries, update that list.
State-by-state reference
| State | status | advanceInfo | recipient.actualRecipient* | completedAt | Typical media[].type |
|---|---|---|---|---|---|
| In Progress | IN_DELIVERY | null | null / null | "" | (empty) |
| Completed | COMPLETED | null | populated | timestamp | DELIVERY_PROOF |
| Failed | FAILED | { failedReason } | null / null | "" | FAILED_PROOF |
| Failed return | FAILED_IN_RETURN | null | null / null | "" | FAILED_RETURN_PROOF |
| On hold | ON_HOLD | null | null / null | "" | (carried over from the failed return) |
| Returned | RETURNED | null | populated | "" | RETURN_PROOF |
| Disposed | DISPOSED | null | null / null | "" | (carried over; no disposal proof type) |
Error responses
Pengantaran tidak ditemukan. — deliveryID doesn't exist for your workspace.