Skip to main content

Response Envelope & Pagination

Envelope Shape​

All list endpoints return a consistent envelope:

{
"count": 150,
"results": [
{ "id": 1, "name": "..." },
{ "id": 2, "name": "..." }
]
}
FieldTypeDescription
countintegerTotal number of matching records across all pages
resultsarrayThe items on the current page

Single-resource endpoints (for example, GET /recitations/{id}/) return the object directly with no envelope.

Pagination Parameters​

ParameterTypeDefaultMax
pageinteger (1-indexed)1—
page_sizeinteger201000

Both parameters are optional. Omitting them returns the first 20 results.

Paging Through Results​

Use count to determine how many pages exist, then increment page until you have all records.

# Page 1
curl "https://staging.api.cms.itqan.dev/reciters/?page=1&page_size=10"

# Page 2
curl "https://staging.api.cms.itqan.dev/reciters/?page=2&page_size=10"

Large Page Sizes​

Set page_size=1000 to fetch up to 1 000 records in a single request. This is the hard cap; values above 1 000 are silently clamped to 1 000.


See also: Design Principles · Searching, Filtering, Ordering · Error Handling