← The evidence ledger
Evidence row 2199931
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://agents.avasis.ai/v1/eth/authorization-check
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 75cb21406450f1a3ce76b0e822c15e6f55bbb9ef6022586235c4400c9e608339
- Leaf
- 0xacb62fe0a26443af99d39a7d83c7412b897bd48ca5f0369bfa4c0d6a1877f95c
What was observed
{
"endpoints": [
[
"x402",
"https://agents.avasis.ai/v1/eth/authorization-check"
]
],
"name": "Avasis Agent Platform",
"owner_address": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"raw": {
"accepts": [
{
"amount": "20000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 120,
"network": "eip155:8453",
"payTo": "0x6264191D6dD5427435B5E829077842e130Ef1fc8",
"scheme": "exact"
}
],
"description": "x402 authorization check on Ethereum (chain 1, $0.02): the EIP-3009 authorization you will sign (from, to, value, validAfter, validBefore, nonce) + its 402 quote (payTo, amount, asset, network) -> SIGN/CAUTION/BLOCK: payTo / amount / asset / chain match, nonce unused, not expired, EIP-712 domain verified on-chain, look-alike USDC, balance, decoy >= $1, the digest you sign. Phrases: should I sign this, x402 authorization check, eip-3009, decoy quote. GET or POST JSON. Never charged on 4xx/5xx.",
"extensions": {
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"amount": "20000",
"asset": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"chain": "ethereum",
"from": "0x8ec901f7e2710163387d70950f680f1ea2269d15",
"maxTimeout": 120,
"network": "eip155:1",
"nonce": "0xa1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4",
"payTo": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"to": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"validBefore": "1793518925",
"value": "20000"
},
"type": "http"
},
"output": {
"example": {
"authorization": {
"from": "0x8ec901f7e2710163387d70950f680f1ea2269d15",
"nonce": "0xa1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4",
"nonce_used": false,
"primary_type": "TransferWithAuthorization",
"seconds_until_expiry": 110,
"to": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"valid_after": "0",
"valid_before": "1793518925",
"valid_now": true,
"value_raw": "20000",
"value_units": "0.02",
"value_usd": 0.02,
"window_s": 1793518925
},
"block_number": 53364734,
"block_timestamp": 1793518815,
"chain": "ethereum",
"chain_id": 1,
"digest": {
"eip712_digest": "0xa5eb1a2bb1b6283c2e0b10f6fe4e68449fb7b157ae8956dc5fd00e35cfdcb420",
"note": "eip712_digest = keccak256(0x1901 || domainSeparator || structHash): what eth_signTypedData_v4 signs; compare it with your wallet's prompt",
"struct_hash": "0x242f86ef909386979cd3fc1238cf25ad012e338444e5917a2f4dd32c1e1f829a"
},
"domain": {
"chain_id": 8453,
"expected": {
"chain_id": 8453,
"name": "USD Coin",
"separator": "0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f",
"version": "2"
},
"matches_onchain": true,
"name": "USD Coin",
"separator_computed": "0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f",
"verifying_contract": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"version": "2"
},
"headline": "SIGN on Base: payTo matches, amount matches, asset matches, network base matches, nonce unused, valid for 110 s, domain separator verified on-chain, canonical USDC, balance 16.71874 covers 0.02",
"kind": "authorization-check",
"pay_to": {
"address": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"is_contract": false
},
"payer": {
"balance_raw": "16718740",
"balance_units": "16.71874",
"sufficient": true
},
"quote": {
"amount_raw": "20000",
"asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"given": true,
"matches": {
"amount": true,
"asset": true,
"network": true,
"pay_to": true
},
"max_timeout_s": 120,
"network": "base",
"pay_to": "0x6264191d6dd5427435b5e829077842e130ef1fc8"
},
"rail": "x402-authorization-check-1",
"reads": {
"calls": 10,
"elapsed_ms": 5,
"rpc": "fixture"
},
"token": {
"address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"canonical_usdc": true,
"decimals": 6,
"domain_separator_onchain": "0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f",
"is_contract": true,
"name": "USD Coin",
"symbol": "USDC",
"version": "2"
},
"typed_data": {
"domain": {
"chainId": 8453,
"name": "USD Coin",
"verifyingContract": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"version": "2"
},
"message": {
"from": "0x8ec901f7e2710163387d70950f680f1ea2269d15",
"nonce": "0xa1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4a1b2c3d4",
"to": "0x6264191d6dd5427435b5e829077842e130ef1fc8",
"validAfter": "0",
"validBefore": "1793518925",
"value": "20000"
},
"primaryType": "TransferWithAuthorization",
"types": {
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "version",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
],
"TransferWithAuthorization": [
{
"name": "from",
"type": "address"
},
{
"name": "to",
"type": "address"
},
{
"name": "value",
"type": "uint256"
},
{
"name": "validAfter",
"type": "uint256"
},
{
"name": "validBefore",
"type": "uint256"
},
{
"name": "nonce",
"type": "bytes32"
}
]
}
},
"verdict": {
"checks_ok": [
"payTo matches",
"amount matches",
"asset matches",
"network base matches",
"nonce unused",
"valid for 110 s",
"domain separator verified on-chain",
"canonical USDC",
"balance 16.71874 covers 0.02"
],
"level": "SIGN",
"reasons": [],
"sign": true
}
},
"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 quote's accepts[].amount (v2) / maxAmountRequired (v1), atomic units: sets matches.amount",
"type": "string"
},
"asset": {
"description": "the quote's accepts[].asset (token contract)",
"type": "string"
},
"chain": {
"description": "optional; must be ethereum / 1 on this route",
"type": "string"
},
"domainChainId": {
"description": "optional domain.chainId of the typed data (must be this chain's)",
"minimum": 1,
"type": "integer"
},
"domainName": {
"description": "optional domain.name of the typed data (checked against the token's on-chain DOMAIN_SEPARATOR)",
"type": "string"
},
"domainVersion": {
"description": "optional domain.version of the typed data",
"type": "string"
},
"from": {
"description": "the payer: the wallet that signs (authorization.from) (0x + 40 hex)",
"type": "string"
},
"maxTimeout": {
"description": "the quote's accepts[].maxTimeoutSeconds: flags a validBefore longer than the seller asked for",
"minimum": 1,
"type": "integer"
},
"network": {
"description": "the quote's accepts[].network: base / eip155:8453 or ethereum / eip155:1",
"type": "string"
},
"nonce": {
"description": "authorization.nonce: 32 random bytes (0x + 64 hex), one per payment",
"type": "string"
},
"payTo": {
"description": "the quote's accepts[].payTo: sets matches.pay_to (BLOCK on mismatch)",
"type": "string"
},
"primaryType": {
"description": "TransferWithAuthorization or ReceiveWithAuthorization (default TransferWithAuthorization, the x402 exact scheme)",
"type": "string"
},
"to": {
"description": "the recipient (authorization.to; must equal the quote's payTo) (0x + 40 hex)",
"type": "string"
},
"validAfter": {
"description": "authorization.validAfter, unix seconds (default 0)",
"type": "string"
},
"validBefore": {
"description": "authorization.validBefore, unix seconds (x402 clients set now + maxTimeoutSeconds)",
"type": "string"
},
"value": {
"description": "authorization.value in atomic units (USDC has 6 decimals: 20000 = $0.02)",
"type": "string"
},
"verifyingContract": {
"description": "domain.verifyingContract: the token contract the typed data names (default USDC on this chain)",
"type": "string"
}
},
"required": [
"from",
"to",
"value",
"validBefore",
"nonce"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"also_available": {
"type": "object"
},
"authorization": {
"type": "object"
},
"block_number": {
"type": "integer"
},
"block_timestamp": {
"type": "integer"
},
"chain": {
"type": "string"
},
"chain_id": {
"type": "integer"
},
"digest": {
"type": "object"
},
"domain": {
"type": "object"
},
"headline": {
"type": "string"
},
"kind": {
"type": "string"
},
"pay_to": {
"type": "object"
},
"payer": {
"type": "object"
},
"quote": {
"type": "object"
},
"rail": {
"type": "string"
},
"token": {
"type": "object"
},
"typed_data": {
"type": "object"
},
"verdict": {
"type": "object"
}
},
"required": [
"chain",
"verdict",
"authorization",
"quote",
"token",
"domain",
"typed_data",
"digest",
"headline"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"builder-code": {
"info": {
"a": "bc_d5i1omim"
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"a": {
"description": "App builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"s": {
"description": "Service builder codes",
"items": {
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"maxItems": 11,
"type": "array"
},
"w": {
"description": "Wallet builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
}
},
"type": "object"
}
}
},
"lastUpdated": "2026-11-02T17:38:34.353Z",
"quality": {
"l30DaysTotalCalls": 1,
"l30DaysUniquePayers": 1,
"lastCalledAt": "2026-11-02T17:38:34.235Z"
},
"resource": "https://agents.avasis.ai/v1/eth/authorization-check",
"serviceName": "Avasis Agent Platform",
"tags": [
"x402",
"authorization-check",
"eip-3009",
"eip-712",
"pre-sign"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "x402 authorization check on Ethereum (chain 1, $0.02): the EIP-3009 authorization you will sign (from, to, value, validAfter, validBefore, nonce) + its 402 quote (payTo, amount, asset, network) -> SIGN/CAUTION/BLOCK: payTo / amount / asset / chain match, nonce unused, not expired, EIP-712 domain verified on-chain, look-alike USDC, balance, decoy >= $1, the digest you sign. Phrases: should I sign this, x402 authorization check, eip-3009, decoy quote. GET or POST JSON. Never charged on 4xx/5xx."
}What the leaf hashes
{"body":"75cb21406450f1a3ce76b0e822c15e6f55bbb9ef6022586235c4400c9e608339","id":2199931,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646793605871,"prev":null,"subject":"x402_bazaar:https://agents.avasis.ai/v1/eth/authorization-check","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (444186 rows).
- 0xacb646af448848b526cce78e3f958e6ae211c9c0d3916fa57ad537e41a0c33e4
- 0x190381e455f0127c22461661ec891605e12abfea3bc9f6030487a17868b44157
- 0x9ba51d0179b3ae2e1fe09268158192f80a5b06f0bb08bd0421dc268193cae610
- 0xede46e2f06f6334758ba2461694a9b04635eb19b34ec7da98e895414ff004792
- 0x4e0c4c5947842a6064e4438806ccd1838c7fc4101b23ef57c135f1556b5bd134
- 0x251d37b2f8fd9ac15fa6bc9457c9df4c6c38d885ae05a7a9a98d08f59bb315bd
- 0xd4dc51648e13e05a4788ee1a9fd79454c814c76fbc73a8eba8bc8f2326a797f5
- 0xfd3dcef5b6837324267af1e5b9ca221c5ed5447cd4a5472c1e2b3b1957fb7e7f
- 0xdec67f582e547bbf0dbf931f50d46b47e7cc5f193bdc94d82af02c106501c2c6
- 0x4c70ec0fb1392a7753630a2cb0b6008e4f889e6ea880dd6cb3847043b8aa08f9
- 0x2ccda8c18ff07f00c8bb027f9f15ae0c0d5b653ed69ac4ac66f46fa53a11ad61
- 0xba75ac8fae3b7769dc511d447c671590cf9f4572510e81111cdc037d6738de1d
- 0x30482ffd581ea067af14f15cf3c17e7dcb174f749e858ecded170a1f5f75cc59
- 0x27deeb1ef1692b4773e73c16b6d8d0cdf4251fe2660821e5336f57539770fd2f
- 0x793184605629cd36ba80a07cbe115ca35e8923297bf024260c6f5c06b255f638
- 0x2922573a524a0694086782ac45fa3083d3fc3f6a2a479b2105e1e2f06b2916f7
- 0x07ad80c0c234ecea379a2f4450dfd0804db049dbc62abe77af6306049ca6b6c2
- 0x98cbbf2c68ab4c0b4db782aeb88bea1f30b02178cf8b5d3d24a931d19492ea6d
- 0x252cce55f1a3d5391c16f82d7f62494429a5f69b03486d4cfcfb7b2c96d6c884
- Day root
- 0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
- Chained
- 0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
- Published
- On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af