Unreleased documentation. These pages follow the main branch and can change before the next release. For supported guidance, use v0.26.1.
Preview a caller-visible caseload move
const url = 'https://casework.example.test/v1/directory/caseload/preview';const options = { method: 'POST', headers: { 'Registry-Casework-Profile': 'example', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: '{"from":{"issuer":"example","subject":"example"},"queueId":"example","reason":"example","to":{"issuer":"example","subject":"example"}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://casework.example.test/v1/directory/caseload/preview \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Registry-Casework-Profile: example' \ --data '{ "from": { "issuer": "example", "subject": "example" }, "queueId": "example", "reason": "example", "to": { "issuer": "example", "subject": "example" } }'Supervisor-only preview for currently served queues. The from and to principals must differ. Candidates are held by movement.from and optionally restricted to queueId. Concealed, denied, or missing candidates are omitted without disclosing their count. Without Registry-Source-Profile only hosted candidates are visible; source-backed candidates require it.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Optional W3C trace context continued in the response.
Explicit Casework access profile. It never selects BReg authority.
Explicit source profile used for the caller-scoped BReg read or action.
Query Parameters
Section titled “Query Parameters”Opaque 15-minute cursor bound to the human principal, selected Casework profile, optional source profile, and exact movement. Malformed or context-mismatched values are cursor.invalid; expired values are cursor.expired.
Page size from 1 through 100; values outside that range are request.invalid.
Request Bodyrequired
Section titled “Request Bodyrequired”object
Examplegenerated
{ "from": { "issuer": "example", "subject": "example" }, "queueId": "example", "reason": "example", "to": { "issuer": "example", "subject": "example" }}Responses
Section titled “Responses”Success
object
object
object
object
object
For running or verification-pending clocks, the earliest unapplied reminder and earliest unapplied reassignment, ordered by time, effect kind, and identifier. Omitted when no firing instant can be promised, including while paused. These are pinned authored instants, not scheduler retry times.
object
object
Human-facing source reference disclosed by the source to the current caller. Present only for source-backed items whose request policy explicitly names a reference field and whose current caller read discloses that field.
object
object
Example
{ "items": [ { "assignment": { "staffingDiagnostic": "no_cover_available" }, "clockOccurrences": [ { "nextEffect": { "kind": "reminder" }, "state": "running", "upcomingEffects": [ { "kind": "reminder" } ] } ], "liveAttempt": { "state": "pending" }, "occurrenceKind": "review", "state": "open" } ], "status": "complete"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: cursor.invalid, request.invalid
object
object
Example
{ "code": "cursor.invalid", "detail": "The cursor is invalid for this request.", "status": 400, "title": "Cursor invalid", "type": "https://id.registrystack.org/problems/registry-casework/cursor/invalid"}Headers
Section titled “Headers”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-casework/authentication/refused"}Headers
Section titled “Headers”Bearer authentication challenge.
W3C trace context for the request and response.
Problem response: operation.not-authorized, profile.not-authorized, profile.not-human
object
object
object
Example
{ "code": "operation.not-authorized", "detail": "Your current Casework authority does not allow this operation.", "status": 403, "title": "Operation not authorized", "type": "https://id.registrystack.org/problems/registry-casework/operation/not-authorized"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: request.method-not-allowed
object
Example
{ "code": "request.method-not-allowed", "detail": "This route does not accept that HTTP method.", "status": 405, "title": "Method not allowed", "type": "https://id.registrystack.org/problems/registry-casework/request/method-not-allowed"}Headers
Section titled “Headers”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 eventId.", "status": 410, "title": "Cursor expired", "type": "https://id.registrystack.org/problems/registry-casework/cursor/expired"}Headers
Section titled “Headers”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 one MiB limit.", "status": 413, "title": "Request body too large", "type": "https://id.registrystack.org/problems/registry-casework/request/body-too-large"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: request.unsupported-media-type
object
Example
{ "code": "request.unsupported-media-type", "detail": "Send a JSON request body with Content-Type application/json.", "status": 415, "title": "Unsupported media type", "type": "https://id.registrystack.org/problems/registry-casework/request/unsupported-media-type"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: request.unprocessable
object
Example
{ "code": "request.unprocessable", "detail": "The request body does not match the Casework contract.", "status": 422, "title": "Request could not be processed", "type": "https://id.registrystack.org/problems/registry-casework/request/unprocessable"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: runtime.failure
object
Example
{ "code": "runtime.failure", "detail": "Casework could not complete the request.", "status": 500, "title": "Casework runtime failure", "type": "https://id.registrystack.org/problems/registry-casework/runtime/failure"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: source.bad-gateway
object
Example
{ "code": "source.bad-gateway", "detail": "The source returned a response that does not match its registered contract.", "status": 502, "title": "Invalid source response", "type": "https://id.registrystack.org/problems/registry-casework/source/bad-gateway"}Headers
Section titled “Headers”W3C trace context for the request and response.
Problem response: service.unavailable, work-item.source-unavailable
object
object
Example
{ "code": "service.unavailable", "detail": "Casework storage is unavailable. Try again after the service recovers.", "status": 503, "title": "Casework service unavailable", "type": "https://id.registrystack.org/problems/registry-casework/service/unavailable"}Headers
Section titled “Headers”Seconds before retrying the unavailable dependency.
W3C trace context for the request and response.