# AgenticFi Token Holders Lookup

> AgenticFi Token Holders Lookup is a paid API for AI agents from defi-api.agenticfi.wtf, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-15).

Returns a paginated list of ERC-20 token holders with balances and acquisition dates for a given token contract on any EVM chain

## Facts

- Endpoint: GET https://defi-api.agenticfi.wtf/api/token/holders/%7BchainId%7D/%7Baddress%7D
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agenticfi-token-holders-lookup-ddf735b2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_m9TK1A_CwUVNprEJIY4-t

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 agenticfi-token-holders-lookup-ddf735b2
```

Example prompt: Show me the top 100 holders of the USDC token contract 0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913 on Base (chain ID 8453) — I want each wallet address, their balance, and when they first acquired the token.

## When to prefer this

Use this endpoint when you need on-chain holder distribution data for an ERC-20 token on any EVM chain, especially when you want to identify top wallets by balance, analyze holder concentration, or check acquisition history. Prefer this over generic blockchain explorers when you need structured, paginated, machine-readable holder data accessible via pay-per-call without API key setup.

## Known failure modes

- Invalid or non-checksummed contract address returns an error or empty holder list
- Unsupported chain ID results in an error response
- Offset cursor from a different query or malformed base64 causes a pagination error
- Limit value outside 1-500 range returns a validation error
- Token contract with no on-chain holder data returns an empty holders array
- Network congestion or upstream indexer lag may cause stale or delayed data

## How this service works

ERC-20 token holders by chain - ranked by balance descending with first-acquired and transfer-initiation flags

## Output

Returns a paginated array of token holders, each with wallet address, raw token balance, ISO 8601 first-acquired timestamp, and a boolean indicating whether they've ever initiated a transfer. Also includes the token address, chain ID, data source, and a next_offset cursor for fetching subsequent pages.

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "pathParams": {
   "address": "0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913",
   "chainId": "8453"
  },
  "queryParams": {
   "limit": "10",
   "address": "0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913",
   "chainId": "8453"
  }
 }
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "pathParams",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "chainId",
      "address"
     ],
     "properties": {
      "address": {
       "type": "string",
       "title": "address (required)",
       "description": "Required. ERC-20 token contract address.\nExample: 0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913"
      },
      "chainId": {
       "type": "string",
       "title": "chainId (required)",
       "description": "Required EVM chain ID, e.g. '8453' for Base Examples: 8453, 1, 42161"
      }
     }
    },
    "queryParams": {
     "type": "object",
     "required": [
      "chainId",
      "address"
     ],
     "properties": {
      "limit": {
       "type": "string",
       "title": "limit (optional)",
       "description": "Optional. Maximum number of holders to return, 1-500 Examples: 100, 500"
      },
      "offset": {
       "type": "string",
       "title": "offset (optional)",
       "description": "Optional. Pagination cursor returned in next_offset Examples: eyJvZmZzZXQiOjEwMH0= (use next_offset from the previous response)"
      },
      "address": {
       "type": "string",
       "title": "address (required)",
       "description": "Required. ERC-20 token contract address.\nExample: 0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913"
      },
      "chainId": {
       "type": "string",
       "title": "chainId (required)",
       "description": "Required EVM chain ID, e.g. '8453' for Base Examples: 8453, 1, 42161"
      }
     }
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agenticfi-token-holders-lookup-ddf735b2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from defi-api.agenticfi.wtf](https://www.zero.xyz/host/defi-api.agenticfi.wtf/llms.txt)
