Skip to main content
GET
/
tokens
/
{tokenAddress}
/
holders
SDK
import { Client } from '@solana-tracker/data-api';

const client = new Client({ apiKey: 'YOUR_API_KEY' });

const data = await client.getTokenHolders('6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN');
curl --request GET \
--url https://data.solanatracker.io/tokens/{tokenAddress}/holders \
--header 'x-api-key: <api-key>'
import requests

url = "https://data.solanatracker.io/tokens/{tokenAddress}/holders"

headers = {"x-api-key": "<api-key>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};

fetch('https://data.solanatracker.io/tokens/{tokenAddress}/holders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://data.solanatracker.io/tokens/{tokenAddress}/holders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://data.solanatracker.io/tokens/{tokenAddress}/holders"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("x-api-key", "<api-key>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://data.solanatracker.io/tokens/{tokenAddress}/holders")
.header("x-api-key", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://data.solanatracker.io/tokens/{tokenAddress}/holders")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'

response = http.request(request)
puts response.read_body
{
  "total": 2,
  "enrich": [
    "identity",
    "walletPnl"
  ],
  "accounts": [
    {
      "wallet": "HYLHTXn74S378oYQHmoJa9yqrfr3DCd8TZtnFCNvySC5",
      "amount": 1032622458.645721,
      "value": {
        "quote": 7.100269258380428,
        "usd": 597.7253928072596
      },
      "percentage": 103.2622458645721,
      "identity": {
        "pool": {
          "program": "pumpfun",
          "poolAddress": "HYLHTXn74S378oYQHmoJa9yqrfr3DCd8TZtnFCNvySC5"
        },
        "type": "pool",
        "tags": [
          "pool"
        ]
      }
    },
    {
      "wallet": "BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s",
      "amount": 967377541.354279,
      "value": {
        "quote": 6.651647909279076,
        "usd": 559.9588853192754
      },
      "percentage": 96.7377541354279,
      "pnl": {
        "wallet": {
          "realized": 63155439.72,
          "unrealized": 21353443.56,
          "total": 84508883.29,
          "invested": 203648590.41,
          "proceeds": 266804030.13,
          "totalTrades": 24242430,
          "tokensTraded": 639911
        },
        "token": {
          "realized": 63.48,
          "unrealized": -2.48,
          "total": 61,
          "invested": 48.27,
          "proceeds": 109.27,
          "roi": 126.36,
          "buys": 5,
          "sells": 6,
          "totalTrades": 11,
          "balance": 967377541.354279,
          "costBasis": 2.48,
          "value": 0,
          "price": 0,
          "avgCost": 0,
          "totalBought": 31796306.208048,
          "totalSold": 64418764.853769004,
          "avgBuy": 9.65,
          "avgSell": 18.21,
          "firstBuy": 1779813188896,
          "lastBuy": 1779813195367,
          "firstSell": 1779813188038,
          "lastSell": 1779813194596,
          "firstTrade": 1779813188038,
          "lastTrade": 1779813195367,
          "holdTimeSecs": 26
        }
      },
      "identity": {
        "bot": {
          "name": "Mayhem Bot",
          "avatar": "https://kol-avatar.solanatracker.io/BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s"
        },
        "name": "Mayhem Bot",
        "avatar": "https://kol-avatar.solanatracker.io/BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s",
        "type": "bot",
        "tags": [
          "bot"
        ]
      }
    }
  ]
}

SDK Example

import { Client } from '@solana-tracker/data-api';

const client = new Client({ apiKey: 'YOUR_API_KEY' });

const data = await client.getTokenHolders('6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN');

Authorizations

x-api-key
string
header
required

API Key for authentication

Path Parameters

tokenAddress
string
required

Query Parameters

enrich
string

Optional enrichment modules. Use identity, walletPnl, identity,walletPnl, all, or *. When omitted, no extra enrichment work is done.

Example:

"all"

Response

200 - application/json

Successful response

total
integer
enrich
string[]

List of enrichment modules applied to this response. Omitted when enrichment is not requested.

accounts
object[]