← The evidence ledger
Evidence row 1262019
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://route-verdict-production.up.railway.app/v1/check
- Recorded
- Previous row
- #1038796
- Body SHA-256
- 15bb60f10c4bfb32a32308373572ecccf8c063d17b4b8b9dae616fee9b03a9cb
- Leaf
- 0x6a2aa7341a384945a7d56e27db1bd2426f5778e166cbfbb407b493987f53ffc6
What was observed
{
"endpoints": [
[
"x402",
"https://route-verdict-production.up.railway.app/v1/check"
]
],
"name": "route-verdict",
"owner_address": "0x097f9685d1e0752bf8b02d61e5ce9be7ea0fba7f",
"raw": {
"accepts": [
{
"amount": "50000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:8453",
"payTo": "0x097f9685D1e0752bF8B02d61E5Ce9be7eA0FBA7F",
"scheme": "exact"
}
],
"description": "Send any x402 resource URL, get a trust verdict on the endpoint itself. Returns TRUSTED / CAUTION / AVOID with a 0-100 score from an observation-only live probe (never pays the target): payment terms, Bazaar discovery-schema quality, CDP Bazaar and PayAI catalog presence, plus a diff against the previous check. Use this when an agent is about to pay an unfamiliar x402 endpoint and needs to know it is alive, honestly described, and unchanged first.",
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"resource_url": "https://token-verdict-production.up.railway.app/v1/verdict"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"catalog": {
"cdp_bazaar": {
"detail": "payTo wallet has 0 CDP Bazaar resources; this URL is not among them.",
"last_called_at": null,
"status": "not_listed",
"total_calls_30d": null,
"unique_payers_30d": null
},
"payai": {
"detail": "PayAI reports no catalog row for this resource.",
"last_called_at": null,
"status": "not_listed",
"total_calls_30d": null,
"unique_payers_30d": null
}
},
"checked_at": "2026-10-21T20:00:00+00:00",
"diff": {
"changes": [],
"prior_check": false,
"prior_checked_at": null,
"summary": "no prior check on record"
},
"liveness": {
"alive": true,
"http_status": 402,
"latency_ms": 312,
"method": "GET",
"parse_error": null,
"x402_valid": true
},
"reasons": [
{
"deduction": 10,
"detail": "payTo wallet has 0 CDP Bazaar resources; this URL is not among them.",
"name": "not listed in CDP Bazaar"
},
{
"deduction": 5,
"detail": "PayAI reports no catalog row for this resource (it catalogs only its own facilitator's settlements).",
"name": "not listed in PayAI index"
}
],
"resource_url": "https://token-verdict-production.up.railway.app/v1/verdict",
"schema_quality": {
"deductions": [],
"extension_present": true,
"hollow": false,
"score": 100
},
"score": 85,
"terms": {
"amount_units": "20000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"found": true,
"network": "eip155:8453",
"pay_to": "0x097f9685D1e0752bF8B02d61E5Ce9be7eA0FBA7F",
"price_usdc": "$0.02",
"scheme": "exact",
"x402_version": 2
},
"verdict": "TRUSTED"
},
"schema": {
"properties": {
"catalog": {
"properties": {
"cdp_bazaar": {
"properties": {
"detail": {
"type": "string"
},
"last_called_at": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"listed",
"not_listed",
"unknown"
],
"type": "string"
},
"total_calls_30d": {
"type": [
"integer",
"null"
]
},
"unique_payers_30d": {
"type": [
"integer",
"null"
]
}
},
"required": [
"status",
"unique_payers_30d",
"total_calls_30d",
"last_called_at",
"detail"
],
"type": "object"
},
"payai": {
"properties": {
"detail": {
"type": "string"
},
"last_called_at": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"listed",
"not_listed",
"unknown"
],
"type": "string"
},
"total_calls_30d": {
"type": [
"integer",
"null"
]
},
"unique_payers_30d": {
"type": [
"integer",
"null"
]
}
},
"required": [
"status",
"unique_payers_30d",
"total_calls_30d",
"last_called_at",
"detail"
],
"type": "object"
}
},
"required": [
"cdp_bazaar",
"payai"
],
"type": "object"
},
"checked_at": {
"description": "ISO-8601 timestamp of the probe",
"type": "string"
},
"diff": {
"properties": {
"changes": {
"items": {
"properties": {
"after": {
"type": [
"string",
"null"
]
},
"before": {
"type": [
"string",
"null"
]
},
"detail": {
"type": "string"
},
"field": {
"type": "string"
}
},
"required": [
"field",
"before",
"after",
"detail"
],
"type": "object"
},
"type": "array"
},
"prior_check": {
"type": "boolean"
},
"prior_checked_at": {
"type": [
"string",
"null"
]
},
"summary": {
"type": "string"
}
},
"required": [
"prior_check",
"prior_checked_at",
"changes",
"summary"
],
"type": "object"
},
"liveness": {
"properties": {
"alive": {
"description": "The endpoint returned an HTTP response at all",
"type": "boolean"
},
"http_status": {
"type": [
"integer",
"null"
]
},
"latency_ms": {
"type": [
"integer",
"null"
]
},
"method": {
"enum": [
"GET",
"POST",
null
],
"type": [
"string",
"null"
]
},
"parse_error": {
"type": [
"string",
"null"
]
},
"x402_valid": {
"description": "The response parses as a valid x402 challenge",
"type": "boolean"
}
},
"required": [
"alive",
"http_status",
"latency_ms",
"method",
"x402_valid",
"parse_error"
],
"type": "object"
},
"reasons": {
"items": {
"properties": {
"deduction": {
"minimum": 0,
"type": "integer"
},
"detail": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"deduction",
"detail"
],
"type": "object"
},
"type": "array"
},
"resource_url": {
"type": "string"
},
"schema_quality": {
"properties": {
"deductions": {
"items": {
"properties": {
"detail": {
"type": "string"
},
"name": {
"type": "string"
},
"points": {
"minimum": 0,
"type": "integer"
}
},
"required": [
"name",
"points",
"detail"
],
"type": "object"
},
"type": "array"
},
"extension_present": {
"type": "boolean"
},
"hollow": {
"description": "True when the output is example-only/untyped; null when no extension exists",
"type": [
"boolean",
"null"
]
},
"score": {
"description": "0-100; null when no extension exists",
"type": [
"integer",
"null"
]
}
},
"required": [
"extension_present",
"hollow",
"score",
"deductions"
],
"type": "object"
},
"score": {
"description": "Trust score: 100 (fully trusted) to 0, from the itemized deductions in reasons",
"maximum": 100,
"minimum": 0,
"type": "number"
},
"terms": {
"properties": {
"amount_units": {
"description": "Price in asset smallest units, exactly as published",
"type": [
"string",
"null"
]
},
"asset": {
"type": [
"string",
"null"
]
},
"found": {
"type": "boolean"
},
"network": {
"type": [
"string",
"null"
]
},
"pay_to": {
"type": [
"string",
"null"
]
},
"price_usdc": {
"description": "Formatted price like $0.02 for known assets; null when asset decimals are unknown",
"type": [
"string",
"null"
]
},
"scheme": {
"type": [
"string",
"null"
]
},
"x402_version": {
"type": [
"integer",
"null"
]
}
},
"required": [
"found",
"price_usdc",
"amount_units",
"network",
"asset",
"pay_to",
"scheme",
"x402_version"
],
"type": "object"
},
"verdict": {
"enum": [
"TRUSTED",
"CAUTION",
"AVOID"
],
"type": "string"
}
},
"required": [
"resource_url",
"checked_at",
"verdict",
"score",
"reasons",
"liveness",
"terms",
"schema_quality",
"catalog",
"diff"
],
"type": "object"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"resource_url": {
"description": "Full URL of the x402 resource to audit, e.g. https://service.example.com/v1/endpoint",
"type": "string"
}
},
"required": [
"resource_url"
],
"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": {
"properties": {
"catalog": {
"properties": {
"cdp_bazaar": {
"properties": {
"detail": {
"type": "string"
},
"last_called_at": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"listed",
"not_listed",
"unknown"
],
"type": "string"
},
"total_calls_30d": {
"type": [
"integer",
"null"
]
},
"unique_payers_30d": {
"type": [
"integer",
"null"
]
}
},
"required": [
"status",
"unique_payers_30d",
"total_calls_30d",
"last_called_at",
"detail"
],
"type": "object"
},
"payai": {
"properties": {
"detail": {
"type": "string"
},
"last_called_at": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"listed",
"not_listed",
"unknown"
],
"type": "string"
},
"total_calls_30d": {
"type": [
"integer",
"null"
]
},
"unique_payers_30d": {
"type": [
"integer",
"null"
]
}
},
"required": [
"status",
"unique_payers_30d",
"total_calls_30d",
"last_called_at",
"detail"
],
"type": "object"
}
},
"required": [
"cdp_bazaar",
"payai"
],
"type": "object"
},
"checked_at": {
"description": "ISO-8601 timestamp of the probe",
"type": "string"
},
"diff": {
"properties": {
"changes": {
"items": {
"properties": {
"after": {
"type": [
"string",
"null"
]
},
"before": {
"type": [
"string",
"null"
]
},
"detail": {
"type": "string"
},
"field": {
"type": "string"
}
},
"required": [
"field",
"before",
"after",
"detail"
],
"type": "object"
},
"type": "array"
},
"prior_check": {
"type": "boolean"
},
"prior_checked_at": {
"type": [
"string",
"null"
]
},
"summary": {
"type": "string"
}
},
"required": [
"prior_check",
"prior_checked_at",
"changes",
"summary"
],
"type": "object"
},
"liveness": {
"properties": {
"alive": {
"description": "The endpoint returned an HTTP response at all",
"type": "boolean"
},
"http_status": {
"type": [
"integer",
"null"
]
},
"latency_ms": {
"type": [
"integer",
"null"
]
},
"method": {
"enum": [
"GET",
"POST",
null
],
"type": [
"string",
"null"
]
},
"parse_error": {
"type": [
"string",
"null"
]
},
"x402_valid": {
"description": "The response parses as a valid x402 challenge",
"type": "boolean"
}
},
"required": [
"alive",
"http_status",
"latency_ms",
"method",
"x402_valid",
"parse_error"
],
"type": "object"
},
"reasons": {
"items": {
"properties": {
"deduction": {
"minimum": 0,
"type": "integer"
},
"detail": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"deduction",
"detail"
],
"type": "object"
},
"type": "array"
},
"resource_url": {
"type": "string"
},
"schema_quality": {
"properties": {
"deductions": {
"items": {
"properties": {
"detail": {
"type": "string"
},
"name": {
"type": "string"
},
"points": {
"minimum": 0,
"type": "integer"
}
},
"required": [
"name",
"points",
"detail"
],
"type": "object"
},
"type": "array"
},
"extension_present": {
"type": "boolean"
},
"hollow": {
"description": "True when the output is example-only/untyped; null when no extension exists",
"type": [
"boolean",
"null"
]
},
"score": {
"description": "0-100; null when no extension exists",
"type": [
"integer",
"null"
]
}
},
"required": [
"extension_present",
"hollow",
"score",
"deductions"
],
"type": "object"
},
"score": {
"description": "Trust score: 100 (fully trusted) to 0, from the itemized deductions in reasons",
"maximum": 100,
"minimum": 0,
"type": "number"
},
"terms": {
"properties": {
"amount_units": {
"description": "Price in asset smallest units, exactly as published",
"type": [
"string",
"null"
]
},
"asset": {
"type": [
"string",
"null"
]
},
"found": {
"type": "boolean"
},
"network": {
"type": [
"string",
"null"
]
},
"pay_to": {
"type": [
"string",
"null"
]
},
"price_usdc": {
"description": "Formatted price like $0.02 for known assets; null when asset decimals are unknown",
"type": [
"string",
"null"
]
},
"scheme": {
"type": [
"string",
"null"
]
},
"x402_version": {
"type": [
"integer",
"null"
]
}
},
"required": [
"found",
"price_usdc",
"amount_units",
"network",
"asset",
"pay_to",
"scheme",
"x402_version"
],
"type": "object"
},
"verdict": {
"enum": [
"TRUSTED",
"CAUTION",
"AVOID"
],
"type": "string"
}
},
"required": [
"resource_url",
"checked_at",
"verdict",
"score",
"reasons",
"liveness",
"terms",
"schema_quality",
"catalog",
"diff"
],
"type": "object"
},
"schema": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"lastUpdated": "2026-10-30T04:21:47.757Z",
"quality": {
"l30DaysTotalCalls": 11,
"l30DaysUniquePayers": 5,
"lastCalledAt": "2026-10-30T04:21:47.616Z"
},
"resource": "https://route-verdict-production.up.railway.app/v1/check",
"serviceName": "route-verdict",
"tags": [
"x402",
"trust",
"liveness",
"monitoring",
"verification"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Send any x402 resource URL, get a trust verdict on the endpoint itself. Returns TRUSTED / CAUTION / AVOID with a 0-100 score from an observation-only live probe (never pays the target): payment terms, Bazaar discovery-schema quality, CDP Bazaar and PayAI catalog presence, plus a diff against the previous check. Use this when an agent is about to pay an unfamiliar x402 endpoint and needs to know it is alive, honestly described, and unchanged first."
}What the leaf hashes
{"body":"15bb60f10c4bfb32a32308373572ecccf8c063d17b4b8b9dae616fee9b03a9cb","id":1262019,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793385519643951,"prev":1038796,"subject":"x402_bazaar:https://route-verdict-production.up.railway.app/v1/check","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (243099 rows).
- 0x6a2ab8c6bd986f736439837f4fbc4f1e87f56b6b4f2ef0b3930f0d153babe430
- 0x7689707a4e613d39d9639b886cfd571e90c207b60900709ce68d136d6522fc26
- 0xcc8b814f345ce34c98f1d077da08c6f9122595cc67a08ed9866cbd6decb9d54c
- 0x88634d6bbbf0d750f2e80d8d4e2bd9a727c1e8b74672b2da4eef0fc73cd0892e
- 0x3745f3642f396e690c5bc8769b195f7c7f923f05328a1f85aa9d7586d430b125
- 0xa7b4030f45ea73dec64e994912a4786afff169bc61eb93d878e4db50bbe6151c
- 0x4a925e48b3abf168f2a499189e8e50c851d0780df8799c18efde1a44e4bec2e3
- 0x60338bd9454edbbffa57d9ab30be868771722a1373e685e0a2d7305eb041a5fd
- 0xa284eaae340f5a6e18bbbf55724d9491f7b324044205e36ccdb2ff905c70d6ef
- 0xc000490e64834d6ad5192b9f5b086ea9d82d0584f3225d2e191e56d90b81ea42
- 0xba5e5a9377563f93160475d9bd2c26366c44d36490df283031a4dfae1d045963
- 0xcf8f4b7145c5008e7219c27af9b227d364f022718fcb13718adca3db6b8000c6
- 0x8ce6a3a19daf96525814209e150e1fd875a37f28ce52951d53a32ccf708706c2
- 0x8202f11cea96bc04aa8008604bab4ab58756d5320e52685eb327ac1bb08a0ee6
- 0xdf25f5d38e3fb54d3e66e3bf876db529f619041e0d21f0bc35b80003418e3d9c
- 0xdbaaffa44665d1fa60d33d2c4075bd87629b76d01a6ee63e621e78590303b56d
- 0xffe660edb9e5c6e3449a49454634c3e7b2f9fe703e5697f723b021735647ab7e
- 0x30a81d8fcef4e8f9e2877c62796cfc5612fc1b251127d531dee28f8dbd5c5147
- Day root
- 0x0826c7ad6039e06a2360ca0a4a3a4fe7f2626c6dc19f71a37599386f78b39875
- Chained
- 0x36b4c8a1063758f0b8765fa1bdf75fa92fb543cc183add3e261880ee2bd1f822
- Published
- On Arc Testnet, block 69923247: 0x8704744146c6967c8abc9e9a99de4db7283b29e840922ea83a69b6fe776e6861