Skip to main content
GET
List purchase history
The orders endpoint returns your purchase history, newest first, using keyset pagination. Filter by a time window and by status, then walk older pages by passing meta.next_cursor back as cursor. Each order carries a per-item breakdown with delivery status. Authentication required. Send your key as Authorization: Bearer csb_pub_....
A cancelled or failed order is always refunded — and the refund object is the receipt. An item can disappear from its source between the moment you read it and the moment we buy it; when that happens the order ends cancelled and the money is credited straight back, usually within seconds. Read refund.amount_usd / refund.refunded_at instead of inferring “refund pending” from the status. The full money trail lives at GET /v1/transactions.

Query parameters

integer
default:"50"
Results per page. Minimum 1, maximum 100.
integer
Only return orders created at or after this Unix timestamp (seconds).
integer
Only return orders created at or before this Unix timestamp (seconds).
string
Filter by order status. One of: completed, hold, delivering, pending, cancelled, failed.
string
Keyset cursor from a previous response’s meta.next_cursor. Pass it to fetch the next page.

Response fields

Order[]
required
Array of orders for this page.
object
required

Example request

Example response

Why an order failed

A failed or cancelled order says why in three fields. All three are null on every other status.
  • fail_reason — a code to branch on, from the table below.
  • fail_side — who has to act: recipient, seller, buyer or market.
  • fail_message — one English sentence saying what happened and what to do. Show it to a person; branch on fail_reason.
The list may grow. Treat a fail_reason you do not know as unavailable. The item-level return_reason is unchanged. A failed order, trimmed to the fields that matter here:

Error codes

Authorizations

Authorization
string
header
required

Send your key as a Bearer token on every request: Authorization: Bearer csb_pub_.... Generate keys in your CSBoard profile. Calls made with a key are metered only by that key's own limits — there is no per-IP limit on top — and every answer carries X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset and X-RateLimit-Bucket for the bucket the call spent. See Rate limits.

Query Parameters

limit
integer
default:50

Results per page. 1–100. Default 50.

Required range: 1 <= x <= 100
start_unix_time
integer

Only orders created at or after this Unix timestamp (seconds).

end_unix_time
integer

Only orders created at or before this Unix timestamp (seconds).

status
enum<string>

Filter by order status.

Available options:
completed,
hold,
delivering,
pending,
cancelled,
failed
cursor
string

Keyset cursor from a previous response's meta.next_cursor.

Response

A page of orders.

data
object[]
required
meta
object
required