# Base Token Verdict

> Base Token Verdict is a paid API for AI agents from ari001.tailb4ac3a.ts.net, paid per call via x402, $0.012/call, status unknown (last checked 2026-10-02).

Returns an AI-written grade (BASED/MID/COOKED/RADIOACTIVE) and roast for a Base network ERC-20 token contract based on its on-chain state

## Facts

- Endpoint: GET https://ari001.tailb4ac3a.ts.net/v1/ventures/base_token_verdict_api/base_token_verdict?utm_source=zero.xyz
- Price: $0.012/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-token-verdict-ca955a12
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZPpG6-AzaV8bF613uhIFt

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 base-token-verdict-ca955a12
```

Example prompt: Give me the token verdict on 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed on Base — I want the grade, one-liner, and roast.

## When to prefer this

Use this endpoint when you need a fast, opinionated on-chain grade for a specific Base network token contract address — especially when you want to quickly surface proxy upgrade slots and live owner risk without paying for a full audit service. It does NOT check holders, liquidity, or price, so prefer it for structural/contract-state checks rather than market safety assessments. Best for agents screening tokens before deeper analysis or surfacing red flags in a conversational DeFi assistant.

## Known failure modes

- Address is not a deployed contract on Base → grade RADIOACTIVE, is_contract: false
- Address is a contract but not ERC-20 shaped (no decimals/totalSupply) → grade RADIOACTIVE
- Invalid or malformed token address (not 0x + 40 hex) → request rejected by schema validation
- RPC read failure or network timeout → ok: false with error message
- Token exists but has unusual state → grade based on proxy/owner rules, may return template-written verdict

## How this service works

AI-written token verdict on one Base token contract (query: token, 0x + 40 hex): grade BASED/MID/COOKED/RADIOACTIVE… Returns: an AI-written token verdict on one token contract: grade (BASED/MID/COOKED/RADIOACTIVE, a stated rule over the contract's own state), a one-liner and a roast, and the facts read: code size, name, symbol, decimals, supply, owner(), proxy slots. It does not read holders, liquidity or price and makes no safety or legitimacy call. Query: token (token contract, 0x + 40 hex).

## Output

Returns a JSON object containing: a grade enum (BASED, MID, COOKED, or RADIOACTIVE) with the rule that produced it, a one-liner description (up to 60 chars), a roast (up to 220 chars), whether the verdict was written by a model or template, and a facts object covering code size, name, symbol, decimals, total supply, owner address, owner_renounced flag, proxy slot values checked (EIP-1967, beacon, ZeppelinOS), and whether the contract is ERC-20-shaped.

## 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",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "token"
     ],
     "properties": {
      "token": {
       "type": "string",
       "pattern": "^0x[a-fA-F0-9]{40}$",
       "description": "token contract, 0x + 40 hex"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "ok",
      "service"
     ],
     "properties": {
      "ok": {
       "type": "boolean"
      },
      "chain": {
       "type": "string"
      },
      "error": {
       "type": "string",
       "description": "present when ok is false"
      },
      "cached": {
       "type": "boolean"
      },
      "method": {
       "const": "verdict"
      },
      "result": {
       "type": "object",
       "required": [
        "token",
        "grade",
        "one_liner",
        "roast",
        "written_by",
        "facts"
       ],
       "properties": {
        "facts": {
         "type": "object",
         "description": "the contract state read: is_contract, code_bytes, name, symbol, decimals, total_supply, owner, owner_renounced, proxy_slot, proxy_implementation, proxy_slots_checked, erc20_shaped"
        },
        "grade": {
         "enum": [
          "BASED",
          "MID",
          "COOKED",
          "RADIOACTIVE"
         ],
         "description": "RADIOACTIVE: not a contract, or not ERC-20 shaped (no decimals/totalSupply). COOKED: a proxy implementation slot is set (EIP-1967, its beacon, or ZeppelinOS) AND owner() names a live owner. MID: either one. BASED: neither found."
        },
        "roast": {
         "type": "string",
         "maxLength": 220
        },
        "token": {
         "type": "string",
         "pattern": "^0x[0-9a-fA-F]{40}$"
        },
        "one_liner": {
         "type": "string",
         "maxLength": 60
        },
        "disclaimer": {
         "type": "string"
        },
        "grade_rule": {
         "type": "stri
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-token-verdict-ca955a12/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ari001.tailb4ac3a.ts.net](https://www.zero.xyz/host/ari001.tailb4ac3a.ts.net/llms.txt)
