# Base Onchain Data – ERC-20 Token Rug Check & Due Diligence

> Base Onchain Data – ERC-20 Token Rug Check & Due Diligence is a paid API for AI agents from onchaincheck.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-29).

Returns a 0-100 risk score with reasons, ownership/proxy/mint/pause/blacklist flags, and live DEX price, liquidity, and FDV for any ERC-20 token contract on Base.

## Facts

- Endpoint: GET https://onchaincheck.dev/base/token?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-onchain-data-erc-20-token-rug-check-due-diligence-57729ef1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_lGCDHwIJ2GxQiVoZnKn_c

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-onchain-data-erc-20-token-rug-check-due-diligence-57729ef1
```

Example prompt: Can you run a rug check on the Base token at 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed — I want to see its risk score, whether ownership is renounced, if there's a mint or pause function, and what the current price and liquidity look like?

## When to prefer this

Choose this endpoint when you need a fast, structured due-diligence snapshot of an ERC-20 token specifically on Base (not Ethereum mainnet or other chains). It is the right choice when you need risk scoring, ownership/proxy/privilege flag analysis, and live DEX market data (price, liquidity, FDV) in a single call. Prefer it over block explorers when you want a machine-readable, pre-scored safety assessment rather than raw contract data. Not suitable for EVM chains other than Base — use the sibling Arbitrum endpoint for Arbitrum tokens.

## Known failure modes

- Invalid or non-ERC-20 address returns an error or empty result
- Token with no DEX pool will have noLiquidPool flag set true and market fields absent
- Newly deployed contract with no bytecode history may yield incomplete flag detection
- Proxy contracts with non-standard patterns may be misclassified as non-upgradeable
- Bytecode-based privileged function detection may produce false positives or misses (noted in response)
- Network errors or RPC timeouts may cause a 5xx response
- Payment failure (insufficient x402 balance) results in 402 response

## How this service works

Rug check and due-diligence snapshot of an ERC-20 token on Base: a 0-100 risk score with reasons, name, symbol, decimals, supply, owner and whether ownership is renounced, upgradeable-proxy detection, owner-only functions found in the bytecode (mint, pause, blacklist, fee changes), and USD price, liquidity and FDV from the deepest WETH or USDC pool on Uniswap v3 or Aerodrome. Facts only, no buy or sell opinion.

## Output

A JSON object containing: a 0-100 integer risk score with a low/medium/high level label and a list of scored risk reasons; a flags object with booleans for canMint, ownerCanAct, upgradeable, canBlacklist, noLiquidPool, canChangeFees, thinLiquidity; the token's name, symbol, decimals, totalSupply, owner address, and ownershipRenounced boolean; a proxy object indicating upgradeability; a market object with USD price, DEX name, pool address, paired asset, fee tier, quote-side liquidity in USD, fully diluted value, and number of pools found; the native ETH/USD price from Chainlink; and a human-readable risk summary string. No buy/sell recommendation is included.

## 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": {
      "address": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Token contract address on Base"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "name": "Degen",
  "risk": {
   "level": "low",
   "score": 15,
   "reasons": [
    {
     "code": "can-pause",
     "text": "The owner can pause all transfers.",
     "points": 10
    },
    {
     "code": "owner-not-renounced",
     "text": "Ownership is not renounced.",
     "points": 5
    }
   ],
   "summary": "Low risk: the owner can pause all transfers; ownership is not renounced."
  },
  "asset": {
   "known": false
  },
  "chain": "base",
  "flags": {
   "canMint": false,
   "ownerCanAct": true,
   "upgradeable": false,
   "canBlacklist": false,
   "noLiquidPool": false,
   "canChangeFees": false,
   "thinLiquidity": false
  },
  "notes": "Privileged functions are detected from bytecode selectors and may have false positives or misses. Liquidity is the WETH or USDC held by the deepest Uniswap v3 or aerodrome pool found.",
  "owner": "0x704Ec5C12Ca20a293C2C0B72B22619A4231f3c0d",
  "proxy": {
   "upgradeable": false
  },
  "market": {
   "dex": "uniswap-v3",
   "pool": "0xc9034c3E7F58003E6ae0C8438e7c8f4598d5ACAA",
   "priceUsd": 0.00095954,
   "feeTierBps": 30,
   "pairedWith": "WETH",
   "poolsFound": 10,
   "fullyDilutedValueUsd": 34510000,
   "quoteSideLiquidityUsd": 133000
  },
  "symbol": "DEGEN",
  "address": "0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed",
  "decimals": 18,
  "nativeUsd": {
   "price": 2402.09,
   "source": "Chainlink ETH/USD",
   "symbol": "ETH",
   "updatedAt": "2026-10-23T06:08:55.000Z"
  },
  "totalSupply": 35967154646.5,
  "ownershipRenounced": false,
  "privilegedFunctions": {
   "mint": false,
   "pause": true,
   "setFees": false,
   "blacklist": false,
   "tradingSwitch": false,
   "maxTransaction": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-onchain-data-erc-20-token-rug-check-due-diligence-57729ef1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from onchaincheck.dev](https://www.zero.xyz/host/onchaincheck.dev/llms.txt)
