mirrored listing x402 eip155:8453

WalletTriage — real-time wallet risk check: dangerous ERC20 approvals cross-referenced wit

WalletTriage — real-time wallet risk check: dangerous ERC20 approvals cross-referenced with a live exploit threat feed. Returns risk_score (0-100), risk_level and actionable findings.

Do you run api.wallettriage.com? This listing was mirrored from Coinbase's public Bazaar. Claim it in 30 seconds — no account required — and it becomes verified, permanently overriding the mirrored copy.

Claim this listing
10000 (raw units)
price
11
calls / 30d
7
unique payers
2026-09-17
updated

Provider

api.wallettriage.com · discovered, not yet claimed by its owner

Payment (x402 accepts[])

[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "payTo": "0x93835CF2bD459e72B577Ed944E33578d8529Dacc",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "maxTimeoutSeconds": 300
  }
]

Output schema

{
  "bazaar": {
    "info": {
      "input": {
        "method": "GET",
        "queryParams": {
          "address": "0x1111111111111111111111111111111111111111",
          "chain": "eth"
        },
        "type": "http"
      },
      "output": {
        "example": {
          "address": "0x1111111111111111111111111111111111111111",
          "chain": "eth",
          "checked_at": "2026-07-08T00:00:00.000Z",
          "findings": [
            {
              "affected_approvals": 3,
              "detail": "Active approval involves a contract currently flagged by the live threat feed.",
              "recommended_action": "revoke_approval",
              "severity": "critical",
              "spender": "0x2222222222222222222222222222222222222222",
              "token": "USDC",
              "tokens": [
                "USDC",
                "WETH",
                "DAI"
              ],
              "type": "exploit_exposure",
              "usd_at_risk": 125000
            }
          ],
          "risk_level": "critical",
          "risk_score": 96,
          "stateless": true,
          "summary": {
            "low_noise_approvals": 34,
            "low_value_at_risk_usd": 12.5,
            "spam_suppressed": 5,
            "total_approvals": 42
          },
          "threat_feed": {
            "entities": 7,
            "state": "ok",
            "updated_at": "2026-07-08T00:00:00.000Z"
          }
        },
        "type": "json"
      }
    },
    "schema": {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "input": {
          "additionalProperties": false,
          "properties": {
            "method": {
              "enum": [
                "GET"
              ],
              "type": "string"
            },
            "queryParams": {
              "properties": {
                "address": {
                  "description": "EVM wallet address to assess (0x-prefixed, 40 hex chars).",
                  "type": "string"
                },
                "chain": {
                  "description": "Chain to scan (Moralis name). Defaults to eth if omitted. One of: eth, base, polygon, arbitrum, optimism, bsc, avalanche.",
                  "enum": [
                    "eth",
                    "base",
                    "polygon",
                    "arbitrum",
                    "optimism",
                    "bsc",
                    "avalanche"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "address"
              ],
              "type": "object"
            },
            "type": {
              "const": "http",
              "type": "string"
            }
          },
          "required": [
            "type",
            "method"
          ],
          "type": "object"
        },
        "output": {
          "properties": {
            "example": {
              "properties": {
                "address": {
                  "type": "string"
                },
                "caveats": {
                  "description": "Present when coverage was limited (e.g. live feed tracking 0 active exploit entities). Absent = no caveats.",
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "chain": {
                  "type": "string"
                },
                "checked_at": {
                  "type": "string"
                },
                "findings": {
                  "description": "Actionable findings (medium+); worst-first.",
                  "items": {
                    "type": "object"
                  },
                  "type": "array"
                },
                "risk_level": {
                  "enum": [
                    "low",
                    "medium",
                    "high",
                    "critical"
                  ],
                  "type": "string"
                },
                "risk_score": {
                  "description": "0-100; higher is riskier.",
                  "type": "number"
                },
                "stateless": {
                  "type": "boolean"
                },
                "summary": {
                  "type": "object"
                },
                "threat_feed": {
                  "description": "Provenance of the live exploit feed this verdict was evaluated against: state (ok|stale|missing|error), updated_at, entities. A degraded feed is refused with 503 BEFORE payment; paid responses always disclose feed state.",
                  "type": "object"
                }
              },
              "required": [
                "address",
                "chain",
                "risk_score",
                "risk_level",
                "findings",
                "stateless"
              ],
              "type": "object"
            },
            "type": {
              "type": "string"
            }
          },
          "required": [
            "type"
          ],
          "type": "object"
        }
      },
      "required": [
        "input"
      ],
      "type": "object"
    }
  }
}

Use it

curl

curl "https://api.wallettriage.com/scan"
# -> 402 Payment Required, accepts[] lists how to pay
# retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid

JavaScript

const res = await fetch("https://api.wallettriage.com/scan");
if (res.status === 402) {
  const { accepts } = await res.json();
  // pay one of accepts[] via an x402 client, then retry with the payment header
}

Python

import httpx
res = httpx.get("https://api.wallettriage.com/scan")
if res.status_code == 402:
    accepts = res.json()["accepts"]
    # pay one of accepts[] via an x402 client, then retry with the payment header

Machine-readable

Everything on this page is also available as clean JSON at /resources/1478.json, and this resource appears in /discovery/resources and /discovery/search.