
Governed retrieval as a service. Every quote is a verified receipt on Rhetorical Contours™. Walk neighbors with Contour Reconstruction™ — copy prev_isa or next_isa into blocks lookup.
Integration SDKs and runnables appear after the release train publishes to S3. Downloads
Machine contract: GET /openapi.json (OpenAPI 1.0.0).
Corpus calls send Authorization: Quill-Envelope_v1 …. Mode B integrators sign with a tenant-service key you hold. Enroll to register your public key.
GET /v1/tenants/{tenant_id}/library — catalogPOST /v1/tenants/{tenant_id}/family-shortlist — Rhetorical Contours™ partitionPOST /v1/tenants/{tenant_id}/queries — ranked receiptsPOST /v1/tenants/{tenant_id}/blocks/lookup — Contour Reconstruction™Treat quote text as authoritative only when verification.status is passed.
Trust keys: GET /v1/trust/keys/{key_id}. Register tenant-service keys via /enroll.
| Method | Path | Contract |
|---|---|---|
| GET | /healthz | HealthResponse · 200 |
| GET | /openapi.json | object · 200 |
| GET | /readyz | ReadyResponse · 200 |
| GET | /v1/tenants/{tenant_id} | TenantSummary · 200, 404 |
| GET | /v1/tenants/{tenant_id}/activity | ActivityFeed · 200, 404 |
| POST | /v1/tenants/{tenant_id}/blocks/lookup | BlockLookupRequest → BlockLookupResponse · 200, 400, 403, 404 |
| GET | /v1/tenants/{tenant_id}/corpus/debug | CorpusDebugResponse · 200, 404 |
| PUT | /v1/tenants/{tenant_id}/credentials/self/request-key | RequestKeyPutRequest → RequestKeyPutResponse · 200, 400, 401, 403, 404 |
| POST | /v1/tenants/{tenant_id}/family-shortlist | QueryRequest → FamilyShortlistResponse · 200, 400, 404 |
| GET | /v1/tenants/{tenant_id}/library | LibraryResponse · 200, 404 |
| POST | /v1/tenants/{tenant_id}/membership/events | MembershipReplicationRequest → MembershipReplicationResponse · 200, 400, 401, 403, 404 |
| POST | /v1/tenants/{tenant_id}/queries | QueryRequest → QueryResponse · 200, 400, 404 |
| GET | /v1/tenants/{tenant_id}/receipts/{receipt_id} | 401, 404, 410 |
| GET | /v1/tenants/{tenant_id}/receipts/{receipt_id}/context | 401, 404, 410 |
| POST | /v1/tenants/{tenant_id}/syntheses | SynthesisRequest → SynthesisResponse · 200, 400, 404 |
| GET | /v1/trust/keys/{key_id} | 200, 404 |