addrbookFor publishers
← The evidence ledger

Evidence row 425226

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://api.lumitrades.io/v1/trust/check
Recorded
Previous row
#67097
Body SHA-256
fb5f9d79671873685cf047a547f4d75e23910e96dd7f2aaaa6b9ad8163092636
Leaf
0x9a53987359c1acccdfc64b17f5228a414f1093c299b409445bb615f136b1c6ce

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": 4,
      "l30DaysUniquePayers": 2,
      "lastCalledAt": "2026-10-25T20:32:47.911Z"
    },
    "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":"fb5f9d79671873685cf047a547f4d75e23910e96dd7f2aaaa6b9ad8163092636","id":425226,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793086108587961,"prev":67097,"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. 0x9a5317f3e4394889b4ab62d3350ac2c1e4ec9142ac67e061ffad1bb6661bae41
  2. 0x9e6f96f0e46a7e111424595ffb9abb78a01621dc10ed54d4d201b24080511de0
  3. 0x890de5ac85338486591d95229d3787a97181707e842e62256a9670b73e6bffda
  4. 0x484bfad5b66365e3a936ac88e1fe63ac058230d68017b5e307b93ab5a30deae8
  5. 0x243febf942dad0fdf8ee933894421ce53b3a95d119365d745b8b5493160066a5
  6. 0xedc80588f214fc6ea43f425862b3c0da9f6c5bd98b998d2ab866165431c4b8e4
  7. 0x77beadef8e1502778c1c1783e57da39d8d56dde5589dad46715f92ef72b644d9
  8. 0x470e635f29612c25d2995fe9f882b6dcb4bc31261e6e864b55e77ac3d8159e22
  9. 0xe1791cb42eb24bd6ba66150a3856863c464353acf5d2cb37ef8ca32681e416c7
  10. 0x15d5a347a56d34cf4eb353e64f6d8738efc6372948fc366afaf95e549f14dfc0
  11. 0x45eb84ef7edaba53d2691240e1a51a75999ececafd444acbad8a99f54c7dd449
  12. 0xaf993fe1020a8b1831a83a3f25a47d44065b1a3db518b49690cdf7bb3a275984
  13. 0xe8a6f20810396abd4baf9472081cda6d396bc7cf52a77bffdd9f33b41c62adcc
  14. 0xb37e6165108af3c1962db6b76953aee5ee86201747a07444ad2760bf2d5dca23
  15. 0xa3fff4662cd48659f5bafd0612931759a90e53a7b4209ed8f26f6594a07bb547
  16. 0x64c405a28e8819716221eb2529fe4ce277ab08025e17e685cbd5ece75ceb75c7
  17. 0xf30fddbf4811226c58e8f0daf36fddd79fc5f1356b592bb1d99a8061ddbabe66
  18. 0x2bf8151e5f157dd183b9de6fa00469551932a7a6e3f33a694895000ac9061197
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON