{"api":"v1","generated_at":"2026-09-15T18:48:21.528Z","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/api-agentstools-dev-a11y-preflight-627530","pinned_page":"https://tollindex.com/e/api-agentstools-dev-a11y-preflight-627530/at/2026-09-15T16-57Z","pinned":false,"method":"https://tollindex.com/ledger/method","snapshot_at":"2026-09-15T16:57:44.360Z","snapshot_stamp":"2026-09-15T16-57Z","endpoint":{"slug":"api-agentstools-dev-a11y-preflight-627530","canonical_url":"https://api.agentstools.dev/a11y/preflight","resource":"https://api.agentstools.dev/a11y/preflight","http_method":"POST","type":"http","x402_version":2,"registries":["cdp"],"primary_registry":"cdp","curated_by_coinbase":false,"description":"Static accessibility (WCAG 2.2) check of a UI markup fragment for JSX, TSX, Vue, Angular or HTML. Detects missing image alt, unlabeled form controls, buttons and links with no accessible name, skipped heading levels, invalid ARIA, non-interactive click handlers, duplicate ids, positive tabindex and low static colour contrast. Returns a pass, caution or block verdict with per-finding WCAG criterion, element and line. Accessibility indicators, not a legal compliance guarantee.","service_name":"a11y-preflight","declared_category":null,"declared_tags":["accessibility","a11y","wcag","preflight","verdict"],"route_template":null,"registry_updated":"2026-08-17T09:55:47.514Z"},"derived":{"note":"fields no registry supplies; TOLL derives them and marks them derived on the page","title":"a11y preflight","category":"media","first_observed_by_toll":"2026-09-10T19:08:24.178Z","last_observed_by_toll":"2026-09-15T16:57:44.360Z","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.02 USDC","amount_units":0.02,"decimals_known":true,"pay_to":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","scheme":"exact"},{"registry":"cdp","ordinal":1,"network":"eip155:137","asset":"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359","asset_name":"USD Coin","symbol":"USDC","decimals":6,"amount_display":"0.02 USDC","amount_units":0.02,"decimals_known":true,"pay_to":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","scheme":"exact"},{"registry":"cdp","ordinal":2,"network":"eip155:42161","asset":"0xaf88d065e77c8cc2239327c5edb3a432268e5831","asset_name":"USD Coin","symbol":"USDC","decimals":6,"amount_display":"0.02 USDC","amount_units":0.02,"decimals_known":true,"pay_to":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","scheme":"exact"},{"registry":"cdp","ordinal":3,"network":"eip155:480","asset":"0x79a02482a880bce3f13e09da970dc34db4cd24d1","asset_name":"USDC","symbol":null,"decimals":null,"amount_display":"20000 smallest units, decimals unknown","amount_units":null,"decimals_known":false,"pay_to":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","scheme":"exact"},{"registry":"cdp","ordinal":4,"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","asset_name":null,"symbol":"USDC","decimals":6,"amount_display":"0.02 USDC","amount_units":0.02,"decimals_known":true,"pay_to":"AytHnvc6bZx1ALTy7b5Px7hcavoSYszG9aeKvDcZ8R1u","scheme":"exact"}],"counters":{"observed_at":"2026-09-15T16:57:44.360Z","calls_30d":1,"unique_payers_30d":1,"last_called_at":"2026-08-17T09:55:47.269Z"},"validation":{"latest":{"observed_at":"2026-09-15T04:59:17.430Z","state":"pass","failed_checks":[],"endpoint_http_status":402,"run_id":"daily-2026-09-15"},"uptime":[{"days":7,"observed":5,"passed":5,"ratio":1},{"days":30,"observed":5,"passed":5,"ratio":1},{"days":90,"observed":5,"passed":5,"ratio":1}],"history_90d":[{"observed_at":"2026-09-15T04:59:17.430Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-15","state_changed":false},{"observed_at":"2026-09-14T04:50:54.911Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-14","state_changed":false},{"observed_at":"2026-09-13T04:49:48.354Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-13","state_changed":false},{"observed_at":"2026-09-12T07:05:30.145Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-12","state_changed":false},{"observed_at":"2026-09-11T10:43:53.897Z","state":"pass","failed_checks":[],"run_id":"daily-2026-09-11","state_changed":true}]},"seller":{"wallet":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","page":"https://tollindex.com/seller/0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","endpoints":344,"hosts":2},"reports":0,"registry_record":{"cdp":[{"tags":["accessibility","a11y","wcag","preflight","verdict"],"type":"http","accepts":[{"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"name":"USD Coin","version":"2"},"payTo":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","amount":"20000","scheme":"exact","network":"eip155:8453","maxTimeoutSeconds":300},{"asset":"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359","extra":{"name":"USD Coin","version":"2"},"payTo":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","amount":"20000","scheme":"exact","network":"eip155:137","maxTimeoutSeconds":300},{"asset":"0xaf88d065e77c8cC2239327C5EDb3A432268e5831","extra":{"name":"USD Coin","version":"2"},"payTo":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","amount":"20000","scheme":"exact","network":"eip155:42161","maxTimeoutSeconds":300},{"asset":"0x79A02482A880bCe3F13E09da970dC34dB4cD24D1","extra":{"name":"USDC","version":"2"},"payTo":"0xF22e558a00D91Ee12A1F50C52186FecB8dDFf493","amount":"20000","scheme":"exact","network":"eip155:480","maxTimeoutSeconds":300},{"asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","extra":{"feePayer":"D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM"},"payTo":"AytHnvc6bZx1ALTy7b5Px7hcavoSYszG9aeKvDcZ8R1u","amount":"20000","scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","maxTimeoutSeconds":300}],"quality":{"lastCalledAt":"2026-08-17T09:55:47.269Z","l30DaysTotalCalls":1,"l30DaysUniquePayers":1},"resource":"https://api.agentstools.dev/a11y/preflight","extensions":{"bazaar":{"info":{"input":{"body":{"markup":"<img src=\"logo.png\" />","framework":"jsx"},"type":"http","method":"POST","bodyType":"json"},"output":{"type":"json","example":{"object":"a11y_preflight","summary":{"counts":{"findings":1},"by_severity":{"block":1,"caution":0}},"verdict":"block","coverage":{"level":"AA","rules_run":13,"rules_total":14,"framework_detected":"jsx","skipped_needs_render":[]},"findings":[{"element":"<img src=\"logo.png\" />","message":"Image has no alt attribute.","rule_id":"img-alt","wcag_sc":"1.1.1","category":"text-alternatives","location":"line 1","severity":"block","wcag_level":"A","remediation":"Add alt text, or alt=\"\" if decorative."}],"disclaimer":"Automated accessibility indicators, NOT a legal compliance guarantee.","ruleset_version":"2026.07.16"}}},"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":{"required":["markup"],"properties":{"level":{"enum":["A","AA"],"type":"string","description":"WCAG conformance level to check (default AA)"},"theme":{"type":"object","description":"Alias of palette"},"markup":{"type":"string","description":"The UI markup fragment or component to check"},"palette":{"type":"object","description":"Optional name-to-colour map for static contrast (e.g. CSS variables / theme tokens)"},"framework":{"enum":["auto","html","jsx","tsx","vue","angular"],"type":"string","description":"Source framework (default auto-detect)"}}},"type":{"type":"string","const":"http"},"method":{"enum":["POST","PUT","PATCH"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}}}},"description":"Static accessibility (WCAG 2.2) check of a UI markup fragment for JSX, TSX, Vue, Angular or HTML. Detects missing image alt, unlabeled form controls, buttons and links with no accessible name, skipped heading levels, invalid ARIA, non-interactive click handlers, duplicate ids, positive tabindex and low static colour contrast. Returns a pass, caution or block verdict with per-finding WCAG criterion, element and line. Accessibility indicators, not a legal compliance guarantee.","lastUpdated":"2026-08-17T09:55:47.514Z","serviceName":"a11y-preflight","x402Version":2}]}}