# Pagination

List endpoints return results newest first, one page at a time, using a cursor.

## Parameters

| Field | Type | Description |
| --- | --- | --- |
| `per_page` | `integer` | Results per page. Default 25. Values above 100 are lowered to 100. |
| `cursor` | `string` | The `next_cursor` or `prev_cursor` from the previous page. Send it back exactly as you got it. |

## The pagination object

```json
"pagination": {
    "per_page": 25,
    "next_cursor": "eyJpZCI6MTM0LCJfcG9pbnRzVG9OZXh0SXRlbXMiOnRydWV9",
    "prev_cursor": null,
    "is_last_page": false
}
```

- A cursor is opaque. Never decode or build one.
- A null cursor means there are no more pages in that direction.
- There is no total count. Keep fetching until `is_last_page` is `true`.
- An empty list returns `200` with an empty array, never `404`.
