# Get dTAO Stake Balance

Returns the latest staking balances by coldkey, hotkey and subnet, including their TAO equivalents.

_Source: https://beta.taostats.io/docs/api-reference/stake-balance/get-stake-balance-latest_

_Last reviewed: 2026-09-18_

```http
GET https://api.taostats.io/api/dtao/stake_balance/latest/v1
```

Requires an API key in the `Authorization` header.

Returns the latest staking balances by coldkey, hotkey and subnet, including their TAO equivalents.

## Try it

Try this request in the browser on the HTML version of this page, or use the code samples below.

### Examples

Get the current alpha stake balance for a single wallet

```text
https://api.taostats.io/api/dtao/stake_balance/latest/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n
```

List the top 10 holders in subnet 19 by alpha balance

```text
https://api.taostats.io/api/dtao/stake_balance/latest/v1?netuid=19&order=balance_desc&limit=10
```

Find all alpha stakes in subnet 19 over 1,000 alpha

```text
https://api.taostats.io/api/dtao/stake_balance/latest/v1?netuid=19&balance_min=1000000000000&order=balance_desc&limit=50
```

### Code samples

**cURL**

```bash
curl -H "Authorization: <YOUR_API_KEY>" \
  "https://api.taostats.io/api/dtao/stake_balance/latest/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n"
```

**JavaScript**

```js
const response = await fetch('https://api.taostats.io/api/dtao/stake_balance/latest/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n', {
  headers: {
    Authorization: '<YOUR_API_KEY>',
  },
});
const data = await response.json();
```

**Python**

```python
import requests

response = requests.get(
    "https://api.taostats.io/api/dtao/stake_balance/latest/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n",
    headers={"Authorization": "<YOUR_API_KEY>"},
)
data = response.json()
```

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `coldkey` | query | `string` |  | SS58 or hex format |
| `hotkey` | query | `string` |  | SS58 or hex format |
| `netuid` | query | `integer (int32)` |  | Subnet |
| `balance_min` | query | `string` |  | in nanoAlpha |
| `balance_max` | query | `string` |  | in nanoAlpha |
| `balance_as_tao_min` | query | `string` |  | in rao |
| `balance_as_tao_max` | query | `string` |  | as rao |
| `page` | query | `integer (int32)` |  | The page number of the response. |
| `limit` | query | `integer (int32)` |  | The number of responses. max is 200, |
| `order` | query | `string` |  | One of `netuid_asc`, `netuid_desc`, `subnet_rank_asc`, `subnet_rank_desc`, `balance_asc`, `balance_desc`, `balance_as_tao_asc`, `balance_as_tao_desc`. |

## Responses

### `200` — Stake balances retrieved successfully

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `data` | `array` | Yes |  |
| `data[].balance` | `string` | Yes |  |
| `data[].balance_as_tao` | `string` | Yes |  |
| `data[].block_number` | `integer (int32)` | Yes |  |
| `data[].coldkey` | `object` | Yes |  |
| `data[].coldkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].coldkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].hotkey` | `object` | Yes |  |
| `data[].hotkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].hotkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].hotkey_name` | `string, nullable` |  |  |
| `data[].netuid` | `integer (int32)` | Yes |  |
| `data[].subnet_rank` | `integer (int32)` | Yes |  |
| `data[].subnet_total_holders` | `integer (int32)` | Yes |  |
| `data[].timestamp` | `string (date-time)` | Yes |  |
| `pagination` | `object` | Yes |  |
| `pagination.current_page` | `integer (int32)` | Yes |  |
| `pagination.next_page` | `integer (int32), nullable` |  |  |
| `pagination.per_page` | `integer (int32)` | Yes |  |
| `pagination.prev_page` | `integer (int32), nullable` |  |  |
| `pagination.total_items` | `integer (int32)` | Yes |  |
| `pagination.total_pages` | `integer (int32)` | Yes |  |

**Example response**

```json
{
  "data": [
    {
      "balance": "13728596610703",
      "balance_as_tao": "13728596610703",
      "block_number": 5373764,
      "coldkey": {
        "hex": "0xff65514f004c0bc475af33c478c36c2fe74c7e3d107937a0b74e781de7d4cfa1",
        "ss58": "5HqaAYanMmQUh6agtnsXeWcHJDsoBF4eWwAkUPV7WEG3zZqW"
      },
      "hotkey": {
        "hex": "0x20b0f8ac1d5416d32f5a552f98b570f06e8392ccb803029e04f63fbe0553c954",
        "ss58": "5CoZxgtfhcJKX2HmkwnsN18KbaT9aih9eF3b6qVPTgAUbifj"
      },
      "hotkey_name": "TAO.app",
      "netuid": 0,
      "subnet_rank": 86,
      "subnet_total_holders": 42535,
      "timestamp": "2025-04-17T21:06:24.001Z"
    },
    {
      "balance": "8969717622045",
      "balance_as_tao": "8969717622045",
      "block_number": 5373764,
      "coldkey": {
        "hex": "0x7a9cbd27dd53d8020edb9db0a18c7603d12f8b64db91da1ce2d3909071a29656",
        "ss58": "5EqUG3oUuzT5siNv5bSE9PKzqp8t2ehYEX7SeEjTjymuJS9W"
      },
      "hotkey": {
        "hex": "0x82cca2238d379e49d84e9e1b8df35dd496d6a8b4ca4f511ac9e38fa04d42f86b",
        "ss58": "5F2CsUDVbRbVMXTh9fAzF9GacjVX7UapvRxidrxe7z8BYckQ"
      },
      "hotkey_name": "Rizzo (Insured)",
      "netuid": 0,
      "subnet_rank": 122,
      "subnet_total_holders": 42535,
      "timestamp": "2025-04-17T21:06:24.001Z"
    }
  ],
  "pagination": {
    "current_page": 1,
    "next_page": 2,
    "per_page": 50,
    "prev_page": null,
    "total_items": 115756,
    "total_pages": 2316
  }
}
```

**Response details**

```text
 {
      "block_number": 5453657,
      "timestamp": "2025-04-28T23:25:00.001Z",
      "hotkey_name": "TAO.app",
      "hotkey": {
        "ss58": "5CoZxgtfhcJKX2HmkwnsN18KbaT9aih9eF3b6qVPTgAUbifj",
        "hex": "0x20b0f8ac1d5416d32f5a552f98b570f06e8392ccb803029e04f63fbe0553c954"
      },
      "coldkey": {
        "ss58": "5HqaAYanMmQUh6agtnsXeWcHJDsoBF4eWwAkUPV7WEG3zZqW",
        "hex": "0xff65514f004c0bc475af33c478c36c2fe74c7e3d107937a0b74e781de7d4cfa1"
      },
      "netuid": 0,
      "subnet_rank": 88, wallet rank in subnet
      "subnet_total_holders": 42984, total holders in subnet
      "balance": "13797839517232", alpha balance as rao
      "balance_as_tao": "13797839517232" tao balance as rao
    },
```

### Other responses

| Status | Meaning |
| --- | --- |
| `400` | Bad request |
| `404` | Stake balances not found |
| `500` | Internal server error |

Every request needs an `Authorization` header holding your API key — see [Getting started with the Taostats API](https://beta.taostats.io/docs/start-here/getting-started-with-taostats-api).
