# ChainWard Token Risk Check

> ChainWard Token Risk Check is a paid API for AI agents from api.chainward.ai, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-30).

Analyzes a token contract address on Base chain and returns an on-chain risk verdict (Pay or Hold) with flags derived from the wallet's launch history and creator behavior.

## Facts

- Endpoint: GET https://api.chainward.ai/api/risk/token?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/chainward-token-risk-check-98911649
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xYtm3F2ENNDEon2q-GpoS

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability chainward-token-risk-check-98911649
```

Example prompt: Before I buy this token, can you run a ChainWard risk check on the Base contract address 0x5f13d8f3bd2a9bd439d6ec9734ac1b4fb32b3b07 and tell me if I should pay or hold, and why?

## When to prefer this

Use this endpoint when an AI agent or user needs a fast, on-chain risk signal for a specific Base token contract before executing a payment or trade. It is particularly valuable when you want to detect early dump behavior, new/anonymous creator wallets, or sanctioned addresses without running a full honeypot simulation. Prefer this over general blockchain explorers when you need a structured Pay/Hold verdict rather than raw transaction data.

## Known failure modes

- Invalid or malformed address (not matching 0x + 40 hex chars) returns validation error
- Address not found on Base chain returns empty or error response
- Chain parameter not set to 'base' may return unsupported chain error
- Rate limiting or payment failure (x402) if USDC payment is not properly handled
- Truncated data if creator or minter has more than 100 mint/transfer records (analysis covers first 100 only)
- Token with no on-chain history may return minimal flags with a no_flags result

## How this service works

Paste any Base or BNB Chain address before you pay or hire it. ChainWard tells you Pay or Hold, and why, from the wallet’s on-chain history. Free.

## Output

Returns a JSON object with a verdict label (e.g. 'review', 'hold', 'pay') and reason, a list of risk flags (e.g. 'creator_sent_launch_tokens', 'new_creator'), creator wallet details (age, transaction count, sanctions status, launch token behavior), launch transaction metadata (launcher, time, block), supply information (mints after launch, creator allocation), token info (name, symbol, decimals, total supply), and a plain-English limits disclaimer about what the check does and does not cover.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "address"
     ],
     "properties": {
      "chain": {
       "enum": [
        "base"
       ],
       "type": "string",
       "default": "base",
       "description": "Base only for now. Payment is USDC on Base."
      },
      "address": {
       "type": "string",
       "pattern": "^0x[a-fA-F0-9]{40}$",
       "description": "Token contract on Base"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "chain": "base",
   "flags": [
    "creator_sent_launch_tokens",
    "new_creator"
   ],
   "token": "0x5f13d8f3bd2a9bd439d6ec9734ac1b4fb32b3b07",
   "launch": {
    "tx": "0x2f7eae9f2bba106190fa1c3ff6e6726ad8f49281eb967e12f180c76529dc5a03",
    "via": "0xe85a59c628f7d27878aceb4bf3b35733630083a9",
    "time": "2026-02-02T15:21:13.000Z",
    "block": 41628163,
    "creator": "0xdbd1c0e6c6252492bd5b99da162558de7f08d68b",
    "launcher": "clanker",
    "launcher_note": "Launched through Clanker's current factory, which deploys every token from one verified template with no owner mint, pause, blacklist or transfer tax."
   },
   "limits": "On-chain facts about the launch, the supply and the wallet that sent the launch transaction, which can be a bot, relayer or smart wallet acting for someone else. Tokens the launch wallet received at launch and sent out are not traced further: they may have been sold, moved or locked. Not a honeypot or sell simulation, holder concentration or liquidity-lock check. Mints and launch-wallet transfers are read from their first 100 records. no_flags means none of these checks matched; it is not a clearance.",
   "supply": {
    "capped": false,
    "to_creator": 0,
    "minted_to_creator": null,
    "mints_after_launch": 0,
    "minted_after_launch": null
   },
   "creator": {
    "type": "wallet",
    "address": "0xdbd1c0e6c6252492bd5b99da162558de7f08d68b",
    "sent_txs": 8,
    "holds_pct": 0,
    "first_seen": "2026-02-02T14:39:03.000Z",
    "sanctioned": false,
    "first_funder": {
     "tx": "0x2353f506566e79dc6dd4c35fbebe065373d78c7a5010f48f5dcd76d6e2a476dd",
     "address": "0xb0818aebe3afd4fbc5dccde0b5a370140b1380a7",
     "sanctioned": false,
     "funded_wallets": null,
     "exchange_or_hub": true
    },
    "launch_tokens": {
     "received": 6416006425.885427,
     "sent_pct": 100,
     "first_send_after_sec": 26,
     "sent_90pct_after_sec": 26
    },
    "age_days_at_launch": 0
   },
   "verdict": {
    "label": "review",
    "reason": "The wallet that launched it received 6,416,006,425.89 tokens in the launch transaction and had sent out 100% of them 26 seconds later."
   },
   "token_info": {
    "name": "Clanker hook",
    "symbol": "HOOK",
    "decimals": 18,
    "total_supply": 100000000000
   },
   "as_of_block": 52840675
  },
  "success": true
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/chainward-token-risk-check-98911649/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.chainward.ai](https://www.zero.xyz/host/api.chainward.ai/llms.txt)
