Most list endpoints use cursor pagination with:
- request:
limit,cursor - response:
before,after,limit
Basic Pattern
const page1 = await client.event.list({ limit: 20 });
const page2 = await client.event.list({
limit: 20,
cursor: page1.after ?? undefined,
});
after points forward. before is for reverse navigation when supported by the
endpoint implementation.
Search-Backed Mode
For many resources, sending query switches to search-backed pagination instead of
plain DynamoDB reads.
Examples:
event.list({ query: "festival" })order.list({ query: "john doe" })ticket.list({ query: "jane" })
Endpoint-Specific Notes
tickets.listrequires at least one of:promoterId,eventId,customerId, ororderId.orders.listsupportsmine: truefor current-user order views.events.listsupports advanced filters (visibility,genres,categories, geo, date range).
Good Defaults
- Start with
limit: 20. - Persist cursors in UI state for back/forward pagination.
- Keep filters stable between page fetches.
- Treat cursors as opaque values.