This guide walks through submitting MsgCreateValidator on Autheo Chain. Complete Prerequisites, Installation, Key management, License setup, and Production deployment before starting.
Pre-flight checklist
Step 1: Confirm your Sovereign license is BOUND
autheod query license licenses-by-owner <cosmos-address>
Must show status: BOUND. If showing ISSUED, bind it first:
autheod tx license bind <license-id> \
--from mykey \
--chain-id autheo_2127-1 \
--keyring-backend file
If binding fails with ErrCooldownNotElapsed, query the cooldown: autheod query license category-policy 1
Step 2: Get your consensus public key
autheod tendermint show-validator --home /path/to/node-home
Copy the full JSON output — you need it in the next step.
Step 3: Submit MsgCreateValidator
autheod tx staking create-validator \
--amount 1000000000000000000aauth \
--pubkey $(autheod tendermint show-validator --home /path/to/node-home) \
--moniker "your-validator-name" \
--commission-rate "0.10" \
--commission-max-rate "0.20" \
--commission-max-change-rate "0.01" \
--min-self-delegation "1" \
--from mykey \
--chain-id autheo_2127-1 \
--keyring-backend file \
--home /path/to/node-home \
--gas auto \
--gas-adjustment 1.5 \
--fees 5000000aauth \
--yes
--amount 1000000000000000000aauth = 1 THEO. Adjust to your desired self-delegation.
THEO uses 18 decimal places. 1 THEO = 10¹⁸ aauth. See Token overview for the full denomination table. Consider your self-delegation amount carefully — validators with higher stake are more competitive for the active set and more attractive to delegators. See Validator economics for guidance.
Step 4: Verify activation
# Check bonded status
autheod query staking validator <autheovaloper-address>
# Check license transitioned to ACTIVE
autheod query license license <license-id>
# Check signing info
autheod query slashing signing-info \
$(autheod tendermint show-validator --home /path/to/node-home)
Look for BOND_STATUS_BONDED, LICENSE_STATUS_ACTIVE, and tombstoned: false.
Post-creation operations
Edit validator details
autheod tx staking edit-validator \
--moniker "new-name" \
--website "https://your-site.com" \
--from mykey \
--chain-id autheo_2127-1 \
--keyring-backend file
Unjail after downtime
autheod tx slashing unjail \
--from mykey \
--chain-id autheo_2127-1 \
--keyring-backend file
If your validator was tombstoned from double-signing, unjail is not possible. You must create a new validator with a new consensus key.
Day-to-day commands
# Check validator status
autheod query staking validator <autheovaloper-address>
# Withdraw staking rewards
autheod tx distribution withdraw-all-rewards \
--from mykey --chain-id autheo_2127-1 --keyring-backend file
# Check NFT emission rewards
autheod query emissions nft-rewards <cosmos-address>
# Claim NFT emission rewards
autheod tx licensedistribution claim-nft-rewards <license-id> \
--from mykey --chain-id autheo_2127-1 --keyring-backend file