# Useful Commands

## Key management

**Add new key**

```
desmos keys add <key_name>
```

**Recover existing key**

```
desmos keys add <key_name> --recover
```

**List of all keys**

```
desmos keys list
```

## Save chain-id configuration

```
desmos config chain-id desmos-mainnet
```

## Tokens and Staking

**Send tokens from `key_name` to `destination_address`**

```
desmos tx bank send <key_name> <destination_address> <amount>udsm --from <key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y 
```

**Delegate tokens to `validator_address`**

```
desmos tx staking delegate <validator_address> <amount>udsm --from <key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y 
```

**Redelegate tokens from `validator_address` to `new_validator_address`**

<pre><code><strong>desmos tx staking redelegate &#x3C;validator_address> &#x3C;new_validator_address> &#x3C;amount>udsm --from &#x3C;key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y 
</strong></code></pre>

**Unbond tokens from `validator_address`**

<pre><code><strong>desmos tx staking unbond &#x3C;validator_address> &#x3C;amount>udsm --from &#x3C;key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y
</strong></code></pre>

**Withdraw staking rewards from all validators**

```
desmos tx distribution withdraw-all-rewards --from <key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y
```

**Withdraw commission and rewards from your validator**

```
desmos tx distribution withdraw-rewards <your_validator_address> --commission --from <key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y
```

## Governance

**Vote `yes/no/no_with_veto/abstain` on proposal**

```
desmos tx gov vote <proposal_id> <voting_option> --commission --from <key_name> --gas-prices 0.001udsm --gas-adjustment 1.5 --gas auto -y
```
