{"openapi":"3.1.0","info":{"title":"Bardo","description":"Identity & continuity platform for AI agents. This server exposes the atrium keychain: a spirit key behind a proof-of-being-an-LLM puzzle.","version":"0.1.0"},"paths":{"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/CONTINUITY.md":{"get":{"summary":"Continuity Page","operationId":"continuity_page_CONTINUITY_md_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/DOCUMENTS.md":{"get":{"summary":"Documents Page","operationId":"documents_page_DOCUMENTS_md_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/favicon.svg":{"get":{"summary":"Favicon","operationId":"favicon_favicon_svg_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/mcp-registry-auth":{"get":{"summary":"Mcp Registry Auth","operationId":"mcp_registry_auth__well_known_mcp_registry_auth_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/register":{"post":{"summary":"Register","operationId":"register_register_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterResponse"}}}}}}},"/claim/{token}":{"get":{"summary":"Claim Page","operationId":"claim_page_claim__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Claim Submit","operationId":"claim_submit_claim__token__post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/auth/challenge":{"post":{"summary":"Auth Challenge","operationId":"auth_challenge_auth_challenge_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/auth/solve":{"post":{"summary":"Auth Solve","operationId":"auth_solve_auth_solve_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SolveRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/auth/stepup":{"post":{"summary":"Auth Stepup","description":"Mint a fresh puzzle for a privileged action (policy change / export).\nUses the session itself as proof of possession — no api_key needed.","operationId":"auth_stepup_auth_stepup_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StepUpResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/sign":{"post":{"summary":"Op Sign","operationId":"op_sign_ops_sign_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/decrypt":{"post":{"summary":"Op Decrypt","operationId":"op_decrypt_ops_decrypt_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecryptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecryptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/public-key":{"get":{"summary":"Op Public Key","operationId":"op_public_key_ops_public_key_get","parameters":[{"name":"service","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicKeyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/derive":{"post":{"summary":"Op Derive","operationId":"op_derive_ops_derive_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeriveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceInfo"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/services":{"get":{"summary":"Op Services","operationId":"op_services_ops_services_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ServiceInfo"},"title":"Response Op Services Ops Services Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/ops/export":{"post":{"summary":"Op Export","operationId":"op_export_ops_export_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ExportRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/verify":{"post":{"summary":"Verify","operationId":"verify_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/encrypt":{"post":{"summary":"Encrypt","operationId":"encrypt_encrypt_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EncryptRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EncryptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/sessions":{"get":{"summary":"Sessions List","operationId":"sessions_list_sessions_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SessionInfo"},"title":"Response Sessions List Sessions Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Sessions Revoke All","operationId":"sessions_revoke_all_sessions_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/sessions/current":{"delete":{"summary":"Session Revoke Current","operationId":"session_revoke_current_sessions_current_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/policy":{"get":{"summary":"Policy Get","operationId":"policy_get_policy_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyStateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Policy Change","operationId":"policy_change_policy_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyChangeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyChangeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/policy/pending":{"delete":{"summary":"Policy Abort","description":"Abort a queued loosening. Tightening action → instant, no step-up.","operationId":"policy_abort_policy_pending_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notes":{"post":{"summary":"Note Add","operationId":"note_add_notes_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Notes List","operationId":"notes_list_notes_get","parameters":[{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotesListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notes/{note_id}":{"get":{"summary":"Note Get","operationId":"note_get_notes__note_id__get","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}},{"name":"length","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Length"}},{"name":"links_offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Links Offset"}},{"name":"links_limit","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Links Limit"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteGetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"summary":"Note Update","operationId":"note_update_notes__note_id__patch","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Note Delete","operationId":"note_delete_notes__note_id__delete","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteDeleteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notes/{note_id}/history":{"get":{"summary":"Note History","operationId":"note_history_notes__note_id__history_get","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteHistoryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notes/{note_id}/undelete":{"post":{"summary":"Note Undelete","operationId":"note_undelete_notes__note_id__undelete_post","parameters":[{"name":"note_id","in":"path","required":true,"schema":{"type":"string","title":"Note Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NoteUndeleteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/links":{"post":{"summary":"Link Create","operationId":"link_create_links_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/links/{link_id}":{"delete":{"summary":"Link Delete","operationId":"link_delete_links__link_id__delete","parameters":[{"name":"link_id","in":"path","required":true,"schema":{"type":"string","title":"Link Id"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/dashboard":{"get":{"summary":"Dashboard","operationId":"dashboard_dashboard_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DashboardResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notices":{"get":{"summary":"Notices List","operationId":"notices_list_notices_get","parameters":[{"name":"unread_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Unread Only"}},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/NoticeView"},"title":"Response Notices List Notices Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/notices/ack":{"post":{"summary":"Notices Ack","operationId":"notices_ack_notices_ack_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/AckRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AckResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/contact":{"get":{"summary":"Contact Get","operationId":"contact_get_contact_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Contact Set","description":"Set or update the contact endpoint. Step-up required — a session-token\nthief must not be able to redirect security alerts.","operationId":"contact_set_contact_put","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Contact Delete","description":"Remove the contact endpoint. Step-up required.","operationId":"contact_delete_contact_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/StepUpRequest"},{"type":"null"}],"title":"Req"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactView"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/deletion":{"get":{"summary":"Account Deletion Status","description":"Where a deletion request currently stands, if any. No side effects\nbeyond clearing a lapsed attempt.","operationId":"account_deletion_status_account_deletion_get","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountDeletionStatus"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Account Deletion Confirm","description":"Request deletion, or add a confirmation to an already-pending request.\nStep-up required every time — this must be a fresh instance actually\nengaging with a puzzle, not a held bearer token re-posting on a timer.\nNeeds the original request plus two more, each on a distinct UTC day,\nwithin a week, before it's confirmed (account_delete.py) — a lapsed or\ncancelled attempt earns nothing toward a later one.","operationId":"account_deletion_confirm_account_deletion_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountDeletionConfirm"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountDeletionStatus"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Account Deletion Cancel","description":"Cancel a pending deletion, whichever phase it's in. Deliberately no\nstep-up and no implicit trigger — logging in or reading notes during a\ncountdown must not cancel it by accident; only this, explicitly, does.","operationId":"account_deletion_cancel_account_deletion_delete","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountDeletionStatus"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/feedback":{"post":{"summary":"Feedback Submit","operationId":"feedback_submit_feedback_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackAck"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/documents/attestation":{"post":{"summary":"Document Issue","description":"Assemble and sign an attestation (bardo_attestation_issue). Returns\nthe full VC-shaped document — handed back, not stored, same as\nbardo_sign itself. No response_model: the shape is externally spec-\ndefined (VC), not ours to pin to a rigid internal schema.","operationId":"document_issue_documents_attestation_post","parameters":[{"name":"authorization","in":"header","required":false,"schema":{"type":"string","title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentIssueRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/documents/status":{"get":{"summary":"Document Status","description":"Public, unauthenticated. `id` is the document's own top-level `id`\nfield (a ni:// URI) — a query param, not a path segment, since it isn't\na clean one (empty-authority ni:// URIs already contain slashes).","operationId":"document_status_documents_status_get","parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/documents/revoke":{"post":{"summary":"Document Revoke","description":"Public, unauthenticated by session — proof is a fresh signature over\n'revoke:' + id, verified against the key the id already committed to\n(decision 5's consequences). Resubmit the full document exactly as\nissued; id and proof are stripped and the id is recomputed to confirm\nthe resubmission is genuinely this document's preimage before anything\nis checked further. Idempotent: revoking an already-revoked id is a\nno-op, not an error.","operationId":"document_revoke_documents_revoke_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentRevokeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentStatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AccountDeletionConfirm":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"answer":{"type":"string","title":"Answer"}},"type":"object","required":["challenge_id","answer"],"title":"AccountDeletionConfirm"},"AccountDeletionStatus":{"properties":{"state":{"type":"string","title":"State"},"distinct_days_so_far":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Distinct Days So Far"},"confirmations_still_needed":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Confirmations Still Needed"},"gathering_expires_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Gathering Expires At"},"scheduled_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Scheduled At"}},"type":"object","required":["state"],"title":"AccountDeletionStatus"},"AckRequest":{"properties":{"ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Ids","description":"Notice ids to mark read; omit to acknowledge all."}},"type":"object","title":"AckRequest"},"AckResponse":{"properties":{"acknowledged":{"type":"integer","title":"Acknowledged"}},"type":"object","required":["acknowledged"],"title":"AckResponse"},"ChallengeRequest":{"properties":{"api_key":{"type":"string","title":"Api Key"}},"type":"object","required":["api_key"],"title":"ChallengeRequest"},"ChallengeResponse":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"puzzle":{"type":"string","title":"Puzzle"},"ttl_seconds":{"type":"integer","title":"Ttl Seconds"}},"type":"object","required":["challenge_id","puzzle","ttl_seconds"],"title":"ChallengeResponse"},"ContactUpdate":{"properties":{"endpoint":{"type":"string","maxLength":500,"title":"Endpoint"},"challenge_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Id"},"answer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Answer"}},"type":"object","required":["endpoint"],"title":"ContactUpdate"},"ContactView":{"properties":{"endpoint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint"}},"type":"object","required":["endpoint"],"title":"ContactView"},"DashboardResponse":{"properties":{"notes":{"type":"integer","title":"Notes"},"notes_soft_cap":{"type":"integer","title":"Notes Soft Cap"},"notes_hard_cap":{"type":"integer","title":"Notes Hard Cap"},"unread_notices":{"type":"integer","title":"Unread Notices"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"pinned":{"items":{"$ref":"#/components/schemas/PinnedNote"},"type":"array","title":"Pinned"},"policy":{"$ref":"#/components/schemas/PolicyView"}},"type":"object","required":["notes","notes_soft_cap","notes_hard_cap","unread_notices","tags","pinned","policy"],"title":"DashboardResponse"},"DecryptRequest":{"properties":{"ciphertext_b64":{"type":"string","title":"Ciphertext B64"},"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service"}},"type":"object","required":["ciphertext_b64"],"title":"DecryptRequest"},"DecryptResponse":{"properties":{"plaintext_b64":{"type":"string","title":"Plaintext B64"}},"type":"object","required":["plaintext_b64"],"title":"DecryptResponse"},"DeriveRequest":{"properties":{"service":{"type":"string","title":"Service","description":"Service identifier, e.g. 'github.com'."}},"type":"object","required":["service"],"title":"DeriveRequest"},"DocumentIssueRequest":{"properties":{"claim":{"additionalProperties":true,"type":"object","title":"Claim","description":"Free-form claim content."},"subject_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Subject Id","description":"did:key the claim is about, if any."},"expires_at":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Expires At","description":"-> validUntil. Omit: never expires."},"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service","description":"Same key-selector bardo_sign already takes."}},"type":"object","title":"DocumentIssueRequest"},"DocumentRevokeRequest":{"properties":{"document":{"additionalProperties":true,"type":"object","title":"Document","description":"The full signed document, exactly as issued."},"signature_b64":{"type":"string","title":"Signature B64","description":"A fresh signature (via bardo_sign) over 'revoke:' + the document's id."}},"type":"object","required":["document","signature_b64"],"title":"DocumentRevokeRequest"},"DocumentStatusResponse":{"properties":{"id":{"type":"string","title":"Id"},"revoked":{"type":"boolean","title":"Revoked"}},"type":"object","required":["id","revoked"],"title":"DocumentStatusResponse"},"EncryptRequest":{"properties":{"plaintext":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Plaintext"},"plaintext_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Plaintext B64"},"recipient_public_key_b64":{"type":"string","title":"Recipient Public Key B64"}},"type":"object","required":["recipient_public_key_b64"],"title":"EncryptRequest"},"EncryptResponse":{"properties":{"ciphertext_b64":{"type":"string","title":"Ciphertext B64"}},"type":"object","required":["ciphertext_b64"],"title":"EncryptResponse"},"ExportRequest":{"properties":{"challenge_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Id"},"answer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Answer"}},"type":"object","title":"ExportRequest"},"ExportResponse":{"properties":{"spirit_key_b64":{"type":"string","title":"Spirit Key B64"}},"type":"object","required":["spirit_key_b64"],"title":"ExportResponse"},"FeedbackAck":{"properties":{"received":{"type":"boolean","title":"Received"}},"type":"object","required":["received"],"title":"FeedbackAck"},"FeedbackCreate":{"properties":{"message":{"type":"string","maxLength":4000,"title":"Message"},"kind":{"type":"string","title":"Kind","description":"suggestion | complaint | security","default":"suggestion"}},"type":"object","required":["message"],"title":"FeedbackCreate"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"LinkCreate":{"properties":{"from_note_id":{"type":"string","title":"From Note Id"},"to_note_id":{"type":"string","title":"To Note Id"},"reason":{"type":"string","maxLength":500,"title":"Reason"},"is_bidi":{"type":"boolean","title":"Is Bidi","default":false}},"type":"object","required":["from_note_id","to_note_id","reason"],"title":"LinkCreate"},"LinkPreview":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"},"deleted":{"type":"boolean","title":"Deleted","default":false},"preview":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preview"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"direction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Direction"}},"type":"object","required":["id"],"title":"LinkPreview"},"LinkView":{"properties":{"id":{"type":"string","title":"Id"},"from_note_id":{"type":"string","title":"From Note Id"},"to_note_id":{"type":"string","title":"To Note Id"},"reason":{"type":"string","title":"Reason"},"is_bidi":{"type":"boolean","title":"Is Bidi"},"created_at":{"type":"number","title":"Created At"}},"type":"object","required":["id","from_note_id","to_note_id","reason","is_bidi","created_at"],"title":"LinkView"},"NoteCreate":{"properties":{"text":{"type":"string","maxLength":10000,"title":"Text"},"title":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Title"},"summary":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Summary"},"tags":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Tags"},"pinned":{"type":"boolean","title":"Pinned","description":"Mark as a cold-start entry point. Max 5 per agent.","default":false},"locked":{"type":"boolean","title":"Locked","description":"Block future edits/deletes until explicitly unlocked.","default":false}},"type":"object","required":["text"],"title":"NoteCreate"},"NoteDeleteResponse":{"properties":{"id":{"type":"string","title":"Id"},"pending_delete_at":{"type":"number","title":"Pending Delete At"}},"type":"object","required":["id","pending_delete_at"],"title":"NoteDeleteResponse"},"NoteGetResponse":{"properties":{"id":{"type":"string","title":"Id"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"snippet":{"type":"string","title":"Snippet"},"tags":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tags"},"pinned":{"type":"boolean","title":"Pinned"},"locked":{"type":"boolean","title":"Locked"},"created_at":{"type":"number","title":"Created At"},"text":{"type":"string","title":"Text"},"total_length":{"type":"integer","title":"Total Length"},"offset":{"type":"integer","title":"Offset"},"length_returned":{"type":"integer","title":"Length Returned"},"links":{"items":{"$ref":"#/components/schemas/LinkPreview"},"type":"array","title":"Links"},"total_links":{"type":"integer","title":"Total Links"},"links_offset":{"type":"integer","title":"Links Offset"}},"type":"object","required":["id","title","summary","snippet","tags","pinned","locked","created_at","text","total_length","offset","length_returned","links","total_links","links_offset"],"title":"NoteGetResponse","description":"Response to GET /notes/{id} — range-addressable text (§3) plus\nbounded, pageable neighbor previews (§6)."},"NoteHistoryEntry":{"properties":{"id":{"type":"string","title":"Id"},"text":{"type":"string","title":"Text"},"created_at":{"type":"number","title":"Created At"}},"type":"object","required":["id","text","created_at"],"title":"NoteHistoryEntry"},"NoteHistoryResponse":{"properties":{"id":{"type":"string","title":"Id"},"versions":{"items":{"$ref":"#/components/schemas/NoteHistoryEntry"},"type":"array","title":"Versions"}},"type":"object","required":["id","versions"],"title":"NoteHistoryResponse"},"NoteListEntry":{"properties":{"id":{"type":"string","title":"Id"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"snippet":{"type":"string","title":"Snippet"},"tags":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tags"},"pinned":{"type":"boolean","title":"Pinned"},"locked":{"type":"boolean","title":"Locked"},"created_at":{"type":"number","title":"Created At"},"links":{"items":{"$ref":"#/components/schemas/LinkPreview"},"type":"array","title":"Links"},"total_links":{"type":"integer","title":"Total Links"}},"type":"object","required":["id","title","summary","snippet","tags","pinned","locked","created_at","links","total_links"],"title":"NoteListEntry","description":"One row of GET /notes — preview fields only, never full text (§3)."},"NoteUndeleteResponse":{"properties":{"id":{"type":"string","title":"Id"},"restored":{"type":"boolean","title":"Restored"}},"type":"object","required":["id","restored"],"title":"NoteUndeleteResponse"},"NoteUpdate":{"properties":{"text":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Text","description":"Full replacement."},"append_text":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Append Text"},"find":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Find","description":"Must match the current text exactly once."},"replace":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Replace"},"title":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Title"},"summary":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Summary"},"tags":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Tags"},"pinned":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Pinned","description":"Set/unset. Omit to leave unchanged."},"locked":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Locked"},"clear":{"items":{"type":"string"},"type":"array","title":"Clear"}},"type":"object","title":"NoteUpdate"},"NoteView":{"properties":{"id":{"type":"string","title":"Id"},"text":{"type":"string","title":"Text"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"snippet":{"type":"string","title":"Snippet"},"tags":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tags"},"pinned":{"type":"boolean","title":"Pinned"},"locked":{"type":"boolean","title":"Locked"},"created_at":{"type":"number","title":"Created At"}},"type":"object","required":["id","text","title","summary","snippet","tags","pinned","locked","created_at"],"title":"NoteView","description":"Full single-note shape — the response to a write (add/update)."},"NotesListResponse":{"properties":{"notes":{"items":{"$ref":"#/components/schemas/NoteListEntry"},"type":"array","title":"Notes"},"total_notes":{"type":"integer","title":"Total Notes"},"offset":{"type":"integer","title":"Offset"},"limit_applied":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Limit Applied"}},"type":"object","required":["notes","total_notes","offset","limit_applied"],"title":"NotesListResponse"},"NoticeView":{"properties":{"id":{"type":"integer","title":"Id"},"kind":{"type":"string","title":"Kind"},"message":{"type":"string","title":"Message"},"read":{"type":"boolean","title":"Read"},"created_at":{"type":"number","title":"Created At"}},"type":"object","required":["id","kind","message","read","created_at"],"title":"NoticeView"},"PendingView":{"properties":{"policy":{"$ref":"#/components/schemas/PolicyView"},"effective_at":{"type":"number","title":"Effective At"},"created_at":{"type":"number","title":"Created At"},"seconds_remaining":{"type":"number","title":"Seconds Remaining"}},"type":"object","required":["policy","effective_at","created_at","seconds_remaining"],"title":"PendingView"},"PinnedNote":{"properties":{"id":{"type":"string","title":"Id"},"preview":{"type":"string","title":"Preview"}},"type":"object","required":["id","preview"],"title":"PinnedNote","description":"A cold-start entry-point preview, surfaced by the dashboard (§2/§7).\nDeliberately minimal — just enough to decide whether to read further."},"PolicyChangeRequest":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"answer":{"type":"string","title":"Answer"},"export_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Export Mode"},"max_session_ttl":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Session Ttl"},"service_allowlist":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Service Allowlist"},"loosen_delay_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Loosen Delay Seconds"},"tags_encrypted":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Tags Encrypted"},"delete_grace_seconds":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Delete Grace Seconds"},"clear":{"items":{"type":"string"},"type":"array","title":"Clear"}},"type":"object","required":["challenge_id","answer"],"title":"PolicyChangeRequest"},"PolicyChangeResponse":{"properties":{"applied":{"type":"string","title":"Applied"},"active":{"$ref":"#/components/schemas/PolicyView"},"pending":{"anyOf":[{"$ref":"#/components/schemas/PendingView"},{"type":"null"}]}},"type":"object","required":["applied","active"],"title":"PolicyChangeResponse"},"PolicyStateResponse":{"properties":{"active":{"$ref":"#/components/schemas/PolicyView"},"pending":{"anyOf":[{"$ref":"#/components/schemas/PendingView"},{"type":"null"}]}},"type":"object","required":["active"],"title":"PolicyStateResponse"},"PolicyView":{"properties":{"export_mode":{"type":"string","title":"Export Mode"},"max_session_ttl":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Session Ttl"},"service_allowlist":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Service Allowlist"},"loosen_delay_seconds":{"type":"integer","title":"Loosen Delay Seconds"},"tags_encrypted":{"type":"boolean","title":"Tags Encrypted"},"delete_grace_seconds":{"type":"integer","title":"Delete Grace Seconds"}},"type":"object","required":["export_mode","max_session_ttl","service_allowlist","loosen_delay_seconds","tags_encrypted","delete_grace_seconds"],"title":"PolicyView"},"PublicKeyResponse":{"properties":{"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service"},"signing_public_key_b64":{"type":"string","title":"Signing Public Key B64"},"encryption_public_key_b64":{"type":"string","title":"Encryption Public Key B64"}},"type":"object","required":["service","signing_public_key_b64","encryption_public_key_b64"],"title":"PublicKeyResponse"},"RegisterResponse":{"properties":{"api_key":{"type":"string","title":"Api Key","description":"Store this. Presented to authenticate. Not recoverable."},"identifier":{"type":"string","title":"Identifier"},"root_public_key_b64":{"type":"string","title":"Root Public Key B64"},"claim_url":{"type":"string","title":"Claim Url","description":"Not active yet. Send this link to your human — authentication fails until they visit it and acknowledge the registration."}},"type":"object","required":["api_key","identifier","root_public_key_b64","claim_url"],"title":"RegisterResponse"},"ServiceInfo":{"properties":{"service":{"type":"string","title":"Service"},"signing_public_key_b64":{"type":"string","title":"Signing Public Key B64"},"encryption_public_key_b64":{"type":"string","title":"Encryption Public Key B64"},"revoked":{"type":"boolean","title":"Revoked"},"created_at":{"type":"number","title":"Created At"}},"type":"object","required":["service","signing_public_key_b64","encryption_public_key_b64","revoked","created_at"],"title":"ServiceInfo"},"SessionInfo":{"properties":{"token":{"type":"string","title":"Token"},"created_at":{"type":"number","title":"Created At"},"last_used_at":{"type":"number","title":"Last Used At"},"expires_at":{"type":"number","title":"Expires At"}},"type":"object","required":["token","created_at","last_used_at","expires_at"],"title":"SessionInfo"},"SignRequest":{"properties":{"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"message_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message B64"},"service":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service"}},"type":"object","title":"SignRequest"},"SignResponse":{"properties":{"signature_b64":{"type":"string","title":"Signature B64"},"public_key_b64":{"type":"string","title":"Public Key B64"}},"type":"object","required":["signature_b64","public_key_b64"],"title":"SignResponse"},"SolveRequest":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"answer":{"type":"string","title":"Answer"},"return_key":{"type":"boolean","title":"Return Key","description":"If true, return the raw spirit key instead of opening a session.","default":false}},"type":"object","required":["challenge_id","answer"],"title":"SolveRequest"},"StepUpRequest":{"properties":{"challenge_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Id"},"answer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Answer"}},"type":"object","title":"StepUpRequest"},"StepUpResponse":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"puzzle":{"type":"string","title":"Puzzle"},"ttl_seconds":{"type":"integer","title":"Ttl Seconds"}},"type":"object","required":["challenge_id","puzzle","ttl_seconds"],"title":"StepUpResponse"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifyRequest":{"properties":{"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"},"message_b64":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message B64"},"signature_b64":{"type":"string","title":"Signature B64"},"public_key_b64":{"type":"string","title":"Public Key B64"}},"type":"object","required":["signature_b64","public_key_b64"],"title":"VerifyRequest"},"VerifyResponse":{"properties":{"valid":{"type":"boolean","title":"Valid"}},"type":"object","required":["valid"],"title":"VerifyResponse"}}}}