Skip to main content
The two schedule endpoints — classes and workshops — accept offset pagination. Both values are strict integers. limit must be at least 1; offset must be at least 0. You can send offset without limit, although paging with a fixed limit is usually clearer. Omit both and you get every event in the requested date range. That is the normal way to use these endpoints: a month of classes is a small response, and the required date range already bounds it.
Responses carry no pagination metadata and no total count. A page shorter than limit means you reached the end.

Ordering

Both endpoints return events ordered by start time, ascending, with the event ID as a deterministic tie-breaker. The order is stable across pages as long as you keep the same date range and filters and the schedule does not change.
Offset pagination reads a live schedule. If a studio publishes or cancels an event between two pages, a record can shift across the page boundary and be seen twice or missed. For a consistent snapshot, request the whole range in one call, or narrow the range instead of paging.

Endpoints without pagination

/v1/lecturers, /v1/places, /v1/clients, and /v1/pass-groups always return the full list. They are reference data — small, and meant to be fetched once and cached.