> ## Documentation Index
> Fetch the complete documentation index at: https://developers.parkes.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Pagination

> Retrieve collections with opaque cursors.

Collection responses contain `data` and `page.next_cursor`. Most collections default to 50 records and accept a `limit` of up to 200. Check the endpoint reference for exceptions, including Knowledge search.

## Read the next page

Start without a cursor. If `page.next_cursor` is not null, send it as `cursor` with the same filters:

```bash theme={null}
curl --fail-with-body --get https://api.parkes.ai/rest/v1/skills \
  --header "Authorization: Bearer $PARKES_TOKEN" \
  --data-urlencode "cursor=$NEXT_CURSOR" \
  --data-urlencode 'limit=50'
```

Treat cursors as opaque strings. Do not decode, edit, or construct them. Continue until `page.next_cursor` is null.

## Understand consistency

A collection traversal captures an upper ID bound. Newly created records beyond that bound do not extend the traversal, but existing records can still change while you read. Pagination is not a frozen snapshot of every record's contents.

## Continuing feeds

Activity tail cursors describe a continuing feed, rather than a collection that eventually ends. Persist a checkpoint only after processing the corresponding deliveries, and deduplicate by `delivery_id` if you resume after an interruption. Follow the endpoint's cursor-expiry and recovery contract.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.