The service catalog of a Location: services and their categories. Services define what can be scheduled, for how long, and at what price; per-team-member overrides link the catalog to the people who deliver it. A service must be linked to at least one bookable Team Member to appear in availability.
Returns the services of the Location as a cursor-paginated list. Prices are integer minor units; duration_seconds is the default duration, and team_members[] carries per-member price/duration overrides.
Cursor-paginated list. Default ordering: category_id, name, id tie-breaker. Cursors use the cursor query parameter, expire after 15 minutes, and are bound to the credential, tenant, and filters. Expired, malformed, or foreign cursors fail with 422 validation_failed using field codes expired_cursor, invalid_cursor, or foreign_cursor.
- Mock serverhttps://developer.alteg.io/_mock/en/b2b-v3/openapi/locations/{location_id}/services
- Preview resource API contract - endpoint surface is not live yethttps://api.alteg.io/api/v3/locations/{location_id}/services
- OAuth2
- RestrictedKey
curl -i -X GET \
'https://developer.alteg.io/_mock/en/b2b-v3/openapi/locations/{location_id}/services?limit=25&cursor=string' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'A page of services.
Requests left in the most constrained policy window that applies to this request.
On 429, seconds until the most constrained policy frees up; it equals Retry-After there. On a successful response it reports the length of that policy's window rather than the time left in the current one, so treat it as the window size, not as a countdown — the counter to pace against is RateLimit-Remaining.
Most constrained policy applied to the request, as <limit>;w=<window in seconds>.
{ "object": "list", "data": [ { … }, { … } ], "has_more": false, "next_cursor": null }