List Orders
GET/api/pinnacle/instances/:instance/orders
Paginated, filterable list of the orders registered with (or mirrored from) Pinnacle for this instance, each with its status, latest tracking event, pickup/delivery dates, piece count, shipment summary and links to the fulfillment order, sales order and fulfillment.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Every filter[<column>] parameter also accepts an operator suffix as filter[<column>.<operator>]=<value>; a bare filter[<column>]=<value> is treated as "is". List operators (is_one_of, is_not_one_of) take a comma-separated list; between takes two comma-separated bounds.
- Text columns support: contains, does_not_contain, is, is_not, is_one_of, is_not_one_of, starts_with, does_not_start_with, ends_with, does_not_end_with, is_empty, is_not_empty.
- Numeric columns support: is, is_not, is_one_of, is_not_one_of, greater_than, less_than, greater_than_or_equal, less_than_or_equal, between, is_empty, is_not_empty.
- Date-time columns support: is, is_not, before, after, on_or_before, on_or_after, between, today, yesterday, tomorrow, past_week, past_month, past_year, next_week, next_month, next_year, days_ago, days_from_now, past_days, next_days, is_empty, is_not_empty. Dates are Y-m-d in the account timezone.
Instead of individual filter[...] params you can send filter_groups: a base64-encoded JSON tree of AND/OR groups, e.g. {"conjunction":"and","children":[{"type":"condition","condition":{"column":"status","operator":"is_one_of","value":["picked_up","at_hub"]}}]}. The same columns and operators are available.
filter[search] matches id exactly and tracking_number, pon, client_ref1, client_ref2 and reference partially.
Allowed sorts: id, tracking_number, pon, client_ref1, client_ref2, reference, status, summary_status, last_event_code, last_event_at, delivery_type, pickup_type, has_exception, scheduled_pickup_at, actual_pickup_at, scheduled_delivery_at, actual_delivery_at, registered_at, last_synced_at, sku_fulfillment_order_id, created_at, updated_at. Default sort is -id (newest first).
per_page defaults to 10.
Authentication: requires a Bearer token (Personal Access Token).
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not Found
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.