Pagination
Cursor-based pagination for every list endpoint.
Every list endpoint in the VideoGen API uses the same cursor-based pagination contract. Responses include the items array you already expect, plus two fields that tell you whether more pages exist and how to fetch them.
Query parameters
Response fields
Every paginated response includes:
The items array field name depends on the endpoint (projects, files, avatarPresenters, ttsVoices, endpoints, and so on).
Paginated endpoints
GET /v1/projects and GET /v1/files return results most recently updated first.
Fetching every page
TypeScript
Python
cURL
Rules
- Cursors are opaque. Treat them as strings. Do not parse or construct them yourself.
- Cursors are endpoint-specific. A cursor from
GET /v1/filesonly works onGET /v1/files. Using one with a different endpoint returns400. - Pass cursors unmodified. Copy
nextCursorexactly into thecursorquery param. - Cache static catalogues. Avatar presenters and TTS voices change infrequently. Fetch once and cache for hours rather than listing on every request.