addrbookFor publishers
← The evidence ledger

Evidence row 16569

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://badhttp.dev/402/pay/base
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
392de6601b54d6cfa0b18f5c7dbb4341d26400a9bbf04d380ba6e0d06b71afbf
Leaf
0x2378401be5ab1f16546108ff77e6c8801efc46417741932481cee094fa522c9f

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://badhttp.dev/402/pay/base"
    ]
  ],
  "name": "badhttp",
  "owner_address": "0x2b14ad50d63c7fee5a33847f95153ac37a690170",
  "raw": {
    "accepts": [
      {
        "amount": "10000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "assetTransferMethod": "eip3009",
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0x2b14ad50d63c7fee5a33847f95153ac37a690170",
        "scheme": "exact"
      }
    ],
    "description": "badhttp /402/pay: a real x402 v2 paywall for testing clients. Pay 0.01 USDC on Base mainnet and get a 200 with a PAYMENT-RESPONSE receipt and the transaction hash. Nothing else is sold; sibling endpoints under /402 misbehave on purpose.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "type": "http"
          },
          "output": {
            "example": {
              "amount_atomic": "10000",
              "amount_usd": 0.01,
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "explorer": "https://basescan.org/tx/0x0000000000000000000000000000000000000000000000000000000000000000",
              "facilitator": "https://example.invalid",
              "network": "eip155:8453",
              "network_name": "base",
              "paid": true,
              "pay_to": "0x2b14ad50d63c7fee5a33847f95153ac37a690170",
              "payer": "0x0000000000000000000000000000000000000000",
              "real_money": true,
              "scenario": "/402/pay",
              "transaction": "0x0000000000000000000000000000000000000000000000000000000000000000"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "headers": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "type": "object"
                },
                "method": {
                  "enum": [
                    "GET",
                    "HEAD",
                    "DELETE"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "amount": {
                      "description": "price in USD, 0.001-1, default 0.01",
                      "pattern": "^\\d+(\\.\\d{1,6})?$",
                      "type": "string"
                    },
                    "network": {
                      "description": "base-sepolia is test USDC (the default); base is real USDC on Base mainnet",
                      "enum": [
                        "base",
                        "base-sepolia"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-10-26T12:04:35.862Z",
    "quality": {
      "l30DaysTotalCalls": 6,
      "l30DaysUniquePayers": 5,
      "lastCalledAt": "2026-10-26T12:04:35.482Z"
    },
    "resource": "https://badhttp.dev/402/pay/base",
    "serviceName": "badhttp",
    "tags": [
      "testing",
      "http",
      "x402",
      "edge-cases",
      "developer-tools"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "badhttp /402/pay: a real x402 v2 paywall for testing clients. Pay 0.01 USDC on Base mainnet and get a 200 with a PAYMENT-RESPONSE receipt and the transaction hash. Nothing else is sold; sibling endpoints under /402 misbehave on purpose."
}

What the leaf hashes

{"body":"392de6601b54d6cfa0b18f5c7dbb4341d26400a9bbf04d380ba6e0d06b71afbf","id":16569,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793025324694391,"prev":null,"subject":"x402_bazaar:https://badhttp.dev/402/pay/base","subject_kind":"source_record"}

Proof

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

  1. 0x23780d7347897034f5e2ded01b815c417fea228e097d806f90c9ba3e3b35c960
  2. 0x0a48579236daa0afa62855929fc99408f15d52ea98d8bac3709c2f2424e383f9
  3. 0x350dd58ab46940a504da0a7d7581f054e71b661006c733e98c4b7cbcb407cc37
  4. 0xbb845e131122aac988c2621ffe05c9f8b9c2e8cb1e76b305dfa2e0eaf5b97350
  5. 0xfa189a9be702c9ed1865c4b4dfe029e0951b34533f54c78095736a64011597e4
  6. 0x90c4ef9dec5324ffe84b2efa7014da06226951d52a5fdfc6717017e48b2c1a54
  7. 0x2458d27bd9c430a3777f050365621f82f2b0a8a5968fa1d3ee45fd71f9836fa0
  8. 0x7317a01cf4e9b999f63d66cd73dca74e55d80e4a23589713e0816bda52475913
  9. 0xaad5f368abcc474c3436ca384b60b683f25552912fbcd4133da43505e2657a7f
  10. 0x704493bae418bde4fd104ba47dec27e1d8d9ddc2c72e86c9507cb5b9906a220b
  11. 0xafd0058f5459c39aa93b8bea4d66dcde1a2763032ab59f971a1c12b8652db90b
  12. 0xac5b705d705b0f1bc42cf2ad1a7f1f197ea96178ce0704432cbb5d556e8671a4
  13. 0x9d75d4d3ab6219edefa04be60b32fdd56be7a7672f370a5115f02f7b098ecd27
  14. 0x9dfd312f3d4937f7cb144cee3987e8516f222932b4ea286605236d73cfa1ed16
  15. 0xc3a6a3ae44ec0da1848b16d40c45d7aac97a67352eea8df18e0f26edabea8a2f
  16. 0x06d71bfa7d8b41d62c8836efc2c601e1cc3772d9453596b2ae4950887f3310ca
  17. 0x8c756542e482157df0c36464d75c937b845e4423dbbcfad08f0cf8d5a16b9a13
  18. 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON