{"openapi":"3.1.0","info":{"title":"TOLL·402 Developer API","version":"1.0.0","description":"Read-only search, exact resource records, providers, and dated x402 verification status. A live 402 quote is not a settled paid call."},"servers":[{"url":"https://toll402.com/api/v1"}],"externalDocs":{"description":"Developer quickstart and MCP installation","url":"https://toll402.com/developers"},"tags":[{"name":"Resources","description":"Exact method-and-URL x402 records."},{"name":"Providers","description":"Grouped providers and products."},{"name":"Index","description":"Current dataset coverage and generation metadata."}],"paths":{"/resources":{"get":{"operationId":"searchResources","summary":"Search exact x402 resources","tags":["Resources"],"parameters":[{"name":"q","in":"query","schema":{"type":"string","maxLength":160},"description":"Capability, provider, host, route, or tag."},{"name":"network","in":"query","schema":{"type":"string"}},{"name":"method","in":"query","schema":{"type":"string","enum":["GET","POST","HEAD","PUT","PATCH","DELETE"]}},{"name":"maxPrice","in":"query","schema":{"type":"number","minimum":0}},{"name":"verification","in":"query","schema":{"$ref":"#/components/schemas/VerificationLevel"}},{"name":"curation","in":"query","schema":{"type":"string","enum":["curated","qualified","discovered"]}},{"name":"provider","in":"query","schema":{"type":"string"}},{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},{"name":"pageSize","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}}],"responses":{"200":{"description":"Paginated resources","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourcePage"}}}}}}},"/resources/{id}":{"get":{"operationId":"getResource","summary":"Get one exact resource","tags":["Resources"],"parameters":[{"name":"id","in":"path","required":true,"description":"Stable TOLL·402 resource id.","schema":{"type":"string"}}],"responses":{"200":{"description":"Full resource record"},"404":{"description":"Record not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/resources/{id}/status":{"get":{"operationId":"getResourceStatus","summary":"Get a resource status timeline","tags":["Resources"],"parameters":[{"name":"id","in":"path","required":true,"description":"Stable TOLL·402 resource id.","schema":{"type":"string"}}],"responses":{"200":{"description":"Dated discovery, registry, origin, quote, and paid-call events"},"404":{"description":"Record not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/providers":{"get":{"operationId":"searchProviders","summary":"Search provider groups","tags":["Providers"],"parameters":[{"name":"q","in":"query","schema":{"type":"string"}},{"name":"network","in":"query","schema":{"type":"string"}},{"name":"curation","in":"query","schema":{"type":"string","enum":["curated","discovered"]}},{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},{"name":"pageSize","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}}],"responses":{"200":{"description":"Paginated providers"}}}},"/providers/{id}":{"get":{"operationId":"getProvider","summary":"Get one provider group","tags":["Providers"],"parameters":[{"name":"id","in":"path","required":true,"description":"Stable TOLL·402 resource id.","schema":{"type":"string"}}],"responses":{"200":{"description":"Provider record"},"404":{"description":"Record not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/stats":{"get":{"operationId":"getIndexStats","summary":"Get current coverage and verification counts","tags":["Index"],"responses":{"200":{"description":"Index metadata and coverage"}}}}},"components":{"schemas":{"VerificationLevel":{"type":"string","enum":["paid-call","direct-quote","origin-and-cross-source","origin-reachable","cross-source","source-confirmed"]},"ResourceListItem":{"type":"object","required":["id","method","resourceUrl","providerName","title","payment","verification","curation"],"properties":{"id":{"type":"string"},"method":{"type":"string"},"resourceUrl":{"type":"string","format":"uri"},"providerName":{"type":"string"},"title":{"type":"string"},"payment":{"type":"object","properties":{"networks":{"type":"array","items":{"type":"string"}},"priceUsd":{"type":["number","null"]}}},"verification":{"type":"object","properties":{"level":{"$ref":"#/components/schemas/VerificationLevel"},"quoteOutcome":{"type":["string","null"]}}},"curation":{"type":"object","properties":{"status":{"type":"string","enum":["curated","qualified","discovered"]}}}}},"ResourcePage":{"type":"object","required":["apiVersion","schemaVersion","generatedAt","page","pageSize","pageCount","total","items"],"properties":{"apiVersion":{"type":"string"},"schemaVersion":{"type":"integer"},"generatedAt":{"type":"string","format":"date-time"},"page":{"type":"integer"},"pageSize":{"type":"integer"},"pageCount":{"type":"integer"},"total":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ResourceListItem"}}}},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}}}}}}