Making a Paginated Request
Use two query parameters to control the size and starting position of each page:limit— the number of records to return per request. Defaults to20; maximum is100.cursor— an opaque, base64-encoded string returned by the previous response. Omit this parameter to fetch the first page.
First page
Subsequent page using a cursor
Treat the cursor value as an opaque string — do not attempt to decode, modify, or construct cursor values manually. Their format may change without notice.
Pagination Response Envelope
All list endpoints return the same envelope structure: anitems array containing the resources for the current page, and a meta object with pagination state.
Paginated response envelope
array
requis
The array of resource objects for the current page. The schema of each object matches the single-resource response for that endpoint.
object
requis
Pagination metadata for the current response.
Filtering
Narrow list results by passing filter parameters asfilter[field]=value query strings. Multiple filters are applied with AND logic — a record must match all provided filters to be included.
Filter tasks by status and assignee
Filter high-priority tasks in a project
Sorting
Control the order of results with thesort query parameter. Pass a field name to sort ascending, or prefix the field name with - (a hyphen) to sort descending.
Tasks sorted by due date, most urgent first
Projects sorted by most recently updated
Not every field supports sorting on every resource type. If you supply an unsupported
sort field, the API returns a 400 Bad Request error with a message indicating which fields are sortable for that resource.Iterating Through All Pages
To retrieve every record in a collection, loop untilmeta.has_more is false. The example below fetches every task across all pages and collects them into a single array.
Iterate all pages (JavaScript)