Cambrian Top token holders API
GET /api/v1/evm/tvl/top-owners
Top Token Holders
Overview
Returns the top token holders (owners) for a given ERC-20 token address on a supported EVM chain, ranked by their current token balance. This is useful for identifying whale wallets, assessing token distribution, and monitoring concentration risk for a specific token.
Business Value
- Portfolio Analysis: Identify whale wallets and major token holders for investment research and risk assessment
- Token Distribution: Analyze token concentration and decentralization metrics for due diligence
- Market Intelligence: Track large holder movements to anticipate potential market impacts
- Risk Management: Monitor concentration risk by identifying addresses holding significant portions of token supply
- Competitive Analysis: Research major stakeholders and institutional holders across different tokens
Endpoint Details
URL:
https://api.cambrian.org/evm/tvl/top-owners
Method: GET
Authentication: Required via X-API-Key header
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| chain_id | integer | No | 8453 | EVM chain ID. |
| token_address | string | Yes | - | Token address (pattern: ^0x[a-fA-F0-9]{40}$). |
| limit | integer | No | 20 | Limit the number of results (min 1, max 1000). |
| offset | integer | No | 0 | Offset the results, allows you to skip a number of rows before starting to return rows (min 0, max 100000). |
Response Field Descriptions
| Response Field | Type | Description |
|---|---|---|
| chainId | UInt16 | EVM chain ID the token resides on. |
| ownerAddress | FixedString(42) | Wallet address holding the token. |
| tokenAddress | FixedString(42) | Contract address of the token. |
| tokenSymbol | String | Symbol of the token. |
| tokenAmount | Float64 | Raw token amount held by the owner. |
| valueUsd | Float64 | USD value of the held token amount. |
Examples
1. Get Top Token Holders
Retrieves the top 20 holders (default limit) of the ODOS token on Base (chain ID 8453).
curl -X GET "https://api.cambrian.org/evm/tvl/top-owners?chain_id=8453&token_address=0xca73ed1815e5915489570014e024b7ebe65de679&limit=20" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
[
{
"columns": [
{
"name": "chainId",
"type": "UInt16"
},
{
"name": "ownerAddress",
"type": "FixedString(42)"
},
{
"name": "tokenAddress",
"type": "FixedString(42)"
},
{
"name": "tokenSymbol",
"type": "String"
},
{
"name": "tokenAmount",
"type": "Float64"
},
{
"name": "valueUsd",
"type": "Float64"
}
],
"data": [
[
8453,
"0xae82febe00a21257ee813cfe2f913dcaa973d33b",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
3587949734.7407737,
3106119.09692773
],
[
8453,
"0x9d1e93bbc148fe7b19eb9ec22a5be4b75b57239f",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
2666692701.38885,
2308578.920495983
],
[
8453,
"0x32235fe0b39849ddff11bce74d93bf981c9fe5ea",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
723197383.5800779,
626078.2257443037
],
[
8453,
"0xe12be6d836bba65f1f91b61fb49fb109fba57e72",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
638144699.6775,
552447.3821578503
],
[
8453,
"0x7ec74ce1ff4c7c2b0bc2bc2f64ac8481db616b34",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
458315000,
396767.25683317997
],
[
8453,
"0xc80afd311c9626528de66d86814770361fe92416",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
378073521.4869109,
327301.5153368796
],
[
8453,
"0xc3681709ee476308b45812eabe0eb22f3b816880",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
366912550.6162723,
317639.3663870562
],
[
8453,
"0x2ef73b65a9033c2e9707b0372f382a14d0d71252",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
253350055.77781546,
219327.33305586112
],
[
8453,
"0x4c8f8055d88705f52c9994969dde61ab574895a3",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
229230686.5125222,
198446.9866130501
],
[
8453,
"0x56939b55d3a69ca79a556110a1a2e98cdc4c9fd6",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
92599680,
80164.34333859962
]
],
"rows": 20
}
]
Note: This example response is truncated to the first 10 rows for documentation purposes; the actual rows field reflects the true row count (20) returned by the API for this request. The largest ODOS holder on Base holds over 3.58 billion tokens, worth approximately $3.1M USD at the time of the request.
2. Paginate Through Holders with Offset
Retrieves a smaller page of holders (limit=5) starting after the first 10 results (offset=10), useful for paginating through large holder lists.
curl -X GET "https://api.cambrian.org/evm/tvl/top-owners?chain_id=8453&token_address=0xca73ed1815e5915489570014e024b7ebe65de679&limit=5&offset=10" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
[
{
"columns": [
{
"name": "chainId",
"type": "UInt16"
},
{
"name": "ownerAddress",
"type": "FixedString(42)"
},
{
"name": "tokenAddress",
"type": "FixedString(42)"
},
{
"name": "tokenSymbol",
"type": "String"
},
{
"name": "tokenAmount",
"type": "Float64"
},
{
"name": "valueUsd",
"type": "Float64"
}
],
"data": [
[
8453,
"0x85af237da23d6cf6f2a2cd9d936f0ae09bd1adcf",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
79200000,
68564.12454575533
],
[
8453,
"0xb4dc0ae16db607778e7fb4951ec0889852403f2c",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
60851602.706388004,
52679.758418808204
],
[
8453,
"0xbd146d2ee341b74d2825f8ab07e068e9449deb81",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
56374304,
48803.722230255975
],
[
8453,
"0xb7068556049df8fb3ae77ccbb9611fe0e85b2641",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
20157129.02579334,
17450.200820825183
],
[
8453,
"0x4c3159f83eb4e6ff6b93efae4229c0b8a4095e65",
"0xca73ed1815e5915489570014e024b7ebe65de679",
"ODOS",
18750000,
16232.037061021623
]
],
"rows": 5
}
]
This demonstrates ranks 11-15 of ODOS token holders on Base, showing how offset and limit can be combined to page through the full holder list.
x402 Payment Option
This endpoint supports pay-per-use access via the x402 payment protocol (v2) — pay $0.05 USDC per request using blockchain micropayments. No API key required.
Quick Start (TypeScript)
npm install @x402/fetch @x402/evm viem
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";
const signer = privateKeyToAccount(process.env.EVM_PRIVATE_KEY as `0x${string}`);
const client = new x402Client();
client.register("eip155:*", new ExactEvmScheme(signer));
const fetchWithPayment = wrapFetchWithPayment(fetch, client);
const response = await fetchWithPayment(
"https://x402.cambrian.org/evm/tvl/top-owners"
);
const data = await response.json();
Quick Start (Python)
pip install "x402[httpx]"
import asyncio, os
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client
async def main():
client = x402Client()
account = Account.from_key(os.getenv("EVM_PRIVATE_KEY"))
register_exact_evm_client(client, EthAccountSigner(account))
async with x402HttpxClient(client) as http:
response = await http.get("https://x402.cambrian.org/evm/tvl/top-owners")
print(response.json())
asyncio.run(main())
Payment Flow
- Send a normal request to the endpoint (no API key needed)
- Server returns
402 Payment Requiredwith payment details - The x402 SDK automatically signs a payment authorization with your wallet
- The SDK resubmits the request with the signed payment
- Server verifies payment and returns the API response
The x402 SDK handles steps 2–5 automatically.
Network: Base (chain ID 8453) | Currency: USDC | Price: $0.05 per request
Related Endpoints
/evm/tvl/status- Returns the tokens held by an address/evm/tokens- Returns a list of all erc20 tokens for the specified EVM chain, including their contract addresses, symbols, names, and decimal places./evm/price-current- Returns current price of a token calculated based on uniswap v3 and clones liquidity pools./evm/price-hour- Returns historical hourly price data for a specified EVM token.