Released docs. You are viewing the documentation published with v0.34.0. Development docs are available at Latest.
Search published availability
const url = 'https://scheduling.example.test/v1/availability?offering=example&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/availability?offering=example&limit=50' \ --header 'Authorization: Bearer <token>'Bounded availability. Exact-time offerings answer in grid slots and arrival-window offerings answer in published windows; only entries with capacity left are listed, so a slot nobody can serve is not availability. A search spans at most 62 days from start, and a wider ask continues by cursor.
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”Required offering identifier. An offering the deployed policy does not publish is request.not-found.
Earliest answerable start, defaulting to now.
Latest answerable start. An end earlier than one minute after start is raised to it, and one further ahead than the 62-day span allows is clipped to it.
Opaque 15-minute cursor bound to this offering, its range, and the instant the last page ended at. A malformed, unknown, or foreign cursor is cursor.invalid; an expired one is cursor.expired. Deduplicate entries by their start.
Page size from 1 through 200; the default is 50 and larger values are served as 200.
Responses
Section titled “ Responses ”Success
object
object
Example
{ "items": [ { "kind": "slot" } ]}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.not-found
object
Example
{ "code": "request.not-found", "detail": "The requested route does not exist.", "status": 404, "title": "Route not found", "type": "https://id.registrystack.org/problems/registry-scheduling/request/not-found"}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.