Unreleased documentation. These pages follow the main branch and can change before the next release. For supported guidance, use v0.44.0.
List an operational appointment work page
const url = 'https://scheduling.example.test/v1/operational/appointments?service=example&location=example&start=2026-04-15T12%3A00%3A00Z&end=2026-04-15T12%3A00%3A00Z&timeBasis=displayed&state=confirmed&limit=50';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://scheduling.example.test/v1/operational/appointments?service=example&location=example&start=2026-04-15T12%3A00%3A00Z&end=2026-04-15T12%3A00%3A00Z&timeBasis=displayed&state=confirmed&limit=50' \ --header 'Authorization: Bearer <token>'Lists a bounded appointment work page for an explicitly configured operational role. The selected role limits service, location, resources, time range, filters, and returned fields; continuations are bound to the same verified caller and authority.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Optional W3C trace context continued in the response.
Query Parameters
Section titled “Query Parameters”Service fixed by the selected operational role.
Location fixed by the selected operational role.
Inclusive interval start.
Exclusive interval end.
Whether overlap is evaluated against displayed or occupied time.
Optional offering filter.
Optional appointment state filter.
Optional authorized resource filter.
External reference product; all three external-reference parameters must be supplied together.
External reference record type; all three external-reference parameters must be supplied together.
External reference identifier; all three external-reference parameters must be supplied together.
Optional operational profile selector; the profile is not grant material.
Opaque 15-minute cursor bound to this listing. A malformed, unknown, or foreign cursor is cursor.invalid; an expired one is cursor.expired, and the listing restarts from its first page. Deduplicate entries by id.
Page size from 1 through 200; the default is 50 and larger values are served as 200.
Responses
Section titled “Responses”Success
object
object
object
object
object
Example
{ "items": [ { "allocations": [ { "requirement": { "kind": "primary" } } ], "attendance": { "state": "arrived" }, "state": "confirmed" } ]}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: request.invalid, cursor.invalid
object
object
Example
{ "code": "request.invalid", "detail": "The request could not be read as a Scheduling request.", "status": 400, "title": "Request invalid", "type": "https://id.registrystack.org/problems/registry-scheduling/request/invalid"}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: authentication.refused
object
Example
{ "code": "authentication.refused", "detail": "The bearer credential is missing, invalid, or expired. Sign in again.", "status": 401, "title": "Authentication refused", "type": "https://id.registrystack.org/problems/registry-scheduling/authentication/refused"}Headers
Section titled “Headers”Bearer authentication challenge.
Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: profile.not-authorized
object
Example
{ "code": "profile.not-authorized", "detail": "The selected Scheduling profile does not authorize this request.", "status": 403, "title": "Profile not authorized", "type": "https://id.registrystack.org/problems/registry-scheduling/profile/not-authorized"}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: request.method-not-allowed
object
Example
{ "code": "request.method-not-allowed", "detail": "The route exists but not for this method.", "status": 405, "title": "Method not allowed", "type": "https://id.registrystack.org/problems/registry-scheduling/request/method-not-allowed"}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: cursor.expired
object
Example
{ "code": "cursor.expired", "detail": "This cursor has expired. Start again without a cursor and deduplicate entries by id.", "status": 410, "title": "Cursor expired", "type": "https://id.registrystack.org/problems/registry-scheduling/cursor/expired"}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: request.body-too-large
object
Example
{ "code": "request.body-too-large", "detail": "The request body exceeds the accepted size.", "status": 413, "title": "Payload too large", "type": "https://id.registrystack.org/problems/registry-scheduling/request/body-too-large"}Headers
Section titled “Headers”Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Problem response: service.unavailable
object
Example
{ "code": "service.unavailable", "detail": "Scheduling storage is unavailable. Try again after the service recovers.", "status": 503, "title": "Scheduling service unavailable", "type": "https://id.registrystack.org/problems/registry-scheduling/service/unavailable"}Headers
Section titled “Headers”Seconds before retrying the unavailable dependency; the runtime answers 5.
Every answer is marked no-store, so a booking view is never served from a cache.
W3C trace context for the request and response.
Cookies on Registry Stack
We use optional cookies to understand how you use the main Registry Stack website and this documentation. If you contact us, we may link this activity to your enquiry. You can change your choice at any time. Read the privacy policy.
Your browser asks sites not to track you, so optional tracking stays off.
We could not use or save that choice. Optional tracking remains off.