API ReferenceSales
Sales report
GET /rest/v1/sales
Totals, a time series and the per-channel split, one block per currency. Default range = the last 30 days; at most 2 years.
Required scope: orders:read.
Authorization
apiKey AuthorizationBearer <token>
Authorization: Bearer nbl_live_... (or nbl_test_... for test mode). Test-mode writes are validated and simulated but never persisted and never touch channels; simulated results are marked simulated.
In: header
Query Parameters
from?string
Format
date-timeto?string
Format
date-timeinterval?string
Default
"day"Value in
- "day"
- "week"
- "month"
channel_account_id?string
product_id?string
currency?string
Response Body
application/json
application/json
curl -X GET "https://example.com/sales"{ "object": "sales_report", "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z", "interval": "day", "currencies": [ { "currency": "USD", "totals": { "orders": 0, "units": 0, "revenue": "37.50" }, "series": [ { "orders": 0, "units": 0, "revenue": "37.50", "period": "2026-10-06" } ], "by_channel": [ { "orders": 0, "units": 0, "revenue": "37.50", "channel_account_id": "string", "channel": "etsy" } ] } ]}Last updated on October 18, 2026
Need help?
Email us and a human replies, usually within one business day.