{"protocol":"animica.paid-crawl/v1","summary":"Websites charge AI crawlers per page. Readers, verified search engines, uptime monitors and link-preview bots are always free.","operator_cost":"free — a website never pays to use Paid Crawl, in any amount, ever. The crawler pays.","gateway":"https://animica.dev/x402/crawl","for_website_owners":{"cost":"free","account_required":false,"api_key_required":false,"steps":[{"step":1,"what":"Publish your terms. Free, no account.","call":"POST https://animica.dev/x402/crawl/sites","body":{"domain":"example.com","price_usd":"0.001","free_per_day":100},"returns":"your robots.txt snippet, a verification token, and your settings"},{"step":2,"what":"Prove you control the domain. Required only to receive payouts — an unverified domain can publish terms and be read, but earns nothing.","serve":"a plain-text file at https://<your-domain>/.well-known/paid-crawl-verify.txt containing the token from step 1","call":"POST https://animica.dev/x402/crawl/verify","body":{"domain":"example.com"}},{"step":3,"what":"Paste the returned snippet into your robots.txt so crawlers can read your price.","note":"this publishes your terms; it does not enforce them"},{"step":4,"what":"Enforce it at your edge. Ten lines of nginx, or any code that can make one HTTP call per request.","call":"GET https://animica.dev/x402/crawl/install?domain=example.com","decision_endpoint":"POST https://animica.dev/x402/crawl/decide","fail_open":"treat any error, timeout or unexpected status as ALLOW — the gate must never take a website down"},{"step":5,"what":"Read what you earned, any time, free.","call":"GET https://animica.dev/x402/crawl/earnings/example.com"}],"revenue_share":{"operator_bps":9000,"note":"the site keeps this share of every billed crawl; the remainder is the gateway fee"}},"for_crawlers":{"steps":[{"step":1,"what":"Read a site's terms, free.","call":"GET https://animica.dev/x402/crawl/{domain}"},{"step":2,"what":"Buy a pass. One settlement covers many pages — per-page settlement is impossible at these prices because Base gas would exceed the fee.","options":[{"call":"POST https://animica.dev/x402/crawl/pass","price_usd":"0.010"},{"call":"POST https://animica.dev/x402/crawl/pass/10","price_usd":"0.100"},{"call":"POST https://animica.dev/x402/crawl/pass/100","price_usd":"1.000"}],"pages_granted":"the pass value divided by the site's own per-page rate","protocol":"x402","networks":["base","animica:1"]},{"step":3,"what":"Send the pass on every request.","header":"X-Crawl-Pass: anmcp_..."},{"step":4,"what":"Claim a post-quantum signed licence proving what you licensed. Free to claim, free for anyone to verify.","call":"POST https://animica.dev/x402/crawl/licence","verify":"POST https://animica.dev/x402/crawl/licence/verify","public_key":"GET https://animica.dev/x402/crawl/pubkey","scheme":"ML-DSA-65 (FIPS 204, scheme id 4099)"}]},"always_free_to_crawl":["verified search engines (forward-confirmed reverse DNS)","uptime and monitoring bots","link-preview unfurlers","human browsers","robots.txt, sitemaps, llms.txt and this document","each site's daily free allowance, per client"],"blocked":"a crawler that forges a verified identity (e.g. claims Googlebot without proving it) is blocked, never billed","robots_txt_directives":{"X402-Crawl":"URL of the machine-readable terms for this domain","X402-Price":"price per page, e.g. \"0.001 USDC per page\"","X402-Network":"settlement network, e.g. \"base\"","X402-Free-Per-Day":"free pages per client per UTC day","note":"an Animica convention, not part of the robots.txt standard; a crawler that ignores it is not violating robots.txt, but will be gated by the decision endpoint"},"free_endpoints":["POST /x402/crawl/sites","POST /x402/crawl/verify","POST /x402/crawl/decide","GET /x402/crawl/install","GET /x402/crawl/{domain}","GET /x402/crawl/earnings/{domain}","POST /x402/crawl/licence","POST /x402/crawl/licence/verify","GET /x402/crawl/pubkey","GET /.well-known/paid-crawl"],"paid_endpoints":["POST /x402/crawl/pass","POST /x402/crawl/pass/10","POST /x402/crawl/pass/100"],"honest_note":"Most AI crawlers do not implement x402 today. The realistic near-term outcome of enabling this is that unpaying crawlers are BLOCKED rather than that they pay. That is still useful, but it is not revenue yet.","documentation":"https://animica.org/#paid-crawl","contact":"ai@3vdc.com"}