Get Sales Order Details
GET/api/sales-orders/:salesOrder
Returns the complete order graph for a single sales order: header fields, line items with inventory and cost-of-goods breakdowns, fulfillments (with shipment lines and tracking), payments, notes, financial lines, discounts, addresses, linked purchase orders, and backorder coverage dates.
orders:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
This is the full detail endpoint. For a lighter order summary, use GET /api/v2/sales-orders/{id} instead.
Authentication: Requires Bearer token.
Response notes:
item_infocontains the order lines, each with allocation/fulfillment quantities, product info, warehouse, per-warehouse inventory, and acogsobject aggregating the inventory cost layers consumed by the line.fulfillmentcontains the order's shipments, each with its shipment lines, tracking, warehouse, and provider sync timestamps.sales_order_shipping_address/sales_order_billing_addressare the order's own address snapshots (they survive later edits to the underlying address records).customer_name,customer_email,customer_company,customer_phonerender the order's buyer snapshot; channel orders without a stored customer record still populate these.- Monetary totals (
total,product_total,tax_total,discount_total, etc.) are in the order currency.
Path parameters:
- salesOrder (required): Sales order ID.
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.