← The evidence ledger
Evidence row 1261563
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://readfetch.com/v1/scrape
- Recorded
- Previous row
- #1040242
- Body SHA-256
- cbbef7ae240bcc5600efe65cd477a7912f7ffb67b1c8c6ba1e186357e202be14
- Leaf
- 0x2b9d1a163439df206031ebf3b0aa59af5b1edc8c0543aafc879352dfe460ba25
What was observed
{
"endpoints": [
[
"x402",
"https://readfetch.com/v1/scrape"
]
],
"name": "readfetch.com",
"owner_address": "0x26c2308adc8fe5ffe6d4183588dd2dd22ed86071",
"raw": {
"accepts": [
{
"amount": "5000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"description": "JavaScript rendering and web scraping for agents: load a public URL in a real browser session, optionally scroll, wait for selectors, run JS, set headers, cookies or auth, and return Markdown, text or HTML with the page's links.",
"extra": {
"name": "USD Coin",
"paymentFlow": "authorization",
"version": "2"
},
"maxAmountRequired": "5000",
"maxTimeoutSeconds": 60,
"mimeType": "application/json",
"network": "eip155:8453",
"payTo": "0x26C2308aDC8fe5FFE6d4183588DD2DD22ed86071",
"resource": "https://readfetch.com/v1/scrape",
"scheme": "exact"
}
],
"description": "JavaScript rendering and web scraping for agents: load a public URL in a real browser session, optionally scroll, wait for selectors, run JS, set headers, cookies or auth, and return Markdown, text or HTML with the page's links.",
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"format": "markdown",
"fresh": false,
"mode": "render",
"url": "https://example.com"
},
"bodyType": "json",
"description": "Chromium renders the page, runs interactions, and returns Markdown, text or HTML with its links.",
"method": "POST",
"type": "http"
},
"output": {
"description": "JavaScript rendering and web scraping for agents: load a public URL in a real browser session, optionally scroll, wait for selectors, run JS, set headers, cookies or auth, and return Markdown, text or HTML with the page's links.",
"example": {
"billed": true,
"cache_status": "miss",
"markdown": "# Pricing\n\n...",
"status": "success",
"status_code": 200,
"title": "Pricing",
"url": "https://example.com/pricing"
},
"format": "application/json",
"type": "json"
}
},
"schema": {
"$defs": {
"Auth": {
"description": "Agent-friendly authentication: cookie, bearer token, or basic auth.",
"properties": {
"cookies": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/Cookie"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Cookies"
},
"password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Password"
},
"token": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Token"
},
"type": {
"enum": [
"cookie",
"bearer",
"basic"
],
"title": "Type",
"type": "string"
},
"username": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Username"
}
},
"required": [
"type"
],
"title": "Auth",
"type": "object"
},
"Cookie": {
"properties": {
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Domain"
},
"name": {
"title": "Name",
"type": "string"
},
"path": {
"default": "/",
"title": "Path",
"type": "string"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Url"
},
"value": {
"title": "Value",
"type": "string"
}
},
"required": [
"name",
"value"
],
"title": "Cookie",
"type": "object"
},
"ScrapeOptions": {
"description": "Advanced browser/interaction controls (the `advanced` object).",
"properties": {
"cookies": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/Cookie"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Cookies"
},
"delay_before_return_ms": {
"default": 0,
"maximum": 60000,
"minimum": 0,
"title": "Delay Before Return Ms",
"type": "integer"
},
"headers": {
"anyOf": [
{
"additionalProperties": {
"type": "string"
},
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Headers"
},
"include_html": {
"default": false,
"title": "Include Html",
"type": "boolean"
},
"include_links": {
"default": false,
"title": "Include Links",
"type": "boolean"
},
"js_code": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Js Code"
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Browser locale, e.g. 'en-US'. Sets Accept-Language inside the render.",
"title": "Locale"
},
"max_scroll_steps": {
"anyOf": [
{
"maximum": 200,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Scroll Steps"
},
"scan_full_page": {
"default": false,
"title": "Scan Full Page",
"type": "boolean"
},
"sticky_session": {
"default": false,
"description": "Pin one outbound address for the whole call instead of one per connection. A render already runs under one egress session, so the page load never spreads across exits; accepted for compatibility with callers that set it.",
"title": "Sticky Session",
"type": "boolean"
},
"timezone_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Browser timezone, e.g. 'America/New_York'.",
"title": "Timezone Id"
},
"user_agent": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "User Agent"
},
"wait_for": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Wait For"
},
"wait_for_timeout_ms": {
"default": 10000,
"maximum": 120000,
"minimum": 0,
"title": "Wait For Timeout Ms",
"type": "integer"
}
},
"title": "ScrapeOptions",
"type": "object"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"properties": {
"body": {
"$defs": {
"Auth": {
"description": "Agent-friendly authentication: cookie, bearer token, or basic auth.",
"properties": {
"cookies": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/Cookie"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Cookies"
},
"password": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Password"
},
"token": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Token"
},
"type": {
"enum": [
"cookie",
"bearer",
"basic"
],
"title": "Type",
"type": "string"
},
"username": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Username"
}
},
"required": [
"type"
],
"title": "Auth",
"type": "object"
},
"Cookie": {
"properties": {
"domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Domain"
},
"name": {
"title": "Name",
"type": "string"
},
"path": {
"default": "/",
"title": "Path",
"type": "string"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Url"
},
"value": {
"title": "Value",
"type": "string"
}
},
"required": [
"name",
"value"
],
"title": "Cookie",
"type": "object"
},
"ScrapeOptions": {
"description": "Advanced browser/interaction controls (the `advanced` object).",
"properties": {
"cookies": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/Cookie"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Cookies"
},
"delay_before_return_ms": {
"default": 0,
"maximum": 60000,
"minimum": 0,
"title": "Delay Before Return Ms",
"type": "integer"
},
"headers": {
"anyOf": [
{
"additionalProperties": {
"type": "string"
},
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Headers"
},
"include_html": {
"default": false,
"title": "Include Html",
"type": "boolean"
},
"include_links": {
"default": false,
"title": "Include Links",
"type": "boolean"
},
"js_code": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Js Code"
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Browser locale, e.g. 'en-US'. Sets Accept-Language inside the render.",
"title": "Locale"
},
"max_scroll_steps": {
"anyOf": [
{
"maximum": 200,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Scroll Steps"
},
"scan_full_page": {
"default": false,
"title": "Scan Full Page",
"type": "boolean"
},
"sticky_session": {
"default": false,
"description": "Pin one outbound address for the whole call instead of one per connection. A render already runs under one egress session, so the page load never spreads across exits; accepted for compatibility with callers that set it.",
"title": "Sticky Session",
"type": "boolean"
},
"timezone_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Browser timezone, e.g. 'America/New_York'.",
"title": "Timezone Id"
},
"user_agent": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "User Agent"
},
"wait_for": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Wait For"
},
"wait_for_timeout_ms": {
"default": 10000,
"maximum": 120000,
"minimum": 0,
"title": "Wait For Timeout Ms",
"type": "integer"
}
},
"title": "ScrapeOptions",
"type": "object"
}
},
"properties": {
"advanced": {
"anyOf": [
{
"$ref": "#/$defs/ScrapeOptions"
},
{
"type": "null"
}
],
"default": null
},
"auth": {
"anyOf": [
{
"$ref": "#/$defs/Auth"
},
{
"type": "null"
}
],
"default": null
},
"egress": {
"description": "Exit to leave through: `direct` (this service's own datacentre egress) or `residential` (a residential address pool, for targets that refuse datacentre addresses). Omit to use the default route.",
"title": "Egress",
"type": "string"
},
"egress_fallback": {
"description": "Pool to retry through once when the first attempt is refused (bot check, wall, empty extraction, origin 403/429/5xx); must differ from `egress`. Absent keeps one exit for the whole call.",
"title": "Egress Fallback",
"type": "string"
},
"format": {
"default": "markdown",
"enum": [
"markdown",
"text",
"html"
],
"title": "Format",
"type": "string"
},
"fresh": {
"default": false,
"title": "Fresh",
"type": "boolean"
},
"mode": {
"default": "render",
"enum": [
"fast",
"render",
"full"
],
"title": "Mode",
"type": "string"
},
"options": {
"anyOf": [
{
"$ref": "#/$defs/ScrapeOptions"
},
{
"type": "null"
}
],
"default": null,
"deprecated": true
},
"url": {
"format": "uri",
"maxLength": 2083,
"minLength": 1,
"title": "Url",
"type": "string"
}
},
"required": [
"url"
],
"title": "ScrapeRequest",
"type": "object"
},
"bodyType": {
"const": "json"
},
"method": {
"enum": [
"POST"
]
},
"type": {
"const": "http"
}
},
"required": [
"type",
"method",
"body"
],
"type": "object"
},
"output": {
"properties": {
"billed": {
"type": "boolean"
},
"cache_status": {
"type": "string"
},
"markdown": {
"type": "string"
},
"status": {
"type": "string"
},
"status_code": {
"type": "integer"
},
"title": {
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
}
}
}
},
"readfetch": {
"llms_txt": "https://readfetch.com/llms.txt",
"mcp": "https://readfetch.com/mcp",
"mcp_manifest": "https://readfetch.com/.well-known/mcp.json",
"openapi": "https://readfetch.com/openapi.json",
"payment_status": "live",
"probe": {
"method": "POST",
"note": "Free ~400-character preview for the same URL before paying",
"path": "/v1/probe",
"price_usd": 0
},
"related_endpoints": [
{
"path": "/v1/probe"
},
{
"path": "/v1/text"
}
],
"service_manifest": "https://readfetch.com/.well-known/service.json",
"skill": "https://readfetch.com/SKILL.md",
"x402_resources": "https://readfetch.com/.well-known/x402-resources.json"
}
},
"iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1793278990/bazaar-icons/a51ede90f06a90b8.png",
"lastUpdated": "2026-10-30T15:51:22.302Z",
"quality": {
"l30DaysTotalCalls": 3,
"l30DaysUniquePayers": 1,
"lastCalledAt": "2026-10-30T15:51:22.014Z"
},
"resource": "https://readfetch.com/v1/scrape",
"serviceName": "readfetch.com",
"tags": [
"ai agents",
"browser rendering",
"data",
"html",
"javascript rendering"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "JavaScript rendering and web scraping for agents: load a public URL in a real browser session, optionally scroll, wait for selectors, run JS, set headers, cookies or auth, and return Markdown, text or HTML with the page's links."
}What the leaf hashes
{"body":"cbbef7ae240bcc5600efe65cd477a7912f7ffb67b1c8c6ba1e186357e202be14","id":1261563,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793385513279169,"prev":1040242,"subject":"x402_bazaar:https://readfetch.com/v1/scrape","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (243099 rows).
- 0x2b9d1fb7e932059ae473f01631bfa12d205df95ff0947af2b4f3a38be772a16b
- 0xbd1edd45ffa5c67839c8b3d29ae6af5544747a10476e04531721cd2e42d269c1
- 0x837076c61c927ac4e6920e6bb6ab211e742e45dadd023432571fbc7802afdb68
- 0x87aa0e468715c9b4af43b3eb3b95a833ab0df764c92b259bb9bbd297bd07b5cd
- 0x6639ecd8e598e6c9691ba417c4514fee42e220a8b425b2d5c0df4f1b85f04aff
- 0x58459e2d597286765ab8eb112bf0c936ba4fabdd21813039f97f020ed4614b8a
- 0x7b9f13561d504468fbfdffed88f2fe55dfe564c5b90e5c9f229770cd7dfe4d2f
- 0x6e605a632ba9335f169ad6282c9b1467da9530b34f9758768f4053d9dae059bf
- 0xed3dcfc4fb2d485195e26442a54a5932d18c08b1cef16bf4c4a90e9ce2b7ddd2
- 0x4e13386eb1661b85317cd68c43b9d54f6d74ac5f82b97a63b809f09d1619b46e
- 0x9c8d21f84cc7c9c77dce54af1978d990bba76a3d671aed04180a196e1f719918
- 0xaf72951917c27614280b44cdb8110490708a025fb918d036df31d7c4af487f9b
- 0x5b5e717bd9d8c298120f6843230f201682f4ad6accca2c97966539b2c900f6f6
- 0xc1162ffd606c8e0e72ce94a16332c19bf77c27df8032f71c95d5690246968bbe
- 0x6222037db785cc797fc8809e52e551d945c928d389b7ac947c037fb9af818562
- 0x50ca74d7c8f26a46e9c3b8fb5e7f9ebcdfdcc1b7c863db3b6d2b7c12e24ca66f
- 0xb0c9ef42e725578748f3119c9dbebf2fc437266bda013df29f98ed3ebe621403
- 0x30a81d8fcef4e8f9e2877c62796cfc5612fc1b251127d531dee28f8dbd5c5147
- Day root
- 0x0826c7ad6039e06a2360ca0a4a3a4fe7f2626c6dc19f71a37599386f78b39875
- Chained
- 0x36b4c8a1063758f0b8765fa1bdf75fa92fb543cc183add3e261880ee2bd1f822
- Published
- On Arc Testnet, block 69923247: 0x8704744146c6967c8abc9e9a99de4db7283b29e840922ea83a69b6fe776e6861