← The evidence ledger
Evidence row 2633167
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://readfetch.com/v1/batch
- Recorded
- Previous row
- #1261565
- Body SHA-256
- c8e11b37e69a2f16cfe813a5bcca6130b5298c055ad4f48d149382e73161a94f
- Leaf
- 0x18ea04e7e1c4e538ddef06bc7a1a7e65ce2df35a0e949bb87bf387bac27d1fa4
What was observed
{
"endpoints": [
[
"x402",
"https://readfetch.com/v1/batch"
]
],
"name": "readfetch.com",
"owner_address": "0x26c2308adc8fe5ffe6d4183588dd2dd22ed86071",
"raw": {
"accepts": [
{
"amount": "15000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"description": "Read a fixed list of public HTML pages in one call—the same article extraction as POST /v1/text for each URL (Markdown or plain text plus title and metadata). One x402 payment covers the batch (minimum 10 pages quoted; URLs deduped, max 50). Returns results in input order: each item has url, status_code, text, billed, and hint when undelivered, plus batch-level delivered, failed, billed_pages, and optional credit for unused pages. Undelivered pages are not billed. Use readfet",
"extra": {
"name": "USD Coin",
"paymentFlow": "authorization",
"version": "2"
},
"maxAmountRequired": "15000",
"maxTimeoutSeconds": 60,
"mimeType": "application/json",
"network": "eip155:8453",
"payTo": "0x26C2308aDC8fe5FFE6d4183588DD2DD22ed86071",
"resource": "https://readfetch.com/v1/batch",
"scheme": "exact"
}
],
"description": "Read a fixed list of public HTML pages in one call—the same article extraction as POST /v1/text for each URL (Markdown or plain text plus title and metadata). One x402 payment covers the batch (minimum 10 pages quoted; URLs deduped, max 50). Returns results in input order: each item has url, status_code, text, billed, and hint when undelivered, plus batch-level delivered, failed, billed_pages, and optional credit for unused pages. Undelivered pages are not billed. Use readfet",
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"format": "markdown",
"fresh": false,
"pipeline": "text",
"timeout_s": 95,
"urls": [
"https://example.com"
]
},
"bodyType": "json",
"description": "Read up to 50 HTML pages in one payment (same /v1/text extraction per URL). Results in input order; undelivered pages are credited, not billed.",
"method": "POST",
"type": "http"
},
"output": {
"description": "Read a fixed list of public HTML pages in one call—the same article extraction as POST /v1/text for each URL (Markdown or plain text plus title and metadata). One x402 payment covers the batch (minimum 10 pages quoted; URLs deduped, max 50). Returns results in input order: each item has url, status_code, text, billed, and hint when undelivered, plus batch-level delivered, failed, billed_pages, and optional credit for unused pages. Undelivered pages are not billed. Use readfetch_text for one URL, readfetch_map then readfetch_crawl to discover and walk a site, readfetch_scrape when JavaScript is required. Read-only; 402 without PAYMENT-SIGNATURE like other paid tools.",
"example": {
"billed_pages": 1,
"credit": "credit-token-when-refund-applies",
"delivered": 1,
"failed": 1,
"results": [
{
"billed": true,
"content_sha256": "...",
"hint": null,
"requested_url": "https://example.com",
"status_code": 200,
"text": "...",
"title": "Example Domain",
"url": "https://example.com/",
"used_browser": false
},
{
"billed": false,
"content_sha256": null,
"hint": "upstream error",
"requested_url": "https://example.invalid/",
"status_code": 502,
"text": "",
"title": null,
"url": "https://example.invalid/",
"used_browser": false
}
],
"status": "partial"
},
"format": "application/json",
"type": "json"
}
},
"schema": {
"$defs": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"properties": {
"body": {
"properties": {
"accept_language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Accept-Language header for every item, e.g. 'de-DE,de;q=0.9'. Defaults to en-US when omitted."
},
"format": {
"default": "markdown",
"description": "Per-item output flavour, same as /v1/text: markdown (default) or plain text.",
"enum": [
"markdown",
"text"
],
"type": "string"
},
"fresh": {
"default": false,
"description": "When true, bypass cached responses for each item (default false).",
"type": "boolean"
},
"pipeline": {
"default": "text",
"description": "text (default) = HTTP-first per URL, same as readfetch_text; use render when probe reported challenge:true or items need JavaScript — bills like scrape per undelivered page, not like plain text.",
"enum": [
"text",
"render"
],
"type": "string"
},
"timeout_s": {
"default": 95,
"description": "Total budget for the whole batch in seconds; every item shares it and no item restarts it.",
"maximum": 95,
"minimum": 1,
"type": "number"
},
"urls": {
"description": "URLs to read, deduped before quoting.",
"items": {
"format": "uri",
"type": "string"
},
"maxItems": 50,
"minItems": 1,
"type": "array"
}
},
"required": [
"urls"
],
"type": "object"
},
"bodyType": {
"const": "json"
},
"method": {
"enum": [
"POST"
]
},
"type": {
"const": "http"
}
},
"required": [
"type",
"method",
"body"
],
"type": "object"
},
"output": {
"properties": {
"billed_pages": {
"type": "integer"
},
"credit": {
"type": "string"
},
"delivered": {
"type": "integer"
},
"failed": {
"type": "integer"
},
"results": {
"items": {
"properties": {
"billed": {
"type": "boolean"
},
"content_sha256": {
"type": "string"
},
"hint": {
"type": [
"string",
"null"
]
},
"requested_url": {
"format": "uri",
"type": "string"
},
"status_code": {
"type": "integer"
},
"text": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
},
"used_browser": {
"type": "boolean"
}
},
"type": "object"
},
"type": "array"
},
"status": {
"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": {
"free": true,
"method": "POST",
"note": "The only free POST — no wallet, no 402, no x402. Metadata plus optional ~400-character preview for the same URL before paying.",
"path": "/v1/probe",
"price_usd": 0
},
"related_endpoints": [
{
"path": "/v1/map"
},
{
"path": "/v1/probe"
}
],
"service_manifest": "https://readfetch.com/.well-known/service.json",
"skill": "https://readfetch.com/SKILL.md",
"support": {
"claims": {
"method": "POST",
"path": "/v1/claims",
"url": "https://readfetch.com/v1/claims",
"when": "paid delivery dispute; needs RECEIPT + EIP-191 signature"
},
"feedback": {
"body": {
"category": "integration|docs|site|other",
"message": "≤500 chars",
"request_id": "<from X-Request-Id>"
},
"free": true,
"mcp_tool": "readfetch_feedback",
"method": "POST",
"path": "/v1/feedback",
"url": "https://readfetch.com/v1/feedback"
},
"request_id_header": "X-Request-Id"
},
"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-11-03T11:13:14.138Z",
"quality": {
"l30DaysTotalCalls": 4,
"l30DaysUniquePayers": 1,
"lastCalledAt": "2026-11-03T11:13:13.576Z"
},
"resource": "https://readfetch.com/v1/batch",
"serviceName": "readfetch.com",
"tags": [
"batch",
"bulk",
"concurrent",
"data",
"markdown"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Read a fixed list of public HTML pages in one call—the same article extraction as POST /v1/text for each URL (Markdown or plain text plus title and metadata). One x402 payment covers the batch (minimum 10 pages quoted; URLs deduped, max 50). Returns results in input order: each item has url, status_code, text, billed, and hint when undelivered, plus batch-level delivered, failed, billed_pages, and optional credit for unused pages. Undelivered pages are not billed. Use readfet"
}What the leaf hashes
{"body":"c8e11b37e69a2f16cfe813a5bcca6130b5298c055ad4f48d149382e73161a94f","id":2633167,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793734401180891,"prev":1261565,"subject":"x402_bazaar:https://readfetch.com/v1/batch","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (425475 rows).
- 0x18ea10b42d97d7701534226af7c22b4235ac8b569e98fbd8c0c12b89ee2ffbab
- 0x14e3cada17ab71022eb7af7f9ed6659f983cf8414e9507491768254c7c22a29f
- 0xaa68309d209461ae9a7f2286df9f62fa546ec61861f7692b593d595d99a66c54
- 0xfe5d15a9c7f8370da331e3a4a4a2d0f1a70bd3820b70150fc8ec9157f6af54cb
- 0x81009fa3afcd0458efbb4e531ec3bff2fa5cf4da9b27fe74a4679683022a1cec
- 0x11c5e49757ae6d07d2bb15553343963ce8c2ecdd3f45dcf6c97905ca18b11114
- 0xf448c98fba37d8f14729a512955dd65cd0e5d95c17e7f03944fc72ec4faeb63c
- 0xa6ca0d980ed7756c4be0027b63781af084519d978440015adbc8fe2ddbb30362
- 0xe61d3f0701d3874546e0d32e18b93f8ad6d064aa83882ddfca0b5ef635360235
- 0xbb29962b40a870e2fe3c76be5d20b01b55f9ebb214ed2b669991afa7cd8f238d
- 0x026eebab8fd647249f276b592e7cf280361a29685ede56f3ce76ea8dc156e4eb
- 0x0afedfb5d94e21e502c5ea2f88ca41ada9eaa1d8dee6056c446b424b6e1fabd4
- 0x6393e3b006f758b9dc2efca97748e8b94b587bc90cac45f81eb08fb9398fed9a
- 0xa1b9921bde76812f1ccbe5230e9921311a3aeab7f9d6861066c6dd5b532d126e
- 0x711583ccee5cdd04f5adf1bada00491547d886e40ddf1799b012e27be2a663c2
- 0xbaff679935afdbe869b23e88acf4edb06c80c1bc21fbe841145699495a3e2db3
- 0xa82fcd0af08a38380e777cb578b71498d941c589c6401f31d445e1685adcc978
- 0x012ad914f3f945da3b6b48eddc7a1388613e4afc04339deb76c609611864e9b9
- 0xe35032d4b064b015fe60638756eeb0bc24e7c7943586468d33349341ee0ed3d6
- Day root
- 0xb646ffa569e24bf8336b0a15a9d98d0a2f1239f58e10c2b18a9d22e43343566a
- Chained
- 0x35e926359fd19031c6b5e08fb3b44f2524386a57c8fdd353336c185603f53d43
- Published
- On Arc Testnet, block 70601990: 0xa5f9dadba13cde129126b950e64b815e6833cb8ff53b75026c9dbe769c3768c7