# Extrinsics: list (all)

Every user-facing extrinsic on the Bittensor chain, grouped by pallet and purpose, with who can call it.

_Source: https://beta.taostats.io/docs/understanding-taostats/extrinsics/list-of-all-extrinsics_

_Last reviewed: 2026-10-05_

An extrinsic is a signed call to a function on the chain. This page lists the calls you see on Taostats, grouped by pallet (the runtime module that owns them) and by purpose. Each entry is shown as `Pallet.call` in the Taostats [extrinsics table](https://beta.taostats.io/docs/understanding-taostats/extrinsics/list-of-extrinsics).

The **Signed by** column shows which key has to sign:

* **coldkey** — the wallet that owns the stake or the subnet.
* **hotkey** — the validator or miner key registered on a subnet.
* **owner** — the subnet owner's coldkey. Root can call these calls too.
* **root** — the chain's root (sudo) origin only. Ordinary accounts can't call these calls.

A [proxy](https://beta.taostats.io/docs/understanding-taostats/extrinsics/proxy-extrinsics) can sign for a coldkey, but only for the calls its proxy type allows.

## SubtensorModule

The Bittensor pallet. It handles staking, registration, weights, keys and subnets.

### Staking

| Call | Signed by | What it does |
| --- | --- | --- |
| `add_stake` | coldkey | Swaps TAO for a subnet's alpha and stakes it to a hotkey. No price limit. |
| `add_stake_limit` | coldkey | `add_stake` with a limit price. The stake fails or partially fills if the price would pass the limit. |
| `remove_stake` | coldkey | Unstakes alpha from a hotkey and swaps it back to TAO. No price limit. |
| `remove_stake_limit` | coldkey | `remove_stake` with a limit price. |
| `remove_stake_full_limit` | coldkey | Unstakes everything from one hotkey on one subnet, with a limit price. |
| `unstake_all` | coldkey | Unstakes everything from a hotkey on every subnet, back to TAO. |
| `unstake_all_alpha` | coldkey | Moves everything staked to a hotkey on every subnet into root stake. |
| `move_stake` | coldkey | Moves stake from one hotkey to another. The two hotkeys can be on different subnets. |
| `move_stake_limit` | coldkey | `move_stake` with a price limit when the subnets differ. |
| `swap_stake` | coldkey | Moves stake from one subnet to another on the same hotkey. |
| `swap_stake_limit` | coldkey | `swap_stake` with a limit price. |
| `transfer_stake` | coldkey | Gives stake to another coldkey. The stake stays on the same hotkey. |
| `transfer_stake_and_hotkey` | coldkey | Gives stake to another coldkey and lands it on a different hotkey. |
| `add_stake_burn` | coldkey | Buys alpha with TAO and burns it in one step. |
| `recycle_alpha` | coldkey | Recycles alpha, reducing the subnet's alpha outstanding. |
| `burn_alpha` | coldkey | Burns alpha without reducing the subnet's alpha outstanding. |
| `set_coldkey_auto_stake_hotkey` | coldkey | Sets the hotkey that the coldkey's future rewards are staked to. |
| `set_reject_locked_alpha` | coldkey | Sets whether the coldkey refuses incoming locked alpha. Coldkeys refuse it by default. |

The minimum stake for a staking call is 2,000,000 rao (0.002 TAO). A call that swaps to zero is rejected with `AmountTooLow`.

### Conviction locks

See [Conviction](https://beta.taostats.io/docs/concepts/chain-runtime/conviction-v2).

| Call | Signed by | What it does |
| --- | --- | --- |
| `lock_stake` | coldkey | Locks stake on a subnet to a hotkey, which builds conviction over time. |
| `move_lock` | coldkey | Moves an existing lock to another hotkey on the same subnet. |
| `set_perpetual_lock` | coldkey | Sets or clears the perpetual flag for the coldkey's lock on a subnet. Locks decay by default. A perpetual lock doesn't decay. |

### Root stake and validator baskets

| Call | Signed by | What it does |
| --- | --- | --- |
| `claim_root` | coldkey | Claims the coldkey's root emissions from every validator it stakes to on root. |
| `claim_root_with_hotkey` | coldkey | Claims the coldkey's root emissions from one validator. |
| `stake_into_basket` | coldkey | Stakes TAO from the caller's balance directly into a validator's basket. |
| `swap_basket` | coldkey | The validator rebalances its basket: sells one subnet holding for TAO and buys another. |
| `swap_basket_many` | coldkey | Rebalances several basket legs in one atomic call. |
| `set_auto_parent_delegation_enabled` | coldkey | A root validator turns auto parent delegation on or off. It is on by default. |

### Registration

| Call | Signed by | What it does |
| --- | --- | --- |
| `burned_register` | coldkey | Registers a hotkey on a subnet by paying the current registration cost. |
| `register_limit` | coldkey | `burned_register`, but only if the cost in this block is at or below your limit. |
| `register` | coldkey | Registers a hotkey on a subnet by paying the current registration cost. Proof of work has been removed, so the PoW arguments are ignored. |
| `root_register` | coldkey | Registers a hotkey on root. |
| `register_network` | coldkey | Registers a new subnet. |
| `register_network_with_identity` | coldkey | Registers a new subnet and sets its identity in the same call. |
| `register_leased_network` | coldkey | Registers a subnet from a successful crowdloan, as a lease. |
| `terminate_lease` | coldkey | The lease beneficiary takes ownership of the subnet after the lease ends. |

### Miner collateral

See [Miner collateral](https://beta.taostats.io/docs/concepts/chain-runtime/miner-collateral).

| Call | Signed by | What it does |
| --- | --- | --- |
| `add_collateral` | coldkey | Locks more alpha as collateral on the signer's own hotkey. |
| `set_min_collateral` | coldkey | Sets the collateral floor for the signer's hotkey on a subnet. |

### Weights

Commit Reveal is on by default for every subnet, and the chain rejects `set_weights` on a subnet where it is on. See [Commit Reveal](https://beta.taostats.io/docs/concepts/chain-runtime/commit-reveal-30).

| Call | Signed by | What it does |
| --- | --- | --- |
| `commit_timelocked_weights` | hotkey | Commits timelock-encrypted weights. The chain decrypts and applies them when the reveal round arrives. |
| `commit_timelocked_mechanism_weights` | hotkey | `commit_timelocked_weights` for one [mechanism](https://beta.taostats.io/docs/concepts/subnets/subnet-mechanisms) of a subnet. |
| `commit_crv3_mechanism_weights` | hotkey | Older name for `commit_timelocked_mechanism_weights`. Both work. |
| `set_weights` | hotkey | Sets weights directly. Only works on a subnet with Commit Reveal off. |
| `set_mechanism_weights` | hotkey | `set_weights` for one mechanism. |
| `batch_set_weights` | hotkey | `set_weights` for several subnets at once. |
| `commit_weights` | hotkey | Commits a hash of weights to reveal later. Hash-based commit-reveal. |
| `reveal_weights` | hotkey | Reveals weights committed with `commit_weights`. |
| `commit_mechanism_weights` | hotkey | `commit_weights` for one mechanism. |
| `reveal_mechanism_weights` | hotkey | `reveal_weights` for one mechanism. |
| `batch_commit_weights` | hotkey | `commit_weights` for several subnets at once. |
| `batch_reveal_weights` | hotkey | Reveals several commits at once. |

### Validators, delegation and child hotkeys

| Call | Signed by | What it does |
| --- | --- | --- |
| `increase_take` | coldkey | Raises a validator's delegate take. Rate-limited. |
| `decrease_take` | coldkey | Lowers a validator's delegate take. |
| `set_children` | coldkey | Sets the [child hotkeys](https://beta.taostats.io/docs/concepts/validators/child-hotkeys) for a hotkey on a subnet. |
| `set_childkey_take` | coldkey | Sets a child hotkey's take. |
| `serve_axon` | hotkey | Publishes the neuron's IP address and port. |
| `serve_axon_tls` | hotkey | `serve_axon` with a TLS certificate. |
| `serve_prometheus` | hotkey | Publishes the neuron's Prometheus endpoint. |

### Keys and identity

| Call | Signed by | What it does |
| --- | --- | --- |
| `announce_coldkey_swap` | coldkey | Announces a coldkey swap by posting the hash of the new coldkey. See [Coldkeys](https://beta.taostats.io/docs/concepts/wallets-accounts/coldkeys). |
| `swap_coldkey_announced` | coldkey | Carries out an announced swap once the delay has passed. |
| `dispute_coldkey_swap` | coldkey | Disputes a swap you didn't announce. This freezes the coldkey until root resets it. |
| `clear_coldkey_swap_announcement` | coldkey | Cancels an undisputed announcement after the re-announce delay. |
| `swap_hotkey_v2` | coldkey | Replaces a hotkey with a new one, on one subnet or all of them. |
| `swap_hotkey` | coldkey | Older form of `swap_hotkey_v2`. It is deprecated and still works. |
| `try_associate_hotkey` | coldkey | Associates a hotkey with the coldkey. |
| `associate_evm_key` | hotkey | Associates an EVM address with a hotkey. |
| `set_identity` | coldkey | Sets the on-chain identity of a coldkey. |
| `set_subnet_identity` | owner | Sets the identity of a subnet. |

### Subnet owner calls

| Call | Signed by | What it does |
| --- | --- | --- |
| `start_call` | owner | Starts emissions on a newly registered subnet once the start delay has passed. |
| `update_symbol` | owner | Changes the subnet's token symbol. |
| `trigger_epoch` | owner | Schedules an epoch to run after the admin freeze window. Rate-limited. |
| `sudo_set_root_claim_threshold` | owner | Sets the dust threshold for root claims. |
| `enable_voting_power_tracking` | owner | Turns on voting-power tracking for the subnet. |
| `disable_voting_power_tracking` | owner | Schedules voting-power tracking to turn off. |

Subnet owners change hyperparameters through `AdminUtils`. See [below](#adminutils).

### Root-only calls

These calls appear on Taostats only when root makes them: `dissolve_network`, `root_dissolve_network`, `swap_coldkey`, `reset_coldkey_swap`, `set_pending_childkey_cooldown`, `sudo_set_tx_childkey_take_rate_limit`, `sudo_set_min_childkey_take`, `sudo_set_max_childkey_take` and `sudo_set_voting_power_ema_alpha`.

### Deprecated calls

These calls still exist so that old call indexes stay stable, but they don't do anything useful:

* `schedule_swap_coldkey` fails with `Deprecated`. Use `announce_coldkey_swap`.
* `set_tempo` and `set_activity_cutoff_factor` charge a fee, succeed and change nothing. Use `AdminUtils.sudo_set_tempo` and `AdminUtils.sudo_set_activity_cutoff_factor`.
* `faucet` fails with `FaucetDisabled`.

## AdminUtils

Hyperparameter setters. Each call starts with `sudo_set_`. Subnet owners can call some of them for their own subnet, inside the admin window and subject to a rate limit. The rest are root-only. See [Subnet parameters](https://beta.taostats.io/docs/concepts/subnets/subnet-parameters) for what each parameter does.

| Callable by the subnet owner | Root only (examples) |
| --- | --- |
| `sudo_set_tempo`, `sudo_set_activity_cutoff_factor` | `sudo_set_kappa`, `sudo_set_max_allowed_validators` |
| `sudo_set_immunity_period`, `sudo_set_max_allowed_uids`, `sudo_set_min_allowed_weights` | `sudo_set_network_registration_allowed`, `sudo_set_target_registrations_per_interval` |
| `sudo_set_min_burn`, `sudo_set_max_burn`, `sudo_set_burn_half_life`, `sudo_set_burn_increase_mult` | `sudo_set_subnet_owner_cut`, `sudo_set_network_min_lock_cost` |
| `sudo_set_commit_reveal_weights_enabled`, `sudo_set_commit_reveal_weights_interval` | `sudo_set_commit_reveal_version`, `sudo_set_weights_set_rate_limit` |
| `sudo_set_weights_version_key`, `sudo_set_serving_rate_limit` | `sudo_set_default_take`, `sudo_set_min_delegate_take` |
| `sudo_set_liquid_alpha_enabled`, `sudo_set_alpha_values`, `sudo_set_alpha_sigmoid_steepness` | `sudo_set_emission_bar_rank`, `sudo_set_emission_bar_quantile`, `sudo_set_emission_gate_exponent` |
| `sudo_set_bonds_moving_average`, `sudo_set_bonds_penalty`, `sudo_set_bonds_reset_enabled`, `sudo_set_yuma3_enabled` | `sudo_set_max_mechanism_count`, `sudo_set_coldkey_swap_announcement_delay` |
| `sudo_set_mechanism_count`, `sudo_set_mechanism_emission_split` | `sudo_set_basket_trading_enabled` and the other `sudo_set_basket_*` limits |
| `sudo_set_toggle_transfer`, `sudo_set_recycle_or_burn`, `sudo_set_owner_cut_enabled` | `sudo_toggle_evm_precompile`, `sudo_set_evm_chain_id` |
| `sudo_set_collateral_lock_share`, `sudo_set_collateral_drain_ratio` | `sudo_set_admin_freeze_window`, `sudo_set_owner_hparam_rate_limit` |
| `sudo_set_sn_owner_hotkey`, `sudo_set_owner_immune_neuron_limit`, `sudo_trim_to_max_allowed_uids` | `swap_authorities`, `schedule_grandpa_change` |

## Balances

| Call | Signed by | What it does |
| --- | --- | --- |
| `transfer_allow_death` | coldkey | Sends TAO. The sending account can be emptied and reaped. |
| `transfer_keep_alive` | coldkey | Sends TAO, but fails if it would take the sender below the existential deposit. |
| `transfer_all` | coldkey | Sends the whole free balance. `keep_alive` decides whether the account is kept open. |

## Other pallets

| Pallet | Calls you'll see | Notes |
| --- | --- | --- |
| `Proxy` | `proxy`, `add_proxy`, `remove_proxy`, `create_pure`, `announce` | See [Proxy extrinsics](https://beta.taostats.io/docs/understanding-taostats/extrinsics/proxy-extrinsics). |
| `Multisig` | `as_multi`, `approve_as_multi`, `cancel_as_multi` | See [Multisig extrinsics](https://beta.taostats.io/docs/understanding-taostats/extrinsics/multisig-extrinsics). |
| `Utility` | `batch`, `batch_all`, `force_batch` | See [Batch extrinsics](https://beta.taostats.io/docs/understanding-taostats/extrinsics/batch-extrinsics). |
| `MevShield` | `submit_encrypted` | Sends an encrypted transaction that the block producer decrypts and includes. `announce_next_key` is an inherent added to every block. See [MEV shield](https://beta.taostats.io/docs/concepts/chain-runtime/mev-shield). |
| `LimitOrders` | `execute_orders`, `execute_batched_orders`, `cancel_order` | Signed limit orders. Relayers submit them, and the order's signer can cancel. |
| `Crowdloan` | `create`, `contribute`, `withdraw`, `finalize`, `refund`, `dissolve` | Raises TAO, usually to register a subnet as a lease. |
| `Commitments` | `set_commitment` | Stores data that a hotkey publishes for a subnet. |
| `Swap` | `set_fee_rate` (root) | The liquidity-provider calls (`add_liquidity`, `remove_liquidity`, `modify_position`) are deprecated. |
| `Ethereum`, `EVM` | `transact`, `call` | EVM transactions. See [EVM contracts](https://beta.taostats.io/docs/concepts/chain-runtime/evm-contracts). |

> [!NOTE]
> Previously this page listed a few calls with sample JSON, including `set_root_weights` and `schedule_coldkey_swap`. Neither does anything now. To see a real example of any call, open it on Taostats. See [Extrinsic detail](https://beta.taostats.io/docs/understanding-taostats/extrinsics/extrinsics-detail).
