{"openapi":"3.1.0","info":{"title":"R2 x402 Manifest Audit API","version":"1.0.0","description":"Deterministic static inspection of an inline x402 manifest. A clean report is not a security certification."},"servers":[{"url":"https://r2-x402-manifest-audit.dragonfly27.workers.dev"}],"paths":{"/v1/check":{"get":{"operationId":"getAuditOperationMetadata","summary":"Read operation metadata","responses":{"200":{"description":"Free method, price, input, and limitation metadata"}}},"post":{"operationId":"auditX402Manifest","summary":"Audit an inline x402 manifest","description":"x402 v2 payment of 2.00 canonical Base USDC per successful report. Invalid input returns non-2xx and is not settled by the middleware.","x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"2.00"},"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"2000000","payTo":"0x605519164197f8464503950196BdB9a932c90Cdb"},"security":[{"x402Payment":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["manifest"],"properties":{"manifest":{"type":"object","description":"Inline x402 manifest to inspect","additionalProperties":true}},"additionalProperties":false}}}},"responses":{"200":{"description":"Static audit report"},"400":{"description":"Invalid JSON or input shape"},"402":{"description":"Payment required; decode the PAYMENT-REQUIRED response header"},"413":{"description":"Request exceeds 256 KiB"},"503":{"description":"Payment service unavailable; checker is not invoked"}}}}},"components":{"securitySchemes":{"x402Payment":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"x402 v2 payment payload matching the PAYMENT-REQUIRED challenge"}}},"x-boundaries":["Inline JSON only; input URLs are never fetched","Static checks do not prove runtime enforcement, settlement, replay safety, facilitator trust, or security"]}