← The evidence ledger
Evidence row 2201843
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://url-text-tools.x402tookit.com/url-normalize
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 6fe3ad459e489b395311bc48cb176e6ef85ce1aac0f7fd9321d91077b6caab43
- Leaf
- 0xb382bf258bcc096feb882ab58c0df6b3e99b8dbf902e132d6ec042621511a6b8
What was observed
{
"endpoints": [
[
"x402",
"https://url-text-tools.x402tookit.com/url-normalize"
]
],
"name": "URL & Text Tools",
"owner_address": "0xb531320805c5bed1d46aeadcf4f008fdf172dbda",
"raw": {
"accepts": [
{
"amount": "20000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:8453",
"payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
"scheme": "exact"
},
{
"amount": "20000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM",
"transactionVersions": [
0
]
},
"maxTimeoutSeconds": 300,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "DUPiupXtuox38dcGoXUKer5mAydCzmaHjrbQ66qeEm8s",
"scheme": "exact"
},
{
"amount": "20000",
"asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:137",
"payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
"scheme": "exact"
},
{
"amount": "20000",
"asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:42161",
"payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
"scheme": "exact"
}
],
"description": "Normalize a URL for de-duplication: lowercase scheme/host, drop default port, resolve dot segments, tidy %-escapes.",
"extensions": {
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"sortQuery": "true",
"url": "HTTP://User@Example.COM:80/a/./b/../c/%7Efoo/%e3%81%82?b=2&a=1#x"
},
"type": "http"
},
"output": {
"example": {
"asOf": "2026-10-11T23:29:16.165Z",
"changes": 6,
"degraded": false,
"disclaimer": "Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting.",
"input": "HTTP://User@Example.COM:80/a/./b/../c/%7Efoo/%e3%81%82?b=2&a=1#x",
"normalized": "http://User@example.com/a/c/~foo/%E3%81%82?a=1&b=2#x",
"notChecked": [
"redirects, canonical link tags or server-side aliasing",
"trailing-slash equivalence (servers may treat /a and /a/ differently)",
"…2 more"
],
"reasons": [
"lower-cased the scheme",
"lower-cased the host",
"…4 more"
],
"source": "computed locally (RFC 3986 section 6.2.2 and 6.2.3)",
"summary": "Normalized with 6 change(s): lower-cased the scheme; lower-cased the host; removed the default port; normalized percent-escapes in the path; removed dot segments; sorted the query parameters.",
"verdict": "NORMALIZED"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"dropFragment": {
"description": "true to remove the #fragment (default false)",
"type": "string"
},
"sortQuery": {
"description": "true to sort query parameters (default false; order can matter to a server)",
"type": "string"
},
"url": {
"description": "Absolute URL to normalize",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"asOf": {
"type": [
"null",
"string"
]
},
"changes": {
"type": [
"null",
"number"
]
},
"degraded": {
"type": [
"boolean",
"null"
]
},
"disclaimer": {
"type": [
"null",
"string"
]
},
"input": {
"type": [
"null",
"string"
]
},
"normalized": {
"type": [
"null",
"string"
]
},
"notChecked": {
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"reasons": {
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"source": {
"type": [
"null",
"string"
]
},
"summary": {
"type": [
"null",
"string"
]
},
"verdict": {
"type": [
"null",
"string"
]
}
},
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"lastUpdated": "2026-11-01T23:23:50.991Z",
"quality": {
"l30DaysTotalCalls": 2,
"l30DaysUniquePayers": 1,
"lastCalledAt": "2026-11-01T23:23:50.821Z"
},
"resource": "https://url-text-tools.x402tookit.com/url-normalize",
"serviceName": "URL & Text Tools",
"tags": [
"url",
"normalize",
"canonical",
"dedupe"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Normalize a URL for de-duplication: lowercase scheme/host, drop default port, resolve dot segments, tidy %-escapes."
}What the leaf hashes
{"body":"6fe3ad459e489b395311bc48cb176e6ef85ce1aac0f7fd9321d91077b6caab43","id":2201843,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646809829171,"prev":null,"subject":"x402_bazaar:https://url-text-tools.x402tookit.com/url-normalize","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).
- 0xb382b1059d2097a903fcda56efbb09767af469d9d9fdcf42d063164f1300bd3a
- 0x37ddd37ce62671860c6ab657ada7a2d51b9e152022e0457b014d0f7a1064aff9
- 0x6ebeabcf00a862f721b78dcc601efadf16b99428b9e19eada3b429d33c7a8e06
- 0xf48333612680be37056f8df85eeccefebe2342c9d9918321305d7d330abc01dc
- 0xa2d83ec8997947effd3b26fb5654ac8d38b671c0324dfd48ccc0aa8db58f6656
- 0x616a13962235a8dd0f934e1dc15670625c14061b88d0cb212c08cfb7e80c8753
- 0x7dcceac189cb68a83d317bf6ac3eeae36475963ea358191b6eb0e116e26664e1
- 0xf632e730637a0dc2cff365df175ce91743405572efe0e31b99d0ed62d0a7631a
- 0x68df0b9ab00f5e656ee1c5574edc70fba6aa6ec4c61f5fdfcabdadb302bc28ff
- 0xc4531115743e10cfe807708de1a9d8844c7aff5ae2867969f9b826235e272b0c
- 0x3d936bbe0e752d535f9e93fbd9c9a8e9f48bd07731621d6903f9ddc4201a8ee0
- 0x21e290c87b8dfbee1c890c9b97a09ed0f5503884eaeabff86472db1c091c14cd
- 0x8f3b097427a1bfae26e9231cb5b00552011a27ad93aa4c0d3e267190fcbbb962
- 0x08da04eef748b7ac08271324db18913501d72c52afa240bf3f08b6da46e3b97f
- 0x834b6b9a36b42da183e2542785e8d2d7548ace455268a81922edbe6020cef644
- 0x2922573a524a0694086782ac45fa3083d3fc3f6a2a479b2105e1e2f06b2916f7
- 0x07ad80c0c234ecea379a2f4450dfd0804db049dbc62abe77af6306049ca6b6c2
- 0x98cbbf2c68ab4c0b4db782aeb88bea1f30b02178cf8b5d3d24a931d19492ea6d
- 0x252cce55f1a3d5391c16f82d7f62494429a5f69b03486d4cfcfb7b2c96d6c884
- Day root
- 0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
- Chained
- 0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
- Published
- On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af