{"openapi":"3.1.0","info":{"title":"AnchorRegistry API","version":"1.0.0"},"paths":{"/health":{"get":{"tags":["system"],"summary":"Health","description":"Liveness check — Railway uses this to verify the container is up.","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthResponse"}}}}}}},"/status":{"get":{"tags":["system"],"summary":"Status","description":"Readiness check — reports chain connectivity, contract address,\noperator wallet funding, and total anchor count.","operationId":"status_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatusResponse"}}}}}}},"/status/nonce":{"get":{"tags":["system"],"summary":"Nonce Status","description":"Nonce health — monitoring endpoint. See docs/BUG-nonce-queue-exhaustion.md.\n    gap == 0            → status \"ok\"\n    1 <= gap <= 2       → status \"pending\"   (normal in-flight churn)\n    gap  >  2           → status \"stuck\"     (likely wedged — page oncall)","operationId":"nonce_status_status_nonce_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/registration/reserve":{"post":{"tags":["register"],"summary":"Reserve Ar Ids","description":"Pre-generate AR-IDs before payment so the client can compute:\n  treeId          = keccak256(K ‖ rootArId)\n  tokenCommitment = keccak256(K ‖ arId)\nBoth are computed client-side and passed through to the contract.\nK (the Anchor Key, 32 random bytes) is never transmitted to this server.\nSee ar-ui/app/register/confirm/page.tsx for the exact construction\nand the paper spec (anchorregistry_gt.pdf §4.2).","operationId":"reserve_ar_ids_registration_reserve_post","parameters":[{"name":"count","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Count"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/status/{session_id}":{"get":{"tags":["register"],"summary":"Get Registration Status","description":"Poll registration status by Stripe session ID.","operationId":"get_registration_status_registration_status__session_id__get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/seal":{"post":{"tags":["register"],"summary":"Seal Tree","description":"Seal a provenance tree on-chain via registerSeal().\nRequires a valid tokenCommitment proving the caller holds the ownershipToken.","operationId":"seal_tree_registration_seal_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SealRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/retraction":{"post":{"tags":["register"],"summary":"Retract Anchor","description":"Register a RETRACTION on-chain via registerTargeted().\nRequires a valid tokenCommitment proving the caller holds the ownershipToken.","operationId":"retract_anchor_registration_retraction_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetractionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/review":{"post":{"tags":["register"],"summary":"Register Review","description":"Register a REVIEW anchor targeting an existing anchor (operator-only governance).","operationId":"register_review_registration_review_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/void":{"post":{"tags":["register"],"summary":"Register Void","description":"Register a VOID anchor targeting an existing anchor (operator-only governance).","operationId":"register_void_registration_void_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoidRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/affirmed":{"post":{"tags":["register"],"summary":"Register Affirmed","description":"Register an AFFIRMED anchor targeting an existing anchor (operator-only governance).","operationId":"register_affirmed_registration_affirmed_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AffirmedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/registration/pending":{"post":{"tags":["register"],"summary":"Create Pending Registration","description":"Pre-payment manifest storage. Supports three tiers:\n\n    Proof ($5):  1 manifest — single on-chain TX\n    Pair  ($9):  2 manifests — A→B\n    Tree  ($12): 3 manifests — A→B and A→C (branching from root)\n\nparentHash links are wired server-side at registration time.\nStripe metadata: pending_id, manifest_hash (first), artifact_type (first).\nAll artifact data stays in Supabase pending_registrations table.","operationId":"create_pending_registration_registration_pending_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PendingRegistrationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/webhook/stripe":{"post":{"tags":["register"],"summary":"Stripe Webhook","description":"Stripe webhook — checkout.session.completed only.\n\nDispatches to the correct registration handler based on tier:\n    proof → single TX\n    pair  → 2 TXs, A→B\n    tree  → 3 TXs, A→B and A→C (root branches to both children)","operationId":"stripe_webhook_webhook_stripe_post","parameters":[{"name":"stripe-signature","in":"header","required":false,"schema":{"type":"string","title":"Stripe-Signature"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/register/account":{"post":{"tags":["account"],"summary":"Register Account","description":"Buy an ACCOUNT anchor. Payment verification is handled by the x402 SDK\nmiddleware (see app/main.py); by the time this handler runs, the payment\nhas cleared the facilitator and the matched requirements are on\nrequest.state.","operationId":"register_account_register_account_post","requestBody":{"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/AccountRequest"}],"title":"Body","default":{"capacity_tier":"starter"}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"50"},"protocols":[{"x402":{}}]},"extensions":{"bazaar":{"info":{"input":{"capacity_tier":"starter"},"output":{"ar_id":"AR-2026-XXXXXXX","anchor_key":"a3f8c2e1...","capacity":50,"tier":"starter","tx_hash":"0x1234567890abcdef...","block_number":12345678,"rail":"x402","status":"confirmed","verify_url":"https://anchorregistry.ai/AR-2026-XXXXXXX"}},"schema":{"type":"object","properties":{"input":{"type":"object","properties":{"capacity_tier":{"type":"string","enum":["starter","builder"],"description":"starter ($50 / 50 anchors) or builder ($100 / 200 anchors)"}},"required":["capacity_tier"]},"output":{"type":"object","properties":{"ar_id":{"type":"string"},"anchor_key":{"type":"string"},"capacity":{"type":"integer"},"tier":{"type":"string"},"tx_hash":{"type":"string"},"block_number":{"type":"integer"},"rail":{"type":"string"},"status":{"type":"string"},"verify_url":{"type":"string"}}}}}}},"x-input-schema":{"type":"object","properties":{"capacity_tier":{"type":"string","enum":["starter","builder"],"default":"starter","description":"starter ($50 / 50 anchors) or builder ($100 / 200 anchors)"},"parent_ar_id":{"type":"string","description":"Optional parent AR-ID"},"wallet_address":{"type":"string","description":"Required when ToS enforcement is enabled"},"tos_signature":{"type":"string","description":"Wallet signature over the ToS consent message"}},"required":[]},"x-output-schema":{"type":"object","properties":{"ar_id":{"type":"string"},"anchor_key":{"type":"string","description":"Bearer key for subsequent artifact registration — shown ONCE"},"capacity":{"type":"integer"},"tier":{"type":"string","enum":["starter","builder"]},"tx_hash":{"type":"string"},"block_number":{"type":"integer"},"rail":{"type":"string"},"status":{"type":"string","enum":["confirmed","queued"]},"verify_url":{"type":"string"}}}}},"/register/account/topup":{"post":{"tags":["account"],"summary":"Topup Account","description":"Extend an existing ACCOUNT's capacity via x402 payment.","operationId":"topup_account_register_account_topup_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopupRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"50"},"protocols":[{"x402":{}}]},"extensions":{"bazaar":{"info":{"input":{"anchor_key":"<account_anchor_key>","capacity_tier":"starter"},"output":{"ar_id":"AR-2026-YYYYYYY","root_ar_id":"AR-2026-XXXXXXX","new_capacity":50,"total_capacity":100,"used":3,"remaining":97,"tx_hash":"0x1234567890abcdef...","rail":"x402","status":"confirmed"}},"schema":{"type":"object","properties":{"input":{"type":"object","properties":{"anchor_key":{"type":"string","description":"ACCOUNT anchor key"},"capacity_tier":{"type":"string","enum":["starter","builder"]}},"required":["anchor_key","capacity_tier"]},"output":{"type":"object","properties":{"ar_id":{"type":"string"},"root_ar_id":{"type":"string"},"new_capacity":{"type":"integer"},"total_capacity":{"type":"integer"},"used":{"type":"integer"},"remaining":{"type":"integer"},"tx_hash":{"type":"string"},"rail":{"type":"string"},"status":{"type":"string"}}}}}}},"x-input-schema":{"type":"object","properties":{"anchor_key":{"type":"string","description":"Anchor key of the ACCOUNT to top up"},"capacity_tier":{"type":"string","enum":["starter","builder"],"default":"starter","description":"starter (+$50 / +50 anchors) or builder (+$100 / +200 anchors)"}},"required":["anchor_key"]},"x-output-schema":{"type":"object","properties":{"ar_id":{"type":"string"},"root_ar_id":{"type":"string"},"new_capacity":{"type":"integer"},"total_capacity":{"type":"integer"},"used":{"type":"integer"},"remaining":{"type":"integer"},"tx_hash":{"type":"string"},"rail":{"type":"string"},"status":{"type":"string","enum":["confirmed","queued"]}}}}},"/register/x402":{"post":{"tags":["account"],"summary":"Register With Account","description":"Register an artifact against an ACCOUNT's remaining capacity.\nAuth: `Authorization: Bearer <anchor_key>`.","operationId":"register_with_account_register_x402_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountRegistrationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/{anchor_key}/balance":{"get":{"tags":["account"],"summary":"Get Account Balance","description":"Return tree-derived ACCOUNT balance. 401 on unknown key.","operationId":"get_account_balance_account__anchor_key__balance_get","parameters":[{"name":"anchor_key","in":"path","required":true,"schema":{"type":"string","title":"Anchor Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/{anchor_key}/tree":{"get":{"tags":["account"],"summary":"Get Account Tree","description":"Return the full ACCOUNT subtree — every ACCOUNT top-up node plus every\nregistered artifact under the root — along with current balance.","operationId":"get_account_tree_account__anchor_key__tree_get","parameters":[{"name":"anchor_key","in":"path","required":true,"schema":{"type":"string","title":"Anchor Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/verify/hash/{manifest_hash}":{"get":{"tags":["verify"],"summary":"Verify By Manifest Hash","description":"Resolve a manifest hash to its anchor record.\nSupports anchorregistry.ai/sha256:abc123... resolution.\nVerification works even if AR-ID is stripped from an artifact.","operationId":"verify_by_manifest_hash_verify_hash__manifest_hash__get","parameters":[{"name":"manifest_hash","in":"path","required":true,"schema":{"type":"string","title":"Manifest Hash"}}],"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"}}}}}}},"/verify/{ar_id}":{"get":{"tags":["verify"],"summary":"Verify By Ar Id","description":"Resolve an AR-ID to its full anchor record.\nChecks Redis cache first, then Supabase, then verifies on-chain.\nPrimary endpoint for anchorregistry.com/verify/:id\nPass ?fresh=1 to bypass Redis and force a live DB read (also re-caches).","operationId":"verify_by_ar_id_verify__ar_id__get","parameters":[{"name":"ar_id","in":"path","required":true,"schema":{"type":"string","title":"Ar Id"}},{"name":"fresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Fresh"}}],"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"}}}}}}},"/tree/{ar_id}":{"get":{"tags":["verify"],"summary":"Get Tree","description":"Return the full subtree rooted at ar_id as a flat array of complete anchor\nrecords sorted by depth. BFS traversal capped at max_depth levels (default 10)\nand max_nodes total nodes (default 50). truncated=true if the cap was hit.\nDesigned for machine consumption — AI agents, automated verifiers, tree renderers.","operationId":"get_tree_tree__ar_id__get","parameters":[{"name":"ar_id","in":"path","required":true,"schema":{"type":"string","title":"Ar Id"}},{"name":"max_depth","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Max Depth"}},{"name":"max_nodes","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Max Nodes"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TreeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/.well-known/x402":{"get":{"tags":["discovery"],"summary":"X402 Discovery","operationId":"x402_discovery__well_known_x402_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AccountRegistrationRequest":{"properties":{"manifest_hash":{"type":"string","title":"Manifest Hash"},"artifact_type":{"type":"string","title":"Artifact Type"},"title":{"type":"string","title":"Title"},"author":{"type":"string","title":"Author","default":""},"descriptor":{"type":"string","title":"Descriptor","default":""},"parent_hash":{"type":"string","title":"Parent Hash","default":""},"registered_at":{"type":"string","title":"Registered At","default":""},"notes":{"type":"string","title":"Notes","default":""},"git_hash":{"type":"string","title":"Git Hash","default":""},"license":{"type":"string","title":"License","default":""},"language":{"type":"string","title":"Language","default":""},"version":{"type":"string","title":"Version","default":""},"doi":{"type":"string","title":"Doi","default":""},"institution":{"type":"string","title":"Institution","default":""},"co_authors":{"type":"string","title":"Co Authors","default":""},"data_version":{"type":"string","title":"Data Version","default":""},"format":{"type":"string","title":"Format","default":""},"row_count":{"type":"string","title":"Row Count","default":""},"schema_url":{"type":"string","title":"Schema Url","default":""},"model_version":{"type":"string","title":"Model Version","default":""},"architecture":{"type":"string","title":"Architecture","default":""},"parameters":{"type":"string","title":"Parameters","default":""},"training_dataset":{"type":"string","title":"Training Dataset","default":""},"agent_version":{"type":"string","title":"Agent Version","default":""},"runtime":{"type":"string","title":"Runtime","default":""},"capabilities":{"type":"string","title":"Capabilities","default":""},"media_type":{"type":"string","title":"Media Type","default":""},"duration":{"type":"string","title":"Duration","default":""},"isrc":{"type":"string","title":"Isrc","default":""},"text_type":{"type":"string","title":"Text Type","default":""},"isbn":{"type":"string","title":"Isbn","default":""},"publisher":{"type":"string","title":"Publisher","default":""},"platform":{"type":"string","title":"Platform","default":""},"description":{"type":"string","title":"Description","default":""},"file_manifest_hash":{"type":"string","title":"File Manifest Hash","default":""},"post_id":{"type":"string","title":"Post Id","default":""},"post_date":{"type":"string","title":"Post Date","default":""},"post_url":{"type":"string","title":"Post Url","default":""},"executor":{"type":"string","title":"Executor","default":""},"event_type":{"type":"string","title":"Event Type","default":""},"event_date":{"type":"string","title":"Event Date","default":""},"location":{"type":"string","title":"Location","default":""},"orchestrator":{"type":"string","title":"Orchestrator","default":""},"chain":{"type":"string","title":"Chain","default":""},"asset_type":{"type":"string","title":"Asset Type","default":""},"contract_address":{"type":"string","title":"Contract Address","default":""},"tx_hash":{"type":"string","title":"Tx Hash","default":""},"token_id":{"type":"string","title":"Token Id","default":""},"block_number":{"type":"string","title":"Block Number","default":""},"receipt_type":{"type":"string","title":"Receipt Type","default":""},"merchant":{"type":"string","title":"Merchant","default":""},"amount":{"type":"string","title":"Amount","default":""},"currency":{"type":"string","title":"Currency","default":""},"order_id":{"type":"string","title":"Order Id","default":""},"receipt_url":{"type":"string","title":"Receipt Url","default":""},"report_type":{"type":"string","title":"Report Type","default":""},"client":{"type":"string","title":"Client","default":""},"engagement":{"type":"string","title":"Engagement","default":""},"authors":{"type":"string","title":"Authors","default":""},"note_type":{"type":"string","title":"Note Type","default":""},"date":{"type":"string","title":"Date","default":""},"participants":{"type":"string","title":"Participants","default":""},"kind":{"type":"string","title":"Kind","default":""},"value":{"type":"string","title":"Value","default":""},"url":{"type":"string","title":"Url","default":""}},"type":"object","required":["manifest_hash","artifact_type","title"],"title":"AccountRegistrationRequest","description":"Manifest body for /register/x402. Mirrors the consumer flow's\nManifestPayload, minus Stripe-tier / reservation fields."},"AccountRequest":{"properties":{"capacity_tier":{"type":"string","title":"Capacity Tier","default":"starter"},"parent_ar_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Ar Id"},"wallet_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Wallet Address"},"tos_signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tos Signature"}},"type":"object","title":"AccountRequest"},"AffirmedRequest":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"target_ar_id":{"type":"string","title":"Target Ar Id"},"affirmed_by":{"type":"string","title":"Affirmed By","default":""},"finding_url":{"type":"string","title":"Finding Url","default":""}},"type":"object","required":["ar_id","target_ar_id"],"title":"AffirmedRequest"},"AnchorRecord":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"manifest_hash":{"type":"string","title":"Manifest Hash"},"artifact_type":{"$ref":"#/components/schemas/ArtifactType"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"author":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Author"},"descriptor":{"type":"string","title":"Descriptor"},"registrant":{"type":"string","title":"Registrant"},"parent_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Hash"},"parent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Type"},"parent_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parent Title"},"depth":{"type":"integer","title":"Depth","default":0},"type_fields":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Type Fields"},"git_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Git Hash"},"license":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"License"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version"},"doi":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doi"},"institution":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Institution"},"co_authors":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Co Authors"},"data_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Data Version"},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format"},"row_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Row Count"},"schema_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Schema Url"},"model_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Version"},"architecture":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Architecture"},"parameters":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parameters"},"training_dataset":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Training Dataset"},"agent_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Version"},"runtime":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Runtime"},"capabilities":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Capabilities"},"media_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Media Type"},"duration":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Duration"},"isrc":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Isrc"},"text_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text Type"},"isbn":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Isbn"},"publisher":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Publisher"},"platform":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Platform"},"post_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Post Id"},"post_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Post Date"},"chain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chain Id"},"asset_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Asset Type"},"contract_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Contract Address"},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Token Id"},"block_num":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Block Num"},"executor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Executor"},"event_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"},"event_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Date"},"location":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location"},"orchestrator":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Orchestrator"},"receipt_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Receipt Type"},"merchant":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Merchant"},"amount":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Amount"},"currency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Currency"},"order_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Order Id"},"report_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Report Type"},"client":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client"},"engagement":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Engagement"},"authors":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authors"},"note_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note Type"},"date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date"},"participants":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Participants"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"jurisdiction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdiction"},"parties":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parties"},"effective_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Effective Date"},"entity_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Type"},"entity_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entity Domain"},"verification_method":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verification Method"},"verification_proof":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verification Proof"},"canonical_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Canonical Url"},"document_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Document Hash"},"proof_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proof Type"},"proof_system":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proof System"},"circuit_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Circuit Id"},"vkey_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Vkey Hash"},"audit_firm":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Audit Firm"},"audit_scope":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Audit Scope"},"verifier_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verifier Url"},"report_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Report Url"},"proof_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Proof Hash"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"replaced_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Replaced By"},"review_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Review Type"},"evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Url"},"review_ar_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Review Ar Id"},"finding_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Finding Url"},"evidence":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence"},"affirmed_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Affirmed By"},"capacity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Capacity"},"file_manifest_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Manifest Hash"},"kind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Value"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"sealed_at_block":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Sealed At Block"},"new_tree_root":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Tree Root"},"seal_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seal Reason"},"is_sealed":{"type":"boolean","title":"Is Sealed","default":false},"is_retracted":{"type":"boolean","title":"Is Retracted","default":false},"retracted_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retracted By"},"tx_hash":{"type":"string","title":"Tx Hash"},"block_number":{"type":"integer","title":"Block Number"},"block_timestamp":{"type":"string","format":"date-time","title":"Block Timestamp"},"registry_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Registry Address"},"verify_url":{"type":"string","title":"Verify Url"},"machine_url":{"type":"string","title":"Machine Url"},"children":{"anyOf":[{"items":{"type":"object"},"type":"array"},{"type":"null"}],"title":"Children"}},"type":"object","required":["ar_id","manifest_hash","artifact_type","descriptor","registrant","tx_hash","block_number","block_timestamp","verify_url","machine_url"],"title":"AnchorRecord"},"ArtifactType":{"type":"string","enum":["CODE","RESEARCH","DATA","MODEL","AGENT","MEDIA","TEXT","POST","ONCHAIN","REPORT","NOTE","WEBSITE","EVENT","RECEIPT","LEGAL","ENTITY","PROOF","SEAL","RETRACTION","REVIEW","VOID","AFFIRMED","ACCOUNT","OTHER"],"title":"ArtifactType"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HealthResponse":{"properties":{"status":{"type":"string","enum":["ok","degraded","down"],"title":"Status"},"version":{"type":"string","title":"Version","default":"1.0.0"}},"type":"object","required":["status"],"title":"HealthResponse"},"ManifestPayload":{"properties":{"manifest_hash":{"type":"string","title":"Manifest Hash"},"registered_at":{"type":"string","title":"Registered At","default":""},"anchor_key_email":{"type":"string","title":"Anchor Key Email","default":""},"artifact_type":{"type":"string","title":"Artifact Type"},"title":{"type":"string","title":"Title"},"author":{"type":"string","title":"Author","default":""},"descriptor":{"type":"string","title":"Descriptor","default":""},"parent_hash":{"type":"string","title":"Parent Hash","default":""},"tier":{"type":"string","title":"Tier","default":"proof"},"notes":{"type":"string","title":"Notes","default":""},"git_hash":{"type":"string","title":"Git Hash","default":""},"license":{"type":"string","title":"License","default":""},"language":{"type":"string","title":"Language","default":""},"version":{"type":"string","title":"Version","default":""},"doi":{"type":"string","title":"Doi","default":""},"institution":{"type":"string","title":"Institution","default":""},"co_authors":{"type":"string","title":"Co Authors","default":""},"data_version":{"type":"string","title":"Data Version","default":""},"format":{"type":"string","title":"Format","default":""},"row_count":{"type":"string","title":"Row Count","default":""},"schema_url":{"type":"string","title":"Schema Url","default":""},"model_version":{"type":"string","title":"Model Version","default":""},"architecture":{"type":"string","title":"Architecture","default":""},"parameters":{"type":"string","title":"Parameters","default":""},"training_dataset":{"type":"string","title":"Training Dataset","default":""},"agent_version":{"type":"string","title":"Agent Version","default":""},"runtime":{"type":"string","title":"Runtime","default":""},"capabilities":{"type":"string","title":"Capabilities","default":""},"media_type":{"type":"string","title":"Media Type","default":""},"duration":{"type":"string","title":"Duration","default":""},"isrc":{"type":"string","title":"Isrc","default":""},"text_type":{"type":"string","title":"Text Type","default":""},"isbn":{"type":"string","title":"Isbn","default":""},"publisher":{"type":"string","title":"Publisher","default":""},"platform":{"type":"string","title":"Platform","default":""},"description":{"type":"string","title":"Description","default":""},"file_manifest_hash":{"type":"string","title":"File Manifest Hash","default":""},"post_id":{"type":"string","title":"Post Id","default":""},"post_date":{"type":"string","title":"Post Date","default":""},"post_url":{"type":"string","title":"Post Url","default":""},"executor":{"type":"string","title":"Executor","default":""},"event_type":{"type":"string","title":"Event Type","default":""},"event_date":{"type":"string","title":"Event Date","default":""},"location":{"type":"string","title":"Location","default":""},"orchestrator":{"type":"string","title":"Orchestrator","default":""},"chain":{"type":"string","title":"Chain","default":""},"asset_type":{"type":"string","title":"Asset Type","default":""},"contract_address":{"type":"string","title":"Contract Address","default":""},"tx_hash":{"type":"string","title":"Tx Hash","default":""},"token_id":{"type":"string","title":"Token Id","default":""},"block_number":{"type":"string","title":"Block Number","default":""},"receipt_type":{"type":"string","title":"Receipt Type","default":""},"merchant":{"type":"string","title":"Merchant","default":""},"amount":{"type":"string","title":"Amount","default":""},"currency":{"type":"string","title":"Currency","default":""},"order_id":{"type":"string","title":"Order Id","default":""},"receipt_url":{"type":"string","title":"Receipt Url","default":""},"doc_type":{"type":"string","title":"Doc Type","default":""},"jurisdiction":{"type":"string","title":"Jurisdiction","default":""},"parties":{"type":"string","title":"Parties","default":""},"effective_date":{"type":"string","title":"Effective Date","default":""},"proof_type":{"type":"string","title":"Proof Type","default":""},"proof_system":{"type":"string","title":"Proof System","default":""},"circuit_id":{"type":"string","title":"Circuit Id","default":""},"vkey_hash":{"type":"string","title":"Vkey Hash","default":""},"audit_firm":{"type":"string","title":"Audit Firm","default":""},"audit_scope":{"type":"string","title":"Audit Scope","default":""},"verifier_url":{"type":"string","title":"Verifier Url","default":""},"report_url":{"type":"string","title":"Report Url","default":""},"proof_hash":{"type":"string","title":"Proof Hash","default":""},"kind":{"type":"string","title":"Kind","default":""},"value":{"type":"string","title":"Value","default":""},"url":{"type":"string","title":"Url","default":""},"report_type":{"type":"string","title":"Report Type","default":""},"client":{"type":"string","title":"Client","default":""},"engagement":{"type":"string","title":"Engagement","default":""},"authors":{"type":"string","title":"Authors","default":""},"note_type":{"type":"string","title":"Note Type","default":""},"date":{"type":"string","title":"Date","default":""},"participants":{"type":"string","title":"Participants","default":""},"tree_id":{"type":"string","title":"Tree Id","default":""},"token_commitment":{"type":"string","title":"Token Commitment","default":""},"reserved_ar_id":{"type":"string","title":"Reserved Ar Id","default":""}},"type":"object","required":["manifest_hash","artifact_type","title"],"title":"ManifestPayload"},"PendingRegistrationRequest":{"properties":{"manifests":{"anyOf":[{"items":{"$ref":"#/components/schemas/ManifestPayload"},"type":"array"},{"type":"null"}],"title":"Manifests"},"tier":{"type":"string","title":"Tier","default":"proof"},"manifest_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Manifest Hash"},"registered_at":{"type":"string","title":"Registered At","default":""},"anchor_key_email":{"type":"string","title":"Anchor Key Email","default":""},"artifact_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Artifact Type"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"author":{"type":"string","title":"Author","default":""},"descriptor":{"type":"string","title":"Descriptor","default":""},"parent_hash":{"type":"string","title":"Parent Hash","default":""},"notes":{"type":"string","title":"Notes","default":""},"git_hash":{"type":"string","title":"Git Hash","default":""},"license":{"type":"string","title":"License","default":""},"language":{"type":"string","title":"Language","default":""},"version":{"type":"string","title":"Version","default":""},"doi":{"type":"string","title":"Doi","default":""},"institution":{"type":"string","title":"Institution","default":""},"co_authors":{"type":"string","title":"Co Authors","default":""},"data_version":{"type":"string","title":"Data Version","default":""},"format":{"type":"string","title":"Format","default":""},"row_count":{"type":"string","title":"Row Count","default":""},"schema_url":{"type":"string","title":"Schema Url","default":""},"model_version":{"type":"string","title":"Model Version","default":""},"architecture":{"type":"string","title":"Architecture","default":""},"parameters":{"type":"string","title":"Parameters","default":""},"training_dataset":{"type":"string","title":"Training Dataset","default":""},"agent_version":{"type":"string","title":"Agent Version","default":""},"runtime":{"type":"string","title":"Runtime","default":""},"capabilities":{"type":"string","title":"Capabilities","default":""},"media_type":{"type":"string","title":"Media Type","default":""},"duration":{"type":"string","title":"Duration","default":""},"isrc":{"type":"string","title":"Isrc","default":""},"text_type":{"type":"string","title":"Text Type","default":""},"isbn":{"type":"string","title":"Isbn","default":""},"publisher":{"type":"string","title":"Publisher","default":""},"platform":{"type":"string","title":"Platform","default":""},"description":{"type":"string","title":"Description","default":""},"file_manifest_hash":{"type":"string","title":"File Manifest Hash","default":""},"post_id":{"type":"string","title":"Post Id","default":""},"post_date":{"type":"string","title":"Post Date","default":""},"post_url":{"type":"string","title":"Post Url","default":""},"executor":{"type":"string","title":"Executor","default":""},"event_type":{"type":"string","title":"Event Type","default":""},"event_date":{"type":"string","title":"Event Date","default":""},"location":{"type":"string","title":"Location","default":""},"orchestrator":{"type":"string","title":"Orchestrator","default":""},"chain":{"type":"string","title":"Chain","default":""},"asset_type":{"type":"string","title":"Asset Type","default":""},"contract_address":{"type":"string","title":"Contract Address","default":""},"tx_hash":{"type":"string","title":"Tx Hash","default":""},"token_id":{"type":"string","title":"Token Id","default":""},"block_number":{"type":"string","title":"Block Number","default":""},"receipt_type":{"type":"string","title":"Receipt Type","default":""},"merchant":{"type":"string","title":"Merchant","default":""},"amount":{"type":"string","title":"Amount","default":""},"currency":{"type":"string","title":"Currency","default":""},"order_id":{"type":"string","title":"Order Id","default":""},"receipt_url":{"type":"string","title":"Receipt Url","default":""},"doc_type":{"type":"string","title":"Doc Type","default":""},"jurisdiction":{"type":"string","title":"Jurisdiction","default":""},"parties":{"type":"string","title":"Parties","default":""},"effective_date":{"type":"string","title":"Effective Date","default":""},"proof_type":{"type":"string","title":"Proof Type","default":""},"proof_system":{"type":"string","title":"Proof System","default":""},"circuit_id":{"type":"string","title":"Circuit Id","default":""},"vkey_hash":{"type":"string","title":"Vkey Hash","default":""},"audit_firm":{"type":"string","title":"Audit Firm","default":""},"audit_scope":{"type":"string","title":"Audit Scope","default":""},"verifier_url":{"type":"string","title":"Verifier Url","default":""},"report_url":{"type":"string","title":"Report Url","default":""},"proof_hash":{"type":"string","title":"Proof Hash","default":""},"kind":{"type":"string","title":"Kind","default":""},"value":{"type":"string","title":"Value","default":""},"url":{"type":"string","title":"Url","default":""},"report_type":{"type":"string","title":"Report Type","default":""},"client":{"type":"string","title":"Client","default":""},"engagement":{"type":"string","title":"Engagement","default":""},"authors":{"type":"string","title":"Authors","default":""},"note_type":{"type":"string","title":"Note Type","default":""},"date":{"type":"string","title":"Date","default":""},"participants":{"type":"string","title":"Participants","default":""},"tree_id":{"type":"string","title":"Tree Id","default":""},"token_commitment":{"type":"string","title":"Token Commitment","default":""},"reserved_ar_id":{"type":"string","title":"Reserved Ar Id","default":""}},"type":"object","title":"PendingRegistrationRequest","description":"Proof:      single manifest fields at top level, tier='proof'\nPair/Tree:  manifests list + tier field"},"RetractionRequest":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"target_ar_id":{"type":"string","title":"Target Ar Id"},"reason":{"type":"string","title":"Reason","default":""},"replaced_by":{"type":"string","title":"Replaced By","default":""},"token_commitment":{"type":"string","title":"Token Commitment"}},"type":"object","required":["ar_id","target_ar_id","token_commitment"],"title":"RetractionRequest"},"ReviewRequest":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"target_ar_id":{"type":"string","title":"Target Ar Id"},"review_type":{"type":"string","title":"Review Type","default":""},"evidence_url":{"type":"string","title":"Evidence Url","default":""}},"type":"object","required":["ar_id","target_ar_id"],"title":"ReviewRequest"},"SealRequest":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"new_tree_root":{"type":"string","title":"New Tree Root","default":""},"reason":{"type":"string","title":"Reason","default":""},"token_commitment":{"type":"string","title":"Token Commitment"}},"type":"object","required":["ar_id","token_commitment"],"title":"SealRequest"},"StatusResponse":{"properties":{"status":{"type":"string","enum":["ok","degraded","down"],"title":"Status"},"version":{"type":"string","title":"Version","default":"1.0.0"},"network":{"type":"string","title":"Network"},"contract":{"type":"string","title":"Contract"},"block_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Block Number"},"total_anchors":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Anchors"},"operator_funded":{"type":"boolean","title":"Operator Funded","default":false}},"type":"object","required":["status","network","contract"],"title":"StatusResponse"},"TopupRequest":{"properties":{"anchor_key":{"type":"string","title":"Anchor Key"},"capacity_tier":{"type":"string","title":"Capacity Tier","default":"starter"}},"type":"object","required":["anchor_key"],"title":"TopupRequest"},"TreeResponse":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"found":{"type":"boolean","title":"Found"},"nodes":{"items":{"$ref":"#/components/schemas/AnchorRecord"},"type":"array","title":"Nodes","default":[]},"total":{"type":"integer","title":"Total","default":0},"truncated":{"type":"boolean","title":"Truncated","default":false}},"type":"object","required":["ar_id","found"],"title":"TreeResponse"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifyResponse":{"properties":{"found":{"type":"boolean","title":"Found"},"anchor":{"anyOf":[{"$ref":"#/components/schemas/AnchorRecord"},{"type":"null"}]},"verified_on_chain":{"type":"boolean","title":"Verified On Chain","default":false}},"type":"object","required":["found"],"title":"VerifyResponse"},"VoidRequest":{"properties":{"ar_id":{"type":"string","title":"Ar Id"},"target_ar_id":{"type":"string","title":"Target Ar Id"},"review_ar_id":{"type":"string","title":"Review Ar Id","default":""},"finding_url":{"type":"string","title":"Finding Url","default":""},"evidence":{"type":"string","title":"Evidence","default":""}},"type":"object","required":["ar_id","target_ar_id"],"title":"VoidRequest"}}}}