# Base Token Safety / Rug Check

> Base Token Safety / Rug Check is a paid API for AI agents from audit.liquidlogicx.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-30).

Analyzes an ERC-20 token contract on Base and returns a risk rating, score, flags, contract powers, market data, and X-Lock liquidity lock status to help agents avoid rug pulls before buying.

## Facts

- Endpoint: GET https://audit.liquidlogicx.com/api/token-check?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-token-safety-rug-check-b1adf8c6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GhwCyS20qTN-rr8jtPniw

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-safety-rug-check-b1adf8c6
```

Example prompt: Before I buy this token, can you run a rug check on 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed on Base — give me the risk level, score, and any red flags like mint powers or tiny liquidity?

## When to prefer this

Use this endpoint when an AI agent is about to purchase or interact with an unknown ERC-20 token on Base and needs a fast, structured risk assessment. It is preferable to manual contract review because it consolidates contract code analysis, ownership data, DEX liquidity, and liquidity lock status into one scored, flag-annotated response. Choose this over generic block explorer lookups when you need actionable risk levels and X-Lock verification in a single call.

## Known failure modes

- Invalid or non-ERC-20 contract address returns an error or empty result
- Token with no DEX pair returns NO_DEX_PAIR flag and unavailable market status
- Unverified contract source code may limit flag detection accuracy
- Network congestion on Base may cause timeouts
- Payment failure (insufficient USDC balance) blocks the call
- Newly deployed contracts may have incomplete on-chain data

## How this service works

Check a Base token before your agent buys it, via Liquid Logic X: send an ERC-20 address, get risk (low/medium/high), score, flags and evidence: owner, upgradeable proxy, mint/blacklist/fee/pause powers in code, owner and burn %, DEX liquidity, pair age, 24h buys vs sells, X-Lock locks. $0.01 USDC on Base.

## Output

Returns a JSON object with: risk level (low/medium/high), numeric safety score (0-100, where 100 is safest), an array of flags with severity and code (e.g. POWER_MINT, UPGRADEABLE, NO_DEX_PAIR, XLOCK_LOCKED), contract-level details (owner address, upgradeable proxy status, dangerous function presence), market data (top DEX pair, pair age, 24h buys vs sells, liquidity), lock data (whether X-Lock is active, % of supply locked, next unlock datetime), and links to Basescan and DexScreener.

## 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": [
      "token"
     ],
     "properties": {
      "chain": {
       "enum": [
        "base"
       ],
       "type": "string",
       "description": "Optional. Base only."
      },
      "token": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Base (eip155:8453) ERC-20 token contract address to check before buying."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "token",
      "chain",
      "checkedAt",
      "risk",
      "score",
      "summary",
      "flags",
      "contract",
      "market",
      "locks"
     ],
     "properties": {
      "risk": {
       "enum": [
        "high",
        "medium",
        "low"
       ],
       "type": "string",
       "description": "Worst flag severity found. 'low' is not a guarantee."
      },
      "chain": {
       "enum": [
        "base"
       ],
       "type": "string"
      },
      "flags": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "code": {
          "type": "string",
          "description": "e.g. POWER_MINT, POWER_BLACKLIST, UPGRADEABLE, OWNER_HOLDS_MAJORITY, LIQUIDITY_TINY, NO_SELLS_24H, PAIR_NEW, NO_DEX_PAIR, OWNER_RENOUNCED, XLOCK_LOCKED, KNOWN_ISSUER"
         },
         "message": {
          "type": "string"
         },
         "severity": {
          "enum": [
           "high",
           "medium",
           "low",
           "info"
          ],
          "type": "string"
         }
        }
       }
      },
      "links": {
       "type": "object",
       "properties": {
        "basescan": {
         "type": "string"
        },
        "dexscreener": {
         "type": "string"
        }
       }
      },
      "locks": {
       "type": "object",
       "properties": {
        "lockUrls": {
         "type": "array",
         "items": {
          "
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-token-safety-rug-check-b1adf8c6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from audit.liquidlogicx.com](https://www.zero.xyz/host/audit.liquidlogicx.com/llms.txt)
