Pagination

Use offset/page pagination for API list endpoints.

API list endpoints use offset/page pagination.

Query parameters

ParameterTypeDefaultDescription
pageinteger1Page number. Must be at least 1.
page_sizeinteger25Number 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:

HeaderDescription
X-Total-CountTotal number of items.
X-PageCurrent page number.
X-Page-SizeCurrent page size.
X-Page-CountTotal 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()

On this page