Holders

Get TGM Holders Data

post

Retrieve the top token holders with their current balances, historical activity, and recent balance changes. Shows up to 100 holders per page, providing insights into token distribution, smart money and fund holdings.

Authorizations
Body

Request model for TGM holders endpoint.

This endpoint provides comprehensive data on token holders and their balances. Retrieve holders by various criteria including smart money, exchanges, public figures, whales, and top holders with detailed balance information and filtering options.

chainstring · enumRequired

Blockchain chain

Example: solanaPossible values:
token_addressstringRequired

Token address

Example: 2zMMhcVQEXDtdE6vsFS7S7D5oUodfJHE8vd1gnBouauv
aggregate_by_entitybooleanOptional

Whether to return entity data

Default: false
label_typestring · enumOptional

Label type. You must also include the labels filter to match the label type. For example, for label type 'smart_money', you must include '30D Smart Trader', '90D Smart Trader', '180D Smart Trader', 'Fund' or 'Smart Trader' in the filters.labels.include parameter.

Default: all_holdersExample: all_holdersPossible values:
filtersany ofOptional

Additional filters to apply to the query.

Example: {"include_smart_money_labels":["30D Smart Trader","Fund"],"ownership_percentage":{"min":0.01},"token_amount":{"min":1000},"value_usd":{"min":10000}}
order_byany ofOptional

Custom sort order to override the endpoint's default ordering

Responses
200

TGM holders data

application/json
post
POST /api/v1/tgm/holders HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 384

{
  "chain": "solana",
  "token_address": "2zMMhcVQEXDtdE6vsFS7S7D5oUodfJHE8vd1gnBouauv",
  "aggregate_by_entity": false,
  "label_type": "all_holders",
  "pagination": {
    "page": 1,
    "per_page": 10
  },
  "filters": {
    "include_smart_money_labels": [
      "30D Smart Trader",
      "Fund"
    ],
    "ownership_percentage": {
      "min": 0.01
    },
    "token_amount": {
      "min": 1000
    },
    "value_usd": {
      "min": 10000
    }
  },
  "order_by": [
    {
      "field": "address",
      "direction": "ASC"
    }
  ]
}
{
  "data": [
    {
      "address": "0x1234567890123456789012345678901234567890",
      "address_label": "Smart Money",
      "token_amount": 1000000,
      "total_outflow": 50000,
      "total_inflow": 1050000,
      "balance_change_24h": 1000,
      "balance_change_7d": 5000,
      "balance_change_30d": 15000,
      "ownership_percentage": 2.5,
      "value_usd": 50000
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 10,
    "is_last_page": true
  }
}

How to use the Holders Endpoint

The Holders Endpoint returns holder data for a given token on a specific chain over a defined date range. You can use this to analyze who is holding a particular token—whether it’s Smart Money wallets, exchanges, or all holders.

Usecase 1: Get list of Smart Money Holders

  1. Set "label" to "smart_money" in the parameters object.

  2. Add "includeLabels" as an array with the specific Smart Money segments you want (e.g., "Fund", "30D Smart Trader").

  3. Other parameters (like chain, tokenAddress, date range, etc.) stay the same.

Example Configuration:

"label": "smart_money",
"includeLabels": ["Fund", "30D Smart Trader"]
"isEntity": true, -- To aggregate by Entity

Usecase 2: List of Exchanges Holding a Token

  1. Set "label" to "exchange" in the parameters object.

  2. Add "includeLabels" with "Exchange"

  3. Other parameters remain unchanged.

Example Configuration:

"label": "exchange",
"includeLabels": ["Exchange"]
"isEntity": true, -- To aggregate by Entity

Last updated

Was this helpful?