FETCH402
← Protocol index

Resource / 425

healthy

Otto AI.

Turn any URL into clean, LLM-ready markdown — the main article extracted, nav/ads/boilerplate stripped, plus title, description and publish date. Renders JavaScript pages, articles, docs and PDFs. A keyless, pay-per-call web reader for agents that read the web on demand: RAG ingestion, research and summarization. Structured JSON, cached by URL for fast repeat reads.

Eligibility
probeable
Failures
0
Last quote
2026-08-13 00:15:03 UTC
Last probe
2026-08-13 00:15:03 UTC
Payment requirements / accepts[] 1 options
State Network Scheme Atomic amount Asset payTo / untrusted
active eip155:8453 exact 5000 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808

All advertised payment options are stored. Base (`eip155:8453`) is the operational network for ranking and canaries; non-Base options remain visible for transparency.

Probe evidence 1 recent
healthy 2026-08-13 00:15:03 UTC GET · HTTP 402 · 117ms · accepts 1 · base 1 ok
Request
GET https://x402.ottoai.services/web-extract
Robots
error
Note
robots_error:{:robots_http_status, 404};http_402;accepts=1;base=1
Accepts fingerprint
ca3599c4d580076c381093eb0638cddc72c477038813d0fe3d76a2b2b1dfefc4

Accepts snapshot

[
  {
    "amount": "5000",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "assetTransferMethod": null,
    "extra": {
      "name": "USD Coin",
      "version": "2"
    },
    "maxTimeoutSeconds": 300,
    "network": "eip155:8453",
    "payTo": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808",
    "paymentFlow": null,
    "raw": {
      "amount": "5000",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "maxTimeoutSeconds": 300,
      "max_timeout_seconds": 300,
      "network": "eip155:8453",
      "payTo": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808",
      "pay_to": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808",
      "scheme": "exact"
    },
    "scheme": "exact"
  }
]

PaymentRequired raw

{
  "accepts": [
    {
      "amount": "5000",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "maxTimeoutSeconds": 300,
      "network": "eip155:8453",
      "payTo": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808",
      "scheme": "exact"
    }
  ],
  "error": "Payment required",
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "url": "https://blog.ethereum.org/2024/02/27/dencun-mainnet-announcement"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "data": {
              "content": "**March 12, ...",
              "contentLength": 10557,
              "description": "March 12, 20...",
              "generatedAt": "2026-08-10T0...",
              "httpStatus": 200,
              "publishedTime": "2024-02-27T0...",
              "title": "Dencun Mainn...",
              "url": "https://blog..."
            },
            "meta": {
              "degraded": false,
              "generatedAt": "",
              "stalenessSec": 0,
              "validUntil": ""
            },
            "status": "success"
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "properties": {
                  "url": {
                    "description": "Public http(s) URL to read (e.g. https://blog.ethereum.org/2024/02/27/dencun-mainnet-announcement). Renders JS + PDFs.",
                    "type": "string"
                  }
                },
                "required": [
                  "url"
                ],
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "properties": {
                  "data": {
                    "description": "Endpoint payload (see meta.generatedAt for freshness)"
                  },
                  "meta": {
                    "type": "object"
                  },
                  "status": {
                    "enum": [
                      "success"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "status",
                  "data",
                  "meta"
                ],
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    },
    "builder-code": {
      "info": {
        "a": "bc_hc2dhq09"
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "a": {
            "description": "App builder code",
            "pattern": "^[a-z0-9_]{1,32}$",
            "type": "string"
          },
          "s": {
            "description": "Service builder codes",
            "items": {
              "pattern": "^[a-z0-9_]{1,32}$",
              "type": "string"
            },
            "type": "array"
          },
          "w": {
            "description": "Wallet builder code",
            "pattern": "^[a-z0-9_]{1,32}$",
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "offer-receipt": {
      "info": {
        "offers": [
          {
            "acceptIndex": 0,
            "format": "eip712",
            "payload": {
              "amount": "5000",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "network": "eip155:8453",
              "payTo": "0x0E84dDEdAaE6A779c462C22a59F301EC31B6b808",
              "resourceUrl": "https://x402.ottoai.services/web-extract",
              "scheme": "exact",
              "validUntil": 1786580403,
              "version": 1
            },
            "signature": "0x69ec80cc8e33a4fee6faee43b73ac897abeee6d8f73233de118c8d3bb83012e5432d4ba76230d37b2f45724f3f0e95cd3855e134f42c744bffb5974c69c661411b"
          }
        ]
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "offers": {
            "items": {
              "properties": {
                "acceptIndex": {
                  "type": "integer"
                },
                "format": {
                  "type": "string"
                },
                "payload": {
                  "properties": {
                    "amount": {
                      "type": "string"
                    },
                    "asset": {
                      "type": "string"
                    },
                    "network": {
                      "type": "string"
                    },
                    "payTo": {
                      "type": "string"
                    },
                    "resourceUrl": {
                      "type": "string"
                    },
                    "scheme": {
                      "type": "string"
                    },
                    "validUntil": {
                      "type": "integer"
                    },
                    "version": {
                      "type": "integer"
                    }
                  },
                  "required": [
                    "version",
                    "resourceUrl",
                    "scheme",
                    "network",
                    "asset",
                    "payTo",
                    "amount"
                  ],
                  "type": "object"
                },
                "signature": {
                  "type": "string"
                }
              },
              "required": [
                "format",
                "signature"
              ],
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "offers"
        ],
        "type": "object"
      }
    },
    "otto-content-receipt": {}
  },
  "resource": {
    "description": "Turn any URL into clean, LLM-ready markdown — the main article extracted, nav/ads/boilerplate stripped, plus title, description and publish date. Renders JavaScript pages, articles, docs and PDFs. A keyless, pay-per-call web reader for agents that read the web on demand: RAG ingestion, research and summarization. Structured JSON, cached by URL for fast repeat reads.",
    "iconUrl": "https://x402.ottoai.services/assets/otto-icon.png",
    "mimeType": "application/json",
    "serviceName": "Otto AI",
    "tags": [
      "url to markdown",
      "markdown",
      "web scraping",
      "web reader",
      "rag"
    ],
    "url": "https://x402.ottoai.services/web-extract"
  },
  "x402Version": 2
}

Response headers

{
  "access-control-allow-origin": "*",
  "access-control-expose-headers": "PAYMENT-RESPONSE,PAYMENT-REQUIRED,PAYMENT-SIGNATURE,X-Payment-Response,WWW-Authenticate,X-Payment,X-Payment-Receipt",
  "connection": "keep-alive",
  "content-type": "application/json; charset=utf-8",
  "date": "Thu, 13 Aug 2026 00:15:03 GMT",
  "etag": "W/\"28a-WJlKoL+QnB9XkOGOWAzmEKQR9u0\"",
  "payment-required": "eyJ4NDAyVmVyc2lvbiI6MiwiZXJyb3IiOiJQYXltZW50IHJlcXVpcmVkIiwicmVzb3VyY2UiOnsidXJsIjoiaHR0cHM6Ly94NDAyLm90dG9haS5zZXJ2aWNlcy93ZWItZXh0cmFjdCIsImRlc2NyaXB0aW9uIjoiVHVybiBhbnkgVVJMIGludG8gY2xlYW4sIExMTS1yZWFkeSBtYXJrZG93biDigJQgdGhlIG1haW4gYXJ0aWNsZSBleHRyYWN0ZWQsIG5hdi9hZHMvYm9pbGVycGxhdGUgc3RyaXBwZWQsIHBsdXMgdGl0bGUsIGRlc2NyaXB0aW9uIGFuZCBwdWJsaXNoIGRhdGUuIFJlbmRlcnMgSmF2YVNjcmlwdCBwYWdlcywgYXJ0aWNsZXMsIGRvY3MgYW5kIFBERnMuIEEga2V5bGVzcywgcGF5LXBlci1jYWxsIHdlYiByZWFkZXIgZm9yIGFnZW50cyB0aGF0IHJlYWQgdGhlIHdlYiBvbiBkZW1hbmQ6IFJBRyBpbmdlc3Rpb24sIHJlc2VhcmNoIGFuZCBzdW1tYXJpemF0aW9uLiBTdHJ1Y3R1cmVkIEpTT04sIGNhY2hlZCBieSBVUkwgZm9yIGZhc3QgcmVwZWF0IHJlYWRzLiIsIm1pbWVUeXBlIjoiYXBwbGljYXRpb24vanNvbiIsInNlcnZpY2VOYW1lIjoiT3R0byBBSSIsInRhZ3MiOlsidXJsIHRvIG1hcmtkb3duIiwibWFya2Rvd24iLCJ3ZWIgc2NyYXBpbmciLCJ3ZWIgcmVhZGVyIiwicmFnIl0sImljb25VcmwiOiJodHRwczovL3g0MDIub3R0b2FpLnNlcnZpY2VzL2Fzc2V0cy9vdHRvLWljb24ucG5nIn0sImFjY2VwdHMiOlt7InNjaGVtZSI6ImV4YWN0IiwibmV0d29yayI6ImVpcDE1NTo4NDUzIiwiYW1vdW50IjoiNTAwMCIsImFzc2V0IjoiMHg4MzM1ODlmQ0Q2ZURiNkUwOGY0YzdDMzJENGY3MWI1NGJkQTAyOTEzIiwicGF5VG8iOiIweDBFODRkREVkQWFFNkE3NzljNDYyQzIyYTU5RjMwMUVDMzFCNmI4MDgiLCJtYXhUaW1lb3V0U2Vjb25kcyI6MzAwLCJleHRyYSI6eyJuYW1lIjoiVVNEIENvaW4iLCJ2ZXJzaW9uIjoiMiJ9fV0sImV4dGVuc2lvbnMiOnsib2ZmZXItcmVjZWlwdCI6eyJpbmZvIjp7Im9mZmVycyI6W3siZm9ybWF0IjoiZWlwNzEyIiwiYWNjZXB0SW5kZXgiOjAsInBheWxvYWQiOnsidmVyc2lvbiI6MSwicmVzb3VyY2VVcmwiOiJodHRwczovL3g0MDIub3R0b2FpLnNlcnZpY2VzL3dlYi1leHRyYWN0Iiwic2NoZW1lIjoiZXhhY3QiLCJuZXR3b3JrIjoiZWlwMTU1Ojg0NTMiLCJhc3NldCI6IjB4ODMzNTg5ZkNENmVEYjZFMDhmNGM3QzMyRDRmNzFiNTRiZEEwMjkxMyIsInBheVRvIjoiMHgwRTg0ZERFZEFhRTZBNzc5YzQ2MkMyMmE1OUYzMDFFQzMxQjZiODA4IiwiYW1vdW50IjoiNTAwMCIsInZhbGlkVW50aWwiOjE3ODY1ODA0MDN9LCJzaWduYXR1cmUiOiIweDY5ZWM4MGNjOGUzM2E0ZmVlNmZhZWU0M2I3M2FjODk3YWJlZWU2ZDhmNzMyMzNkZTExOGM4ZDNiYjgzMDEyZTU0MzJkNGJhNzYyMzBkMzdiMmY0NTcyNGYzZjBlOTVjZDM4NTVlMTM0ZjQyYzc0NGJmZmI1OTc0YzY5YzY2MTQxMWIifV19LCJzY2hlbWEiOnsiJHNjaGVtYSI6Imh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMjAtMTIvc2NoZW1hIiwidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsib2ZmZXJzIjp7InR5cGUiOiJhcnJheSIsIml0ZW1zIjp7InR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7ImZvcm1hdCI6eyJ0eXBlIjoic3RyaW5nIn0sImFjY2VwdEluZGV4Ijp7InR5cGUiOiJpbnRlZ2VyIn0sInBheWxvYWQiOnsidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsidmVyc2lvbiI6eyJ0eXBlIjoiaW50ZWdlciJ9LCJyZXNvdXJjZVVybCI6eyJ0eXBlIjoic3RyaW5nIn0sInNjaGVtZSI6eyJ0eXBlIjoic3RyaW5nIn0sIm5ldHdvcmsiOnsidHlwZSI6InN0cmluZyJ9LCJhc3NldCI6eyJ0eXBlIjoic3RyaW5nIn0sInBheVRvIjp7InR5cGUiOiJzdHJpbmcifSwiYW1vdW50Ijp7InR5cGUiOiJzdHJpbmcifSwidmFsaWRVbnRpbCI6eyJ0eXBlIjoiaW50ZWdlciJ9fSwicmVxdWlyZWQiOlsidmVyc2lvbiIsInJlc291cmNlVXJsIiwic2NoZW1lIiwibmV0d29yayIsImFzc2V0IiwicGF5VG8iLCJhbW91bnQiXX0sInNpZ25hdHVyZSI6eyJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJmb3JtYXQiLCJzaWduYXR1cmUiXX19fSwicmVxdWlyZWQiOlsib2ZmZXJzIl19fSwib3R0by1jb250ZW50LXJlY2VpcHQiOnt9LCJidWlsZGVyLWNvZGUiOnsiaW5mbyI6eyJhIjoiYmNfaGMyZGhxMDkifSwic2NoZW1hIjp7IiRzY2hlbWEiOiJodHRwczovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC8yMDIwLTEyL3NjaGVtYSIsInR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7ImEiOnsidHlwZSI6InN0cmluZyIsInBhdHRlcm4iOiJeW2EtejAtOV9dezEsMzJ9JCIsImRlc2NyaXB0aW9uIjoiQXBwIGJ1aWxkZXIgY29kZSJ9LCJ3Ijp7InR5cGUiOiJzdHJpbmciLCJwYXR0ZXJuIjoiXlthLXowLTlfXXsxLDMyfSQiLCJkZXNjcmlwdGlvbiI6IldhbGxldCBidWlsZGVyIGNvZGUifSwicyI6eyJ0eXBlIjoiYXJyYXkiLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIiwicGF0dGVybiI6Il5bYS16MC05X117MSwzMn0kIn0sImRlc2NyaXB0aW9uIjoiU2VydmljZSBidWlsZGVyIGNvZGVzIn19LCJhZGRpdGlvbmFsUHJvcGVydGllcyI6ZmFsc2V9fSwiYmF6YWFyIjp7ImluZm8iOnsiaW5wdXQiOnsidHlwZSI6Imh0dHAiLCJxdWVyeVBhcmFtcyI6eyJ1cmwiOiJodHRwczovL2Jsb2cuZXRoZXJldW0ub3JnLzIwMjQvMDIvMjcvZGVuY3VuLW1haW5uZXQtYW5ub3VuY2VtZW50In0sIm1ldGhvZCI6IkdFVCJ9LCJvdXRwdXQiOnsidHlwZSI6Impzb24iLCJleGFtcGxlIjp7InN0YXR1cyI6InN1Y2Nlc3MiLCJkYXRhIjp7InVybCI6Imh0dHBzOi8vYmxvZy4uLiIsInRpdGxlIjoiRGVuY3VuIE1haW5uLi4uIiwiZGVzY3JpcHRpb24iOiJNYXJjaCAxMiwgMjAuLi4iLCJjb250ZW50IjoiKipNYXJjaCAxMiwgLi4uIiwiY29udGVudExlbmd0aCI6MTA1NTcsInB1Ymxpc2hlZFRpbWUiOiIyMDI0LTAyLTI3VDAuLi4iLCJodHRwU3RhdHVzIjoyMDAsImdlbmVyYXRlZEF0IjoiMjAyNi0wOC0xMFQwLi4uIn0sIm1ldGEiOnsiZ2VuZXJhdGVkQXQiOiIiLCJ2YWxpZFVudGlsIjoiIiwic3RhbGVuZXNzU2VjIjowLCJkZWdyYWRlZCI6ZmFsc2V9fX19LCJzY2hlbWEiOnsiJHNjaGVtYSI6Imh0dHBzOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LzIwMjAtMTIvc2NoZW1hIiwidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsiaW5wdXQiOnsidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsidHlwZSI6eyJ0eXBlIjoic3RyaW5nIiwiY29uc3QiOiJodHRwIn0sIm1ldGhvZCI6eyJ0eXBlIjoic3RyaW5nIiwiZW51bSI6WyJHRVQiXX0sInF1ZXJ5UGFyYW1zIjp7InR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7InVybCI6eyJ0eXBlIjoic3RyaW5nIiwiZGVzY3JpcHRpb24iOiJQdWJsaWMgaHR0cChzKSBVUkwgdG8gcmVhZCAoZS5nLiBodHRwczovL2Jsb2cuZXRoZXJldW0ub3JnLzIwMjQvMDIvMjcvZGVuY3VuLW1haW5uZXQtYW5ub3VuY2VtZW50KS4gUmVuZGVycyBKUyArIFBERnMuIn19LCJyZXF1aXJlZCI6WyJ1cmwiXX19LCJyZXF1aXJlZCI6WyJ0eXBlIiwibWV0aG9kIl0sImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjpmYWxzZX0sIm91dHB1dCI6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJ0eXBlIjp7InR5cGUiOiJzdHJpbmcifSwiZXhhbXBsZSI6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJzdGF0dXMiOnsidHlwZSI6InN0cmluZyIsImVudW0iOlsic3VjY2VzcyJdfSwiZGF0YSI6eyJkZXNjcmlwdGlvbiI6IkVuZHBvaW50IHBheWxvYWQgKHNlZSBtZXRhLmdlbmVyYXRlZEF0IGZvciBmcmVzaG5lc3MpIn0sIm1ldGEiOnsidHlwZSI6Im9iamVjdCJ9fSwicmVxdWlyZWQiOlsic3RhdHVzIiwiZGF0YSIsIm1ldGEiXX19LCJyZXF1aXJlZCI6WyJ0eXBlIl19fSwicmVxdWlyZWQiOlsiaW5wdXQiXX19fX0=",
  "server": "railway-hikari",
  "transfer-encoding": "chunked",
  "vary": "accept-encoding",
  "x-hikari-trace": "iad1.dh1s,ams1.qkjh",
  "x-powered-by": "Express",
  "x-railway-edge": "iad1",
  "x-railway-request-id": "S-fS7_BZQw2wvgW5N8N_Fg, rM7zeUflThyktRmSss7a6g"
}

Response body

{
  "contact": {
    "email": "admin@useotto.xyz",
    "feedback": "POST https://x402.ottoai.services/feedback ($0.001) -- money-back guarantee on Otto-recommended services and Full Auto; feature requests welcome (email/Telegram are free).",
    "telegram": "https://t.me/DeFAI_Capital",
    "twitter": "https://twitter.com/useOttoAI"
  },
  "docs": "https://docs.useotto.xyz/getting-started/agent-quickstart",
  "error": "payment_required",
  "hint": "This is a pay-per-call x402 endpoint. The price and payment options (networks, signed offers) are in the PAYMENT-REQUIRED response header (x402 v2). Pay with an x402 client, then retry to receive the data.",
  "price": "$0.005",
  "x402Version": 2
}

Request headers

{
  "accept": "*/*",
  "user-agent": "Fetch402Bot/0.1 (+https://fetch402.com/crawler; contact: crawler@fetch402.com)"
}

Machine contract

Schemas.

InputJSON
{}
OutputJSON
{}