Skip to main content

Usage and Limits

Requests

Send a JSON body containing query, optional variables, and optional operationName to https://api.verse.works/query. Only queries are supported.

The API accepts up to 5 requests per second per IP. On HTTP 429, respect Retry-After before retrying. Avoid bursts, reuse fetched data, and reduce polling when no updates are needed. Results may be up to 15 seconds old.

Pagination

Request between 1 and 100 items per page. Read pageInfo.endCursor and pass it as after on the next request while pageInfo.hasNextPage is true.

query Collections($after: Cursor) {
collectionsPage(request: { first: 20, after: $after }) {
nodes { id name slug }
pageInfo { endCursor hasNextPage }
}
}

Input arrays accept up to 50 entries; strings accept up to 2,048 UTF-8 bytes. Omit optional filters you do not need rather than passing null. Keep nested selections small; split requests if a query exceeds execution limits. Search returns at most 100 matches; use collectionsPage to continue browsing collections.

Errors

Check the HTTP status and the GraphQL errors array. A response can contain GraphQL errors even with HTTP 200.

ResponseWhat to do
400 or GraphQL validation errorCheck your query and variables against the schema.
403Access is blocked; contact Verse support if unexpected.
429Wait for Retry-After, then retry at a lower rate.
5xxRetry with a delay and backoff.

For account-specific actions, use Verse Elements.