{"openapi":"3.1.0","info":{"title":"GEDX402 Chat","version":"6","description":"OpenAI-compatible chat/completions — Venice-shaped winner on Workers AI.","contact":{"email":"jvalamis@gmail.com","url":"https://chat.gedx402.com"},"x-guidance":"Pay per request with USDC on Base via x402 v2 (Coinbase CDP facilitator). Choose any listed network in the 402 accepts[] response. 1 routes on this shard (competitive heroes default; ?full=1 for all). Full catalog: GET https://gedx402.com/v1/models Start here: POST /v1/chat/completions","x-service":{"serviceName":"GEDX402 Chat","tags":["chat","llm","inference","usdc","multi-chain"],"iconUrl":"https://chat.gedx402.com/favicon.svg"},"x-hub":"https://gedx402.com","x-payments":[{"x402":{"network":"eip155:8453","asset":"USDC","label":"Base"}}],"x-openapi-scope":"competitive","full_catalog":"https://chat.gedx402.com/openapi.json?full=1"},"servers":[{"url":"https://chat.gedx402.com"}],"paths":{"/v1/chat/completions":{"post":{"operationId":"chat_completions","summary":"Chat Completions","description":"Multi-model chat completions. POST messages[] and set model to any LLM id from GET /v1/models; dynamic USDC pricing scales with model and token usage. Hero: GET /heroes/chat-completions.","tags":["Chat"],"security":[{"x402":[]}],"x-payment-info":{"protocols":[{"x402":{"network":"eip155:8453","asset":"USDC","label":"Base"}}],"price":{"mode":"dynamic","currency":"USD","min":"0.001000","max":"0.001000"}},"responses":{"200":{"description":"Inference result","content":{"application/json":{"schema":{"type":"object"},"example":{"id":"chatcmpl-example","object":"chat.completion","choices":[{"index":0,"message":{"role":"assistant","content":"Hello!"},"finish_reason":"stop"}]}}}},"400":{"description":"Invalid or over-limit payload"},"402":{"description":"Payment required (x402 v2 USDC on Base). Unpaid 402 includes PAYMENT-REQUIRED. After a rejected PAYMENT-SIGNATURE the JSON body is { reason_code, detail, next_step }.","headers":{"PAYMENT-REQUIRED":{"description":"Base64-encoded x402 v2 PaymentRequired with accepts[] per network","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"model":{"type":"string","description":"Model id or tier alias (fast, smart, micro). See GET /v1/models."},"messages":{"type":"array","description":"Conversation turns in order (system, user, assistant).","items":{"type":"object","properties":{"role":{"type":"string","enum":["system","user","assistant"],"description":"Speaker role for this turn."},"content":{"type":"string","description":"Message text for this turn."}},"required":["role","content"]}},"max_tokens":{"type":"integer","minimum":1,"maximum":4096,"description":"Maximum tokens to generate in the assistant reply."}},"required":["messages"]},"example":{"model":"fast","messages":[{"role":"user","content":"Say hello in one sentence."}],"max_tokens":128}}}},"servers":[{"url":"https://chat.gedx402.com"}],"x-resource-url":"https://chat.gedx402.com/v1/chat/completions"}},"/v1/models":{"get":{"operationId":"models","summary":"Shard route catalog","description":"Free catalog for this shard with pricing and descriptions.","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Catalog JSON"}}}},"/v1/demo":{"get":{"operationId":"demo_index","summary":"Response shape previews","description":"Free cached JSON examples (not charged).","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Demo index"}}}},"/v1/health":{"get":{"operationId":"health","summary":"Service health","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Health JSON"}}}}},"x-agentcash-guidance":{"llmsTxtUrl":"https://chat.gedx402.com/llms.txt"},"x-agentcash-provenance":{"ownershipProofs":["0xb3C2776cE3F99cb3366520c27b4aC5D436942Ab6","9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"]},"x-discovery":{"ownershipProofs":["0xb3C2776cE3F99cb3366520c27b4aC5D436942Ab6","9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"]},"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"x402 v2. First POST without this header returns 402 + PAYMENT-REQUIRED. Sign the Base accept (eip155:8453) with @x402/fetch and retry once. After a rejected signature the 402 body is { reason_code, detail, next_step }."}}}}