POST /eth/v1/validator/duties/attester/{epoch}

Get attester duties

Asks the beacon node to supply a list of attestation tasks for a specific epoch that validators are expected to complete. It should only be necessary to check duties once every epoch; nevertheless, a change in duties could arise from a chain reorganization (of > MIN_SEED_LOOKAHEAD epochs). You should keep an eye on head events and make sure the dependent root in this response matches for complete safety:

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

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

  • event.block otherwise

The dependent_root value is get_block_root_at_slot(state, compute_start_slot_at_epoch(epoch - 1) - 1) or the genesis block root in the case of underflow.

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

In this section, we provide an illustrative example of a request made to retrieve details contents using the /v1/validator/duties/attester/{epoch} endpoint. Additionally, we present the resulting response containing information about attester duties.





Should only be allowed 1 epoch ahead

request body:


An array of the validator indices for which to obtain the duties.

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 attester duties


Path Parameters





  "dependent_root": "0xcf8e0d4e9587369b2301d0790347320302cc0943d5a1884560367e8208d920f2",
  "execution_optimistic": false,
  "data": [
      "pubkey": "0x93247f2209abcacf57b75a51dafae777f9dd38bc7053d1af526f220a7489a6d3a2753e5f3e8b1cfe39b56f43611df74a",
      "validator_index": "1",
      "committee_index": "1",
      "committee_length": "1",
      "committees_at_slot": "1",
      "validator_committee_index": "1",
      "slot": "1"

Curl Request example

curl -X 'POST' \
  '<project-id>/eth/v1/validator/duties/attester/1' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '[

Last updated