Skip to main content

Get delivery details

Returns the current state of an in-progress or completed delivery — status, courier, quote, timeline history, and POD media.

GET/express/v1/deliveries/{deliveryID}

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

Authorizationstringrequired
Bearer token.

Parameters

deliveryIDstringrequired
Path parameter. The Dash-issued id from Create Delivery, e.g. 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:

statusstringalways
"Success" on a 200 OK.
messagestringalways
Human-readable result message.
requestIdstringalways
Echo of the request trace ID.
meta.requestIDstringalways
Same as requestId.
meta.timestampdatetimealways
Server time the response was generated.
dataobjectalways
The delivery payload — see fields below.

Response fields

deliveryIDstringalways
Dash-issued delivery id.
providerOrderIDstringalways
Your AWB / order reference, echoed from Create Delivery.
paymentMethodstringalways
CASHLESS, COD, CASH, or QRIS.
statusstringalways
Current status. Same vocabulary as the webhook — see Status reference. Includes checkpoint statuses 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.
invoiceNostringnullable
Internal invoice reference number.
trackingURLstringnullable
Live-tracking URL. Present in live mode; null in sandbox.
courierobjectnullable
Driver info. Null until a driver is assigned. Replaced wholesale on reassignment.
courier.namestringnullable
Driver display name.
courier.phonestringnullable
Driver phone number.
courier.vehiclePlateNumberstringnullable
Driver's vehicle plate. Sourced from metadata; falls back to bikeLicensePlate.
courier.profileImageUrlstringnullable
URL of the driver's profile photo. null for a driver with no photo on file — render a fallback rather than a broken image.
media[]arrayalways
POD entries. Each item has type, url, and createdAt. Empty until the first proof is captured. See Media types below.
timeline[]arrayalways
Ordered status history. Each entry contains status, createdAt, created_at (formatted), notes, and reasonCode.
quoteobjectalways
Service, pricing, distance, estimated timeline, origin/destination, and package rows.
quote.serviceobjectalways
category, type, and name of the service.
quote.currencyobjectalways
code and symbol, e.g. IDR / Rp.
quote.amountnumberalways
Fare in the smallest currency unit.
quote.distancenumberalways
Route distance in metres.
quote.estimatedTimelineobjectalways
pickup and dropoff estimated timestamps (ISO 8601).
quote.originobjectalways
Pickup location: address, coordinates (latitude, longitude), and notes.
quote.destinationobjectalways
Drop-off location: address, coordinates, and notes.
quote.packages[]arrayalways
Package rows as submitted. Each row has name, type, description, quantity, weight, length, width, height (dimensions null if not provided). type is one of REGULAR, SPECIAL, SENSITIVE, HIGH_VALUE, OTHERREGULAR when it wasn't set on create. Deliveries created before type was introduced return null.
senderobjectalways
Sender contact block, echoed.
sender.firstNamestringalways
sender.lastNamestringnullable
sender.companyNamestringnullable
sender.phonestringalways
recipientobjectalways
Recipient contact block, echoed.
recipient.firstNamestringalways
recipient.lastNamestringnullable
recipient.companyNamestringnullable
recipient.emailstringnullable
recipient.phonestringalways
recipient.actualRecipientNamestringnullable
Who actually signed for the package. Populated on COMPLETED — and on RETURNED, where it describes whoever accepted the return.
recipient.actualRecipientRelationstringnullable
Relation of the signer to the intended recipient, e.g. "spouse". Populated alongside actualRecipientName.
instructions[]arrayalways
Delivery instructions. Each entry has text, type (e.g. NOTE), and url.
advanceInfoobjectnullable
Failure detail object. Present on 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.
cashOnDeliveryobjectnullable
COD detail object. Contains amount when payment method involves cash collection. null otherwise.
additionalInfoanynullable
Reserved for future use. Currently null.
createdAtdatetimealways
When the delivery was created.
updatedAtdatetimealways
When the delivery record was last modified.
pickupAtdatetimenullable
When the driver collected the package. null before pickup and on FAILED_PICKUP.
completedAtdatetimenullable
Set on COMPLETED or RETURNED; empty string / null otherwise.
pickup_sla_statusstringalways
"On Time", "Late", or "Waiting" — SLA status of the pickup leg.
complete_sla_statusstringalways
"On Time", "Late", or "Waiting" — SLA status of the delivery leg.
delay_duration_minutesnumberalways
Total delay in minutes relative to the estimated timeline. 0 when on time.

Media types

PICKUP_PROOF
Photo captured by the driver at pickup. Present from PENDING_DELIVERY onward (EXPRESS only).
DELIVERY_PROOF
Handover photo. Present once status reaches COMPLETED.
FAILED_PICKUP_PROOF
Photo captured when the pickup leg failed. Present on FAILED_PICKUP (EXPRESS) or a pickup-phase FAILED (LOGISTIC).
FAILED_DELIVERY_PROOF
Photo captured when the delivery leg failed. Present on FAILED_DELIVERY (EXPRESS) or a delivery-phase FAILED (LOGISTIC).
FAILED_PROOF
Generic failure proof used when a single FAILED status is reported (LOGISTIC path or legacy).
FAILED_RETURN_PROOF
Photo captured when the return leg failed — the driver could not hand the package back. Present on FAILED_IN_RETURN.
RETURN_PROOF
Photo captured when the package was handed back to the sender. Present on RETURNED.

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

StatestatusadvanceInforecipient.actualRecipient*completedAtTypical media[].type
In ProgressIN_DELIVERYnullnull / null""(empty)
CompletedCOMPLETEDnullpopulatedtimestampDELIVERY_PROOF
FailedFAILED{ failedReason }null / null""FAILED_PROOF
Failed returnFAILED_IN_RETURNnullnull / null""FAILED_RETURN_PROOF
On holdON_HOLDnullnull / null""(carried over from the failed return)
ReturnedRETURNEDnullpopulated""RETURN_PROOF
DisposedDISPOSEDnullnull / null""(carried over; no disposal proof type)

Error responses

404Pengantaran tidak ditemukan. — deliveryID doesn't exist for your workspace.