Useful Commands

Add new key

lavad keys add wallet

Recover existing key

lavad keys add wallet --recover

List all keys

lavad keys list

Delete key

lavad keys delete wallet

Query wallet balance

lavad q bank balances $(lavad keys show wallet -a)

Create new validator

lavad tx staking create-validator \
--amount 1000000ulava \
--pubkey $(lavad tendermint show-validator) \
--moniker "YOUR_MONIKER_NAME" \
--identity "YOUR_KEYBASE_ID" \
--details "YOUR_DETAILS" \
--website "YOUR_WEBSITE_URL" \
--chain-id lava-mainnet-1 \
--commission-rate 0.05 \
--commission-max-rate 0.20 \
--commission-max-change-rate 0.01 \
--min-self-delegation 1 \
--from wallet \
--gas-adjustment 1.4 \
--gas auto \
--gas-prices 0.000000001ulava \
-y

Edit validator

lavad tx staking edit-validator \
--new-moniker "YOUR_MONIKER_NAME" \
--identity "YOUR_KEYBASE_ID" \
--details "YOUR_DETAILS" \
--website "YOUR_WEBSITE_URL" \
--chain-id lava-mainnet-1 \
--commission-rate 0.05 \
--from wallet \
--gas-adjustment 1.4 \
--gas auto \
--gas-prices 0.000000001ulava \
-y

Unjail validator

lavad tx slashing unjail --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

Jail reason

lavad query slashing signing-info $(lavad tendermint show-validator)

List all active validators

lavad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl

List all inactive validators

lavad q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl

Withdraw rewards from all validators

lavad tx distribution withdraw-all-rewards --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

Withdraw commission and rewards from your validator

lavad tx distribution withdraw-rewards $(lavad keys show wallet --bech val -a) --commission --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

Delegate to yourself

lavad tx staking delegate $(lavad keys show wallet --bech val -a) 1000000ulava --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.6 --gas auto --gas-prices 0.000000001ulava -y

Delegate tokens to validator

lavad tx staking delegate <TO_VALOPER_ADDRESS> 1000000ulava --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.6 --gas auto --gas-prices 0.000000001ulava -y

Redelegate tokens to another validator

lavad tx staking redelegate $(lavad keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 1000000ulava --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

Unbond tokens from your validator

lavad tx staking unbond $(lavad keys show wallet --bech val -a) 1000000ulava --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

Send tokens to the wallet

lavad tx bank send wallet <TO_WALLET_ADDRESS> 1000000ulava --from wallet --chain-id lava-mainnet-1 --gas-adjustment 1.4 --gas auto --gas-prices 0.000000001ulava -y

View validator details

lavad q staking validator $(lavad keys show wallet --bech val -a)

Slashing params

lavad q slashing params

Signing Info

lavad q slashing signing-info $(lavad tendermint show-validator)

Get validator info

lavad status 2>&1 | jq .ValidatorInfo

Get sync info

lavad status 2>&1 | jq .SyncInfo

Check validator key

[[ $(lavad q staking validator $(lavad keys show wallet --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(lavad status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\n\e[1m\e[32mTrue\e[0m\n" || echo -e "\n\e[1m\e[31mFalse\e[0m\n"

Governance

lavad tx gov vote 1 yes --from wallet --chain-id lava-mainnet-1 --gas-prices 0.000000001ulava --gas-adjustment 1.5 --gas auto -y

Remove node

cd $HOME
sudo systemctl stop lavad
sudo systemctl disable lavad
sudo rm /etc/systemd/system/lavad.service
sudo systemctl daemon-reload
rm -f $(which lavad)
rm -rf $HOME/.lava
rm -rf $HOME/lava

Reload service configuration

sudo systemctl daemon-reload

Enable service

sudo systemctl enable lavad

Disable service

sudo systemctl disable lavad

Start service

sudo systemctl start lavad

Stop service

sudo systemctl stop lavad

Restart service

sudo systemctl restart lavad

Check service status

sudo systemctl status lavad

Check service logs

sudo journalctl -u lavad -f --no-hostname -o cat

Last updated