List endpoints in SportriX return results in pages. Rather than receiving every matching record in a single response, you request a window of results using limit and offset and check the envelope metadata to know whether more pages exist. This keeps individual responses fast and predictable regardless of how many records match your query.
Which endpoints are paginated
The following endpoints are paginated and accept limit and offset:
GET /leagues
GET /leagues/active
GET /matches
GET /matches/active
GET /sports is not paginated — it returns a bare array containing only your enabled sports, which is a small, bounded list. Single-item endpoints (GET /matches/{id}, GET /matches/{id}/live, GET /matches/{id}/result) also return the object directly, not an envelope.
Every paginated response wraps its results in a pagination envelope with the following fields:
Example response
Paging through all results
The simplest pagination strategy is to increment offset by limit on each request and stop when has_more is false. Here is a complete Python example that fetches every league for a given sport:
You can apply the same pattern to GET /matches by replacing the sport parameter with league and adjusting your filter parameters as needed.