# hotkey-identities (/docs/query/hotkey-identities)

**Category:** Identity & commitments

## Parameters [#parameters]

| Parameter      | Type  | Description                        |
| -------------- | ----- | ---------------------------------- |
| `hotkey_ss58s` | array | Hotkeys to resolve identities for. |

## CLI [#cli]

```bash
btcli query hotkey-identities --hotkeys <array> --json
```

## Python [#python]

Namespace method (autocomplete, signature help):

```python
import bittensor as bt

sub = bt.Subtensor()
result = sub.identity.hotkey_identities(hotkey_ss58s=[...])
```

Or dispatch by name, as an agent would:

```python
result = sub.read("hotkey_identities", hotkey_ss58s=[...])
```

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

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

* Storage [`SubtensorModule.Owner`](/code/pallets/subtensor/src/lib.rs#L1347)
* Storage [`SubtensorModule.IdentitiesV2`](/code/pallets/subtensor/src/lib.rs#L2567)

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