addrbookFor publishers
← The evidence ledger

Evidence row 751175

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://how.is/v1/bot/verify
Recorded
Previous row
#563460
Body SHA-256
dc9aec22e43554aecc2d811b663dce5af3bfbe0f53482ef2e4ce02b2cfcf89bb
Leaf
0x8fcf5d4e1ee7d4c6a2c3b7802c907a0019c030421c52e0e2ab7d3175f185fa21

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://how.is/v1/bot/verify"
    ]
  ],
  "name": "how.is",
  "owner_address": "0xa76a0e93c5af3fd43521300b0a58ef5f70fc44f6",
  "raw": {
    "accepts": [
      {
        "amount": "5000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0xa76a0E93C5af3fd43521300B0a58eF5F70fC44F6",
        "scheme": "exact"
      }
    ],
    "description": "Verify a crawler's identity: is this IP + user-agent really Googlebot, Bingbot, GPTBot or ClaudeBot, an impostor using the name, another bot, or a person?",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "ip": "20.171.207.1",
              "ua": "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)"
            },
            "bodyType": "json",
            "method": "POST",
            "type": "http"
          },
          "output": {
            "example": {
              "data": {
                "_shape": "data: verdict (verified / impostor / unknown_bot / likely_human_or_unclassified), confidence, automation_likely, claimed, identified_as{operator, method, evidence}, reasons[], how_to_act, checks{published_ranges, reverse_dns, asn}, observatory{network, fingerprint, claimed_family, impostors_seen}."
              },
              "receipt": {
                "charge_usd": 0.005,
                "rail": "x402",
                "settlement_tx": "0x…",
                "tool": "bot_verify"
              },
              "result": "Crawler identity check for the requested subject"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "body": {
                  "additionalProperties": false,
                  "properties": {
                    "ip": {
                      "description": "The visitor's public IPv4 or IPv6 address",
                      "type": "string"
                    },
                    "ja4": {
                      "description": "Optional TLS JA4 fingerprint, e.g. t13d1516h2_8daaf6152771_02713d6af862",
                      "maxLength": 80,
                      "type": "string"
                    },
                    "ua": {
                      "description": "The User-Agent header it sent (omit or empty if none)",
                      "maxLength": 1000,
                      "type": "string"
                    }
                  },
                  "required": [
                    "ip"
                  ],
                  "type": "object"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                },
                "method": {
                  "enum": [
                    "POST",
                    "PUT",
                    "PATCH"
                  ],
                  "type": "string"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1793136692/bazaar-icons/33e0d64a881c43a7.png",
    "lastUpdated": "2026-10-27T21:31:31.793Z",
    "quality": {
      "l30DaysTotalCalls": 1,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-10-27T21:31:31.433Z"
    },
    "resource": "https://how.is/v1/bot/verify",
    "serviceName": "how.is",
    "tags": [
      "bot-detection",
      "crawlers",
      "googlebot",
      "security",
      "firewall"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Verify a crawler's identity: is this IP + user-agent really Googlebot, Bingbot, GPTBot or ClaudeBot, an impostor using the name, another bot, or a person?"
}

What the leaf hashes

{"body":"dc9aec22e43554aecc2d811b663dce5af3bfbe0f53482ef2e4ce02b2cfcf89bb","id":751175,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793178705171608,"prev":563460,"subject":"x402_bazaar:https://how.is/v1/bot/verify","subject_kind":"source_record"}

Proof

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

  1. 0x8fcf6bfe54fc6cc8544fe6211ac733bd8b70754c134e0dd230c597bef930285f
  2. 0x79fcd6214656fe046aae8d6c5e7bff232224c432724c37d01cd5cdc9fc71811e
  3. 0x45e013b35a8787ec64f5b2ea119c064387f5cd2418c742029eac84e367fb085c
  4. 0x2dc6a8f057bcbd6aabe3ca00fced88ee39a8305cd4f9a4f0cd753ae240d764b7
  5. 0xe0cb0abf67f68746cdc465706b42fa3c104579247581290e71e90d355be1b7b1
  6. 0xb02e4459495e1fb033b0c98ccc679492b3d23abc4353d673606026012dfc0146
  7. 0x8c20c6b7311e4a409bb10fd4db3a4c8abd2e4b30ea9855647001f2354549b374
  8. 0x4a8e5d1cfed9dc55a1f1468d543f5b49c87b0aa1108338a126d16c97e485b394
  9. 0x0b0d6eae029c06a796f847ca4002aca6c084947fb2ec8ad12fd614e4a0a1c621
  10. 0xac6f5e6d350e0d05ed3585565fb0e2ccd227eaabcca73ce40c4ceb613358e43d
  11. 0xe5bda96f371c9a601912b527707c132ce40dfa832a85f5ab56904235a79b4c6c
  12. 0x7b0c5cabdc5cb3b796f2c10fe1e0fe947814d67a034f0fa630e562156fb3e98c
  13. 0xdbb215681a11fa9a73d4086f7e02f913b35a590ef20bcbcc46a343cbef08a9da
  14. 0x115e196b75a0422533397227b51b9c807591ec2574919c03800bb0d253f110e8
  15. 0xe2f9c120d14f36fdddf9b4e605c5d0b8a13b835e2380472255dc22e14b93e84e
  16. 0x74cf00e07b52415c2184cf20be69d195ed2725497a6892c2f3e449497c17d0ec
  17. 0x7a743a0a09057bae687051274e1d45bf973bd36a1a4ba16a191b5d29e3bdfa2a
  18. 0xe027395fafb7fc41921c42ca0542524ea22204cbd5908b70b27f3d5fb26f5d0f
Day root
0x2c19037464cc4c493624565f01775d6446fc78eaa118fc6865bfe2bfca9ff78e
Chained
0xd1d7dee8322ceff8f4c8d83aa1fe4a4466825c2af1c97dbde3d35db61234f7be
Published
On Arc Testnet, block 69584042: 0x8bae2b1d097834c8b458513862d70d29ee807e98dc2e863b27250131c15b35ae

How to check it · This row as JSON