Skip to main content

Address

0x0000000000000000000000000000000000000801

Supported Methods

Transactions

Signature
claimRewards(address,uint32)
depositValidatorRewardsPool(address,string,tuple[])
fundCommunityPool(address,tuple[])
setWithdrawAddress(address,string)
withdrawDelegatorRewards(address,string)
withdrawValidatorCommission(string)

Queries

Signature
communityPool()
delegationRewards(address,string)
delegationTotalRewards(address)
delegatorValidators(address)
delegatorWithdrawAddress(address)
validatorCommission(string)
validatorDistributionInfo(string)
validatorOutstandingRewards(string)
validatorSlashes(string,uint64,uint64,tuple)

Query Examples

Set the current testnet EVM JSON-RPC endpoint and precompile address:
Security note: Use a keystore or hardware wallet for real operations. Do not pass raw private keys directly in shell commands.
export RPC_URL="https://test-json-rpc.cloud.aultblockchain.xyz"
export DISTRIBUTION_PRECOMPILE="0x0000000000000000000000000000000000000801"

Direct call

cast call "$DISTRIBUTION_PRECOMPILE" \
  "communityPool()((string,uint256,uint8)[])" \
  --rpc-url "$RPC_URL"

Call from contract

address constant DISTRIBUTION = 0x0000000000000000000000000000000000000801;

function queryDistributionCommunityPool() external view returns (bytes memory) {
    (bool ok, bytes memory out) = DISTRIBUTION.staticcall(
        abi.encodeWithSignature("communityPool()")
    );
    require(ok, "precompile call failed");
    return out;
}

Notes

  • Validator fields use the aultvaloper... format.
  • Pool funding methods use coin-list arguments (tuple[]).

ABI

Download Distribution ABI JSON