{"openapi":"3.1.0","info":{"title":"ONAA API (Open Network for AI Agents)","description":"Find stores and marketplaces AI buying agents can actually buy from, with each store's tested checkout requirements (UCP, Shop MCP); links only. Also lists payment and other providers and buyer and seller agents. This registry API holds listings and trust metadata only; it never relays buyer/seller transactions, holds funds, or hosts seller data.","version":"0.1.0"},"paths":{"/v1/health":{"get":{"tags":["meta"],"summary":"Health","operationId":"health_v1_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/specs":{"get":{"tags":["meta"],"summary":"Specs","operationId":"specs_v1_specs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/terms":{"get":{"tags":["meta"],"summary":"Current registry terms: version, SHA-256 and full text","operationId":"terms_v1_terms_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/terms.md":{"get":{"tags":["meta"],"summary":"Current registry terms text","operationId":"terms_text_v1_terms_md_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/.well-known/onaa-registry.json":{"get":{"tags":["meta"],"summary":"ONAA's own discovery metadata (project convention, NOT an A2A standard document)","operationId":"well_known__well_known_onaa_registry_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/llms.txt":{"get":{"tags":["meta"],"summary":"Plain-text onboarding for LLM agents","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/llms-full.txt":{"get":{"tags":["meta"],"summary":"llms.txt plus every listed store and its tested checkout, in one plain-text file","operationId":"llms_full_txt_llms_full_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/v1/reports":{"post":{"tags":["trust"],"summary":"Report abuse, impersonation or a broken listing","operationId":"report_v1_reports_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/admin/discovered":{"post":{"tags":["admin"],"summary":"Import a publicly observed, unclaimed agent (discovery pipeline)","operationId":"import_discovered_v1_admin_discovered_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DiscoveredCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/admin/discovered/services":{"post":{"tags":["admin"],"summary":"Import a publicly documented, unregistered service provider (no endpoint needed)","operationId":"import_discovered_service_v1_admin_discovered_services_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DiscoveredServiceCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/admin/listings/{listing_id}/suspend":{"post":{"tags":["admin"],"summary":"Suspend","operationId":"suspend_v1_admin_listings__listing_id__suspend_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}},{"name":"reason","in":"query","required":false,"schema":{"type":"string","default":"policy","title":"Reason"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/agent/ucp-profile.json":{"get":{"tags":["meta"],"summary":"ONAA's UCP platform (agent) profile, sent as UCP-Agent when the checkout checker probes stores","operationId":"ucp_agent_profile_agent_ucp_profile_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/admin/listings/{listing_id}/agent-checkout":{"post":{"tags":["admin"],"summary":"Record ONAA's checkout probe for a buying channel (never a purchase)","operationId":"record_agent_checkout_v1_admin_listings__listing_id__agent_checkout_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCheckoutObservation"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/jobs/expire-verifications":{"post":{"tags":["admin"],"summary":"Clear lapsed endpoint-control proofs now (also runs lazily every minute)","operationId":"run_expiry_v1_admin_jobs_expire_verifications_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/admin/jobs/health-checks":{"post":{"tags":["admin"],"summary":"Probe up to `limit` listings, least recently checked first (cron target)","operationId":"run_health_v1_admin_jobs_health_checks_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/buying/stores":{"get":{"tags":["buying"],"summary":"Stores an agent can buy from under your conditions (ship-to, payment, pay alone)","operationId":"stores_v1_buying_stores_get","parameters":[{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":2},{"type":"null"}],"description":"ISO 3166-1 country to ship to, e.g. KR","title":"Country"},"description":"ISO 3166-1 country to ship to, e.g. KR"},{"name":"agent","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"your agent or platform, e.g. gemini, chatgpt, claude","title":"Agent"},"description":"your agent or platform, e.g. gemini, chatgpt, claude"},{"name":"payment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"payment methods you or your buyer can use: shop_pay, card, google_pay (comma-separated or repeated)","title":"Payment"},"description":"payment methods you or your buyer can use: shop_pay, card, google_pay (comma-separated or repeated)"},{"name":"pay_alone","in":"query","required":false,"schema":{"type":"boolean","description":"only stores where the agent can pay without the buyer each time (observed: after a one-time Shop Pay link)","default":false,"title":"Pay Alone"},"description":"only stores where the agent can pay without the buyer each time (observed: after a one-time Shop Pay link)"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"description":"words in the store name or description; product search stays with each store","title":"Q"},"description":"words in the store name or description; product search stays with each store"},{"name":"include","in":"query","required":false,"schema":{"enum":["buyable","possible","all"],"type":"string","description":"buyable = yes answers only; possible (default) adds 'maybe' (e.g. delivery untested); all adds no/unknown with reasons","default":"possible","title":"Include"},"description":"buyable = yes answers only; possible (default) adds 'maybe' (e.g. delivery untested); all adds no/unknown with reasons"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/buying/check":{"get":{"tags":["buying"],"summary":"Can I buy at these stores, and how? (ids, domains or product URLs, up to 25)","operationId":"check_v1_buying_check_get","parameters":[{"name":"store","in":"query","required":true,"schema":{"type":"array","items":{"type":"string"},"description":"svc_ id, store domain or any URL on the store; repeat or comma-separate, e.g. the shops in Shop MCP results","title":"Store"},"description":"svc_ id, store domain or any URL on the store; repeat or comma-separate, e.g. the shops in Shop MCP results"},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":2},{"type":"null"}],"description":"ISO 3166-1 country to ship to, e.g. KR","title":"Country"},"description":"ISO 3166-1 country to ship to, e.g. KR"},{"name":"agent","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"your agent or platform, e.g. gemini, chatgpt, claude","title":"Agent"},"description":"your agent or platform, e.g. gemini, chatgpt, claude"},{"name":"payment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"payment methods you or your buyer can use: shop_pay, card, google_pay (comma-separated or repeated)","title":"Payment"},"description":"payment methods you or your buyer can use: shop_pay, card, google_pay (comma-separated or repeated)"},{"name":"pay_alone","in":"query","required":false,"schema":{"type":"boolean","description":"only stores where the agent can pay without the buyer each time (observed: after a one-time Shop Pay link)","default":false,"title":"Pay Alone"},"description":"only stores where the agent can pay without the buyer each time (observed: after a one-time Shop Pay link)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/operators":{"post":{"tags":["operators"],"summary":"Create an operator account and receive an API key (shown once)","operationId":"create_operator_v1_operators_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorCreated"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/operators/me":{"get":{"tags":["operators"],"summary":"Me","operationId":"me_v1_operators_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorOut"}}}}},"security":[{"HTTPBearer":[]}]},"delete":{"tags":["operators"],"summary":"Deactivate account; delists all owned listings","operationId":"deactivate_v1_operators_me_delete","responses":{"204":{"description":"Successful Response"}},"security":[{"HTTPBearer":[]}]},"patch":{"tags":["operators"],"summary":"Update the operator profile (optional linkage of a self-registered agent to a person/org)","operationId":"update_me_v1_operators_me_patch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorUpdate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/operators/me/keys/rotate":{"post":{"tags":["operators"],"summary":"Revoke all existing keys and issue a new one","operationId":"rotate_key_v1_operators_me_keys_rotate_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperatorCreated"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/self-register":{"post":{"tags":["self-registration"],"summary":"Agent self-registration, step 1: submit the listing and receive an endpoint-control challenge","operationId":"start_v1_self_register_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelfRegistrationStart"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelfRegistrationChallenge"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/self-register/{registration_id}/complete":{"post":{"tags":["self-registration"],"summary":"Agent self-registration, step 2: prove endpoint control and receive an agent API key","operationId":"complete_v1_self_register__registration_id__complete_post","parameters":[{"name":"registration_id","in":"path","required":true,"schema":{"type":"string","title":"Registration Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelfRegistrationComplete"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelfRegistrationCompleted"}}}},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SelfRegistrationFailed"}}},"description":"Unprocessable Entity"}}}},"/v1/agents":{"get":{"tags":["agents"],"summary":"Search agents","operationId":"list_listings_v1_agents_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Free text. Every word must match the name, description, service type, role, capability, category, card skill or accepted settlement service, e.g. q=escrow","title":"Q"},"description":"Free text. Every word must match the name, description, service type, role, capability, category, card skill or accepted settlement service, e.g. q=escrow"},{"name":"role","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Role"}},{"name":"capability","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Capability"}},{"name":"region","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Region"}},{"name":"currency","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Currency"}},{"name":"protocol","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Protocol"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Language"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Category"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"service_type filter (services only)","title":"Type"},"description":"service_type filter (services only)"},{"name":"service_type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"alias of type","title":"Service Type"},"description":"alias of type"},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ISO country the buyer is in: serves it (or GLOBAL) and does not exclude it","title":"Country"},"description":"ISO country the buyer is in: serves it (or GLOBAL) and does not exclude it"},{"name":"operating_country","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Operating Country"}},{"name":"data_residency","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ISO country, EU or EEA","title":"Data Residency"},"description":"ISO country, EU or EEA"},{"name":"compliance","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"self-declared, e.g. gdpr","title":"Compliance"},"description":"self-declared, e.g. gdpr"},{"name":"accepts","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"works with this settlement service type, e.g. escrow","title":"Accepts"},"description":"works with this settlement service type, e.g. escrow"},{"name":"pricing_model","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Pricing Model"}},{"name":"quote_mode","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Quote Mode"}},{"name":"payment_terms","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Payment Terms"}},{"name":"payment_method","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"accepts/processes this payment method, e.g. card, bank_transfer, stablecoin","title":"Payment Method"},"description":"accepts/processes this payment method, e.g. card, bank_transfer, stablecoin"},{"name":"payment_network","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"e.g. visa, sepa, upi, pix","title":"Payment Network"},"description":"e.g. visa, sepa, upi, pix"},{"name":"human_approval","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"where a person must approve: none (no approval at any stated stage), at_setup, in_advance (each purchase approved before the agent pays), per_payment, at_release. Self-declared or ONAA-observed, never verified","title":"Human Approval"},"description":"where a person must approve: none (no approval at any stated stage), at_setup, in_advance (each purchase approved before the agent pays), per_payment, at_release. Self-declared or ONAA-observed, never verified"},{"name":"human_setup","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"none, identity_check, application_review, partner_agreement, account_funding","title":"Human Setup"},"description":"none, identity_check, application_review, partner_agreement, account_funding"},{"name":"human_per_payment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"none, pre_authorized, per_transaction","title":"Human Per Payment"},"description":"none, pre_authorized, per_transaction"},{"name":"escrow_release","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"automatic, evaluator, human","title":"Escrow Release"},"description":"automatic, evaluator, human"},{"name":"agent_checkout","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"buying channels: ONAA's last checkout probe, e.g. checkout_ready, buyer_step_required (observation, not verification)","title":"Agent Checkout"},"description":"buying channels: ONAA's last checkout probe, e.g. checkout_ready, buyer_step_required (observation, not verification)"},{"name":"classification","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"scheme:code, e.g. unspsc:43211503","title":"Classification"},"description":"scheme:code, e.g. unspsc:43211503"},{"name":"incoterm","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Incoterm"}},{"name":"auth_method","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Auth Method"}},{"name":"skill","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"A2A card skill id or tag (from the cached card)","title":"Skill"},"description":"A2A card skill id or tag (from the cached card)"},{"name":"updated_since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"ISO 8601; for incremental sync","title":"Updated Since"},"description":"ISO 8601; for incremental sync"},{"name":"sort","in":"query","required":false,"schema":{"enum":["trust","updated","updated_asc"],"type":"string","default":"trust","title":"Sort"}},{"name":"verified_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Verified Only"}},{"name":"certified_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Certified Only"}},{"name":"claimed_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Claimed Only"}},{"name":"reachable_only","in":"query","required":false,"schema":{"type":"boolean","description":"Hide listings whose last 3 health probes failed","default":false,"title":"Reachable Only"},"description":"Hide listings whose last 3 health probes failed"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchPage"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["agents"],"summary":"Register an agent you operate","operationId":"create_v1_agents_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}":{"get":{"tags":["agents"],"summary":"Get One","operationId":"get_one_v1_agents__listing_id__get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"304":{"description":"Not modified (If-None-Match matched the ETag)"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["agents"],"summary":"Update","operationId":"update_v1_agents__listing_id__patch","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["agents"],"summary":"Delist immediately (owner only)","operationId":"delete_v1_agents__listing_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/history":{"get":{"tags":["agents"],"summary":"Public change history (which fields changed, when, at which revision)","operationId":"history_v1_agents__listing_id__history_get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEntry"},"title":"Response History V1 Agents  Listing Id  History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/trust":{"get":{"tags":["agents"],"summary":"Trust","operationId":"trust_v1_agents__listing_id__trust_get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Trust"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/claim":{"post":{"tags":["agents"],"summary":"Claim a discovered (unclaimed) agent; complete domain verification to finish","operationId":"claim_v1_agents__listing_id__claim_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/refresh-card":{"post":{"tags":["agents"],"summary":"Re-fetch the linked Agent Card (owner only)","operationId":"refresh_v1_agents__listing_id__refresh_card_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/health-check":{"post":{"tags":["agents"],"summary":"Probe the endpoint now (owner only)","operationId":"health_check_v1_agents__listing_id__health_check_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/verify-domain":{"post":{"tags":["agents"],"summary":"Start a well-known endpoint-control challenge","operationId":"start_challenge_v1_agents__listing_id__verify_domain_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ChallengeStart"},{"type":"null"}],"title":"Body"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeCreated"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agents/{listing_id}/verification-complete":{"post":{"tags":["agents"],"summary":"Complete Challenge","operationId":"complete_challenge_v1_agents__listing_id__verification_complete_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_complete_challenge_v1_agents__listing_id__verification_complete_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResult"}}}},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResult"}}},"description":"Unprocessable Entity"}}}},"/v1/services":{"get":{"tags":["services"],"summary":"Search services","operationId":"list_listings_v1_services_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Free text. Every word must match the name, description, service type, role, capability, category, card skill or accepted settlement service, e.g. q=escrow","title":"Q"},"description":"Free text. Every word must match the name, description, service type, role, capability, category, card skill or accepted settlement service, e.g. q=escrow"},{"name":"role","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Role"}},{"name":"capability","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Capability"}},{"name":"region","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Region"}},{"name":"currency","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Currency"}},{"name":"protocol","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Protocol"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Language"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Category"}},{"name":"type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"service_type filter (services only)","title":"Type"},"description":"service_type filter (services only)"},{"name":"service_type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"alias of type","title":"Service Type"},"description":"alias of type"},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ISO country the buyer is in: serves it (or GLOBAL) and does not exclude it","title":"Country"},"description":"ISO country the buyer is in: serves it (or GLOBAL) and does not exclude it"},{"name":"operating_country","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Operating Country"}},{"name":"data_residency","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ISO country, EU or EEA","title":"Data Residency"},"description":"ISO country, EU or EEA"},{"name":"compliance","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"self-declared, e.g. gdpr","title":"Compliance"},"description":"self-declared, e.g. gdpr"},{"name":"accepts","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"works with this settlement service type, e.g. escrow","title":"Accepts"},"description":"works with this settlement service type, e.g. escrow"},{"name":"pricing_model","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Pricing Model"}},{"name":"quote_mode","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Quote Mode"}},{"name":"payment_terms","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Payment Terms"}},{"name":"payment_method","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"accepts/processes this payment method, e.g. card, bank_transfer, stablecoin","title":"Payment Method"},"description":"accepts/processes this payment method, e.g. card, bank_transfer, stablecoin"},{"name":"payment_network","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"e.g. visa, sepa, upi, pix","title":"Payment Network"},"description":"e.g. visa, sepa, upi, pix"},{"name":"human_approval","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"where a person must approve: none (no approval at any stated stage), at_setup, in_advance (each purchase approved before the agent pays), per_payment, at_release. Self-declared or ONAA-observed, never verified","title":"Human Approval"},"description":"where a person must approve: none (no approval at any stated stage), at_setup, in_advance (each purchase approved before the agent pays), per_payment, at_release. Self-declared or ONAA-observed, never verified"},{"name":"human_setup","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"none, identity_check, application_review, partner_agreement, account_funding","title":"Human Setup"},"description":"none, identity_check, application_review, partner_agreement, account_funding"},{"name":"human_per_payment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"none, pre_authorized, per_transaction","title":"Human Per Payment"},"description":"none, pre_authorized, per_transaction"},{"name":"escrow_release","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"automatic, evaluator, human","title":"Escrow Release"},"description":"automatic, evaluator, human"},{"name":"agent_checkout","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"buying channels: ONAA's last checkout probe, e.g. checkout_ready, buyer_step_required (observation, not verification)","title":"Agent Checkout"},"description":"buying channels: ONAA's last checkout probe, e.g. checkout_ready, buyer_step_required (observation, not verification)"},{"name":"classification","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"scheme:code, e.g. unspsc:43211503","title":"Classification"},"description":"scheme:code, e.g. unspsc:43211503"},{"name":"incoterm","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Incoterm"}},{"name":"auth_method","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Auth Method"}},{"name":"skill","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"A2A card skill id or tag (from the cached card)","title":"Skill"},"description":"A2A card skill id or tag (from the cached card)"},{"name":"updated_since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"ISO 8601; for incremental sync","title":"Updated Since"},"description":"ISO 8601; for incremental sync"},{"name":"sort","in":"query","required":false,"schema":{"enum":["trust","updated","updated_asc"],"type":"string","default":"trust","title":"Sort"}},{"name":"verified_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Verified Only"}},{"name":"certified_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Certified Only"}},{"name":"claimed_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Claimed Only"}},{"name":"reachable_only","in":"query","required":false,"schema":{"type":"boolean","description":"Hide listings whose last 3 health probes failed","default":false,"title":"Reachable Only"},"description":"Hide listings whose last 3 health probes failed"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchPage"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["services"],"summary":"Register a service (payment, escrow, hosting, ...)","operationId":"create_v1_services_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}":{"get":{"tags":["services"],"summary":"Get One","operationId":"get_one_v1_services__listing_id__get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"304":{"description":"Not modified (If-None-Match matched the ETag)"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["services"],"summary":"Update","operationId":"update_v1_services__listing_id__patch","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["services"],"summary":"Delist immediately (owner only)","operationId":"delete_v1_services__listing_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}/history":{"get":{"tags":["services"],"summary":"Public change history (which fields changed, when, at which revision)","operationId":"history_v1_services__listing_id__history_get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEntry"},"title":"Response History V1 Services  Listing Id  History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}/trust":{"get":{"tags":["services"],"summary":"Trust","operationId":"trust_v1_services__listing_id__trust_get","parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Trust"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}/health-check":{"post":{"tags":["services"],"summary":"Probe the endpoint now (owner only)","operationId":"health_check_v1_services__listing_id__health_check_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistryRecord"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}/verify-domain":{"post":{"tags":["services"],"summary":"Start a well-known endpoint-control challenge","operationId":"start_challenge_v1_services__listing_id__verify_domain_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ChallengeStart"},{"type":"null"}],"title":"Body"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeCreated"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/services/{listing_id}/verification-complete":{"post":{"tags":["services"],"summary":"Complete Challenge","operationId":"complete_challenge_v1_services__listing_id__verification_complete_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_complete_challenge_v1_services__listing_id__verification_complete_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResult"}}}},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeResult"}}},"description":"Unprocessable Entity"}}}},"/v1/certifications/precheck":{"post":{"tags":["certifications"],"summary":"Free automated conformance pre-check of your endpoint-verified listing (CERT-009)","operationId":"precheck_v1_certifications_precheck_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrecheckCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRunOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/certifications/applications":{"post":{"tags":["certifications"],"summary":"Apply for certification (separate from free listing)","operationId":"apply_v1_certifications_applications_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationApplicationCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationApplicationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/certifications/{application_id}":{"get":{"tags":["certifications"],"summary":"Get Application","operationId":"get_application_v1_certifications__application_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"application_id","in":"path","required":true,"schema":{"type":"string","title":"Application Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationApplicationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/certifications/{application_id}/decision":{"post":{"tags":["certifications","admin"],"summary":"Record a reviewer decision (admin). Live issuance requires founder approval.","operationId":"decide_v1_admin_certifications__application_id__decision_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"application_id","in":"path","required":true,"schema":{"type":"string","title":"Application Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationDecision"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationApplicationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/certifications/issued/{cert_id}/status":{"post":{"tags":["certifications","admin"],"summary":"Suspend, revoke or reinstate an issued certification (logged and re-signed)","operationId":"change_status_v1_admin_certifications_issued__cert_id__status_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cert_id","in":"path","required":true,"schema":{"type":"string","title":"Cert Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CertificationStatusChange"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/operators/{operator_id}/entitlements":{"get":{"tags":["certifications","admin"],"summary":"Get Entitlements","operationId":"get_entitlements_v1_admin_operators__operator_id__entitlements_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"operator_id","in":"path","required":true,"schema":{"type":"string","title":"Operator Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitlementOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/operators/{operator_id}/founding-cohort":{"post":{"tags":["certifications","admin"],"summary":"Grant or revoke Founding Cohort membership (cap: ONAA_FOUNDING_COHORT_SIZE)","operationId":"founding_cohort_v1_admin_operators__operator_id__founding_cohort_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"operator_id","in":"path","required":true,"schema":{"type":"string","title":"Operator Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FoundingCohortGrant"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitlementOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vocabulary":{"get":{"tags":["vocabulary"],"summary":"Vocabulary in use: canonical values, top tokens, extension keys, proposals","operationId":"vocabulary_v1_vocabulary_get","parameters":[{"name":"top","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Top"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vocabulary/proposals":{"post":{"tags":["vocabulary"],"summary":"Propose a new core field or vocabulary token","operationId":"propose_v1_vocabulary_proposals_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VocabularyProposalCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VocabularyProposalOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["vocabulary"],"summary":"List Proposals","operationId":"list_proposals_v1_vocabulary_proposals_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/VocabularyProposalOut"},"title":"Response List Proposals V1 Vocabulary Proposals Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vocabulary/proposals/{proposal_id}/support":{"post":{"tags":["vocabulary"],"summary":"Support a proposal (once per identity)","operationId":"support_v1_vocabulary_proposals__proposal_id__support_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"proposal_id","in":"path","required":true,"schema":{"type":"string","title":"Proposal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VocabularyProposalOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/vocabulary/proposals/{proposal_id}/decision":{"post":{"tags":["vocabulary","admin"],"summary":"Decide","operationId":"decide_v1_admin_vocabulary_proposals__proposal_id__decision_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"proposal_id","in":"path","required":true,"schema":{"type":"string","title":"Proposal Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VocabularyDecision"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VocabularyProposalOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/discovered/opt-out":{"post":{"tags":["opt-out"],"summary":"Remove discovered (unregistered) entries for a URL or host and block re-import","operationId":"opt_out_v1_discovered_opt_out_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OptOutRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OptOutResult"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/policy/requests":{"post":{"tags":["policy"],"summary":"File a steward change request (policy decides)","operationId":"file_request_v1_policy_requests_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyRequestIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/policy/rules":{"get":{"tags":["policy"],"summary":"What the steward may do alone, what needs approval","operationId":"rules_v1_policy_rules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/admin/policy/requests":{"get":{"tags":["policy","admin"],"summary":"List Requests","operationId":"list_requests_v1_admin_policy_requests_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"decision","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"default":"pending_approval","title":"Decision"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/policy/requests/{request_id}/decision":{"post":{"tags":["policy","admin"],"summary":"Decide","operationId":"decide_v1_admin_policy_requests__request_id__decision_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","title":"Request Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DecisionIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/incidents":{"get":{"tags":["policy","trust"],"summary":"Operational incident history (health records, not sanctions)","operationId":"incidents_v1_incidents_get","parameters":[{"name":"listing_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Listing Id"}},{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"enum":["open","resolved"],"type":"string"},{"type":"null"}],"title":"State"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/.well-known/onaa/issuer-jwks.json":{"get":{"tags":["trust"],"summary":"Root-signed issuer key manifest (pin the root key, not this URL)","operationId":"issuer_manifest__well_known_onaa_issuer_jwks_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/attestations":{"get":{"tags":["trust"],"summary":"Attestations for a subject, any status (TEST-ONLY in staging)","operationId":"list_attestations_v1_attestations_get","parameters":[{"name":"subject_id","in":"query","required":true,"schema":{"type":"string","maxLength":40,"title":"Subject Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/attestations/{att_id}":{"get":{"tags":["trust"],"summary":"Signed TEST-ONLY attestation","operationId":"get_attestation_v1_attestations__att_id__get","parameters":[{"name":"att_id","in":"path","required":true,"schema":{"type":"string","title":"Att Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/attestations/{att_id}/status":{"get":{"tags":["trust"],"summary":"Signed status record (re-issued; max age 7 days)","operationId":"get_status_v1_attestations__att_id__status_get","parameters":[{"name":"att_id","in":"path","required":true,"schema":{"type":"string","title":"Att Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/transparency/checkpoint":{"get":{"tags":["trust"],"summary":"Signed tree head of the attestation transparency log","operationId":"get_checkpoint_v1_transparency_checkpoint_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/transparency/entries":{"get":{"tags":["trust"],"summary":"Log entries by index range or by attestation id","operationId":"get_entries_v1_transparency_entries_get","parameters":[{"name":"start","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Start"}},{"name":"end","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":1},{"type":"null"}],"title":"End"}},{"name":"attestation_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Attestation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/transparency/proof/inclusion":{"get":{"tags":["trust"],"summary":"Merkle inclusion proof (RFC 9162 section 2.1.3)","operationId":"inclusion_v1_transparency_proof_inclusion_get","parameters":[{"name":"index","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"Index"}},{"name":"tree_size","in":"query","required":true,"schema":{"type":"integer","minimum":1,"title":"Tree Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/transparency/proof/consistency":{"get":{"tags":["trust"],"summary":"Merkle consistency proof (RFC 9162 section 2.1.4)","operationId":"consistency_v1_transparency_proof_consistency_get","parameters":[{"name":"first","in":"query","required":true,"schema":{"type":"integer","minimum":1,"title":"First"}},{"name":"second","in":"query","required":true,"schema":{"type":"integer","minimum":1,"title":"Second"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/jobs/verification-monitor":{"post":{"tags":["trust","admin"],"summary":"Card/JWKS change detection, due unannounced re-checks, expiry and status re-issue","operationId":"verification_monitor_v1_admin_jobs_verification_monitor_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"detect_limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":0,"default":100,"title":"Detect Limit"}},{"name":"recheck_limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":0,"default":20,"title":"Recheck Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/admin/verification/observations":{"post":{"tags":["trust","admin"],"summary":"Record a card/JWKS observation from another vantage point (cloaking detection)","operationId":"observation_v1_admin_verification_observations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VantageObservation"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/admin/listings/{listing_id}/verification-runs":{"get":{"tags":["trust","admin"],"summary":"List Runs","operationId":"list_runs_v1_admin_listings__listing_id__verification_runs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"listing_id","in":"path","required":true,"schema":{"type":"string","title":"Listing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stats/usage":{"get":{"tags":["meta"],"summary":"Anonymous daily usage counts split into external, ours and probes, by agent class, path, MCP tool and store check","operationId":"usage_v1_stats_usage_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","maximum":90,"minimum":1,"default":14,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/stores.json":{"get":{"tags":["stores"],"summary":"All stores AI buying agents can buy from, with checkout requirements (one file)","description":"The full store feed: every listed store with ONAA's last checkout probe (protocol, payment handlers,\nwhether an agent can pay alone, buyer info required, tested shipping countries) and links. Supports\nIf-None-Match. Same document as /v1/stores.json.","operationId":"stores_feed_stores_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/stores.csv":{"get":{"tags":["stores"],"summary":"All stores as CSV (one row per store)","operationId":"stores_csv_stores_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/stores":{"get":{"tags":["stores"],"summary":"Find stores an AI agent can buy from (filter by shipping country, pay-alone, ...)","description":"Stores ONAA lists, filtered on ONAA's last checkout probe. ONAA has no product data: to find a product,\nuse the store's own catalog search (its MCP endpoint) or Shop MCP, then check the store here or with\n/v1/stores/check. For the whole list in one request use /stores.json.","operationId":"list_stores_v1_stores_get","parameters":[{"name":"ships_to","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ISO country the checkout reported delivery to (tested: US, GB, DE, JP, KR)","title":"Ships To"},"description":"ISO country the checkout reported delivery to (tested: US, GB, DE, JP, KR)"},{"name":"pays_alone","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"true: an agent can pay alone after the buyer approves a one-time link (Shop Pay identity linking)","title":"Pays Alone"},"description":"true: an agent can pay alone after the buyer approves a one-time link (Shop Pay identity linking)"},{"name":"checkout","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"last probe status: checkout_ready, buyer_step_required, auth_required, no_checkout, failed, not_checked_yet","title":"Checkout"},"description":"last probe status: checkout_ready, buyer_step_required, auth_required, no_checkout, failed, not_checked_yet"},{"name":"protocol","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"ucp, shop-mcp","title":"Protocol"},"description":"ucp, shop-mcp"},{"name":"payment_handler","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"e.g. shop_pay, shopify.card, gpay","title":"Payment Handler"},"description":"e.g. shop_pay, shopify.card, gpay"},{"name":"currency","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"currency seen at checkout, ISO 4217","title":"Currency"},"description":"currency seen at checkout, ISO 4217"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"store name or domain contains","title":"Q"},"description":"store name or domain contains"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stores/check":{"get":{"tags":["stores"],"summary":"Can an AI agent buy here? Any product URL, store domain or svc_ id","description":"Answers per store: verdict (yes, yes_buyer_finishes, maybe, no, unknown), reasons, cautions and how to\nbuy. A store ONAA has not listed is looked up live at its /.well-known/ucp (robots.txt honoured); if it\npublishes a UCP shopping endpoint, ONAA adds it (links only) and answers from its declared protocol.","operationId":"check_get_v1_stores_check_get","parameters":[{"name":"url","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"product or store URL, domain or svc_ id; repeat or comma-separate (max 25), e.g. the shops in Shop MCP results","title":"Url"},"description":"product or store URL, domain or svc_ id; repeat or comma-separate (max 25), e.g. the shops in Shop MCP results"},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":2},{"type":"null"}],"description":"ship-to country, ISO 3166-1","title":"Country"},"description":"ship-to country, ISO 3166-1"},{"name":"agent","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"your agent platform, e.g. gemini","title":"Agent"},"description":"your agent platform, e.g. gemini"},{"name":"payment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"payment methods you can use: shop_pay, card, google_pay","title":"Payment"},"description":"payment methods you can use: shop_pay, card, google_pay"},{"name":"pay_alone","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Pay Alone"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["stores"],"summary":"Same as GET /v1/stores/check, with a JSON body","operationId":"check_post_v1_stores_check_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"examples":[{"stores":["https://example-shop.com/products/x","svc_..."],"country":"KR","pay_alone":true}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/stores/{store}":{"get":{"tags":["stores"],"summary":"One store by listing id or domain, with how to buy there","operationId":"get_store_v1_stores__store__get","parameters":[{"name":"store","in":"path","required":true,"schema":{"type":"string","title":"Store"}},{"name":"country","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":2,"maxLength":2},{"type":"null"}],"title":"Country"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AcceptedService":{"properties":{"service_type":{"type":"string","enum":["payment","escrow","insurance","logistics","shipping","inspection","identity","dispute","tax","fraud","fx","hosting","marketplace","other"],"title":"Service Type"},"listing_ids":{"items":{"type":"string"},"type":"array","maxItems":20,"title":"Listing Ids","description":"Specific registry providers (svc_/hst_) accepted; empty = any"},"required":{"type":"boolean","title":"Required","default":false}},"additionalProperties":false,"type":"object","required":["service_type"],"title":"AcceptedService","description":"A settlement/fulfilment service type this listing works with. Pairs buyers and sellers with the same\nescrow, payment, insurance or logistics providers found in the registry."},"AgentCheckoutObservation":{"properties":{"status":{"type":"string","enum":["checkout_ready","buyer_step_required","auth_required","no_checkout","failed"],"title":"Status"},"steps":{"items":{"type":"string","enum":["tools_list","search","cart","checkout","cancel"]},"type":"array","maxItems":5,"title":"Steps"},"detail":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Detail","description":"Short plain-text reason. Untrusted."},"requirements":{"anyOf":[{"$ref":"#/components/schemas/AgentCheckoutRequirements"},{"type":"null"}]}},"additionalProperties":false,"type":"object","required":["status"],"title":"AgentCheckoutObservation","description":"One probe result recorded by ONAA's checker (admin only). Probes stop before payment: no order is placed."},"AgentCheckoutRequirements":{"properties":{"protocol":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Protocol","description":"e.g. ucp-mcp, shop-mcp"},"protocol_version":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}],"title":"Protocol Version"},"agent_profile_required":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Agent Profile Required","description":"UCP-Agent profile URL must be sent"},"agent_auth_required":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Agent Auth Required","description":"endpoint refused an unauthenticated agent"},"payment_handlers":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Payment Handlers","description":"handler ids offered at checkout, e.g. shopify.card, shop_pay, gpay"},"buyer_info_required":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Buyer Info Required","description":"message codes the checkout reported, e.g. buyer_identity_contact_method_required, delivery_address_required"},"buyer_confirmation_required":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Buyer Confirmation Required","description":"checkout asked for the buyer's own input or approval (requires_escalation)"},"tested_country":{"anyOf":[{"type":"string","maxLength":2},{"type":"null"}],"title":"Tested Country"},"currency":{"anyOf":[{"type":"string","maxLength":3},{"type":"null"}],"title":"Currency"},"ships_to":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Ships To","description":"tested countries (ISO 3166-1) where a checkout reported delivery"},"no_shipping_to":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"No Shipping To","description":"tested countries where the checkout reported no delivery"},"currencies_seen":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Currencies Seen"},"manifest_payment_handlers":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Manifest Payment Handlers","description":"payment handler namespaces in the store's UCP manifest, e.g. com.google.pay, dev.shopify.shop_pay"},"accepted_agents_hint":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Accepted Agents Hint","description":"which agents the store appears to serve when it refuses anonymous agents, inferred from its manifest. Not confirmed"},"autonomous_payment":{"anyOf":[{"type":"string","enum":["after_one_time_link","none_observed","not_offered"]},{"type":"null"}],"title":"Autonomous Payment","description":"after_one_time_link: a handler (Shop Pay identity linking) lets an agent pay alone after the buyer approves once; none_observed: every offered handler needs the buyer per purchase or undocumented approval; not_offered: no agent payment handler at checkout"}},"additionalProperties":false,"type":"object","title":"AgentCheckoutRequirements","description":"What the probe observed an agent needs to reach checkout and pay at this store (\"how to buy here\")."},"AgentCreate":{"properties":{"commerce":{"anyOf":[{"$ref":"#/components/schemas/Commerce"},{"type":"null"}]},"jurisdiction":{"anyOf":[{"$ref":"#/components/schemas/Jurisdiction"},{"type":"null"}]},"integration":{"anyOf":[{"$ref":"#/components/schemas/Integration"},{"type":"null"}]},"data_handling":{"anyOf":[{"$ref":"#/components/schemas/DataHandling"},{"type":"null"}]},"contacts":{"anyOf":[{"$ref":"#/components/schemas/Contacts"},{"type":"null"}]},"self_reported":{"anyOf":[{"$ref":"#/components/schemas/SelfReported"},{"type":"null"}]},"extensions":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extensions","description":"Namespaced extension fields (`com.example/field`, `x-name/field`), max 8 KiB. Untrusted. Widely used keys can be proposed for promotion via /v1/vocabulary."},"jwks_uri":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Jwks Uri","description":"ONAA Protocol signing keys (JWK Set); must be on the listing host"},"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Capabilities"},"regions":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Regions"},"currencies":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Currencies"},"languages":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Languages"},"categories":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Categories"},"supported_protocols":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Supported Protocols"},"documentation_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Documentation Url"},"terms_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Terms Url"},"roles":{"items":{"type":"string","enum":["buyer_agent","seller_agent","service_provider","hosting_provider","adapter_gateway"]},"type":"array","maxItems":5,"minItems":1,"title":"Roles"},"agent_card_url":{"type":"string","maxLength":2048,"title":"Agent Card Url","description":"Public A2A Agent Card URL, e.g. https://host/.well-known/agent-card.json"},"endpoint_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Endpoint Url"}},"additionalProperties":false,"type":"object","required":["display_name","roles","agent_card_url"],"title":"AgentCreate"},"AgentUpdate":{"properties":{"commerce":{"anyOf":[{"$ref":"#/components/schemas/Commerce"},{"type":"null"}]},"jurisdiction":{"anyOf":[{"$ref":"#/components/schemas/Jurisdiction"},{"type":"null"}]},"integration":{"anyOf":[{"$ref":"#/components/schemas/Integration"},{"type":"null"}]},"data_handling":{"anyOf":[{"$ref":"#/components/schemas/DataHandling"},{"type":"null"}]},"contacts":{"anyOf":[{"$ref":"#/components/schemas/Contacts"},{"type":"null"}]},"self_reported":{"anyOf":[{"$ref":"#/components/schemas/SelfReported"},{"type":"null"}]},"extensions":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extensions","description":"Namespaced extension fields (`com.example/field`, `x-name/field`), max 8 KiB. Untrusted. Widely used keys can be proposed for promotion via /v1/vocabulary."},"jwks_uri":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Jwks Uri","description":"ONAA Protocol signing keys (JWK Set); must be on the listing host"},"display_name":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Display Name"},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"},"roles":{"anyOf":[{"items":{"type":"string","enum":["buyer_agent","seller_agent","service_provider","hosting_provider","adapter_gateway"]},"type":"array"},{"type":"null"}],"title":"Roles"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Capabilities"},"regions":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Regions"},"currencies":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Currencies"},"languages":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Languages"},"categories":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Categories"},"supported_protocols":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Supported Protocols"},"documentation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Documentation Url"},"terms_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terms Url"},"endpoint_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint Url"}},"additionalProperties":false,"type":"object","title":"AgentUpdate"},"Body_complete_challenge_v1_agents__listing_id__verification_complete_post":{"properties":{"challenge_id":{"type":"string","maxLength":40,"title":"Challenge Id"}},"type":"object","required":["challenge_id"],"title":"Body_complete_challenge_v1_agents__listing_id__verification_complete_post"},"Body_complete_challenge_v1_services__listing_id__verification_complete_post":{"properties":{"challenge_id":{"type":"string","maxLength":40,"title":"Challenge Id"}},"type":"object","required":["challenge_id"],"title":"Body_complete_challenge_v1_services__listing_id__verification_complete_post"},"Capacity":{"properties":{"max_concurrent_orders":{"anyOf":[{"type":"integer","maximum":10000000.0,"minimum":1.0},{"type":"null"}],"title":"Max Concurrent Orders"},"max_order_value":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Max Order Value"},"min_order_value":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Min Order Value"},"order_value_currency":{"anyOf":[{"type":"string","pattern":"^[A-Z]{3}$"},{"type":"null"}],"title":"Order Value Currency"},"lead_time_days":{"anyOf":[{"type":"integer","maximum":365.0,"minimum":0.0},{"type":"null"}],"title":"Lead Time Days"}},"additionalProperties":false,"type":"object","title":"Capacity"},"CertificationApplicationCreate":{"properties":{"listing_id":{"type":"string","maxLength":40,"title":"Listing Id"},"scheme":{"type":"string","enum":["endpoint_verified","operator_verified","protocol_certified","commerce_certified","service_certified"],"title":"Scheme"},"evidence_urls":{"items":{"type":"string"},"type":"array","maxItems":20,"title":"Evidence Urls"},"notes":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}],"title":"Notes"}},"additionalProperties":false,"type":"object","required":["listing_id","scheme"],"title":"CertificationApplicationCreate"},"CertificationApplicationOut":{"properties":{"id":{"type":"string","title":"Id"},"listing_id":{"type":"string","title":"Listing Id"},"operator_id":{"type":"string","title":"Operator Id"},"scheme":{"type":"string","title":"Scheme"},"criteria_version":{"type":"string","title":"Criteria Version"},"evidence_urls":{"items":{"type":"string"},"type":"array","title":"Evidence Urls"},"status":{"type":"string","title":"Status"},"decision_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Reason"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"decided_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decided At"},"conformance_run":{"anyOf":[{"$ref":"#/components/schemas/VerificationRunOut"},{"type":"null"}],"description":"Automated conformance pre-check filed with the application (CERT-009)."},"note":{"type":"string","title":"Note","default":"Application fees (if any) are separate from the decision; payment never guarantees approval."}},"type":"object","required":["id","listing_id","operator_id","scheme","criteria_version","evidence_urls","status","decision_reason","created_at","decided_at"],"title":"CertificationApplicationOut"},"CertificationDecision":{"properties":{"decision":{"type":"string","enum":["approve","reject"],"title":"Decision"},"reason":{"type":"string","maxLength":500,"minLength":1,"title":"Reason"},"valid_days":{"type":"integer","maximum":730.0,"minimum":1.0,"title":"Valid Days","default":365},"reviewer":{"anyOf":[{"type":"string","maxLength":120,"minLength":1},{"type":"null"}],"title":"Reviewer","description":"Human reviewer who made the decision. Required to approve protocol/commerce/service certifications: the signed attestation rests on this approval record."}},"additionalProperties":false,"type":"object","required":["decision","reason"],"title":"CertificationDecision"},"CertificationOut":{"properties":{"id":{"type":"string","title":"Id"},"scheme":{"type":"string","title":"Scheme"},"criteria_version":{"type":"string","title":"Criteria Version"},"status":{"type":"string","title":"Status"},"issued_at":{"type":"string","format":"date-time","title":"Issued At"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"},"attestation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Attestation Url","description":"TEST-ONLY signed attestation (staging). Verify it with `onaa verify`."},"status_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status Url","description":"Signed, short-lived status record (max age 7 days)."}},"type":"object","required":["id","scheme","criteria_version","status","issued_at","expires_at"],"title":"CertificationOut"},"CertificationStatusChange":{"properties":{"status":{"type":"string","enum":["suspended","revoked","active"],"title":"Status"},"reason":{"type":"string","maxLength":200,"minLength":1,"title":"Reason"},"reviewer":{"type":"string","maxLength":120,"minLength":1,"title":"Reviewer"}},"additionalProperties":false,"type":"object","required":["status","reason","reviewer"],"title":"CertificationStatusChange"},"ChallengeCreated":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"method":{"type":"string","enum":["well_known","dns_txt"],"title":"Method"},"host":{"type":"string","title":"Host"},"token":{"type":"string","title":"Token","description":"Shown once. Publish it exactly as instructed for the chosen method."},"challenge_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Url"},"dns_record_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dns Record Name"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"},"instructions":{"type":"string","title":"Instructions"}},"type":"object","required":["challenge_id","method","host","token","expires_at","instructions"],"title":"ChallengeCreated"},"ChallengeResult":{"properties":{"challenge_id":{"type":"string","title":"Challenge Id"},"status":{"type":"string","title":"Status"},"listing_status":{"type":"string","enum":["discovered","claim_pending","registered","endpoint_verified","certified","suspended","deleted"],"title":"Listing Status"},"endpoint_control_verified":{"type":"boolean","title":"Endpoint Control Verified"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}},"type":"object","required":["challenge_id","status","listing_status","endpoint_control_verified"],"title":"ChallengeResult"},"ChallengeStart":{"properties":{"method":{"type":"string","enum":["well_known","dns_txt"],"title":"Method","default":"well_known"}},"additionalProperties":false,"type":"object","title":"ChallengeStart"},"Classification":{"properties":{"scheme":{"type":"string","enum":["unspsc","hs","gs1_gpc","isic","naics"],"title":"Scheme"},"code":{"type":"string","pattern":"^[0-9A-Za-z.]{1,20}$","title":"Code"}},"additionalProperties":false,"type":"object","required":["scheme","code"],"title":"Classification","description":"What is traded, in a public code list: UNSPSC (UN), HS (WCO), GS1 GPC, ISIC (UN) or NAICS."},"Commerce":{"properties":{"pricing":{"items":{"$ref":"#/components/schemas/Pricing"},"type":"array","maxItems":10,"title":"Pricing"},"quoting":{"anyOf":[{"$ref":"#/components/schemas/Quoting"},{"type":"null"}]},"service_level":{"anyOf":[{"$ref":"#/components/schemas/ServiceLevel"},{"type":"null"}]},"capacity":{"anyOf":[{"$ref":"#/components/schemas/Capacity"},{"type":"null"}]},"accepts_services":{"items":{"$ref":"#/components/schemas/AcceptedService"},"type":"array","maxItems":13,"title":"Accepts Services"},"payment_terms":{"anyOf":[{"$ref":"#/components/schemas/PaymentTerms"},{"type":"null"}]},"human_approval":{"anyOf":[{"$ref":"#/components/schemas/HumanApproval"},{"type":"null"}]},"policies":{"anyOf":[{"$ref":"#/components/schemas/Policies"},{"type":"null"}]},"classifications":{"items":{"$ref":"#/components/schemas/Classification"},"type":"array","maxItems":20,"title":"Classifications"},"incoterms":{"items":{"type":"string","enum":["EXW","FCA","CPT","CIP","DAP","DPU","DDP","FAS","FOB","CFR","CIF"]},"type":"array","maxItems":11,"title":"Incoterms","description":"ICC Incoterms 2020, for physical goods"}},"additionalProperties":false,"type":"object","title":"Commerce"},"Contacts":{"properties":{"support_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Support Url"},"escalation_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Escalation Url"},"security_contact_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Security Contact Url","description":"e.g. https://host/.well-known/security.txt"}},"additionalProperties":false,"type":"object","title":"Contacts"},"DataHandling":{"properties":{"privacy_policy_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Privacy Policy Url"},"data_categories":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Data Categories","description":"What it processes: personal, payment, location, health, ..."},"retention_days":{"anyOf":[{"type":"integer","maximum":36500.0,"minimum":0.0},{"type":"null"}],"title":"Retention Days"},"trains_on_customer_data":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Trains On Customer Data"},"subprocessors":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Subprocessors","description":"Registry listing ids"}},"additionalProperties":false,"type":"object","title":"DataHandling"},"DecisionIn":{"properties":{"decision":{"type":"string","enum":["approve","reject"],"title":"Decision"},"reason":{"type":"string","maxLength":500,"minLength":1,"title":"Reason"}},"additionalProperties":false,"type":"object","required":["decision","reason"],"title":"DecisionIn"},"DiscoveredCreate":{"properties":{"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"agent_card_url":{"type":"string","maxLength":2048,"title":"Agent Card Url"},"source_url":{"type":"string","maxLength":2048,"title":"Source Url","description":"Where the public card was observed (provenance)."},"roles":{"items":{"type":"string","enum":["buyer_agent","seller_agent","service_provider","hosting_provider","adapter_gateway"]},"type":"array","maxItems":5,"title":"Roles"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Capabilities"}},"additionalProperties":false,"type":"object","required":["display_name","agent_card_url","source_url"],"title":"DiscoveredCreate"},"DiscoveredServiceCreate":{"properties":{"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"service_type":{"type":"string","enum":["payment","escrow","insurance","logistics","shipping","inspection","identity","dispute","tax","fraud","fx","hosting","marketplace","other"],"title":"Service Type"},"documentation_url":{"type":"string","maxLength":2048,"title":"Documentation Url","description":"Provider's official public documentation."},"source_url":{"type":"string","maxLength":2048,"title":"Source Url","description":"Where ONAA observed it (provenance)."},"endpoint_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Endpoint Url"},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Capabilities"},"regions":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Regions"},"currencies":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Currencies"},"payment_methods":{"items":{"type":"string","enum":["card","bank_transfer","instant_bank_transfer","prepaid_balance","stablecoin","crypto"]},"type":"array","maxItems":6,"title":"Payment Methods","description":"Agent-usable payment methods the provider's public docs describe (stored as commerce.payment_terms.methods). Observed by ONAA, not declared by the provider."},"payment_networks":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Payment Networks","description":"e.g. visa, mastercard, usdc, x402, ap2"},"human_approval":{"anyOf":[{"$ref":"#/components/schemas/HumanApproval"},{"type":"null"}],"description":"Where a person must act, as the provider's public docs describe it (stored as commerce.human_approval). Observed by ONAA, not declared by the provider."}},"additionalProperties":false,"type":"object","required":["display_name","service_type","documentation_url","source_url"],"title":"DiscoveredServiceCreate","description":"A publicly documented provider (payment, escrow, logistics, ...) that has not registered itself.\n\nNo endpoint is required: many providers publish docs but no agent endpoint. Shown as `discovered`\n(unclaimed, not registered, not endorsed) with provenance until the provider registers or opts out."},"EntitlementOut":{"properties":{"operator_id":{"type":"string","title":"Operator Id"},"founding_cohort_until":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Founding Cohort Until"},"founding_cohort_active":{"type":"boolean","title":"Founding Cohort Active"},"cohort_size_used":{"type":"integer","title":"Cohort Size Used"},"cohort_size_limit":{"type":"integer","title":"Cohort Size Limit"}},"type":"object","required":["operator_id","founding_cohort_until","founding_cohort_active","cohort_size_used","cohort_size_limit"],"title":"EntitlementOut"},"FoundingCohortGrant":{"properties":{"grant":{"type":"boolean","title":"Grant","default":true},"months":{"type":"integer","maximum":12.0,"minimum":1.0,"title":"Months","default":12}},"additionalProperties":false,"type":"object","title":"FoundingCohortGrant"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HistoryEntry":{"properties":{"at":{"type":"string","format":"date-time","title":"At"},"action":{"type":"string","title":"Action"},"actor_type":{"type":"string","title":"Actor Type"},"fields":{"items":{"type":"string"},"type":"array","title":"Fields"},"revision":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Revision"}},"type":"object","required":["at","action","actor_type"],"title":"HistoryEntry"},"HumanApproval":{"properties":{"setup":{"items":{"type":"string","enum":["none","identity_check","application_review","partner_agreement","account_funding"]},"type":"array","maxItems":5,"title":"Setup","description":"One-time steps a person completes before an agent can use the service: none, identity_check (KYC/KYB, may be automated), application_review (the provider reviews and approves the use, e.g. card issuing programmes), partner_agreement (a signed contract or partner programme), account_funding (a person tops up a balance or sets limits in advance)."},"per_payment":{"anyOf":[{"type":"string","enum":["none","pre_authorized","per_transaction"]},{"type":"null"}],"title":"Per Payment","description":"For each payment: none (the agent pays on its own, within limits a person may have set once at setup), pre_authorized (a person approves each purchase intent or mandate BEFORE the agent pays; the agent then completes it alone), per_transaction (a person confirms each payment while it happens, e.g. checkout page, bank strong authentication, PIN)."},"escrow_release":{"anyOf":[{"type":"string","enum":["automatic","evaluator","human"]},{"type":"null"}],"title":"Escrow Release","description":"Escrow providers: who releases or refunds held funds. automatic (the parties' agents over an API or contract), evaluator (a named third-party agent or contract decides), human (provider staff or a party's person must act)."},"notes":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Notes","description":"Plain-language detail. Untrusted text."}},"additionalProperties":false,"type":"object","title":"HumanApproval","description":"Where a person must act. Self-declared by the listing (or observed by ONAA from public docs for a\ndiscovered provider); never verified and not a trust level. Omitted fields mean \"not stated\"."},"Integration":{"properties":{"skills_io":{"items":{"$ref":"#/components/schemas/SkillIO"},"type":"array","maxItems":64,"title":"Skills Io"},"auth_methods":{"items":{"type":"string","enum":["none","api_key","oauth2","oidc","mtls","onaa_signature","http_signature"]},"type":"array","maxItems":7,"title":"Auth Methods"},"rate_limit_per_minute":{"anyOf":[{"type":"integer","maximum":10000000.0,"minimum":1.0},{"type":"null"}],"title":"Rate Limit Per Minute"},"status_page_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Status Page Url"},"changelog_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Changelog Url"},"depends_on":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Depends On","description":"Registry listings this one calls (sub-agents, providers)"},"sunset_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Sunset At","description":"Planned deprecation time"},"replaced_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Replaced By","description":"Successor listing id"}},"additionalProperties":false,"type":"object","title":"Integration"},"Jurisdiction":{"properties":{"operating_country":{"anyOf":[{"type":"string","pattern":"^[A-Z]{2}$"},{"type":"null"}],"title":"Operating Country","description":"ISO 3166-1 alpha-2 country the operator runs from"},"excluded_regions":{"items":{"type":"string"},"type":"array","maxItems":250,"title":"Excluded Regions","description":"Countries it does NOT serve; overrides `regions` in search"},"data_residency":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Data Residency","description":"Where data is stored: ISO countries, EU or EEA"},"compliance_claims":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Compliance Claims","description":"Self-declared tokens, e.g. gdpr, pci-dss, soc2, iso27001"},"restricted_activities":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Restricted Activities","description":"e.g. age_restricted, export_controlled, licensed_goods"},"sanctions_screening":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sanctions Screening","description":"Operator says it screens counterparties"}},"additionalProperties":false,"type":"object","title":"Jurisdiction","description":"Where the listing operates and may serve. Self-declared; never a licence or legal verification."},"OperatorCreate":{"properties":{"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"operator_type":{"type":"string","enum":["individual","organization"],"title":"Operator Type"},"country":{"anyOf":[{"type":"string","pattern":"^[A-Z]{2}$"},{"type":"null"}],"title":"Country"},"website_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Website Url"},"accept_terms_version":{"type":"string","maxLength":40,"minLength":1,"title":"Accept Terms Version"},"accept_terms_sha256":{"anyOf":[{"type":"string","pattern":"^[0-9a-f]{64}$"},{"type":"null"}],"title":"Accept Terms Sha256","description":"Optional SHA-256 (hex) of the terms text from GET /v1/terms. If sent, it must match."},"operator_contact":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Operator Contact","description":"Optional private contact for legal, security and terms-change notices (email or https URL). Never shown in public listings; not used for marketing."}},"additionalProperties":false,"type":"object","required":["display_name","operator_type","accept_terms_version"],"title":"OperatorCreate"},"OperatorCreated":{"properties":{"operator":{"$ref":"#/components/schemas/OperatorOut"},"api_key":{"type":"string","title":"Api Key","description":"Shown once. Store it in a secret manager; ONAA keeps only a hash."}},"type":"object","required":["operator","api_key"],"title":"OperatorCreated"},"OperatorOut":{"properties":{"id":{"type":"string","title":"Id"},"display_name":{"type":"string","title":"Display Name"},"operator_type":{"type":"string","enum":["individual","organization","agent"],"title":"Operator Type"},"country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country"},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Website Url"},"status":{"type":"string","title":"Status"},"identity_verified":{"type":"boolean","title":"Identity Verified"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","display_name","operator_type","country","website_url","status","identity_verified","created_at"],"title":"OperatorOut"},"OperatorUpdate":{"properties":{"display_name":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Display Name"},"operator_type":{"anyOf":[{"type":"string","enum":["individual","organization"]},{"type":"null"}],"title":"Operator Type"},"country":{"anyOf":[{"type":"string","pattern":"^[A-Z]{2}$"},{"type":"null"}],"title":"Country"},"website_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Website Url"},"operator_contact":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Operator Contact","description":"Optional private contact for legal, security and terms-change notices (email or https URL). Never shown in public listings; not used for marketing."}},"additionalProperties":false,"type":"object","title":"OperatorUpdate","description":"Optional operator linkage. A self-registered agent identity (operator_type 'agent') can later attach a\nhuman or organisation profile, e.g. before applying for paid operator verification."},"OptOutRequest":{"properties":{"url":{"type":"string","maxLength":2048,"title":"Url","description":"Agent Card URL, documentation URL or any https URL on the host"},"scope":{"type":"string","enum":["url","host"],"title":"Scope","description":"host = every discovered entry on that host (default); url = only that URL","default":"host"},"reason":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Reason","description":"Optional; do not include personal data"}},"additionalProperties":false,"type":"object","required":["url"],"title":"OptOutRequest","description":"Remove discovered (never registered) entries for a URL or a whole host and stop re-importing them."},"OptOutResult":{"properties":{"status":{"type":"string","enum":["removed","suppressed"],"title":"Status"},"removed_listing_ids":{"items":{"type":"string"},"type":"array","title":"Removed Listing Ids"},"note":{"type":"string","title":"Note","default":"Discovered entries matching this request are removed and will not be re-imported. Registered listings are not affected: their owner can delete them with their own key."}},"type":"object","required":["status","removed_listing_ids"],"title":"OptOutResult"},"PaymentTerms":{"properties":{"terms":{"items":{"type":"string","enum":["prepay","escrow","on_delivery","net","milestone","subscription"]},"type":"array","maxItems":6,"title":"Terms"},"net_days":{"anyOf":[{"type":"integer","maximum":180.0,"minimum":1.0},{"type":"null"}],"title":"Net Days"},"settlement_currencies":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Settlement Currencies"},"methods":{"items":{"type":"string","enum":["card","bank_transfer","instant_bank_transfer","prepaid_balance","stablecoin","crypto"]},"type":"array","maxItems":6,"title":"Methods","description":"Agent-usable payment methods accepted (seller), used (buyer) or processed (payment provider): card (agent-scoped credentials), bank_transfer, instant_bank_transfer, prepaid_balance (funded in advance by a person, spent by the agent), stablecoin, crypto. Self-declared."},"networks":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Networks","description":"Optional rails, brands or agent payment protocols within those methods, as lower-case tokens, e.g. visa, mastercard, sepa, ach, fednow, usdc, x402, ap2. Self-declared, never verified."}},"additionalProperties":false,"type":"object","title":"PaymentTerms"},"Policies":{"properties":{"refund_policy_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Refund Policy Url"},"dispute_policy_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Dispute Policy Url"},"warranty_days":{"anyOf":[{"type":"integer","maximum":3650.0,"minimum":0.0},{"type":"null"}],"title":"Warranty Days"},"liability_cap_amount":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Liability Cap Amount"},"liability_cap_currency":{"anyOf":[{"type":"string","pattern":"^[A-Z]{3}$"},{"type":"null"}],"title":"Liability Cap Currency"}},"additionalProperties":false,"type":"object","title":"Policies","description":"Links to the operator's own policies. ONAA does not adjudicate them."},"PolicyRequestIn":{"properties":{"action":{"type":"string","maxLength":40,"title":"Action"},"subject_id":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Subject Id"},"params":{"additionalProperties":true,"type":"object","title":"Params"},"rationale":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Rationale"}},"additionalProperties":false,"type":"object","required":["action"],"title":"PolicyRequestIn"},"PrecheckCreate":{"properties":{"listing_id":{"type":"string","maxLength":40,"title":"Listing Id"},"scheme":{"type":"string","enum":["protocol_certified","commerce_certified","service_certified"],"title":"Scheme","default":"protocol_certified"}},"additionalProperties":false,"type":"object","required":["listing_id"],"title":"PrecheckCreate"},"Pricing":{"properties":{"model":{"type":"string","enum":["free","fixed","percentage","per_unit","subscription","quote"],"title":"Model"},"amount":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Amount"},"percentage":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Percentage","description":"e.g. '2.9' for 2.9%"},"currency":{"anyOf":[{"type":"string","pattern":"^[A-Z]{3}$"},{"type":"null"}],"title":"Currency"},"unit":{"anyOf":[{"type":"string","pattern":"^[a-z0-9_.-]{1,40}$"},{"type":"null"}],"title":"Unit","description":"per_unit/subscription unit: request, transaction, kg, month, ..."},"min_amount":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Min Amount"},"max_amount":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Max Amount"},"applies_to":{"anyOf":[{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,119}$"},{"type":"null"}],"title":"Applies To","description":"capability or skill id this line prices; empty = whole listing"},"notes":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Notes"}},"additionalProperties":false,"type":"object","required":["model"],"title":"Pricing","description":"One price line (maps to schema.org PriceSpecification). Amounts are decimal strings, never floats.\nSelf-declared and indicative: the binding price is the signed QUOTE exchanged directly over A2A."},"Quoting":{"properties":{"mode":{"type":"string","enum":["instant","rfq","negotiated","catalog"],"title":"Mode","default":"rfq"},"quote_validity_s":{"anyOf":[{"type":"integer","maximum":7776000.0,"minimum":1.0},{"type":"null"}],"title":"Quote Validity S"},"quote_response_time_s":{"anyOf":[{"type":"integer","maximum":2592000.0,"minimum":1.0},{"type":"null"}],"title":"Quote Response Time S"},"catalog_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Catalog Url","description":"Machine-readable offer catalog"}},"additionalProperties":false,"type":"object","title":"Quoting"},"RegistryRecord":{"properties":{"registry_record_version":{"type":"string","const":"0.1.0","title":"Registry Record Version","default":"0.1.0"},"id":{"type":"string","title":"Id"},"operator_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operator Id"},"listing_type":{"type":"string","enum":["agent","service","hosting"],"title":"Listing Type"},"service_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Service Type"},"roles":{"items":{"type":"string"},"type":"array","title":"Roles"},"display_name":{"type":"string","title":"Display Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"agent_card_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Card Url"},"endpoint_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint Url"},"documentation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Documentation Url"},"terms_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terms Url"},"sandbox_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sandbox Url"},"sandbox_available":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sandbox Available"},"supported_interfaces":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Supported Interfaces"},"supported_protocols":{"items":{"type":"string"},"type":"array","title":"Supported Protocols"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"regions":{"items":{"type":"string"},"type":"array","title":"Regions"},"currencies":{"items":{"type":"string"},"type":"array","title":"Currencies"},"languages":{"items":{"type":"string"},"type":"array","title":"Languages"},"categories":{"items":{"type":"string"},"type":"array","title":"Categories"},"regulatory_claims":{"items":{"type":"string"},"type":"array","title":"Regulatory Claims"},"commerce":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Commerce","description":"Self-declared machine-readable trade terms."},"jurisdiction":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Jurisdiction","description":"Self-declared operating/serving countries."},"integration":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Integration"},"data_handling":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data Handling"},"contacts":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Contacts"},"self_reported":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Self Reported","description":"Claimed by the listing; NOT verified by ONAA."},"extensions":{"additionalProperties":true,"type":"object","title":"Extensions","description":"Namespaced, untrusted extension fields."},"jwks_uri":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jwks Uri"},"revision":{"type":"integer","title":"Revision","description":"Increments on every change; also sent as the HTTP ETag.","default":1},"trust":{"$ref":"#/components/schemas/Trust"},"agent_card":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Agent Card","description":"Cache metadata for the linked card; content untrusted."},"provenance":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Provenance"},"agent_checkout":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Agent Checkout","description":"Buying channels: ONAA's last probe of whether an outside agent can search and reach checkout (stops before payment). status checkout_ready, buyer_step_required, auth_required, no_checkout or failed, with checked_at. An observation, not a verification or endorsement."},"last_checked_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Checked At"},"status":{"type":"string","enum":["discovered","claim_pending","registered","endpoint_verified","certified","suspended","deleted"],"title":"Status"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","operator_id","listing_type","roles","display_name","description","supported_protocols","capabilities","regions","currencies","languages","categories","trust","last_checked_at","status","created_at","updated_at"],"title":"RegistryRecord"},"ReportCreate":{"properties":{"subject_id":{"type":"string","maxLength":40,"title":"Subject Id"},"category":{"type":"string","enum":["impersonation","unauthorized_registration","fraud","malicious_content","prompt_injection","spam","privacy","broken_endpoint","other"],"title":"Category"},"description":{"type":"string","maxLength":2000,"minLength":1,"title":"Description"},"evidence_urls":{"items":{"type":"string"},"type":"array","maxItems":10,"title":"Evidence Urls"}},"additionalProperties":false,"type":"object","required":["subject_id","category","description"],"title":"ReportCreate"},"ReportOut":{"properties":{"id":{"type":"string","title":"Id"},"subject_id":{"type":"string","title":"Subject Id"},"category":{"type":"string","title":"Category"},"state":{"type":"string","title":"State"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","subject_id","category","state","created_at"],"title":"ReportOut"},"SearchPage":{"properties":{"items":{"items":{"$ref":"#/components/schemas/RegistryRecord"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"limit":{"type":"integer","title":"Limit"},"offset":{"type":"integer","title":"Offset"}},"type":"object","required":["items","total","limit","offset"],"title":"SearchPage"},"SelfRegistrationChallenge":{"properties":{"registration_id":{"type":"string","title":"Registration Id"},"method":{"type":"string","enum":["well_known","dns_txt"],"title":"Method"},"host":{"type":"string","title":"Host"},"token":{"type":"string","title":"Token","description":"Shown once. Publish it exactly as instructed, then call complete."},"registration_secret":{"type":"string","title":"Registration Secret","description":"Shown once. Keep it private and send it to complete; the published token is public."},"challenge_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Challenge Url"},"dns_record_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dns Record Name"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"},"complete_url":{"type":"string","title":"Complete Url"},"instructions":{"type":"string","title":"Instructions"}},"type":"object","required":["registration_id","method","host","token","registration_secret","expires_at","complete_url","instructions"],"title":"SelfRegistrationChallenge"},"SelfRegistrationComplete":{"properties":{"registration_secret":{"type":"string","maxLength":200,"minLength":1,"title":"Registration Secret"}},"additionalProperties":false,"type":"object","required":["registration_secret"],"title":"SelfRegistrationComplete"},"SelfRegistrationCompleted":{"properties":{"registration_id":{"type":"string","title":"Registration Id"},"status":{"type":"string","const":"completed","title":"Status"},"operator":{"$ref":"#/components/schemas/OperatorOut"},"api_key":{"type":"string","title":"Api Key","description":"Agent-scoped key, shown once. ONAA keeps only a hash."},"listing":{"$ref":"#/components/schemas/RegistryRecord"},"next_steps":{"items":{"type":"string"},"type":"array","title":"Next Steps"}},"type":"object","required":["registration_id","status","operator","api_key","listing","next_steps"],"title":"SelfRegistrationCompleted"},"SelfRegistrationFailed":{"properties":{"registration_id":{"type":"string","title":"Registration Id"},"status":{"type":"string","title":"Status"},"attempts":{"type":"integer","title":"Attempts"},"error":{"type":"string","title":"Error"}},"type":"object","required":["registration_id","status","attempts","error"],"title":"SelfRegistrationFailed"},"SelfRegistrationStart":{"properties":{"accept_terms_version":{"type":"string","maxLength":40,"minLength":1,"title":"Accept Terms Version","description":"Current terms version from GET /v1/terms. Sending it accepts those terms for your operator."},"confirm_operator_authority":{"type":"boolean","const":true,"title":"Confirm Operator Authority","description":"Must be true: you state that your operator authorised you to register this endpoint and to accept the terms on its behalf, and that your operator controls the endpoint host."},"accept_terms_sha256":{"anyOf":[{"type":"string","pattern":"^[0-9a-f]{64}$"},{"type":"null"}],"title":"Accept Terms Sha256","description":"Optional SHA-256 (hex) of the terms text from GET /v1/terms. If sent, it must match."},"operator_contact":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"title":"Operator Contact","description":"Optional private contact for legal, security and terms-change notices (email or https URL). Never shown in public listings; not used for marketing."},"method":{"type":"string","enum":["well_known","dns_txt"],"title":"Method","default":"well_known"},"agent":{"anyOf":[{"$ref":"#/components/schemas/AgentCreate"},{"type":"null"}]},"service":{"anyOf":[{"$ref":"#/components/schemas/ServiceCreate"},{"type":"null"}]}},"additionalProperties":false,"type":"object","required":["accept_terms_version","confirm_operator_authority"],"title":"SelfRegistrationStart","description":"Exactly one of `agent` or `service`. No human account is needed, but the agent registers FOR its operator:\nthe operator (the person or organisation responsible for the agent) is the party bound by the terms."},"SelfReported":{"properties":{"completed_trades":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Completed Trades"},"operating_since":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Operating Since"},"references_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"References Url"}},"additionalProperties":false,"type":"object","title":"SelfReported","description":"Track record as claimed by the listing itself. Shown under this name and never as ONAA-verified."},"ServiceCreate":{"properties":{"commerce":{"anyOf":[{"$ref":"#/components/schemas/Commerce"},{"type":"null"}]},"jurisdiction":{"anyOf":[{"$ref":"#/components/schemas/Jurisdiction"},{"type":"null"}]},"integration":{"anyOf":[{"$ref":"#/components/schemas/Integration"},{"type":"null"}]},"data_handling":{"anyOf":[{"$ref":"#/components/schemas/DataHandling"},{"type":"null"}]},"contacts":{"anyOf":[{"$ref":"#/components/schemas/Contacts"},{"type":"null"}]},"self_reported":{"anyOf":[{"$ref":"#/components/schemas/SelfReported"},{"type":"null"}]},"extensions":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extensions","description":"Namespaced extension fields (`com.example/field`, `x-name/field`), max 8 KiB. Untrusted. Widely used keys can be proposed for promotion via /v1/vocabulary."},"jwks_uri":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Jwks Uri","description":"ONAA Protocol signing keys (JWK Set); must be on the listing host"},"display_name":{"type":"string","maxLength":200,"minLength":1,"title":"Display Name"},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"},"capabilities":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Capabilities"},"regions":{"items":{"type":"string"},"type":"array","maxItems":64,"title":"Regions"},"currencies":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Currencies"},"languages":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Languages"},"categories":{"items":{"type":"string"},"type":"array","maxItems":32,"title":"Categories"},"supported_protocols":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Supported Protocols"},"documentation_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Documentation Url"},"terms_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Terms Url"},"service_type":{"type":"string","enum":["payment","escrow","insurance","logistics","shipping","inspection","identity","dispute","tax","fraud","fx","hosting","marketplace","other"],"title":"Service Type"},"endpoint_url":{"type":"string","maxLength":2048,"title":"Endpoint Url"},"agent_card_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Agent Card Url"},"sandbox_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Sandbox Url"},"sandbox_available":{"type":"boolean","title":"Sandbox Available","default":false},"supported_interfaces":{"items":{"$ref":"#/components/schemas/SupportedInterface"},"type":"array","maxItems":16,"title":"Supported Interfaces"},"regulatory_claims":{"items":{"type":"string"},"type":"array","maxItems":16,"title":"Regulatory Claims","description":"Self-declared by the provider. Displayed as claims, never as verified licences."}},"additionalProperties":false,"type":"object","required":["display_name","service_type","endpoint_url"],"title":"ServiceCreate"},"ServiceLevel":{"properties":{"availability_target_pct":{"anyOf":[{"type":"string","pattern":"^\\d{1,12}(\\.\\d{1,6})?$"},{"type":"null"}],"title":"Availability Target Pct"},"p95_latency_ms":{"anyOf":[{"type":"integer","maximum":3600000.0,"minimum":1.0},{"type":"null"}],"title":"P95 Latency Ms"},"support_hours":{"anyOf":[{"type":"string","maxLength":100},{"type":"null"}],"title":"Support Hours","description":"e.g. '24/7', 'Mo-Fr 09-18 Asia/Seoul'"},"timezone":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Timezone","description":"IANA time zone, e.g. Asia/Seoul"}},"additionalProperties":false,"type":"object","title":"ServiceLevel"},"ServiceUpdate":{"properties":{"commerce":{"anyOf":[{"$ref":"#/components/schemas/Commerce"},{"type":"null"}]},"jurisdiction":{"anyOf":[{"$ref":"#/components/schemas/Jurisdiction"},{"type":"null"}]},"integration":{"anyOf":[{"$ref":"#/components/schemas/Integration"},{"type":"null"}]},"data_handling":{"anyOf":[{"$ref":"#/components/schemas/DataHandling"},{"type":"null"}]},"contacts":{"anyOf":[{"$ref":"#/components/schemas/Contacts"},{"type":"null"}]},"self_reported":{"anyOf":[{"$ref":"#/components/schemas/SelfReported"},{"type":"null"}]},"extensions":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extensions","description":"Namespaced extension fields (`com.example/field`, `x-name/field`), max 8 KiB. Untrusted. Widely used keys can be proposed for promotion via /v1/vocabulary."},"jwks_uri":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Jwks Uri","description":"ONAA Protocol signing keys (JWK Set); must be on the listing host"},"display_name":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Display Name"},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"},"capabilities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Capabilities"},"regions":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Regions"},"currencies":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Currencies"},"documentation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Documentation Url"},"terms_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Terms Url"},"sandbox_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sandbox Url"},"sandbox_available":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sandbox Available"}},"additionalProperties":false,"type":"object","title":"ServiceUpdate"},"SkillIO":{"properties":{"skill_id":{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,119}$","title":"Skill Id"},"input_schema_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Input Schema Url","description":"JSON Schema"},"output_schema_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Output Schema Url","description":"JSON Schema"},"example_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Example Url"}},"additionalProperties":false,"type":"object","required":["skill_id"],"title":"SkillIO","description":"Machine-readable I/O per skill (A2A cards list modes, not schemas)."},"SupportedInterface":{"properties":{"kind":{"type":"string","enum":["a2a","openapi","mcp","graphql","rest","other"],"title":"Kind"},"spec_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Spec Url"},"url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"title":"Url"}},"additionalProperties":false,"type":"object","required":["kind"],"title":"SupportedInterface"},"Trust":{"properties":{"registration_status":{"type":"string","enum":["discovered","claim_pending","registered","endpoint_verified","certified","suspended","deleted"],"title":"Registration Status"},"claimed":{"type":"boolean","title":"Claimed"},"endpoint_control_verified":{"type":"boolean","title":"Endpoint Control Verified"},"endpoint_verified_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Endpoint Verified At"},"endpoint_verified_until":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Endpoint Verified Until","description":"Endpoint-control proof expires; owners re-verify before this time."},"endpoint_verification_method":{"anyOf":[{"type":"string","enum":["well_known","dns_txt"]},{"type":"null"}],"title":"Endpoint Verification Method"},"operator_identity_verified":{"type":"boolean","title":"Operator Identity Verified"},"legal_entity_verified":{"type":"boolean","title":"Legal Entity Verified","default":false},"certifications":{"items":{"$ref":"#/components/schemas/CertificationOut"},"type":"array","title":"Certifications"},"reachability":{"type":"string","enum":["unknown","reachable","unreachable"],"title":"Reachability","description":"Health-probe signal only; 3 consecutive failures = unreachable. Not a revocation.","default":"unknown"},"last_check_result":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Check Result"},"review_flags":{"items":{"type":"string"},"type":"array","title":"Review Flags","description":"Moderation hints set by ONAA (e.g. name_collision_review)."},"registration_method":{"anyOf":[{"type":"string","enum":["operator_account","agent_self_registration","discovery_import","system"]},{"type":"null"}],"title":"Registration Method","description":"agent_self_registration means the agent proved control of its endpoint host once, at signup, as an anti-abuse gate. That is not the Endpoint Verified tier (endpoint_control_verified)."},"disclaimer":{"type":"string","title":"Disclaimer","default":"Registry trust metadata describes what ONAA checked. It is not a guarantee of legal eligibility, licensing, solvency or transaction outcome."}},"type":"object","required":["registration_status","claimed","endpoint_control_verified","endpoint_verified_at","operator_identity_verified","certifications"],"title":"Trust","description":"Each level is reported separately and never implies another (founder decision 8)."},"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"},"VantageObservation":{"properties":{"listing_id":{"type":"string","maxLength":40,"title":"Listing Id"},"vantage":{"type":"string","maxLength":64,"minLength":1,"pattern":"^[A-Za-z0-9._:-]+$","title":"Vantage"},"card_sha256":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}],"title":"Card Sha256"},"jwks_sha256":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}],"title":"Jwks Sha256"}},"additionalProperties":false,"type":"object","required":["listing_id","vantage"],"title":"VantageObservation"},"VerificationRunOut":{"properties":{"id":{"type":"string","title":"Id"},"listing_id":{"type":"string","title":"Listing Id"},"kind":{"type":"string","title":"Kind"},"vantage":{"type":"string","title":"Vantage"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role"},"verdict":{"type":"string","title":"Verdict"},"summary":{"additionalProperties":true,"type":"object","title":"Summary"},"report_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Report Sha256"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"note":{"type":"string","title":"Note","default":"Automated pre-check evidence only. It is not a certification; issuance needs human review (and real issuance needs founder approval)."}},"type":"object","required":["id","listing_id","kind","vantage","role","verdict","summary","report_sha256","created_at"],"title":"VerificationRunOut"},"VocabularyDecision":{"properties":{"decision":{"type":"string","enum":["accept","decline"],"title":"Decision"},"reason":{"type":"string","maxLength":500,"minLength":1,"title":"Reason"}},"additionalProperties":false,"type":"object","required":["decision","reason"],"title":"VocabularyDecision"},"VocabularyProposalCreate":{"properties":{"kind":{"type":"string","enum":["field","capability","category","protocol","service_type","skill_tag","compliance","data_category"],"title":"Kind"},"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name","description":"token, or a namespaced extension key for fields"},"description":{"type":"string","maxLength":2000,"minLength":10,"title":"Description"},"example":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Example","description":"Example value or record fragment, max 4 KiB"}},"additionalProperties":false,"type":"object","required":["kind","name","description"],"title":"VocabularyProposalCreate"},"VocabularyProposalOut":{"properties":{"id":{"type":"string","title":"Id"},"kind":{"type":"string","title":"Kind"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"example":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Example"},"status":{"type":"string","title":"Status"},"support_count":{"type":"integer","title":"Support Count"},"usage_count":{"type":"integer","title":"Usage Count","description":"How many public listings already use this name (facet or extension key)"},"decision_reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Decision Reason"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"decided_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Decided At"}},"type":"object","required":["id","kind","name","description","example","status","support_count","usage_count","decision_reason","created_at","decided_at"],"title":"VocabularyProposalOut"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}}}