Response structure
Every paginated response includes these fields:Parameters
integer
default:"100"
Number of results per page. Minimum 1, maximum 500.
string
Pass the
next_cursor value from the previous response unchanged to fetch the next page.Paginated endpoints
Unpaginated list endpoints
These return a list envelope but always deliver the full set in a single response. Their sets are small and bounded, so there is nothing to page through: They do not acceptlimit or starting_after, and their envelopes carry only object, url, and data. There is no has_more and no next_cursor field at all, so a generic pagination helper must treat an absent has_more as “this is the only page” rather than reading it as false off an object that never had it.
Endpoints with no list envelope
GET /team is not a list endpoint, even though it returns collections. It returns a single team document whose members and invitations arrays sit directly on the response:
object: "list", no url, and no data, so a generic helper that reaches for response.data will read undefined rather than an empty page. Branch on object before treating any response as a list. Both arrays are always present and are [] when empty, never null, and neither accepts limit or starting_after.
Example
Fetch the first page of transactions:has_more is true, use next_cursor to get the next page: