Skip to main content

errand_get_order

Fetches the details of a single errand order. Open orders (dispatched but not yet settled) have their status synced in real time from the delivery provider, adding status_desc / timeline / rider fields to the response; settled orders return only the local record. An open-order lookup takes roughly 0.8 seconds; a settled one, under 0.1 seconds.
This page is the single source of truth for errand order fields: the response from a successful errand_create, an errand_get_order lookup, and each entry in errand_list_orders all use exactly the same field set (errand_list_orders entries simply omit the fields that only appear on open orders). Once you understand the field table here, the other two follow the same shape.
total_weight_g / person_direct / insured are null for orders placed before 2026-09-09 — meaning they weren’t recorded at the time, not that the actual value is false or zero.
The sender’s and recipient’s phone numbers are only returned masked (from.contact_phone_masked / to.contact_phone_masked, e.g. 138****5678) and cannot be dialed directly. Reordering from this order’s data requires the user to re-enter the full phone number. The rider’s phone is a separate matter — the rider.phone this tool returns is the full work number and can be dialed directly to reach the rider (the same number as errand_get_rider).

Parameters

Returns

The amount fields (quote_fee / actual_fee / tip_fee / cancel_fee / goods_total_amount_fen) are all in cents (integer); weight is in grams; coordinates use the AMap GCJ-02 coordinate system.

Order status enum (status)

Payment status enum (pay_status)

Error Codes

Example Call