Pagination
Use offset/page pagination for API list endpoints.
API list endpoints use offset/page pagination.
Query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| page | integer | 1 | Page number. Must be at least 1. |
| page_size | integer | 25 | Number of items per page. |
Response shape
Paginated list responses return a data array and a meta.pagination object.
{
"data": [],
"meta": {
"pagination": {
"page": 2,
"page_size": 25,
"page_count": 4,
"total": 87
}
}
}Paginated responses also include these headers:
| Header | Description |
|---|---|
| X-Total-Count | Total number of items. |
| X-Page | Current page number. |
| X-Page-Size | Current page size. |
| X-Page-Count | Total number of pages. |
When meta.pagination.page equals meta.pagination.page_count, there are no more pages.
Example
curl "https://api.getsillage.com/api/v2/content-requests?page=2&page_size=25" \
-H "Authorization: Bearer $SILLAGE_API_KEY"const response = await fetch(
'https://api.getsillage.com/api/v2/content-requests?page=2&page_size=25',
{
headers: {
Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
},
},
)
const result = await response.json()import { request } from 'node:https'
const req = request(
new URL('https://api.getsillage.com/api/v2/content-requests?page=2&page_size=25'),
{
headers: {
Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
},
},
(res) => {
let body = ''
res.on('data', (chunk) => {
body += chunk
})
res.on('end', () => {
console.log(JSON.parse(body))
})
},
)
req.end()import os
import requests
response = requests.get(
"https://api.getsillage.com/api/v2/content-requests",
params={
"page": "2",
"page_size": "25",
},
headers={"Authorization": f"Bearer {os.environ['SILLAGE_API_KEY']}"},
timeout=30,
)
response.raise_for_status()
result = response.json()