# Get Miner Coldkey

Returns mining activity and balance summaries grouped by coldkey.

_Source: https://beta.taostats.io/docs/api-reference/miner/get-miner-coldkey_

_Last reviewed: 2026-09-18_

```http
GET https://api.taostats.io/api/miner/coldkey/v1
```

Requires an API key in the `Authorization` header.

Returns mining activity and balance summaries grouped by coldkey. Records include hotkey counts, active subnets, mining emissions and hotkeys in danger or under immunity.

## Try it

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

### Examples

Get miner activity for a coldkey over the last 30 days

```text
https://api.taostats.io/api/miner/coldkey/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n&days=30
```

### Code samples

**cURL**

```bash
curl -H "Authorization: <YOUR_API_KEY>" \
  "https://api.taostats.io/api/miner/coldkey/v1?coldkey=5GH2aUTMRUh1RprCgH4x3tRyCaKeUi5BfmYCfs1NARA8R54n&days=30"
```

**JavaScript**

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

**Python**

```python
import requests

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

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `coldkey` | query | `string` | Yes | SS58 or hex format |
| `days` | query | `integer (int32)` | Yes |  |

## Responses

### `200` — Miner coldkey retrieved successfully

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `data` | `array` | Yes |  |
| `data[].active_subnets` | `integer (int32)` | Yes |  |
| `data[].alpha_balances` | `array` | Yes |  |
| `data[].alpha_balances[].balance` | `string` | Yes |  |
| `data[].alpha_balances[].balance_as_tao` | `string` | Yes |  |
| `data[].alpha_balances[].coldkey` | `string` | Yes |  |
| `data[].alpha_balances[].hotkey` | `string` | Yes |  |
| `data[].alpha_balances[].netuid` | `integer (int32)` | Yes |  |
| `data[].average_mining_emission_as_tao_per_hotkey` | `string` | 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[].free_balance` | `string` | Yes |  |
| `data[].hotkeys` | `array` | Yes |  |
| `data[].hotkeys[].alpha_balance` | `string` | Yes |  |
| `data[].hotkeys[].alpha_balance_as_tao` | `string` | Yes |  |
| `data[].hotkeys[].axon` | `string` | Yes |  |
| `data[].hotkeys[].coldkey` | `object` | Yes |  |
| `data[].hotkeys[].coldkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].hotkeys[].coldkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].hotkeys[].consensus` | `string` | Yes |  |
| `data[].hotkeys[].deregistered` | `boolean` | Yes |  |
| `data[].hotkeys[].deregistration_timestamp` | `string (date-time), nullable` |  |  |
| `data[].hotkeys[].emission` | `string` | Yes |  |
| `data[].hotkeys[].hotkey` | `object` | Yes |  |
| `data[].hotkeys[].hotkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].hotkeys[].hotkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].hotkeys[].immune` | `boolean` | Yes |  |
| `data[].hotkeys[].in_danger` | `boolean` | Yes |  |
| `data[].hotkeys[].incentive` | `string` | Yes |  |
| `data[].hotkeys[].mech_incentive` | `array` | Yes |  |
| `data[].hotkeys[].mech_incentive[]` | `string` | Yes |  |
| `data[].hotkeys[].miner_rank` | `integer (int32), nullable` |  |  |
| `data[].hotkeys[].netuid` | `integer (int32)` | Yes |  |
| `data[].hotkeys[].registration_block` | `integer (int32)` | Yes |  |
| `data[].hotkeys[].total_emission` | `string` | Yes |  |
| `data[].hotkeys[].total_emission_as_tao` | `string` | Yes |  |
| `data[].hotkeys[].trust` | `string` | Yes |  |
| `data[].hotkeys[].uid` | `integer (int32)` | Yes |  |
| `data[].hotkeys[].validator_rank` | `integer (int32), nullable` |  |  |
| `data[].total_active_hotkeys` | `integer (int32)` | Yes |  |
| `data[].total_balance` | `string` | Yes |  |
| `data[].total_deregistered_hotkeys` | `integer (int32)` | Yes |  |
| `data[].total_hotkeys_in_danger` | `integer (int32)` | Yes |  |
| `data[].total_hotkeys_in_danger_during_period` | `integer (int32)` | Yes |  |
| `data[].total_immune_hotkeys` | `integer (int32)` | Yes |  |
| `data[].total_immune_hotkeys_during_period` | `integer (int32)` | Yes |  |
| `data[].total_mining_emission_as_tao` | `string` | Yes |  |
| `data[].total_staked_balance_as_tao` | `string` | Yes |  |
| `data[].total_staked_mining_balance_as_tao` | `string` | Yes |  |
| `data[].total_staked_non_mining_balance_as_tao` | `string` | 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 |  |

### Other responses

| Status | Meaning |
| --- | --- |
| `400` | Bad request |
| `404` | Miner coldkey 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).
