# owned-hotkeys (/docs/query/owned-hotkeys)

**Category:** Neurons & registration

## Parameters [#parameters]

| Parameter      | Type   | Description                    |
| -------------- | ------ | ------------------------------ |
| `coldkey_ss58` | string | Coldkey whose hotkeys to list. |

## CLI [#cli]

```bash
btcli query owned-hotkeys --coldkey <ss58|name> --json
```

## Python [#python]

Namespace method (autocomplete, signature help):

```python
import bittensor as bt

sub = bt.Subtensor()
result = sub.neurons.owned_hotkeys(coldkey_ss58="5F...")
```

Or dispatch by name, as an agent would:

```python
result = sub.read("owned_hotkeys", coldkey_ss58="5F...")
```

Async is the same surface awaited: `async with bt.Subtensor() as client:`.

## On-chain implementation [#on-chain-implementation]

* Storage [`SubtensorModule.OwnedHotkeys`](/code/pallets/subtensor/src/lib.rs#L1559)

Every file is browsable under [/code](/code) exactly as built into the runtime.
