List Orders
GET/api/woo-commerce/:integration_instance/orders
List WooCommerce orders for an integration instance.
Any valid API token can call this endpoint — no specific scope required. Manage tokens.
Authentication: Requires Bearer token.
Quick Filters:
- filter[search] (string, optional) — matches order number or WooCommerce order ID
- filter[order_status] (string, optional) — exact status: pending, processing, on-hold, completed, cancelled, refunded, failed ('all' is a no-op)
- filter[archived_status] (string, optional) — 'active' (default) or 'archived'
- filter[has_sku_order] (string, optional) — 'true' for orders linked to a SKU.io sales order, 'false' for unlinked
Advanced Filters (filter_groups): Base64-encoded JSON tree with and/or conjunctions and nested groups.
- Text columns: number — operators: is, is_not, contains, does_not_contain, starts_with, ends_with, is_one_of, is_not_one_of, is_empty, is_not_empty
- Numeric columns: total, total_tax — operators: is, is_not, greater_than, less_than, greater_than_or_equal, less_than_or_equal, between, is_one_of, is_empty, is_not_empty
- Date columns: date_created_gmt, created_at, updated_at — operators: is, is_not, before, after, on_or_before, on_or_after, between, today, yesterday, past_week, past_month, past_year, past_days, days_ago, is_empty, is_not_empty Unregistered filter columns return HTTP 400.
Sorting: sort=field or sort=-field (descending). Allowed sorts: id, woo_commerce_id, number, status, currency, date_created_gmt, total, total_tax, created_at, updated_at. Default: -id.
Pagination: page (default 1), per_page (default 10). Standard paginator response with data, current_page, last_page, per_page, total, from, to.
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 — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
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.