Skip to main content
V2 endpoints that return lists use cursor-based pagination. This approach is more reliable than offset pagination for large or frequently changing datasets, since a cursor tracks your exact position in the result set.

Parameters

Include these query parameters to page through results:
ParameterDescription
page[size]Number of results per page. Default: 20. Maximum: 100.
page[after]Cursor pointing to the start of the next page. Omit this parameter on your first request.

How It Works

When a response includes more results than fit on a single page, the response includes a links.next value containing a cursor. Pass the cursor from that value as page[after] in your next request.
  1. Make your first request:
    GET /2/teams/{teamSlug}/api-keys?page[size]=20
    
  2. Check the response for links.next:
    {
        "links": {
            "next": "/2/teams/my-team/api-keys?page[after]=eyxJjcmAVhdGVkX&page[size]=20"
        }
    }
    
  3. Pass the cursor from links.next as page[after] in your next request:
    GET /2/teams/{teamSlug}/api-keys?page[after]=eyxJjcmAVhdGVkX&page[size]=20
    
  4. Repeat until links.next is null, which indicates that you have reached the last page.

Working with Cursors

  • Cursors are opaque strings. Treat them as values to pass through, not as values to parse or construct.
  • Cursors are not guaranteed to be stable across sessions. Retrieve a fresh cursor for each pagination sequence.

Paginated Endpoints

The following V2 endpoints support pagination: