# Get Parent/Child Hotkey Relationships

Returns the latest parent and child hotkey relationships and family stake totals within subnets.

_Source: https://beta.taostats.io/docs/api-reference/hotkey/get-hotkey-family-latest_

_Last reviewed: 2026-09-18_

```http
GET https://api.taostats.io/api/hotkey/family/latest/v1
```

Requires an API key in the `Authorization` header.

Returns the latest parent and child hotkey relationships and family stake totals within subnets. Records include Root and Alpha stake, delegation proportions and take values.

## Try it

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

### Examples

See the parent/child hotkey relationships for a validator

```text
https://api.taostats.io/api/hotkey/family/latest/v1?hotkey=5GKH9FPPnWSUoeeTJp19wVtd84XqFW4pyK2ijV2GsFbhTrP1&netuid=19
```

### Code samples

**cURL**

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

**JavaScript**

```js
const response = await fetch('https://api.taostats.io/api/hotkey/family/latest/v1?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/hotkey/family/latest/v1?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 ID |
| `page` | query | `integer (int32)` |  | The page number of the response. |
| `limit` | query | `integer (int32)` |  | The number of responses. max is 200, |

## Responses

### `200` — Hotkey family retrieved successfully

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `data` | `array` | Yes |  |
| `data[].alpha_stake` | `string` | Yes |  |
| `data[].block_number` | `integer (int32)` | Yes |  |
| `data[].childkey_take` | `string` | Yes |  |
| `data[].children` | `array` | Yes |  |
| `data[].children[].alpha_stake` | `string` | Yes |  |
| `data[].children[].childkey_take` | `string` | Yes |  |
| `data[].children[].coldkey` | `object` | Yes |  |
| `data[].children[].coldkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].children[].coldkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].children[].family_alpha_stake` | `string` | Yes |  |
| `data[].children[].family_root_stake` | `string` | Yes |  |
| `data[].children[].family_root_stake_as_alpha` | `string` | Yes |  |
| `data[].children[].family_stake` | `string` | Yes | Total stake including parent/child relationships |
| `data[].children[].family_total_alpha_stake` | `string` | Yes |  |
| `data[].children[].hotkey` | `object` | Yes |  |
| `data[].children[].hotkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].children[].hotkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].children[].proportion` | `string` | Yes | The proportion of the stake given to the child |
| `data[].children[].proportion_alpha_stake` | `string` | Yes |  |
| `data[].children[].proportion_root_stake` | `string` | Yes |  |
| `data[].children[].proportion_root_stake_as_alpha` | `string` | Yes |  |
| `data[].children[].proportion_staked` | `string` | Yes | The stake given to the child |
| `data[].children[].proportion_total_alpha_stake` | `string` | Yes |  |
| `data[].children[].root_stake` | `string` | Yes |  |
| `data[].children[].root_stake_as_alpha` | `string` | Yes |  |
| `data[].children[].root_weight` | `string` | Yes |  |
| `data[].children[].stake` | `string` | Yes | Total stake excluding parent/child relationships |
| `data[].children[].take` | `string` | Yes |  |
| `data[].children[].total_alpha_stake` | `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[].family_alpha_stake` | `string` | Yes |  |
| `data[].family_root_stake` | `string` | Yes |  |
| `data[].family_root_stake_as_alpha` | `string` | Yes |  |
| `data[].family_stake` | `string` | Yes | Total stake including parent/child relationships |
| `data[].family_total_alpha_stake` | `string` | 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 | The subnet ID |
| `data[].parents` | `array` | Yes |  |
| `data[].parents[].alpha_stake` | `string` | Yes |  |
| `data[].parents[].childkey_take` | `string` | Yes |  |
| `data[].parents[].coldkey` | `object` | Yes |  |
| `data[].parents[].coldkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].parents[].coldkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].parents[].family_alpha_stake` | `string` | Yes |  |
| `data[].parents[].family_root_stake` | `string` | Yes |  |
| `data[].parents[].family_root_stake_as_alpha` | `string` | Yes |  |
| `data[].parents[].family_stake` | `string` | Yes | Total stake including parent/child relationships |
| `data[].parents[].family_total_alpha_stake` | `string` | Yes |  |
| `data[].parents[].hotkey` | `object` | Yes |  |
| `data[].parents[].hotkey.hex` | `string` | Yes | The hex format of the hot key |
| `data[].parents[].hotkey.ss58` | `string` | Yes | The SS58 format of the hot key |
| `data[].parents[].proportion` | `string` | Yes | The proportion of the stake given to the child |
| `data[].parents[].proportion_alpha_stake` | `string` | Yes |  |
| `data[].parents[].proportion_root_stake` | `string` | Yes |  |
| `data[].parents[].proportion_root_stake_as_alpha` | `string` | Yes |  |
| `data[].parents[].proportion_staked` | `string` | Yes | The stake given to the child |
| `data[].parents[].proportion_total_alpha_stake` | `string` | Yes |  |
| `data[].parents[].root_stake` | `string` | Yes |  |
| `data[].parents[].root_stake_as_alpha` | `string` | Yes |  |
| `data[].parents[].root_weight` | `string` | Yes |  |
| `data[].parents[].stake` | `string` | Yes | Total stake excluding parent/child relationships |
| `data[].parents[].take` | `string` | Yes |  |
| `data[].parents[].total_alpha_stake` | `string` | Yes |  |
| `data[].root_stake` | `string` | Yes |  |
| `data[].root_stake_as_alpha` | `string` | Yes |  |
| `data[].root_weight` | `string` | Yes |  |
| `data[].stake` | `string` | Yes | Total stake excluding parent/child relationships |
| `data[].take` | `string` | Yes |  |
| `data[].timestamp` | `string (date-time)` | Yes |  |
| `data[].total_alpha_stake` | `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": 4336207,
      "childkey_take": "0",
      "children": [],
      "coldkey": {
        "hex": "0x66f52da79c66045c87ec8a1d727f49d37b0f19599bc128d3c4c10ba7eaf27e7f",
        "ss58": "5EPhaH98TGhTKaVe5esFfsud1szkC3BHJs7MmjwRcjRdkd86"
      },
      "family_stake": "1956921323",
      "hotkey": {
        "hex": "0xe4737064df4f83e540701110bd6c8c34433daed9c7c1c980dc8c5edf5cd6b47a",
        "ss58": "5HEF4s6BQWmJQxuPcNCyMfSVu2CH8KaPfB7hxbSc5V76RoNg"
      },
      "netuid": 0,
      "parents": [],
      "stake": "1956921323",
      "take": "0.17999542229343099107",
      "timestamp": "2024-11-24T14:25:48Z"
    },
    {
      "block_number": 4336207,
      "childkey_take": "0",
      "children": [],
      "coldkey": {
        "hex": "0xecc9c62dba2f0a90ca02538786da22d8157c2433d672d638ee3f45774ca85e45",
        "ss58": "5HRB6bsPYMW6VRkW2M8rTYGdfSDk52pDkMR4SNhpSmvR4wmd"
      },
      "family_stake": "17807068725",
      "hotkey": {
        "hex": "0x36113899d74a778dad2795be2b540910dbcbcc41a8abf703b591e4b3cb30fe24",
        "ss58": "5DHbZMcfoJETVRzM3M4HoXhzFGetrRitwKBVBRPYh2uJvgDR"
      },
      "netuid": 0,
      "parents": [],
      "stake": "17807068725",
      "take": "0.17999542229343099107",
      "timestamp": "2024-11-24T14:25:48Z"
    }
  ],
  "pagination": {
    "current_page": 1,
    "next_page": 2,
    "per_page": 50,
    "prev_page": null,
    "total_items": 4630,
    "total_pages": 93
  }
}
```

**Response details**

```text
 {
      "hotkey": {
        "ss58": "5F2CsUDVbRbVMXTh9fAzF9GacjVX7UapvRxidrxe7z8BYckQ",
        "hex": "0x82cca2238d379e49d84e9e1b8df35dd496d6a8b4ca4f511ac9e38fa04d42f86b"
      },
      "coldkey": {
        "ss58": "5CMEwRYLefRmtJg7zzRyJtcXrQqmspr9B1r1nKySDReA37Z1",
        "hex": "0x0c9c8ec969246de9771893dd7e89e5e70483e860c45359b3223cd01d598f0c7d"
      },
      "block_number": 5454180,
      "timestamp": "2025-04-29T01:09:36Z",
      "netuid": 1,
      "stake": "0",
      "family_stake": "0",
      "take": "0.08999771114671549554", as number
      "childkey_take": "0.08999771114671549554", as number
      "children": [],
      "parents": [
        {
          "hotkey": {
            "ss58": "5FFM6Nvvm78GqyMratgXXvjbqZPi7SHgSQ81nyS96jBuUWgt",
            "hex": "0x8cd280d43e4cf6501ae3b425583975ff63ce4d7470cf518074b5903ff375600e"
          },
          "coldkey": {
            "ss58": "5GyAMYSxde6x5hG8AHksoPHZZeum8GXk8sXisgADNn6CSi7Y",
            "hex": "0xd8f2e4fd7f807350f5188664c1831fa3d6872af51fdb660876af0eeea7a9aa55"
          },
          "stake": "0", in rao
          "family_stake": "0", in rao
          "take": "0.17999542229343099107", as number
          "childkey_take": "0",
          "proportion": "1",
          "proportion_staked": "0",
          "root_weight": "0.17999999999999999996", as number
          "root_stake": "34905835585091", as rao
          "alpha_stake": "56454414461", as rao
          "root_stake_as_alpha": "6283050405316.3799986037665766", as rao
          "total_alpha_stake": "6339504819777.3799986037665766", as rao
          "family_root_stake": "0", as rao
          "family_alpha_stake": "0", as rao
          "family_root_stake_as_alpha": "0.37999860376657659636",
          "family_total_alpha_stake": "0.37999860376657659636",
          "proportion_root_stake": "34905835585091",as rao
          "proportion_alpha_stake": "56454414461", as rao
          "proportion_root_stake_as_alpha": "6283050405316", as rao
          "proportion_total_alpha_stake": "6339504819777" as rao
        },
        {
          "hotkey": {
            "ss58": "5F27Eqz2PhyMtGMEce898x31DokNqRVxkm5AhDDe6rDGNvoY",
            "hex": "0x82b9ad19799ddb1bf0c237ee5f0c4726d5c2ad27d71d2c276ee20d31b5391c37"
          },
          "coldkey": {
            "ss58": "5GYXZBZoFA74nzAGg4R9omd2SfCDHiGufETtrLso6BRzv2p4",
            "hex": "0xc6292094723749e68a8a8adbb40029a94e18e704c44b9f2400d50f6f3d496f7b"
          },
          "stake": "0",
          "family_stake": "0",
          "take": "0.17999542229343099107", as number
          "childkey_take": "0",
          "proportion": "1",
          "proportion_staked": "0",
          "root_weight": "0.17999999999999999996", as number
          "root_stake": "29004429387691", as rao
          "alpha_stake": "123211789161", as rao
          "root_stake_as_alpha": "5220797289784.3799988398228245",as rao
          "total_alpha_stake": "5344009078945.3799988398228245", as rao
          "family_root_stake": "0",
          "family_alpha_stake": "0",
          "family_root_stake_as_alpha": "0.37999883982282449236",
          "family_total_alpha_stake": "0.37999883982282449236",
          "proportion_root_stake": "29004429387691",
          "proportion_alpha_stake": "123211789161",
          "proportion_root_stake_as_alpha": "5220797289784",
          "proportion_total_alpha_stake": "5344009078945"
        },
        {
          "hotkey": {
            "ss58": "5H66JLTYFWaHDtBtScE4X9f5WDjrBS1iGeXeRykPuH3SMyNh",
            "hex": "0xde3bf6047f6ee3cf426eded6fc9defe563c4d3429b5fdb6cda4127d24cf7742c"
          },
          "coldkey": {
            "ss58": "5C8JS6BJ2SqbwxvxtmZ9HWQ6wqPSNpxoKYpVS87bCnD4rcWk",
            "hex": "0x02be21535cb9b0b3a3e86c9cdb923cf87ef18caed5a754db42d9ca49e5e12729"
          },
          "stake": "0",
          "family_stake": "0",
          "take": "0.17999542229343099107",
          "childkey_take": "0",
          "proportion": "1",
          "proportion_staked": "0",
          "root_weight": "0.17999999999999999996",
          "root_stake": "717552",
          "alpha_stake": "91191378794",
          "root_stake_as_alpha": "129159.35999999999997129792",
          "total_alpha_stake": "91191507953.35999999999997130",
          "family_root_stake": "0",
          "family_alpha_stake": "0",
          "family_root_stake_as_alpha": "0.35999999999997129792",
          "family_total_alpha_stake": "0.35999999999997129792",
          "proportion_root_stake": "717552",
          "proportion_alpha_stake": "91191378794",
          "proportion_root_stake_as_alpha": "129159",
          "proportion_total_alpha_stake": "91191507953"
        }
      ],
      "root_weight": "0.17999999999999999996",
      "root_stake": "162117222637484",
      "alpha_stake": "15770304489972",
      "root_stake_as_alpha": "29181100074747.119993515311094",
      "total_alpha_stake": "44951404564719.119993515311094",
      "family_root_stake": "226027488327818",
      "family_alpha_stake": "16041162072388",
      "family_root_stake_as_alpha": "40684947899006.119993515311094",
      "family_total_alpha_stake": "56726109971394.119993515311094"
    },
```

### Other responses

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