← The evidence ledger
Evidence row 1508264
Observed , by sync.x402_bazaar/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://apiaudit.madebydevx.com/v1/quick
- Recorded
- Previous row
- #1262535
- Body SHA-256
- 3afecfa14581476be5b78c240fa20da6367c08884b4161e6ef1d60b0b5a6680b
- Leaf
- 0x4b8ab38f70bcebf27ced90462aedf7a272bf63977cf6ea28c03c0f20466c7820
What was observed
{
"endpoints": [
[
"x402",
"https://apiaudit.madebydevx.com/v1/quick"
]
],
"name": "apiaudit.madebydevx.com/v1/quick",
"owner_address": "0xb3cddccee6b150c8effd55b961afc0ecefe7f247",
"raw": {
"accepts": [
{
"amount": "90000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 300,
"network": "eip155:8453",
"payTo": "0xB3cDDccEe6B150c8efFD55B961afc0Ecefe7f247",
"scheme": "exact"
}
],
"description": "Quick API health check for agents: send one public API endpoint URL and get a 3-sample spot check for $0.09 USDC on Base: grade A-F, score, production-ready yes/no, median/p95 latency, success rate and the top 3 issues with concrete fixes (security headers, CORS, HTTPS redirect, JSON consistency). Unreachable targets not charged. Full 10-sample audit with every finding and cert expiry: POST /v1/audit ($9). By DevX.",
"extensions": {
"bazaar": {
"info": {
"input": {
"body": {
"method": "GET",
"url": "https://jsonplaceholder.typicode.com/todos/1"
},
"bodyType": "json",
"discoverable": true,
"method": "POST",
"type": "http"
},
"output": {
"example": {
"operation_id": "5d0c7a3e-1f2b-4c6d-8e9f-0a1b2c3d4e5f",
"payment": {
"amount_raw": "90000",
"network": "eip155:8453",
"status": "paid",
"tx_hash": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
"result": {
"full_report": {
"price_usd": "9.00",
"url": "/v1/audit"
},
"latency_ms": {
"ttfb_median": 5,
"ttfb_p95": 12
},
"tier": "quick",
"top_issues": [
{
"fix": "Add: Strict-Transport-Security: max-age=31536000; includeSubDomains",
"severity": "medium",
"title": "No HSTS header"
},
{
"fix": "Allow-list trusted origins; never reflect the Origin header when credentials are allowed.",
"severity": "medium",
"title": "CORS reflects any Origin with credentials"
},
{
"fix": "Redirect (301/308) or reject (403/426) plain HTTP; combine with HSTS.",
"severity": "medium",
"title": "Plain HTTP is served, not redirected"
}
],
"verdict": {
"grade": "C",
"label": "needs work before production",
"production_ready": false,
"score": 70
}
},
"status": "paid"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"body": {
"description": "Optional probe body for POST (string or JSON, max 16 KB)"
},
"expect_status": {
"description": "Status code that counts as success (default: any status < 400)",
"maximum": 599,
"minimum": 100,
"type": "integer"
},
"headers": {
"additionalProperties": {
"maxLength": 1024,
"type": "string"
},
"description": "Optional request headers (e.g. authorization) used only for the probe; never stored or echoed",
"type": "object"
},
"method": {
"description": "Probe method (default GET). POST is sent once per sample.",
"enum": [
"GET",
"HEAD",
"POST",
"OPTIONS"
],
"type": "string"
},
"requestKey": {
"description": "Optional idempotency key: same payer + requestKey + input within 7 days returns the stored report without a second charge.",
"maxLength": 128,
"minLength": 8,
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$",
"type": "string"
},
"url": {
"description": "Public http(s) API endpoint to audit (only this URL is probed)",
"format": "uri",
"maxLength": 2048,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"bodyType": {
"enum": [
"json"
],
"type": "string"
},
"discoverable": {
"type": "boolean"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1792674330/bazaar-icons/e0e6fd42800bc2b7.png",
"lastUpdated": "2026-10-31T00:02:12.29Z",
"quality": {
"l30DaysTotalCalls": 4,
"l30DaysUniquePayers": 3,
"lastCalledAt": "2026-10-31T00:02:12.054Z"
},
"resource": "https://apiaudit.madebydevx.com/v1/quick",
"tags": [
"api-health",
"quick-check",
"security-headers",
"latency",
"devtools"
],
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "Quick API health check for agents: send one public API endpoint URL and get a 3-sample spot check for $0.09 USDC on Base: grade A-F, score, production-ready yes/no, median/p95 latency, success rate and the top 3 issues with concrete fixes (security headers, CORS, HTTPS redirect, JSON consistency). Unreachable targets not charged. Full 10-sample audit with every finding and cert expiry: POST /v1/audit ($9). By DevX."
}What the leaf hashes
{"body":"3afecfa14581476be5b78c240fa20da6367c08884b4161e6ef1d60b0b5a6680b","id":1508264,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793472709130451,"prev":1262535,"subject":"x402_bazaar:https://apiaudit.madebydevx.com/v1/quick","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (246033 rows).
- 0x4b8a271a2c8e16b59fc0dc4f53da6f86dc973be0b826ba114854f19930e508b7
- 0xf39167230e2ee0e9177c277c95ec88a6ca57f2c7e8ab9ffdb84987f9ac954ee7
- 0x74634ea6ae4f290da1bce4847be974ec199e173d41516f87e2b86314b8b1472d
- 0x047f6c268c9ff5a97249caf606cf636d8cab5181453141f2f16565cbdf5a06b9
- 0xff217f6ce898d51939db2815c7967a723c63e4de278a469878fb87fbb7cd0f8d
- 0x4de6f42dcbe9bf91c3797ffb192909eac4c8455faec8fa80de929753933d37d2
- 0xfd3a53e2ae7662f963464b0e73853e725203bd4b11134630363adf0a64afa90a
- 0x4e11d13675ce40a1ac9a72282a116f7cc09487ca578058f23330fe5b8e09ecc4
- 0xd3fe249e86f04dcd635151cca6b17b70be9dfa5dc38bfce0ba256417996d3a2f
- 0xef089b59747297d575cea7ae0af1d1652ecca5193c16f3ab2e92d8acbcde40c9
- 0x32aaa8a78f6103dd70a75e181918cda1aa711cbd6c2cabc0f9f5ad4cc6fc7433
- 0x5a1b3d3b8340f3a758827aed63fed285c823bca32427c40c4687a3d153601c85
- 0xe9c4303dc739b3a38473373ace0be2d0380fe87c373514f87ecf64e4a134918e
- 0xc248f3640ff2a9c77f3134397896f3ef7b260859179e2912c528542dff5a29d2
- 0x37f0ccf90cd9ba8759ef0154382593820880794592760020f095a3628e43fc3f
- 0xad4540f06e3fdfe46524d8592f8d854d4849e16217bc047eaf024f0abebe34b0
- 0xa00a931d72706fa2402bfc9b441a12eb7c6a61ff42a542916106e3637177f101
- 0x59f83f7228f07febe2780660e422e171b0359b8aa031ee3be07e991118130c15
- Day root
- 0x24463725d1c0d9894bd6123691d532547aaa79f0762c0e45aa6a68acf1fd71ab
- Chained
- 0x7d4824ff313dee7252a46f9d5c37b452851deb6c9f24a40c2f74ee0e53c82980
- Published
- On Arc Testnet, block 70093156: 0xedb7b832f4ebf6781b5ecd2ed241c435b862f4d3761541fa31adc1831b8c44a0