Pagination
Every list endpoint uses keyset (cursor) pagination. Results are ordered newest first, and each page tells you how to fetch the next one.
Request parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | integer 1–100 | 25 | How many items to return. |
cursor | string | — | The nextCursor value from the previous page. Omit it for the first page. |
Response shape
{
"items": [
{ "id": "...", "createdAt": "2026-10-16T09:30:00.000Z" }
],
"nextCursor": "MjAyNi0xMC0xNlQwOTozMDowMC4wMDBafDBiNjRmMWYwLciA..."
}
items— up tolimitrecords.nextCursor— an opaque string to pass ascursorfor the next page, ornullwhen there are no more results.
Treat the cursor as a black box: do not parse it, build it yourself, or store it long-term. Sending a value that Mulabbe did not issue returns 400 with invalid cursor. Keep any filters (such as state or channel) identical across the pages of one listing.
Because the cursor points at a fixed position (not a page number), rows created or deleted while you paginate never cause skipped or repeated items — new rows simply appear before your starting point.
Example: fetch everything
# First page
curl "https://api.<your-domain>/api/v1/orders?limit=100" \
-H "Authorization: Bearer wk_live_..."
# Next page, using the nextCursor from the previous response
curl "https://api.<your-domain>/api/v1/orders?limit=100&cursor=MjAyNi0xMC0..." \
-H "Authorization: Bearer wk_live_..."
The same loop in JavaScript:
async function allOrders(key) {
const orders = [];
let cursor = null;
do {
const url = new URL('https://api.<your-domain>/api/v1/orders');
url.searchParams.set('limit', '100');
if (cursor) url.searchParams.set('cursor', cursor);
const res = await fetch(url, { headers: { Authorization: `Bearer ${key}` } });
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const page = await res.json();
orders.push(...page.items);
cursor = page.nextCursor;
} while (cursor);
return orders;
}
Mind your key's rate limit when walking many pages: watch the RateLimit-Remaining header and slow down before you hit 429.