{"api":"v1","generated_at":"2026-09-16T06:17:02.248Z","licence":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/","attribution":"TOLL, with a link to the page cited"},"page":"https://tollindex.com/e/app-tenna-ai-api-x402-verifier-x402-endpoint-lint-407d1c","pinned_page":"https://tollindex.com/e/app-tenna-ai-api-x402-verifier-x402-endpoint-lint-407d1c/at/2026-09-16T04-48Z","pinned":false,"method":"https://tollindex.com/ledger/method","snapshot_at":"2026-09-16T04:48:25.992Z","snapshot_stamp":"2026-09-16T04-48Z","endpoint":{"slug":"app-tenna-ai-api-x402-verifier-x402-endpoint-lint-407d1c","canonical_url":"https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint","resource":"https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint","http_method":"POST","type":"http","x402_version":2,"registries":["cdp"],"primary_registry":"cdp","curated_by_coinbase":false,"description":"x402 Endpoint Payment Check. Check an x402 endpoint's 402 payment-required body before you rely on it. Reports whether the contract is payable, whether it is opted in to the Bazaar catalogue, and whether a buying agent can read its input schema by machine. Every defect carries a JSON evidence path. Reads the body you supply; it does not pay or call the endpoint. A PASS is not a correctness guarantee and not a claim that the service is accurate.","service_name":"LUMI Verifier","declared_category":null,"declared_tags":["x402","402","payment","audit","bazaar"],"route_template":null,"registry_updated":"2026-09-06T20:10:34.774Z"},"derived":{"note":"fields no registry supplies; TOLL derives them and marks them derived on the page","title":"verifier x402 endpoint lint","category":"inference","first_observed_by_toll":"2026-09-10T19:08:24.178Z","last_observed_by_toll":"2026-09-16T04:48:25.991Z","observation_began":"2026-09-10"},"presence":{"listed_now":true,"first_absent_at":null,"delisting_confirmed_at":null,"events":[{"registry":"cdp","at":"2026-09-10T19:08:24.178Z","event":"listed"}]},"accepts":[{"registry":"cdp","ordinal":0,"network":"eip155:8453","asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","asset_name":"USD Coin","symbol":"USDC","decimals":6,"amount_display":"0.01 USDC","amount_units":0.01,"decimals_known":true,"pay_to":"0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b","scheme":"exact"}],"counters":{"observed_at":"2026-09-16T04:48:25.992Z","calls_30d":1,"unique_payers_30d":1,"last_called_at":"2026-09-06T20:10:34.296Z"},"validation":{"latest":{"observed_at":"2026-09-16T04:35:19.053Z","state":"pass","failed_checks":[],"endpoint_http_status":402,"run_id":"daily-2026-09-16"},"uptime":[{"days":7,"observed":6,"passed":6,"ratio":1},{"days":30,"observed":6,"passed":6,"ratio":1},{"days":90,"observed":6,"passed":6,"ratio":1}],"history_90d":[{"observed_at":"2026-09-16T04:35:19.053Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-16","state_changed":false},{"observed_at":"2026-09-15T04:33:00.480Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-15","state_changed":false},{"observed_at":"2026-09-14T04:29:16.704Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-14","state_changed":false},{"observed_at":"2026-09-13T04:27:46.655Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-13","state_changed":false},{"observed_at":"2026-09-12T06:43:29.699Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-12","state_changed":false},{"observed_at":"2026-09-11T10:15:39.816Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-11","state_changed":true}]},"seller":{"wallet":"0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b","page":"https://tollindex.com/seller/0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b","endpoints":44,"hosts":1},"reports":0,"registry_record":{"cdp":[{"tags":["x402","402","payment","audit","bazaar"],"type":"http","accepts":[{"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","extra":{"name":"USD Coin","version":"2"},"payTo":"0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b","amount":"10000","scheme":"exact","network":"eip155:8453","resource":"https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint","maxTimeoutSeconds":60}],"quality":{"lastCalledAt":"2026-09-06T20:10:34.296Z","l30DaysTotalCalls":1,"l30DaysUniquePayers":1},"resource":"https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint","extensions":{"bazaar":{"info":{"input":{"body":{"offering":"x402_endpoint_lint","paymentRequiredBody":{"accepts":[{"scheme":"exact"}],"resource":{"url":"https://example/api","description":"what it sells"},"x402Version":2}},"type":"http","method":"POST","bodyType":"json"},"output":{"type":"json","example":{"grade":"PASS","payable":true,"findings":[{}],"offering":"x402_endpoint_lint","dataState":"<dataState>","indexable":true,"provenance":{"source":"<source>","resultHash":null,"generatedAt":1,"rubricVersion":null,"ledgerSpanHours":null,"ledgerLaunchCount":null,"auditedDeliverableHash":null},"limitations":["<limitations>"],"schemaVersion":"<schemaVersion>"}}},"schema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["offering","paymentRequiredBody"],"properties":{"offering":{"type":"string","const":"x402_endpoint_lint","description":"Offering identifier. Must be exactly 'x402_endpoint_lint'."},"paymentRequiredBody":{"type":"object","examples":[{"accepts":[{"scheme":"exact"}],"resource":{"url":"https://example/api","description":"what it sells"},"x402Version":2}],"description":"The JSON body the endpoint returned with HTTP 402, verbatim."}},"description":"The 402 payment-required body returned by the endpoint.","additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","required":["schemaVersion","offering","provenance","limitations","dataState","grade","findings","payable","indexable"],"properties":{"grade":{"enum":["PASS","WARN","FAIL"],"type":"string","description":"Deterministic grade."},"payable":{"type":"boolean","description":"False when a defect would make settlement fail, such as a string over the facilitator's 500-character limit."},"findings":{"type":"array","items":{"type":"object"},"description":"Defects, each with a JSON evidence path and a recommended fix."},"offering":{"type":"string","const":"x402_endpoint_lint","description":"Offering that produced this result."},"dataState":{"type":"string","description":"COMPLETE when the body was readable."},"indexable":{"type":"boolean","description":"False when the Bazaar opt-in is missing, so the endpoint never appears in the catalogue however many payments settle."},"provenance":{"type":"object","properties":{"source":{"type":"string","description":"Data origin."},"resultHash":{"type":["string","null"],"description":"Hash of the audited input, so the same verdict can be reproduced. Present on audit offerings."},"generatedAt":{"type":"integer","description":"Unix seconds."},"rubricVersion":{"type":["string","null"],"description":"Rubric the verdict was produced under. Present on audit offerings."},"ledgerSpanHours":{"type":["number","null"],"description":"Hours of history covered. Null when the offering is not derived from the launch ledger."},"ledgerLaunchCount":{"type":["integer","null"],"description":"Launches in the ledger. Null when the offering is not derived from the launch ledger — this means not applicable, not collection failure."},"auditedDeliverableHash":{"type":["string","null"],"description":"Explicit alias for resultHash on deliverable-audit results; hashes the buyer-supplied input, not the audit envelope."}},"description":"Reproducibility metadata so another agent can audit this."},"limitations":{"type":"array","items":{"type":"string"},"description":"Coverage limits and missing data, always disclosed."},"schemaVersion":{"type":"string","description":"Deliverable contract version."},"severityCounts":{"type":"object","description":"Counts by severity."},"machineReadableContract":{"type":"boolean","description":"False when a non-standard schema keyword downgrades the published schema to a string, so a buying agent cannot read the contract."}},"additionalProperties":true}}}}},"resource":"https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint","discoverable":true}},"description":"x402 Endpoint Payment Check. Check an x402 endpoint's 402 payment-required body before you rely on it. Reports whether the contract is payable, whether it is opted in to the Bazaar catalogue, and whether a buying agent can read its input schema by machine. Every defect carries a JSON evidence path. Reads the body you supply; it does not pay or call the endpoint. A PASS is not a correctness guarantee and not a claim that the service is accurate.","lastUpdated":"2026-09-06T20:10:34.774Z","serviceName":"LUMI Verifier","x402Version":2}]}}