Orders
Orders
The core of the Grasshopper platform. Orders are the entities you push from your retail/OMS system into the network for last-mile delivery.
Endpoints
GET /api/orders/ List orders Paginated, filterable list of orders in your shipper scope. POST /api/orders/ Create order Push a new order into Grasshopper for fulfillment. GET /api/orders/{order_id}/ Retrieve order Fetch a single order with full details. PATCH /api/orders/{order_id}/ Update order Partial update of customer info, notes, or schedule. POST /api/orders/{order_id}/cancel/ Cancel order Cancel an order before it's loaded for delivery.The order object
Every endpoint returns or accepts variants of the order object. Top-level fields:
order_id
Grasshopper's internal order ID. Returned by the API; not provided on create.
ref_order_number
Your internal PO or reference number. Used for cross-referencing back to your system.
service_level
Service level code.
wgrocparocprocthrcurbb2bblnkexpprclstatus
Numeric order status. See Order statuses.
customer
Consignee details. Includes first_name, last_name, email, phone1, address.
line_items
Array of items in the order. At least one required.
assets
Images and documents attached to the order. Populated after delivery (POD, signatures).
notes
Notes attached to the order.
delivery
Scheduling state and delivery date.
tracking
Order-level tracking events. See Tracking events.
created_at
Timestamp when the order was created.
updated_at
Timestamp of the last modification.
Typical lifecycle
- POST /api/orders/ — you create the order, status becomes
2(Pending Pickup) or1(Pending Arrival) - Order moves through hub network → status updates to
10(In transit), then3(Received) or15(Consolidated) - Customer schedules delivery →
delivery.statusmoves0 → 1 → 2 → 3 - Day of delivery → status
4(Out for Delivery), then terminal5(Delivered) or20(Failed) - POD asset attached,
ELECTRONIC_POD_SENTwebhook fires