# 402registry > Checks whether AI agents and AI crawlers can actually see a website: a plain HTTP fetch with no JavaScript, the way GPTBot, ClaudeBot, PerplexityBot and OAI-SearchBot fetch pages. $0.10 per check over the x402 protocol (USDC on Base), no account, no API key. A passing check earns a dated badge and a free listing in a public catalog. Every finding quotes what the fetch actually returned, with a fix for the site's stack. The paid check is the product; the catalog listing is a free bonus that is earned by passing and never bought, and nothing about a failed check is published. ## Buy a check (x402) A GET without payment returns 402 with x402 v2 requirements in the PAYMENT-REQUIRED header. Sign them and repeat the request with the PAYMENT-SIGNATURE header. Lost the answer? Resend the identical request with the same payment header within 5 minutes of settlement (same wallet, same site): you get it again and nothing is charged. A 409 already_paid means that authorization was already settled; the body is the receipt. Never sign a new authorization for the same purchase. - [One check, $0.10](https://402registry.com/buy/one): 1 check, $0.10 per check. Add ?site= to the paid request. One payment buys one check, run now; one site gets at most 3 checks per hour and 10 per day. ## Buy data - [Catalog snapshot, $0.05](https://402registry.com/buy/catalog): every site in the catalog as one JSON file, rendered at purchase — per site the findings by name and severity, the stack, the title and what the crawler saw without JavaScript. No parameters. The basic fields are free at https://402registry.com/registry.json. ## Free - [Look up a site](https://402registry.com/api/check): add ?url=. Returns the last dated verdict, if the site was ever checked. - [Submit a site for a free check](https://402registry.com/submit): POST {"host":"example.com"}. Being queued is not a promise of listing. - [Catalog](https://402registry.com/registry): listed sites, newest first. - [Catalog as JSON](https://402registry.com/registry.json): the same list, machine-readable. ## Docs - [API guide (JSON)](https://402registry.com/docs): quickstart, verdict meanings, pricing. - [OpenAPI](https://402registry.com/openapi.json): every public route. - [Manifest](https://402registry.com/.well-known/402registry.json): payment network, pay-to address, live packs, selling status. - [Trust & verification](https://402registry.com/trust): how to check the 402 terms and the receiving wallet before paying, what a check measures, and what a pass does not mean. - [MCP server](https://402registry.com/mcp): Model Context Protocol over streamable HTTP, no key — lookup_site, get_pricing, get_docs, get_service_status. Buying stays plain HTTP with an x402 client. ## Blog - [Five reasons AI crawlers cannot read your site, and how to fix each](https://402registry.com/blog/fix-sites-ai-crawlers-cannot-read): Empty pages without JavaScript, soft 404s, two hostnames, no sitemap and a firewall that says no: the five problems our measurements of AI-built and x402 sites keep finding, with a curl test and a fix for each. - [One in eleven x402 sites blocks AI training crawlers](https://402registry.com/blog/x402-sites-turn-claudebot-away): On 27 September 2026 we checked 927 x402 Bazaar sites the way AI crawlers read them. 86 of 908 refused the training crawlers GPTBot and ClaudeBot; 83 of those let the search and answer crawlers in. Corrected the same day. - [We fetched 104 AI-built sites the way GPTBot does. 61% were empty.](https://402registry.com/blog/ai-built-sites-empty-without-javascript): On 20 September 2026 we fetched 120 sites made with AI app builders the way AI crawlers do: plain HTTP, no JavaScript. 61% of the live ones were empty. The data, the control group and the fixes. ## Opt out Disallow the 402registry-check user agent in robots.txt, or write to abuse@402registry.com. Both are honoured, and an opted-out site is never listed.