API Reference
Auto-generated from docs/api/openapi.yaml. The spec is regenerated on every push to main by scripts/generate-openapi.mjs, then CI fails the build if it drifts without a matching commit.
91 paths, 114 operations.
actors
Actor (user / service account) management. Admin-only.
GET/v1/actorspublic
POST/v1/actorspublic
DELETE/v1/actors/{id}/roles/{role_id}public
POST/v1/actors/{id}/roles/{role_id}public
advocacy
GET/v1/advocacy/explain/{event_id}scope: events:read
GET/v1/advocacy/guideline/{event_id}scope: events:read
POST/v1/advocacy/recode/{event_id}public
ai-decisions
AI provenance ledger for any model-assisted decision (UM, denial, fraud score, etc.).
GET/v1/ai-decisionsscope: ai-provenance:read
POST/v1/ai-decisionsscope: ai-provenance:write
GET/v1/ai-decisions/{id}scope: ai-provenance:read
POST/v1/ai-decisions/{id}/overridescope: ai-provenance:write
GET/v1/ai-decisions/summaryscope: ai-provenance:read
api-keys
Tenant-scoped API key management. Admin-only.
GET/v1/api-keyspublic
POST/v1/api-keyspublic
DELETE/v1/api-keys/{id}public
appointments
GET/v1/appointmentsscope: appointments:read
POST/v1/appointmentsscope: appointments:write
ava-access
POST/v1/ava-access/requestpublic
POST/v1/ava-access/verifypublic
bundles
Court Ready Evidentiary Bundles (CREB). Asynchronous: POST `/v1/bundles` to enqueue a build; poll `/v1/bundles/:id` until `status=SEALED`, then GET `/v1/bundles/:id/download` for the signed ZIP.
GET/v1/bundlesscope: bundles:read
POST/v1/bundlesscope: bundles:request
GET/v1/bundles/{id}scope: bundles:read
GET/v1/bundles/{id}/diffscope: bundles:read
GET/v1/bundles/{id}/downloadscope: bundles:export
GET/v1/bundles/{id}/edxscope: bundles:export
POST/v1/bundles/{id}/regeneratescope: bundles:request
POST/v1/bundles/{id}/verify-signaturescope: bundles:read
care-team
GET/v1/care-teamscope: care-team:read
POST/v1/care-teamscope: care-team:write
connectors
Adapter connector instance management (FHIR / HL7v2 / X12 / NCPDP endpoints).
GET/v1/connectorsscope: connectors:write
POST/v1/connectorsscope: connectors:write
DELETE/v1/connectors/{id}scope: connectors:write
GET/v1/connectors/{id}scope: connectors:write
PATCH/v1/connectors/{id}scope: connectors:write
custody
Chain-of-custody log per object (event, document, bundle). Append-only.
GET/v1/custody/{type}/{id}scope: custody:read
dashboard
Aggregate counters for operator dashboards.
GET/v1/dashboard/countsscope: events:read
data-rights
GET/v1/data-rights/requests/{rid}scope: data-rights:read
POST/v1/data-rights/requests/{rid}/dry-runscope: data-rights:write
POST/v1/data-rights/requests/{rid}/evaluatescope: data-rights:write
POST/v1/data-rights/requests/{rid}/executescope: admin
documents
The document vault. Multipart upload of evidentiary documents. Storage is content-addressed (sha256) inside WORM; metadata is queryable. Quarantine/scan happens inline when `CREB_CONTENT_SCAN_INLINE=true` is set on the server.
GET/v1/documentsscope: documents:read
POST/v1/documentsscope: documents:write
GET/v1/documents/{id}scope: documents:read
GET/v1/documents/{id}/metadatascope: documents:read
POST/v1/documents/{id}/rescanscope: documents:write
GET/v1/documents/{id}/scan-statusscope: documents:read
events
The event ledger. Single or batched event envelopes, immutable on commit, hash-chained per (tenant, source_system) partition. Every accepted envelope is also persisted to the WORM store; see `/concepts/event-envelope` in the docs portal.
POST/v1/eventsscope: events:write
POST/v1/events/validatescope: events:write
exceptions
Operator queue of ingest-time and reconciliation-time exceptions. Assign / resolve / mark-known-gap.
GET/v1/exceptionspublic
POST/v1/exceptions/{id}/assignscope: exceptions:write
POST/v1/exceptions/{id}/resolvescope: exceptions:write
GET/v1/exceptions/summaryscope: exceptions:read
feature-flags
GET/v1/feature-flagsscope: admin
POST/v1/feature-flagsscope: admin
GET/v1/feature-flags/{flag}/evaluatescope: admin
DELETE/v1/feature-flags/{id}scope: admin
GET/v1/feature-flags/{id}scope: admin
POST/v1/feature-flags/{id}/rulesscope: admin
DELETE/v1/feature-flags/{id}/rules/{ruleId}scope: admin
graph
Event/entity graph queries — neighbors, subgraphs, paths.
GET/v1/graph/events/{id}/neighborsscope: graph:read
GET/v1/graph/members/{id}/relationsscope: graph:read
GET/v1/graph/pathscope: graph:read
POST/v1/graph/subgraphscope: graph:read
ingest
Raw / batch ingest helpers (multipart, NDJSON streams).
POST/v1/ingest/rawscope: events:write
legal-holds
Litigation hold management. Holds tombstone matching events/documents so retention sweeps cannot delete them. Release requires a documented authority.
GET/v1/legal-holdsscope: legal-holds:read
POST/v1/legal-holdsscope: legal-holds:write
DELETE/v1/legal-holds/{id}scope: legal-holds:write
legal-matters
Long-running matter records that group holds, members, bundles, and exception triage.
GET/v1/legal-mattersscope: legal-matters:read
POST/v1/legal-mattersscope: legal-matters:write
GET/v1/legal-matters/{id}scope: legal-matters:read
POST/v1/legal-matters/{id}/membersscope: legal-matters:write
member-auth
POST/v1/member-auth/complete-loginpublic
POST/v1/member-auth/logoutpublic
POST/v1/member-auth/request-loginpublic
GET/v1/member-auth/sessionpublic
members
Master-patient-index style member directory backed by the IdentityResolver. Use `/v1/members/search` for fuzzy lookup.
POST/v1/members/{id}/data-rights/deletionscope: data-rights:write
GET/v1/members/{id}/data-rights/requestsscope: data-rights:read
POST/v1/members/{id}/exportscope: data-rights:read
GET/v1/members/{id}/export/downloadpublic
GET/v1/members/{memberId}scope: events:read
GET/v1/members/{memberId}/timelinescope: events:read
POST/v1/members/searchscope: events:read
quarantine
Operator actions on quarantined documents (release after false-positive review).
POST/v1/quarantine/{id}/releasescope: admin
redactions
Member-facing or court-facing redactions. Two-stage: create draft, then apply.
GET/v1/redactionsscope: documents:read
POST/v1/redactionsscope: documents:write
GET/v1/redactions/{id}scope: documents:read
POST/v1/redactions/{id}/applyscope: documents:write
roles
Role catalogue + actor-to-role assignment. Admin-only.
GET/v1/rolespublic
POST/v1/rolespublic
rules
Versioned rule corpus (plan benefit rules, network rules, prior-auth rules, jurisdictional regulations). Each ingest snapshots the rule artifact into WORM and creates an immutable revision row.
GET/v1/rulesscope: rules:read
POST/v1/rulesscope: rules:write
search
Search across the event log, documents, and full-text index.
POST/v1/searchscope: events:read
POST/v1/search/documentsscope: documents:read
POST/v1/search/indexscope: admin
signing-keys
Bundle signing key lifecycle (Ed25519). Admin-only.
GET/v1/signing-keysscope: signing-keys:read
POST/v1/signing-keysscope: signing-keys:write
DELETE/v1/signing-keys/{id}scope: signing-keys:write
source-feeds
Source feed monitoring — heartbeats and staleness sweep.
GET/v1/source-feedsscope: feeds:read
POST/v1/source-feeds/heartbeatscope: feeds:write
GET/v1/source-feeds/summaryscope: feeds:read
POST/v1/source-feeds/sweepscope: feeds:write
tenants
Tenant lifecycle. Admin-only.
GET/v1/tenantspublic
POST/v1/tenantspublic
DELETE/v1/tenants/{id}public
GET/v1/tenants/{id}public
webhooks
Outbound delivery of platform events to operator-registered HTTPS endpoints. HMAC-signed (rotating secrets); retried with exponential backoff. See `/concepts/webhooks` in the docs portal.
GET/v1/webhooksscope: admin
POST/v1/webhooksscope: admin
DELETE/v1/webhooks/{id}scope: admin
GET/v1/webhooks/{id}scope: admin
GET/v1/webhooks/{id}/deliveriesscope: admin
POST/v1/webhooks/{id}/rotate-secretscope: admin