addrbookFor publishers
← The evidence ledger

Evidence row 2200229

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://readfetch.com/v1/text
Recorded
Previous row
#1789679
Body SHA-256
18b5647609afd3b6858f0e5082eb648f9322031964b054e1132edfd407f92249
Leaf
0xe95b7373e921ff7b232481146da4b1d4a8d77a1ce590e2c6f75a88e969a94c50

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://readfetch.com/v1/text"
    ]
  ],
  "name": "readfetch.com",
  "owner_address": "0x26c2308adc8fe5ffe6d4183588dd2dd22ed86071",
  "raw": {
    "accepts": [
      {
        "amount": "5000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "description": "Fetch a public URL and return its main readable content as Markdown or plain text, plus title, author, published date and site name. Strips navigation, ads and boilerplate. No JavaScript rendering by default (cheaper than readfetch_scrape); one Chromium fallback when plain HTTP is blocked. Prefer readfetch_fetch when you need raw status, headers, or non-HTML bytes; readfetch_scrape when the article only appears after JavaScript runs.",
        "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/text",
        "scheme": "exact"
      }
    ],
    "description": "Fetch a public URL and return its main readable content as Markdown or plain text, plus title, author, published date and site name. Strips navigation, ads and boilerplate. No JavaScript rendering by default (cheaper than readfetch_scrape); one Chromium fallback when plain HTTP is blocked. Prefer readfetch_fetch when you need raw status, headers, or non-HTML bytes; readfetch_scrape when the article only appears after JavaScript runs.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "format": "markdown",
              "max_bytes": 5000000,
              "timeout_s": 30,
              "url": "https://example.com"
            },
            "bodyType": "json",
            "description": "Article text and metadata, boilerplate stripped. No browser by default; falls back to one when a page blocks plain HTTP.",
            "method": "POST",
            "type": "http"
          },
          "output": {
            "description": "Fetch a public URL and return its main readable content as Markdown or plain text, plus title, author, published date and site name. Strips navigation, ads and boilerplate. No JavaScript rendering by default (cheaper than readfetch_scrape); one Chromium fallback when plain HTTP is blocked. Prefer readfetch_fetch when you need raw status, headers, or non-HTML bytes; readfetch_scrape when the article only appears after JavaScript runs.",
            "example": {
              "format": "markdown",
              "metadata": {
                "author": "A. Writer",
                "date": "2026-04-01",
                "sitename": "Example"
              },
              "size": 48213,
              "status": "success",
              "status_code": 200,
              "text": "# Post title\n\nBody as Markdown...",
              "title": "Post title",
              "url": "https://example.com/blog/post"
            },
            "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, e.g. 'de-DE,de;q=0.9'. Defaults to en-US.",
                      "title": "Accept Language"
                    },
                    "format": {
                      "default": "markdown",
                      "description": "Output flavour: Markdown keeps headings, lists and tables.",
                      "enum": [
                        "markdown",
                        "text"
                      ],
                      "title": "Format",
                      "type": "string"
                    },
                    "max_bytes": {
                      "default": 5000000,
                      "description": "Abort if the response body exceeds this many bytes.",
                      "maximum": 20000000,
                      "minimum": 1024,
                      "title": "Max Bytes",
                      "type": "integer"
                    },
                    "timeout_s": {
                      "default": 30,
                      "description": "Total budget for the whole call in seconds: DNS, redirects, the render fallback and any retry share it.",
                      "maximum": 60,
                      "minimum": 1,
                      "title": "Timeout S",
                      "type": "number"
                    },
                    "url": {
                      "description": "Public http(s) URL to read.",
                      "format": "uri",
                      "maxLength": 2083,
                      "minLength": 1,
                      "title": "Url",
                      "type": "string"
                    }
                  },
                  "required": [
                    "url"
                  ],
                  "title": "TextRequest",
                  "type": "object"
                },
                "bodyType": {
                  "const": "json"
                },
                "method": {
                  "enum": [
                    "POST"
                  ]
                },
                "type": {
                  "const": "http"
                }
              },
              "required": [
                "type",
                "method",
                "body"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "format": {
                  "type": "string"
                },
                "metadata": {
                  "properties": {
                    "author": {
                      "type": "string"
                    },
                    "date": {
                      "type": "string"
                    },
                    "sitename": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "size": {
                  "type": "integer"
                },
                "status": {
                  "type": "string"
                },
                "status_code": {
                  "type": "integer"
                },
                "text": {
                  "type": "string"
                },
                "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": {
          "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/probe"
          },
          {
            "path": "/v1/scrape"
          }
        ],
        "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-02T12:24:31.232Z",
    "quality": {
      "l30DaysTotalCalls": 35,
      "l30DaysUniquePayers": 2,
      "lastCalledAt": "2026-11-02T12:24:30.692Z"
    },
    "resource": "https://readfetch.com/v1/text",
    "serviceName": "readfetch.com",
    "tags": [
      "ai agents",
      "article extraction",
      "data",
      "html to markdown",
      "html to text"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Fetch a public URL and return its main readable content as Markdown or plain text, plus title, author, published date and site name. Strips navigation, ads and boilerplate. No JavaScript rendering by default (cheaper than readfetch_scrape); one Chromium fallback when plain HTTP is blocked. Prefer readfetch_fetch when you need raw status, headers, or non-HTML bytes; readfetch_scrape when the article only appears after JavaScript runs."
}

What the leaf hashes

{"body":"18b5647609afd3b6858f0e5082eb648f9322031964b054e1132edfd407f92249","id":2200229,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646796819789,"prev":1789679,"subject":"x402_bazaar:https://readfetch.com/v1/text","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (444186 rows).

  1. 0xe95b248c08e48c8669f8c508f4856ab9f2ded9da1563725370fae925976d36db
  2. 0xce52c11409161b01e99f45271848f834e47a7f9a4eb0795e7d5b9ac8eb5629d5
  3. 0xb0bab9da4980797f1a3fe9c36f33cbadda779ef1f02524aecde85e7290b360e1
  4. 0xbf57e4023cf918b6d1c4e42961b8a37e7d8c0163a7485553a171e4119f3dabf4
  5. 0x2717a36cbdd767a997687e7717dd2294be4e1c1480c8ac923004a5ea1097bea6
  6. 0xeb84828d7f6223e6d01eca8379cadf3c9ed1fbc0169c7405b2f367750ad5a60e
  7. 0xb611f6881e56509ec69cda889420839a0e25d8ea273ea0594073568d5f806da9
  8. 0x5d6b44f7f6e0722f23c9a303975ce23c25af83a6c0e4e320adf4a3ca89a8ba90
  9. 0x9d2cc02fbc10b51ae05e43f1f588befc5181cd0fd1d43ccb767863e68c9196c4
  10. 0xaeaeae184a9b419fb5d36cca8397f30102c6aeb9ad5d7575fc838a55590ee711
  11. 0x8ce002611b01d35edabbef9028712ef4d7e696b54822de7ff0074fed9cdc3ea7
  12. 0x3c7341656db31bffc7d2eacb59896b1fbf8e7f1b9619769235c75a51adb0b1be
  13. 0x0418958fa118b0a6a70d8e336a1073213853f5a3502b9ffc66202cc82d3dd472
  14. 0xf02baa2f8f9b385919b2f698b2e9351b84bd44118a8d5a72f2d1303df2c329b4
  15. 0xd643f764eee39146411d4bff8903a327f4f8f55616e14e57281a245206d6ed2b
  16. 0x6dd7e4db65395e8670c7c2747d44fec79e03305934ef4746bf5dbca04ec6ec49
  17. 0xec5d643575d83c9e07e65deeef71943b53cbf3007e7e2b9a6ef414081509b0cc
  18. 0x252cce55f1a3d5391c16f82d7f62494429a5f69b03486d4cfcfb7b2c96d6c884
Day root
0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
Chained
0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
Published
On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af

How to check it · This row as JSON