Skip to main content
The Trassets Data API uses two pagination strategies depending on the endpoint type. Category endpoints support offset-based pagination, which is simple and predictable for dashboards and incremental fetches. Raw endpoints use cursor-based pagination, which stays stable even when the underlying data changes during a bulk export.

Category Endpoint Pagination

Category endpoints accept limit and offset query parameters. The API returns pagination metadata in response headers so you can build next and previous page links without parsing the response body.
integer
Total number of rows matching the query, ignoring limit and offset.
string
"true" or "false" — indicates whether more rows exist beyond the current page.
integer
The offset to use for the next page. Only present when X-Has-More is "true".
string
An opaque cursor for the next page. Present only when a full page was returned. You can pass this as the cursor query parameter on the next request instead of using offset.
This example fetches page 2 with an offset of 100:

Raw Endpoint Pagination

Raw endpoints use cursor-based pagination via the cursor query parameter. The cursor value comes from the next_cursor field in the response body. Cursors are stable under concurrent writes, so rows added or removed during a bulk export will not cause duplicates or gaps. The response body contains these fields:
array
The array of rows for the current page.
integer
Number of rows in the current page.
string | null
The cursor to pass for the next page. When null, all rows have been fetched.
integer
Total number of rows in the table.
The response also includes an X-Snapshot-At header with the ISO-8601 timestamp of the last successful sync for this table. This example fetches the first page and then uses the cursor to continue:
When next_cursor is null, the export is complete.
The maximum offset for category endpoints is 500,000. If you need to export more rows than that, switch to a raw endpoint or apply filters to reduce the result set.