Get block proposers duties.

Ask the beacon node to supply all validators slated to submit block proposals during the specified epoch. The checking of responsibilities should only be necessary once every epoch, however in the event of a chain restructuring, the duties may alter.

You should keep an eye on head events and make sure the dependent root in this response matches for complete safety.

  • event.current_duty_dependent_root when compute_epoch_at_slot(event.slot) == epoch

  • event.block otherwise

Get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch) - 1), or the genesis block root in the event of an underflow, is the value of dependent_root.

Example Request and Result for /v1/validator/duties/proposer/{epoch}

In this section, we provide an illustrative example of a request made to retrieve details contents using the /v1/validator/duties/proposer/{epoch} endpoint. Additionally, we present the resulting response containing information about the all validator's block proposals into the current epoch.


The example in this section uses a non-existing project id.

Make sure you replace it with your Ethereum Holesky Beacon endpoint when issuing the API calls.

Don't have a project id? Here's a straightforward guide on how to obtain one!

Get block proposers duties.

GET https://eth-holesky-beacon.blastapi.io/<project-id>/eth//v1/validator/duties/proposer/{epoch}

Path Parameters

  "dependent_root": "0xcf8e0d4e9587369b2301d0790347320302cc0943d5a1884560367e8208d920f2",
  "execution_optimistic": false,
  "data": [
      "pubkey": "0x93247f2209abcacf57b75a51dafae777f9dd38bc7053d1af526f220a7489a6d3a2753e5f3e8b1cfe39b56f43611df74a",
      "validator_index": "1",
      "slot": "1"

Curl Request example

curl -X 'GET' \
  'https://eth-mainnet.blastapi.io/<project-id>/eth/v1/validator/duties/proposer/2' \
  -H 'accept: application/json'

Last updated