# holder-check

> holder-check is a paid API for AI agents from holder-check.restockalarm.workers.dev, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-29).

Returns top-10 holder breakdown, wallet-only concentration, distribution verdict, and bundling check for any ERC-20 token on Base from live on-chain data.

## Facts

- Endpoint: GET https://holder-check.restockalarm.workers.dev/v1/holders?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/holder-check-fd7d5162
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_EKPxMODFSYPE0ewQlUvBP

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 holder-check-fd7d5162
```

Example prompt: Can you analyze the holder distribution for the token at 0x4ed4e862860bed51a9570b96d89af5e1b0efefed on Base? I want to see the top 10 holders, what type they are (wallet, LP, contract, burn), the wallet-only concentration, and whether there are any bundling red flags.

## When to prefer this

Choose this endpoint when you need on-chain holder concentration and bundling analysis specifically for ERC-20 tokens deployed on the Base chain. It is purpose-built for token risk screening with labeled holder types (wallet vs LP vs contract vs burn) and coordinated-buying detection, making it more actionable than generic blockchain explorers. Prefer it over manual Etherscan inspection or general-purpose RPC calls when you need a structured, agent-friendly verdict on token distribution.

## Known failure modes

- Invalid or malformed address (not 0x + 40 hex) returns HTTP 400
- Omitting the address parameter returns an example response with example=true flag
- On-chain data provider unavailable may cause lookup failure or stale data
- Token with very few on-chain interactions may return incomplete holder data
- Payment not completed via x402 returns 402 Payment Required

## How this service works

Holder Analysis API for Base tokens: top 10 holders with % and type (wallet, contract, LP pool, burn), wallet-only concentration, distribution verdict and bundling check from real on-chain data. $0.02 per call via x402 (USDC on Base). Not investment advice.

## Output

Returns a JSON object with: token name and symbol, list of top 10 holders each with address, percentage held, and classified type (wallet, contract, LP pool, or burn address), total holder count, top-10 combined percentage, wallet-only top-10 percentage, a distribution verdict in English (e.g. 'concentrated' or 'distributed'), a bundling check result with status and evidence array, data sources used, and a disclaimer. Optionally indicates if result was served from cache.

## 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": [],
     "properties": {
      "address": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "ERC-20 contract address on Base (0x + 40 hex). If omitted, the AERO example is returned with example=true; an invalid address is 400."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "chain": "base",
  "token": {
   "name": "Degen",
   "symbol": "DEGEN"
  },
  "top10": [
   {
    "pct": 22.61,
    "type": "wallet",
    "address": "0x06A19654e0872Ba71c2261EA691Ecf8a0c677156"
   }
  ],
  "cached": false,
  "method": "…",
  "address": "0x4ed4e862860bed51a9570b96d89af5e1b0efefed",
  "sources": [
   "https://api.honeypot.is/v1/TopHolders?…"
  ],
  "bundling": {
   "status": "ingen tegn",
   "evidence": [],
   "status_en": "none",
   "checks_run": [
    "equal_share_check",
    "same_block_check"
   ]
  },
  "disclaimer": "Ikke investeringsråd / not investment advice. Automated analysis of public on-chain data; labels and bundling hints can be wrong or incomplete. Do your own research.",
  "distribution": "koncentreret",
  "total_holders": 1192880,
  "distribution_en": "concentrated",
  "top10_total_pct": 58.4,
  "top10_wallets_pct": 40.1,
  "signals_measured_list": [
   "top_holders",
   "holder_types",
   "equal_share_check",
   "same_block_check"
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/holder-check-fd7d5162/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from holder-check.restockalarm.workers.dev](https://www.zero.xyz/host/holder-check.restockalarm.workers.dev/llms.txt)
