Validator Reward Playbook
ACCOUNT_ADDR="pokt18808wvw0h4t450t06uvauny8lvscsxjfyua7vh"
# Get latest block height from mainnet RPC
latest_height=$(curl -s https://shannon-grove-rpc.mainnet.poktroll.com/status | jq -r '.result.sync_info.latest_block_height')
# Check balance every 100 blocks for the last 1000 blocks
for ((h=latest_height-1000; h<latest_height; h+=100)); do
echo -n "Height $h: "
curl -s -H "x-cosmos-block-height: $h" \
https://shannon-grove-api.mainnet.poktroll.com/cosmos/bank/v1beta1/balances/$ACCOUNT_ADDR \
| jq -r '.balances[]? | select(.denom=="upokt") | .amount // "0"'
doneC. Validator Rewards
Check Community Pool Commission Accumulated
View accumulated tx commissions that haven't been withdrawn across all validators:
pocketd query distribution community-pool --network=main -o json | jqView Validator Commission Accumulated
Withdraw Validator Commission Rewards
Withdraw rewards for your validator and its delegations:
D. [WIP] Delegator Rewards
Check Delegator Rewards
View rewards from delegations (including self-delegation):
Withdraw Delegator Rewards
E. [WIP] Tokenomics Relay Distribution Parameters
WIP for viewing tokenomics relay distribution parameters
Verify the current distribution parameters for relay rewards:
Key parameters to check:
mint_allocation_percentages.proposer: Proposer's share of new mintsmint_equals_burn_claim_distribution.proposer: Proposer's share when mint equals burn
B. Monitoring Validator Balance Over Time
Monitor balance changes over time
Use the script above to sample the validator account balance (upokt) across past blocks. The script:
Fetches latest block height from the mainnet RPC.
Iterates from latest_height-1000 to latest_height in steps of 100 blocks.
Requests the bank balances for the validator account at each historic block height and prints the upokt amount (or 0).
Place your validator account in the ACCOUNT_ADDR variable before running.
Was this helpful?
