# eth/v1/beacon/states/{state_id}/validator_balances RPC method

Ethereum consensus layer Beacon Chain API call that returns a filterable list of validators balances.

Balances will be returned for all indices or public key that match known validators. If an index or public key does not match any known validator, no balance will be returned but this will not cause an error. There are no guarantees for the returned data in terms of ordering; the index and is returned for each balance, and can be used to confirm for which inputs a response has been returned.


  • state_idstring — (required) the state identifier with:
    • head — the canonical head of the chain in the view of the node that you are sending the call to.
    • genesis — the genesis state of the chain.
    • justified — the slot in the current epoch that has received attestations (opens new window) from two thirds of the Ethereum validators.
    • finalized — the previously justified slot that is now in the epoch that is at least immediately previous to the current epoch.
    • slot — the slot number.
    • 0xstateRoot — the root hash for the global chain state after applying changes in the block (opens new window) that is in the slot.
  • idarraystring — either the hex encoded public key (any bytes48 with 0x prefix) or validator index.


  • execution_optimisticbooleantrue if the response references an unverified execution payload. Optimistic information may be invalidated at a later time. If the field is not present, assume the false value.
  • dataarrayobject with:
    • indexstring — the index of the validator in the validator registry.
    • balancestring — the current validator balance in Gwei.


curl -X GET https://beacon-nd-123-456-789.p2pify.com/3c6e0b8a9c15224a8228b9a98ca1531d/eth/v1/beacon/states/head/validator_balances?id=0x84a623de8666c418154afac6b3b5dcb85e50500cb357c49d24d17bc5408139d7febacaddbd38e226d8c30baa6924457e