# delegate-take (/docs/query/delegate-take)

`take`, `min`, and `max` are fractions in 0..1; `take_u16` is the raw
on-chain u16 value.

**Category:** Delegation

## Parameters [#parameters]

| Parameter     | Type   | Description                         |
| ------------- | ------ | ----------------------------------- |
| `hotkey_ss58` | string | Delegate hotkey whose take to read. |

## CLI [#cli]

```bash
btcli query delegate-take --hotkey <ss58|name> --json
```

## Python [#python]

Namespace method (autocomplete, signature help):

```python
import bittensor as bt

sub = bt.Subtensor()
result = sub.delegation.delegate_take(hotkey_ss58="5F...")
```

Or dispatch by name, as an agent would:

```python
result = sub.read("delegate_take", hotkey_ss58="5F...")
```

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

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

* Storage [`SubtensorModule.Delegates`](/code/pallets/subtensor/src/lib.rs#L1357)
* Storage [`SubtensorModule.MinDelegateTake`](/code/pallets/subtensor/src/lib.rs#L1330)
* Storage [`SubtensorModule.MaxDelegateTake`](/code/pallets/subtensor/src/lib.rs#L1326)

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