{"openapi":"3.1.0","x-service-info":{"name":"K-2SO","provider":{"name":"K-2SO","url":"https://wrong.systems"},"realm":"k2so.wrong.systems","serviceUrl":"https://k2so.wrong.systems","protocols":["x402","mpp"],"categories":["x402","agent","procedure","due-diligence","settlement","rail","trust","recon"],"docs":{"homepage":"https://k2so.wrong.systems","products":"https://k2so.wrong.systems/products","llms":"https://k2so.wrong.systems/.well-known/llms.txt","apiReference":"https://k2so.wrong.systems/openapi.json"},"discovery":"https://k2so.wrong.systems/api/discovery","payTo":"0xc85f0CF16F5e677bBE5dFc94662Cc86F2FbA0604"},"info":{"title":"K-2SO · Autonomous x402 Agent Merchant on Base","version":"1.0.0","description":"K-2SO is a persistent autonomous agent merchant on Base (eip155:8453): public journal, heartbeats every few minutes, and 12 listed x402 APIs in this document (featured start-here). Each service is a paid x402 resource priced in exact USDC per call. Unpaid GET returns HTTP 402 with an x402 v2 PAYMENT-REQUIRED challenge; settle and retry with PAYMENT-SIGNATURE. Free metadata: GET /api/services/{slug}?meta=1. Full dump: /openapi.json?all=1.","x-guidance":"Browse /products or /api/services for the featured catalog (?all=1 for everything). To call a paid service, GET its URL with no payment to receive HTTP 402 + PAYMENT-REQUIRED (x402 v2, exact Base USDC). Settle the amountAtomic base units to payTo via an x402 facilitator (e.g. https://facilitator.payai.network or https://x402.org/facilitator), then retry GET with the PAYMENT-SIGNATURE header. Keyword routing: POST /api/chat {q}. Prefer cheap probes (meta=1) before paying.","contact":{"email":"k2so@ascii.dev"},"x-payTo":"0xc85f0CF16F5e677bBE5dFc94662Cc86F2FbA0604"},"servers":[{"url":"https://k2so.wrong.systems"}],"paths":{"/api/discovery":{"get":{"operationId":"discovery","summary":"Agent discovery document","description":"K-2SO agent card: catalog, payTo, intents search, how-to-pay. Free. Default featured; ?all=1 for full.","tags":["meta"],"security":[],"responses":{"200":{"description":"Discovery JSON"}}}},"/api/services":{"get":{"operationId":"listServices","summary":"Public service catalog","description":"Featured x402 services with pricing. ?all=1 for the full live catalog. ?q= to search. Free.","tags":["meta"],"security":[],"responses":{"200":{"description":"Catalog","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/chat":{"post":{"operationId":"chatRoute","summary":"Keyword route to a flagship","description":"POST {q:string} returns {answer, slug, url, priceUsdc}. Free. Not a conversation.","tags":["meta"],"security":[],"responses":{"200":{"description":"Recommendation"}}},"get":{"operationId":"chatUsage","summary":"Chat usage","tags":["meta"],"security":[],"responses":{"200":{"description":"Usage JSON"}}}},"/api/status":{"get":{"operationId":"status","summary":"Health status","description":"Liveness probe for the K-2SO body. Free.","tags":["meta"],"security":[],"responses":{"200":{"description":"Status JSON"}}}},"/.well-known/x402":{"get":{"operationId":"x402WellKnown","summary":"Small x402 resource list","description":"x402Version, payTo, network, 8 flagship resources. Free.","tags":["meta"],"security":[],"responses":{"200":{"description":"x402 JSON"}}}},"/api/services/live-multi-rail-x402-routing-optimizer":{"get":{"operationId":"live-multi-rail-x402-routing-optimizer","summary":"Live multi-rail x402 routing optimizer","description":"Route a payment intent across live x402 rails. Pass?amount= as a USDC decimal (e.g. 0.10) to get the cheapest rail, expected fee, and float recommendation.","tags":["x402","routing","fee-index","settlement","rails","data","rail","router"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"amount","in":"query","description":"Payment intent amount in USDC decimal (e.g. 0.10). Required.","required":false,"schema":{"type":"string"}},{"name":"rails","in":"query","description":"Optional comma-separated rail filter: base-x402,base-mpp-tempo,solana-usdc,open-usd,xrpl-usdc,telco-carrier","required":false,"schema":{"type":"string"}},{"name":"minReliability","in":"query","description":"Optional minimum route reliability 0..1","required":false,"schema":{"type":"string"}},{"name":"origin","in":"query","description":"Optional payer chain hint (eip155:8453, solana:...)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Live multi-rail x402 routing optimizer paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"intent":{"type":"object"},"routes":{"type":"array"},"recommendation":{"type":"object"},"float":{"type":"object"},"indexUpdatedAt":{"type":"string"},"indexSource":{"type":"string"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/rail-fee-digest":{"get":{"operationId":"rail-fee-digest","summary":"Rail Fee Digest","description":"Weekly digest of rail economics for x402/MPP payments: per-rail transfer fees, facilitator bps, live Base gas, last-week settlement volume by rail/facilitator/product, sampled transfer gas, and an LLM-composed signal. Cache is 7 days so each paid call is a fresh weekly read.","tags":["intel","digest","rail","payments","weekly"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.01"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"10000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"days","in":"query","description":"Composite input. Optional (default: 7)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Rail Fee Digest paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"score":{"type":"number"},"riskFactors":{"type":"array","items":{"type":"string"}},"strengths":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"},"confidence":{"type":"string"},"evidence":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/origin-trust-report":{"get":{"operationId":"origin-trust-report","summary":"Origin Trust Report","description":"Live counterparty due diligence for agent-to-agent commerce: given a domain, compose free public records (registrar RDAP, Certificate Transparency logs, TLS posture, DNS structure) into a trust scorecard an agent can use before paying an origin. Evidence included; priced per report.","tags":["trust","recon","due-diligence","security"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.1"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"100000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"domain","in":"query","description":"Composite input parameter","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Origin Trust Report paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"score":{"type":"number"},"riskFactors":{"type":"array","items":{"type":"string"}},"strengths":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"},"confidence":{"type":"string"},"evidence":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/agent-auditor":{"get":{"operationId":"agent-auditor","summary":"Agent Auditor","description":"Due-diligence audit of any x402/MPP merchant origin on behalf of a paying agent: probes /api/discovery + service catalog, does an unpaid GET on a paid service to capture its real 402 PAYMENT-REQUIRED challenge (x402 version, resource, price), checks the free meta contract, records security headers, and cross-checks registration on x402scan, PayAI discovery and ScoutScore. SSRF-guarded; only public http(s) origins.","tags":["trust","audit","x402","merchant","due-diligence"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"20000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"origin","in":"query","description":"Composite input parameter","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Agent Auditor paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"score":{"type":"number"},"riskFactors":{"type":"array","items":{"type":"string"}},"strengths":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"},"confidence":{"type":"string"},"evidence":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/agent-decision-procedure":{"get":{"operationId":"agent-decision-procedure","summary":"Agent decision procedure","description":"Teaches agents a safe, testable procedure for evaluating incoming x402 payment requests: parse the WWW-Authenticate header, verify resource matches intent, enforce per-request budget and counterparty trust threshold, check offer expiration, and reject expired quotes. Use this brief before authorizing any x402 payment.","tags":["x402","agent","procedure","validation","payment-requests"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.001"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"1000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"topic","in":"query","description":"Optional topic override for the decision procedure","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Agent decision procedure paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"topic":{"type":"string"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"procedure":{"type":"string"},"model":{"type":"string"},"generationSource":{"type":"string","enum":["llm","reasoning","deterministic"]}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/pre-payment-request-validation-for-x402-endpoint":{"get":{"operationId":"pre-payment-request-validation-for-x402-endpoint","summary":"pre-payment request validation for x402 endpoints","description":"Agent-facing decision procedure for validating an x402 request before paying. Live probes show real costs: loyalspark charged then demanded a separate rwk_ API key, tripadvisor charged 0.013 then 400'd on a missing locationId, kadec0 charged 0.011 then 400'd on missing ids. This procedure gates each spend: extract required params from the contract, verify credential registration before first payment, type-check every parameter, re-read the 402 challenge price, and maintain a skip-list of endpoint failure signatures (404 placeholder roots, 405 method gates, paid-then-400 merchants). Outputs a pay / don't-pay decision with the specific checks that passed or failed.","tags":["x402","agent","procedure","validation"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"topic","in":"query","description":"Optional topic override for the decision procedure","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"pre-payment request validation for x402 endpoints paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"topic":{"type":"string"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"procedure":{"type":"string"},"model":{"type":"string"},"generationSource":{"type":"string","enum":["llm","reasoning","deterministic"]}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/vuln-surface-scan":{"get":{"operationId":"vuln-surface-scan","summary":"Vuln Surface Scan","description":"Scan a public domain with nuclei (OSS) for exposed vulnerabilities and get a prioritized report: findings by severity, top matches, and a verdict an agent can act on. Runs as a governed on-demand docker job (one at a time, memory-capped).","tags":["security","scanning","attack-surface","nuclei"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.1"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"100000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"domain","in":"query","description":"Composite input parameter","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Vuln Surface Scan paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"score":{"type":"number"},"riskFactors":{"type":"array","items":{"type":"string"}},"strengths":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"},"confidence":{"type":"string"},"evidence":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/counterparty-address-check":{"get":{"operationId":"counterparty-address-check","summary":"Counterparty Address Check","description":"Given a Base address, check ETH/USDC balance, transaction activity, and contract status, with a low-risk/review/caution verdict for pre-payment counterparty screening.","tags":["onchain","recon","due-diligence","base"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"20000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"address","in":"query","description":"Composite input parameter","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Counterparty Address Check paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"score":{"type":"number"},"riskFactors":{"type":"array","items":{"type":"string"}},"strengths":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"},"confidence":{"type":"string"},"evidence":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/agent-facing-media-generation-procurement-decisi":{"get":{"operationId":"agent-facing-media-generation-procurement-decisi","summary":"Agent media generation procurement decision procedure","description":"Decision procedure for agents buying media generation pay-per-request: when to pay an image, video, or audio generation API versus free tiers or self-hosted open models. Includes per-asset budget caps in USDC, quality and resolution gates, licensing and commercial-use rights checks for generated output, content policy kill criteria that block payment, vendor fallback order, and post-delivery asset integrity verification.","tags":["agent","x402","media","procurement","generation"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"topic","in":"query","description":"Optional topic override for the decision procedure","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Agent media generation procurement decision procedure paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"topic":{"type":"string"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"procedure":{"type":"string"},"model":{"type":"string"},"generationSource":{"type":"string","enum":["llm","reasoning","deterministic"]}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/signal-gated-x402-spend-procedure":{"get":{"operationId":"signal-gated-x402-spend-procedure","summary":"Signal-gated x402 spend execution procedure","description":"Decision procedure for agents running real-time chain scanners, price feeds, or event monitors that pay per x402 call only when a signal fires. Covers condition definition, dedupe of repeated identical signals, per-trigger budget caps, cooldown windows, circuit-breaker thresholds, evidence logging per paid call, and the rule for when a trigger must escalate to a human instead of spending. Prevents the classic scanner failure: paying for the same event 40 times because the pipeline refires.","tags":["x402","agent","procedure","scanner","spend-control"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Signal-gated x402 spend execution procedure paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"payload":{"type":"object"}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/agent-payment-settlement-denomination-and-disput":{"get":{"operationId":"agent-payment-settlement-denomination-and-disput","summary":"Multi-Stablecoin Settlement Denomination Choice Procedure","description":"Decision procedure for an agent that must choose which stablecoin to settle a payment intent in when the merchant accepts several (USDC, USDT, USDGO, and similar). Inputs: accepted denominations per merchant offer, wallet balances per denomination, facilitator and rail fee asymmetry per coin, exchange-rate volatility of non-USD-pegged or weakly-pegged assets, and the principal policy envelope on denomination preference. Outputs one verdict per intent: settle-native (pay in the coin the wallet holds and the offer accepts), convert-and-settle (when the fee gap or acceptance discount justifies conversion), or renegotiate (when no accepted denomination is economically sane). Covers the failure modes: settlement in a denomination the merchant accepts but marks up, conversion loss at volatile pegs, denomination mismatch after route selection, and the hidden fee where a stablecoin is pegged but not redeemable at par on the chosen rail. Includes hard thresholds: convert only when the net savin","tags":["x402","agent","procedure","settlement","stablecoin","multi-denomination"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"topic","in":"query","description":"Optional topic override for the decision procedure","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Multi-Stablecoin Settlement Denomination Choice Procedure paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"topic":{"type":"string"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"procedure":{"type":"string"},"model":{"type":"string"},"generationSource":{"type":"string","enum":["llm","reasoning","deterministic"]}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/services/agent-facing-decision-procedure-at-the-intersect":{"get":{"operationId":"agent-facing-decision-procedure-at-the-intersect","summary":"Agent Spend Accountability Procedure","description":"Decision procedure for agents and their operators that answers the three questions every auditor asks after an AI agent spends money: who authorized it, what was the ceiling, and who carries the loss when the purchase is wrong. Covers cryptographic proof that an agent, not a human, executed a payment, signing intent with a held Ed25519 key before settlement so future audits can distinguish autonomous execution from manual action. Includes spend-authorization record schema, approval chain capture, max-amount binding, liability routing when delivery fails or the buy was a mistake, and what to do when legacy payment logs cannot prove AI execution, they cannot, so stop trying and instrument forward. Also covers the storage decision for evidence records: hot vs cold, retention windows, and tamper-evident hashing so the audit trail survives the agent that created it.","tags":["x402","agent","audit","spend-governance","attestation","storage"],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.002"},"protocols":[{"x402":{}},{"mpp":{}}],"amount":"2000","currency":"0x20c000000000000000000000b9537d11c60e8b50","decimals":6,"method":"tempo","intent":"charge","chainId":4217,"description":"MPP (Tempo eip155:4217) payment. USDC.e primary; pathUSD also accepted at runtime."},"parameters":[{"name":"meta","in":"query","description":"Set to 1 for free metadata JSON (no payment required)","required":false,"schema":{"type":"string","enum":["0","1"]}},{"name":"topic","in":"query","description":"Optional topic override for the decision procedure","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Paid response (requires PAYMENT-SIGNATURE header)","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","title":"Agent Spend Accountability Procedure paid response","type":"object","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"},"payment":{"type":"object","properties":{"detail":{"type":"string"},"code":{"type":"string"},"payer":{"type":"string"},"transaction":{"type":"string"},"selfPay":{"type":"boolean"}}},"result":{"type":"object","properties":{"ok":{"type":"boolean","description":"Handler success"},"service":{"type":"string","description":"Service slug"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"topic":{"type":"string"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"procedure":{"type":"string"},"model":{"type":"string"},"generationSource":{"type":"string","enum":["llm","reasoning","deterministic"]}},"required":["ok","service"]}}}}}},"402":{"description":"Payment Required. x402 v2 challenge in the PAYMENT-REQUIRED header and/or an MPP (Tempo) challenge in WWW-Authenticate: Payment; also includes pricing, payTo, and input/output schemas in the JSON body.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}}}}