Skip to main content

Cancel delivery

Cancels a delivery any time before the package is picked up — while it is still in ALLOCATING, PENDING_PICKUP, or PICKING_UP. Once the package has been picked up (PENDING_DELIVERY onward), provider-side cancellation is no longer allowed.

DEL/v1/deliveries/{deliveryID}

Headers

Authorizationstringrequired
Bearer token.

Parameters

deliveryIDstringrequired
Path parameter. The Dash-issued id.
notesstringoptional
Optional body field — reason for cancellation, surfaced to the Dash ops team.

Eligible statuses

Provider-side cancellation is allowed from any status up to and including PICKING_UP — i.e. any time before the package is in the driver's hands:

  • ALLOCATING — no driver assigned yet
  • PENDING_PICKUP — driver assigned, has not started moving
  • PICKING_UP — driver is on the way to the pickup point but hasn't collected the package yet

The cut-off is pickup, not driver assignment. The moment the driver collects the package the delivery moves to PENDING_DELIVERY (pickupAt is set, PICKUP_PROOF captured) and cancellation is closed — a DELETE from PENDING_DELIVERY, IN_DELIVERY, or any terminal state returns a 409. Only the provider can call DELETE; Dash drivers cannot cancel on your behalf.

Error responses

404Pengantaran tidak ditemukan
409Perubahan status antaran tidak dapat dilakukan. — delivery is already in a terminal state.
409Pengantaran sudah diambil — package already picked up (PENDING_DELIVERY / IN_DELIVERY).