# Get Current Validator Weights

Returns the latest validator weight vectors by hotkey and subnet in the v2 format.

_Source: https://beta.taostats.io/docs/api-reference/validator/get-validator-weights-latest-v2_

_Last reviewed: 2026-09-18_

```http
GET https://api.taostats.io/api/validator/weights/latest/v2
```

Requires an API key in the `Authorization` header.

Returns the latest validator weight vectors by hotkey and subnet in the v2 format. The v2 format identifies weighted neurons by both UID and hotkey.

## Try it

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

### Examples

Get a validator's current weight vector in subnet 19

```text
https://api.taostats.io/api/validator/weights/latest/v2?hotkey=5GKH9FPPnWSUoeeTJp19wVtd84XqFW4pyK2ijV2GsFbhTrP1&netuid=19
```

### Code samples

**cURL**

```bash
curl -H "Authorization: <YOUR_API_KEY>" \
  "https://api.taostats.io/api/validator/weights/latest/v2?hotkey=5GKH9FPPnWSUoeeTJp19wVtd84XqFW4pyK2ijV2GsFbhTrP1&netuid=19"
```

**JavaScript**

```js
const response = await fetch('https://api.taostats.io/api/validator/weights/latest/v2?hotkey=5GKH9FPPnWSUoeeTJp19wVtd84XqFW4pyK2ijV2GsFbhTrP1&netuid=19', {
  headers: {
    Authorization: '<YOUR_API_KEY>',
  },
});
const data = await response.json();
```

**Python**

```python
import requests

response = requests.get(
    "https://api.taostats.io/api/validator/weights/latest/v2?hotkey=5GKH9FPPnWSUoeeTJp19wVtd84XqFW4pyK2ijV2GsFbhTrP1&netuid=19",
    headers={"Authorization": "<YOUR_API_KEY>"},
)
data = response.json()
```

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `hotkey` | query | `string` |  | SS58 or hex format |
| `netuid` | query | `integer (int32)` |  | Subnet |
| `uid` | query | `integer (int32)` |  | uid of neuron |
| `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`, `uid_asc`, `uid_desc`. |

## Responses

### `200` — Validator weights retrieved successfully

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `data` | `array` | Yes |  |
| `data[].block_number` | `integer (int32)` | Yes |  |
| `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[].netuid` | `integer (int32)` | Yes |  |
| `data[].timestamp` | `string (date-time)` | Yes |  |
| `data[].uid` | `integer (int32), nullable` |  |  |
| `data[].weights` | `array` | Yes |  |
| `data[].weights[].hotkey` | `object` | Yes |  |
| `data[].weights[].hotkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].weights[].hotkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].weights[].uid` | `integer (int32)` | Yes |  |
| `data[].weights[].weight` | `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 |  |

**Example response**

```json
{
  "data": [
    {
      "block_number": 5457532,
      "hotkey": {
        "hex": "0x5063a3000daa02d892617cda479bc20bb8acf430a8cb167e653c5395b9d4f834",
        "ss58": "5Dt7HZ7Zpw4DppPxFM7Ke3Cm7sDAWhsZXmM5ZAmE7dSVJbcQ"
      },
      "netuid": 64,
      "timestamp": "2025-04-29T12:20:00.001Z",
      "uid": 1,
      "weights": [
        {
          "hotkey": {
            "hex": "0x3c51398936c1494a7c4e4459587c5cffd395e4db12d7df47c6d01c9a8cd51b4a",
            "ss58": "5DRnrn3Nj14r4ptXerpcvMYjFoLNk2Axt91a1uKLst5QbyaW"
          },
          "uid": 0,
          "weight": "0.00723277637903410391"
        },
        {
          "hotkey": {
            "hex": "0x5063a3000daa02d892617cda479bc20bb8acf430a8cb167e653c5395b9d4f834",
            "ss58": "5Dt7HZ7Zpw4DppPxFM7Ke3Cm7sDAWhsZXmM5ZAmE7dSVJbcQ"
          },
          "uid": 1,
          "weight": "0.0176699473563744564"
        }
      ]
    }
  ],
  "pagination": {
    "current_page": 1,
    "next_page": null,
    "per_page": 50,
    "prev_page": null,
    "total_items": 1,
    "total_pages": 1
  }
}
```

**Response details**

```text
        {
          "uid": 119,
          "hotkey": {
            "ss58": "5EXF3wkmQZmdmSGUfNHL7ss5eXE6MQJXXsgyjKntjfgJaQS8",
            "hex": "0x6cb5db705bea3e18207e5c5ad521c05e244822507924b680bf4c5e2dc40fca71"
          },
          "weight": "0.37581445029373617151"
        },
```

### Other responses

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