# Pagination

List endpoints return:

```json
{
	"items": [
		{
			"id": "018f2f8e-8f32-7c11-a4a6-33c73a4d7ad1",
			"appUrl": "https://app.afterlib.com/ads/018f2f8e-8f32-7c11-a4a6-33c73a4d7ad1"
		}
	],
	"cursor": "next_cursor",
	"hasMore": true
}
```

When `hasMore` is true, pass the returned `cursor` to fetch the next page.

For search endpoints, include `cursor` in the JSON request body:

```bash
curl https://api.afterlib.com/v1/ads/search \
  -H "Authorization: Bearer $AFTERLIB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "limit": 25,
    "cursor": "next_cursor"
  }'
```

For collection items, include `cursor` as a query parameter:

```bash
curl "https://api.afterlib.com/v1/collections/00000000-0000-0000-0000-000000000000/items?itemType=ads&cursor=25" \
  -H "Authorization: Bearer $AFTERLIB_API_KEY"
```

Use `limit` to control page size. Collection item reads default to `50` and allow up to `100`.