GET
/api/v1/hyperliquid/whale-positions/by-coin/{coin}Standard tier+ · 300 req/minEvery whale position for a single coin, ranked by USD size.
Drill into who's holding what for a specific coin. Returns the full ordered list plus a small summary (long/short totals, net bias, participant counts).
Path parameters
Segments of the URL path, validated server-side.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| coin | string | required | — | Base asset code (BTC, ETH, SOL, …). |
Query parameters
All query parameters are optional unless marked required.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| limit | number | optional | 100 | Max positions in the response. Max 500. |
Response shape
Always wrapped in the standard envelope. Nullable fields are explicitly marked — treat missing numeric data as a real data-source gap, not as an error.
data payloadtypescript
// Wrapped in the standard envelope:
// {
// data: /* shape below */,
// meta?: { total?: number; limit?: number; offset?: number; ... }
// }
{
coin: string;
positions: Array<WhalePosition>;
summary: {
count: number;
totalSizeUsd: number;
longSizeUsd: number;
shortSizeUsd: number;
netSizeUsd: number;
longCount: number;
shortCount: number;
};
}Example
Copy the curl, replace YOUR_KEY with a real key from your dashboard, and run.
Requestbash
curl -sS "http://localhost:3000/api/v1/hyperliquid/whale-positions/by-coin/BTC"Responsejson
{ "data": { "coin": "BTC", "positions": [], "summary": { "count": 0, "totalSizeUsd": 0, "longSizeUsd": 0, "shortSizeUsd": 0, "netSizeUsd": 0, "longCount": 0, "shortCount": 0 } }, "meta": { "total": 0, "coin": "BTC", "limit": 100 } }Next
Check the error code reference, or get an API key to try the request against your own account.