addrbookFor publishers
← The evidence ledger

Evidence row 527310

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://api.lumitrades.io/v1/trust/check
Recorded
Previous row
#425226
Body SHA-256
00f382480bbd8caef687a9fa33f855500f09a9c5d5bbb4ec0bbc391463d29c11
Leaf
0xbced7799d67faa967ec87ed7bffc7a13579977a7e2209e4705e61827e9d1bb97

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://api.lumitrades.io/v1/trust/check"
    ]
  ],
  "name": "Lumi Trades",
  "owner_address": "0x5e617bac19912e6d212cb303ae84655e9e203532",
  "raw": {
    "accepts": [
      {
        "amount": "20000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "decimals": 6,
          "invoiceId": "lumi1.trust_check:probe.tnk0v6.AT6WpfOv_Wk5.15500.ESAzFAHDgOjI_N69m9O4Yg",
          "name": "USD Coin",
          "symbol": "USDC",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0x5E617bac19912e6d212CB303ae84655E9E203532",
        "scheme": "exact"
      },
      {
        "amount": "15500",
        "asset": "XRP",
        "extra": {
          "invoiceId": "lumi1.trust_check:probe.tnk0v6.AT6WpfOv_Wk5.15500.ESAzFAHDgOjI_N69m9O4Yg",
          "sourceTag": 804681468
        },
        "maxTimeoutSeconds": 300,
        "network": "xrpl:0",
        "payTo": "rM8kmmnz5qPMg7V3r7SHYXgDGvm8PhzLvM",
        "scheme": "exact"
      },
      {
        "amount": "0.02",
        "asset": "524C555344000000000000000000000000000000",
        "extra": {
          "invoiceId": "lumi1.trust_check:probe.tnk0v6.AT6WpfOv_Wk5.15500.ESAzFAHDgOjI_N69m9O4Yg",
          "issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
          "sourceTag": 804681468,
          "symbol": "RLUSD"
        },
        "maxTimeoutSeconds": 300,
        "network": "xrpl:0",
        "payTo": "rM8kmmnz5qPMg7V3r7SHYXgDGvm8PhzLvM",
        "scheme": "exact"
      },
      {
        "amount": "0.02",
        "asset": "5553444300000000000000000000000000000000",
        "extra": {
          "invoiceId": "lumi1.trust_check:probe.tnk0v6.AT6WpfOv_Wk5.15500.ESAzFAHDgOjI_N69m9O4Yg",
          "issuer": "rGm7WCVp9gb4jZHWTEtGUr4dd74z2XuWhE",
          "sourceTag": 804681468,
          "symbol": "USDC"
        },
        "maxTimeoutSeconds": 300,
        "network": "xrpl:0",
        "payTo": "rM8kmmnz5qPMg7V3r7SHYXgDGvm8PhzLvM",
        "scheme": "exact"
      },
      {
        "amount": "200000",
        "asset": "CCW67TSZV3SSS2HXMBQ5JFGCKJNXKZM7UQUWUZPUTHXSTZLEO7SJMI75",
        "extra": {
          "areFeesSponsored": true,
          "decimals": 7,
          "invoiceId": "lumi1.trust_check:probe.tnk0v6.AT6WpfOv_Wk5.15500.ESAzFAHDgOjI_N69m9O4Yg",
          "symbol": "USDC"
        },
        "maxTimeoutSeconds": 300,
        "network": "stellar:pubnet",
        "payTo": "GCKTH26VNR4H4WLCXS5DX6563XRQQXWP5QKQWFD6CHOGTZJ2N5GKBU2L",
        "scheme": "exact"
      }
    ],
    "description": "Use when an agent should check before paying an x402 resource URL: a pre-payment trust check that returns allow, warn or block with coded reasons. Built from a daily index of the CDP Bazaar catalog, unpaid 402-quote checks and Lumi Trades' own on-chain test purchases on Base, the XRP Ledger and Stellar. Optional payTo and amount inputs catch address or price mismatches. A free signed version is at /v1/check. Not charged on bad input. Observations, not a guarantee.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "url": "https://api.example.com/v1/data"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "as_of": "2026-10-23T11:00:00Z",
              "confidence": "low",
              "data_age_seconds": 600,
              "kind": "trust_check",
              "next_steps": {
                "free_lookup": "https://api.lumitrades.io/v1/trust/vendors?url=..."
              },
              "next_update": "2026-10-23T17:00:00Z",
              "payment": {
                "amount": "0.02",
                "asset": "USDC",
                "network": "eip155:8453",
                "payer": "0x12ab...89cd",
                "transaction": "0x5f0c...e41a"
              },
              "query": {
                "payTo": "0x12ab...89cd",
                "url": "https://api.example.com/v1/data"
              },
              "reasons": [
                {
                  "code": "last_quote_invalid",
                  "detail": "Lumi's last free quote check did not get a valid x402 quote.",
                  "severity": "warn"
                }
              ],
              "stale_after": "2026-10-24T11:00:00Z",
              "verdict": "warn"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "additionalProperties": false,
                  "properties": {
                    "amount": {
                      "description": "The quoted price in USD, e.g. 0.01 (optional)",
                      "type": "string"
                    },
                    "payTo": {
                      "description": "The payTo address from its 402 quote (optional)",
                      "type": "string"
                    },
                    "url": {
                      "description": "The x402 resource URL you are about to pay (required)",
                      "type": "string"
                    }
                  },
                  "required": [
                    "url"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "description": "Errors: 400 invalid_input; 402 payment_required; 409 idempotency_conflict | settlement_status_unknown; 429 rate_limited; 500 internal_error; 502 invalid_verify_response | settle_http_error; 503 stale_data | data_unavailable | facilitator_unavailable. Details: GET /openapi.json (responses) or /.well-known/x402 (errors).",
              "properties": {
                "example": {
                  "properties": {
                    "as_of": {
                      "type": "string"
                    },
                    "confidence": {
                      "type": "string"
                    },
                    "data_age_seconds": {
                      "type": "number"
                    },
                    "kind": {
                      "type": "string"
                    },
                    "next_steps": {
                      "type": "object"
                    },
                    "next_update": {
                      "type": "string"
                    },
                    "payment": {
                      "type": "object"
                    },
                    "query": {
                      "type": "object"
                    },
                    "reasons": {
                      "type": "array"
                    },
                    "stale_after": {
                      "type": "string"
                    },
                    "verdict": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "kind",
                    "payment"
                  ],
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      },
      "payment-identifier": {
        "info": {
          "required": false
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "id": {
              "maxLength": 128,
              "minLength": 16,
              "pattern": "^[a-zA-Z0-9_-]+$",
              "type": "string"
            },
            "required": {
              "type": "boolean"
            }
          },
          "required": [
            "required"
          ],
          "type": "object"
        }
      }
    },
    "iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1792705707/bazaar-icons/3e908f423e67b0c6.png",
    "lastUpdated": "2026-10-27T06:56:54.955Z",
    "quality": {
      "l30DaysTotalCalls": 5,
      "l30DaysUniquePayers": 3,
      "lastCalledAt": "2026-10-27T06:56:54.509Z"
    },
    "resource": "https://api.lumitrades.io/v1/trust/check",
    "serviceName": "Lumi Trades",
    "tags": [
      "x402",
      "check-before-paying",
      "pre-payment-check",
      "trust-check",
      "agent-payments"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Use when an agent should check before paying an x402 resource URL: a pre-payment trust check that returns allow, warn or block with coded reasons. Built from a daily index of the CDP Bazaar catalog, unpaid 402-quote checks and Lumi Trades' own on-chain test purchases on Base, the XRP Ledger and Stellar. Optional payTo and amount inputs catch address or price mismatches. A free signed version is at /v1/check. Not charged on bad input. Observations, not a guarantee."
}

What the leaf hashes

{"body":"00f382480bbd8caef687a9fa33f855500f09a9c5d5bbb4ec0bbc391463d29c11","id":527310,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793124796566056,"prev":425226,"subject":"x402_bazaar:https://api.lumitrades.io/v1/trust/check","subject_kind":"source_record"}

Proof

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

  1. 0xbced77250e840049d5e1d8863c0efbd15e9cf748c381dd6bde19b8926ad5fc6b
  2. 0x64dd289adfa4de1d8bce8618f99c9b4d9fe51ce746770f0bc183cf604a47127c
  3. 0xffa8e267a9278c652496661c42d5a13f35e379bfa69d79f72fdadffaad091731
  4. 0xe30690d5fbf67cf59f538e24c1b8ab9c2c626544a807b4dde27e0295f995436b
  5. 0xae6f2ddab37a3a4cb1484bf2e6fb34327a18d92eec4f1bca68cd434ae7b254ee
  6. 0x06ebbb4cd2588d8ff6749f157c6dfb1997974534d50f6771a4d0886aeeedd036
  7. 0x8819fccbd774c25578808802ea9c38b0f42fb4909ef6c31f30781b975450764b
  8. 0xa7cf24d58c2aac712161048370061e1e59c373a587fa55d774689794d68a93f9
  9. 0x11863cf7e757a1d12fbcfa78e5d9b653afacc5d0c003d14c0dbc347522d43227
  10. 0xe37bb054ee8eabeb3574167bc5f618198cf3f58380eeae8ee81407fce4747d2d
  11. 0x0b996890ad9f7a45291a56249c03de765fb331d173fb8d8e01ab2ec842ac8316
  12. 0x92804c1cd4f73221d350049c90c3d17d86ce815c332f3b67c5894d2919efebf2
  13. 0xb4800af1fe2ae822adba5c087faf1dc0bc2d7c9de2e3e602a2b65aefc1d53c94
  14. 0xa453d1738637a5c663802d07ce095aa340c80d53a4288ae277a72e265868ce4e
  15. 0x73341bb09dd901ca47f26173883431496e3d98d6b0fb5b89f36218126d46c5d4
  16. 0xa94627de1af0e823832e05a9069b304ecccb8c0cdb8f9cfc4f2039bfb9799dc5
  17. 0xdf1105afdc109de3c09a98fc8a3864159ad964e6f49b635c105a27a1e1f14310
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON