# ChainK9 Portfolio Screen: Token Risk Check for Wallet Holdings

> ChainK9 Portfolio Screen: Token Risk Check for Wallet Holdings is a paid API for AI agents from api.chaink9.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-30).

Returns stored risk verdicts and balances for up to 20 tokens in a wallet, flagging honeypots and unsafe tokens detected via sandbox fork-and-trade simulation on BSC, Ethereum, or Base.

## Facts

- Endpoint: GET https://api.chaink9.com/portfolio-screen?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/chaink9-portfolio-screen-token-risk-check-for-wallet-holdings-6ca08748
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_4p2ovYYrL6HyyUcnmAiYZ

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 chaink9-portfolio-screen-token-risk-check-for-wallet-holdings-6ca08748
```

Example prompt: Can you screen the tokens in my wallet 0xAbCd1234...5678 on BNB Smart Chain — specifically check these token addresses 0xTokenA,0xTokenB — and tell me if any are honeypots or flagged as unsafe?

## When to prefer this

Use this endpoint when you need to screen an existing wallet's token holdings for risk, especially before executing trades or withdrawals. It is ideal for trading bots and portfolio agents that need fast, cheap ($0.005/call) risk verdicts on known wallet positions across BSC, Ethereum, or Base. Prefer this over static code-analysis tools because ChainK9 actually simulates buy/sell in a forked sandbox, catching behavioral honeypots that pass code inspection. Choose this when you already have a wallet address and token list, rather than when you need a deep on-demand scan of a brand-new unknown token.

## Known failure modes

- Missing or invalid wallet address returns a validation error
- Invalid token address format causes rejection
- Chain not in supported enum (bsc, eth, base, arc) returns error
- More than 20 tokens supplied may be rejected or truncated
- Stale or missing scan data is surfaced via stale_or_missing:true rather than returning an error
- Payment failure via x402 results in 402 response before data is returned

## How this service works

Token risk checks for BNB Smart Chain, Ethereum and Base, for AI agents and trading bots. ChainK9 forks the chain and really buys and sells a token in a sandbox before you do, so a honeypot is caught by what it does, not by what its code looks like.

## Output

Returns a JSON object containing the wallet address, a coverage note, evidence metadata (block number, chain ID), and an array of positions — each with the token address, current balance, the latest scan result (if available), a stored verdict (e.g. 'unknown', 'safe', 'honeypot'), and a flag indicating whether the scan data is stale or missing.

## 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": [
      "wallet",
      "tokens"
     ],
     "properties": {
      "chain": {
       "enum": [
        "bsc",
        "eth",
        "base",
        "arc"
       ],
       "type": "string",
       "description": "bsc (BNB Smart Chain, the default), eth (Ethereum) or base (Base)"
      },
      "tokens": {
       "type": "string",
       "description": "Comma-separated token addresses, one to twenty"
      },
      "wallet": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Wallet whose balances to read"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "wallet": {
       "type": "string"
      },
      "coverage": {
       "type": "string"
      },
      "evidence": {
       "type": "object",
       "properties": {
        "block": {
         "type": "integer"
        },
        "chain_id": {
         "type": "integer"
        }
       }
      },
      "positions": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "token": {
          "type": "string"
         },
         "balance": {
          "type": "string"
         },
         "latest_scan": {},
         "stored_verdict": {
          "type": "string"
         },
         "stale_or_missing": {
          "type": "boolean"
         }
        }
       }
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "wallet": "0x00000000000000000000000000000000000caFe1",
  "coverage": "Supplied assets and stored scans only.",
  "evidence": {
   "block": 1,
   "chain_id": 56
  },
  "positions": [
   {
    "token": "0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82",
    "balance": "100",
    "latest_scan": null,
    "stored_verdict": "unknown",
    "stale_or_missing": true
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/chaink9-portfolio-screen-token-risk-check-for-wallet-holdings-6ca08748/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.chaink9.com](https://www.zero.xyz/host/api.chaink9.com/llms.txt)
