# Ethereum Beacon API

Ethereum Beacon API is supported for **Mainnet** and **Hoodi**. The following ETH Beacon Node API methods are allowed in the Blockdaemon RPC API:

## Beacon  
Allowed Beacon Set of endpoints to query beacon chain:

| Method | Compute Unit Value |
| --- | --- |
| **[`GET /eth/v1/beacon/genesis`](https://ethereum.github.io/beacon-APIs/#/Beacon/getGenesis)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/root`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateRoot)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/fork`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateFork)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/finality_checkpoints`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateFinalityCheckpoints)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/validators`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateValidators)** | 50 |
| **[`POST /eth/v1/beacon/states/{state_id}/validators`](https://ethereum.github.io/beacon-APIs/#/Beacon/postStateValidators)** | 50 |
| **[`GET /eth/v1/beacon/states/{state_id}/validators/{validator_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateValidator)** | 10 |
| **[`GET /eth/v1/beacon/states/{state_id}/validator_balances`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateValidatorBalances)** | 10 |
| **[`POST /eth/v1/beacon/states/{state_id}/validator_balances`](https://ethereum.github.io/beacon-APIs/#/Beacon/postStateValidatorBalances)** | 10 |
| **[`POST /eth/v1/beacon/states/{state_id}/validator_identities`](https://ethereum.github.io/beacon-APIs/#/Beacon/postStateValidatorIdentities)** | 10 |
| **[`GET /eth/v1/beacon/states/{state_id}/committees`](https://ethereum.github.io/beacon-APIs/#/Beacon/getEpochCommittees)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/sync_committees`](https://ethereum.github.io/beacon-APIs/#/Beacon/getEpochSyncCommittees)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/randao`](https://ethereum.github.io/beacon-APIs/#/Beacon/getStateRandao)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/pending_consolations`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPendingConsolidations)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/pending_deposits`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPendingDeposits)** | 5 |
| **[`GET /eth/v1/beacon/states/{state_id}/pending_partial_withdrawals`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPendingPartialWithdrawals)** | 5 |
| **[`GET /eth/v1/beacon/headers`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockHeaders)** | 5 |
| **[`GET /eth/v1/beacon/headers/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockHeader)** | 5 |
| **[`POST /eth/v1/beacon/blinded_blocks`](https://ethereum.github.io/beacon-APIs/#/Beacon/publishBlindedBlock)** | 10 |
| **[`POST /eth/v1/beacon/blocks`](https://ethereum.github.io/beacon-APIs/#/Beacon/publishBlock)** | 10 |
| **[`GET /eth/v2/beacon/blocks/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockV2)** | 10 |
| **[`GET /eth/v1/beacon/blocks/{block_id}/root`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockRoot)** | 5 |
| **[`GET /eth/v1/beacon/blocks/{block_id}/attestations`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockAttestations)** | 5 |
| **[`GET /eth/v1/beacon/blob_sidecars/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlobSidecars)** | 5 |
| **[`GET /eth/v1/beacon/blinded_blocks/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlindedBlock)** | 5 |
| **[`POST /eth/v1/beacon/rewards/sync_committee/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getSyncCommitteeRewards)** | 5 |
| **[`GET /eth/v1/beacon/rewards/blocks/{block_id}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockRewards)** | 5 |
| **[`GET /eth/v1/beacon/rewards/attestations/{epoch}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getAttestationsRewards)** | 5 |
| **[`GET /eth/v1/beacon/light_client/bootstrap/{block_root}`](https://ethereum.github.io/beacon-APIs/#/Beacon/getLightClientBootstrap)** | 5 |
| **[`GET /eth/v1/beacon/light_client/updates`](https://ethereum.github.io/beacon-APIs/#/Beacon/getLightClientUpdatesByRange)** | 5 |
| **[`GET /eth/v1/beacon/light_client/finality_update`](https://ethereum.github.io/beacon-APIs/#/Beacon/getLightClientFinalityUpdate)** | 5 |
| **[`GET /eth/v1/beacon/light_client/optimistic_update`](https://ethereum.github.io/beacon-APIs/#/Beacon/getLightClientOptimisticUpdate)** | 5 |
| **[`GET /eth/v2/beacon/pool/attestations`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPoolAttestationsV2)** | 5 |
| **[`POST /eth/v2/beacon/pool/attestations`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolAttestationsV2)** | 5 |
| **[`GET /eth/v2/beacon/pool/attester_slashings`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPoolAttesterSlashingsV2)** | 5 |
| **[`POST /eth/v2/beacon/pool/attester_slashings`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolAttesterSlashingsV2)** | 5 |
| **[`GET /eth/v1/beacon/pool/proposer_slashings`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPoolProposerSlashings)** | 5 |
| **[`POST /eth/v1/beacon/pool/proposer_slashings`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolProposerSlashings)** | 5 |
| **[`POST /eth/v1/beacon/pool/sync_committees`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolSyncCommitteeSignatures)** | 5 |
| **[`GET /eth/v1/beacon/pool/voluntary_exits`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPoolVoluntaryExits)** | 5 |
| **[`POST /eth/v1/beacon/pool/voluntary_exits`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolVoluntaryExit)** | 5 |
| **[`GET /eth/v1/beacon/pool/bls_to_execution_changes`](https://ethereum.github.io/beacon-APIs/#/Beacon/getPoolBLSToExecutionChanges)** | 5 |
| **[`POST /eth/v1/beacon/pool/bls_to_execution_changes`](https://ethereum.github.io/beacon-APIs/#/Beacon/submitPoolBLSToExecutionChange)** | 5 |

## Config  
Allowed Config Endpoints to query chain configuration, specification, and fork schedules.

| Method | Compute Unit Value |
| --- | --- |
| **[`GET /eth/v1/config/fork_schedule`](https://ethereum.github.io/beacon-APIs/#/Config/getForkSchedule)** | 1 |
| **[`GET /eth/v1/config/spec`](https://ethereum.github.io/beacon-APIs/#/Config/getSpec)** | 1 |
| **[`GET /eth/v1/config/deposit_contract`](https://ethereum.github.io/beacon-APIs/#/Config/getDepositContract)** | 1 |

## Debug  
Allowed Debug Endpoints to debug chain.

| Method |
| --- |
| **[`GET /eth/v2/debug/beacon/states/{state_id}`](https://ethereum.github.io/beacon-APIs/#/Debug/getStateV2)** |
| **[`GET /eth/v2/debug/beacon/heads`](https://ethereum.github.io/beacon-APIs/#/Debug/getDebugChainHeadsV2)** |
| **[`GET /eth/v2/debug/fork_choice`](https://ethereum.github.io/beacon-APIs/#/Debug/getDebugForkChoice)** |

## Events  
Allowed Events Endpoints for event subscription.

| Method |
| --- |
| **[`GET /eth/v1/events`](https://ethereum.github.io/beacon-APIs/#/Events/eventstream)** |

## Node  
Allowed Node Endpoints to query node-related information.

| Method | Compute Unit Value |
| --- | --- |
| **[`GET /eth/v1/node/identity`](https://ethereum.github.io/beacon-APIs/#/Node/getNetworkIdentity)** | 1 |
| **[`GET /eth/v1/node/peers`](https://ethereum.github.io/beacon-APIs/#/Node/getPeers)** | 1 |
| **[`GET /eth/v1/node/peers/{peer_id}`](https://ethereum.github.io/beacon-APIs/#/Node/getPeer)** | 1 |
| **[`GET /eth/v1/node/peer_count`](https://ethereum.github.io/beacon-APIs/#/Node/getPeerCount)** | 1 |
| **[`GET /eth/v1/node/version`](https://ethereum.github.io/beacon-APIs/#/Node/getNodeVersion)** | 1 |
| **[`GET /eth/v1/node/syncing`](https://ethereum.github.io/beacon-APIs/#/Node/getSyncingStatus)** | 1 |
| **[`GET /eth/v1/node/health`](https://ethereum.github.io/beacon-APIs/#/Node/getHealth)** | 1 |

## Validator  
Allowed Validator Endpoints for validator clients.

| Method |
| --- |
| **[`POST /eth/v1/validator/duties/attester/{epoch}`](https://ethereum.github.io/beacon-APIs/#/Validator/getAttesterDuties)** |
| **[`GET /eth/v1/validator/duties/proposer/{epoch}`](https://ethereum.github.io/beacon-APIs/#/Validator/getProposerDuties)** |
| **[`POST /eth/v1/validator/duties/sync/{epoch}`](https://ethereum.github.io/beacon-APIs/#/Validator/getSyncCommitteeDuties)** |
| **[`GET /eth/v3/validator/blocks/{slot}`](https://ethereum.github.io/beacon-APIs/#/Validator/produceBlockV3)** |
| **[`GET /eth/v1/validator/attestation_data`](https://ethereum.github.io/beacon-APIs/#/Validator/produceAttestationData)** |
| **[`GET /eth/v2/validator/aggregate_attestation`](https://ethereum.github.io/beacon-APIs/#/Validator/getAggregatedAttestationV2)** |
| **[`POST /eth/v2/validator/aggregate_and_proofs`](https://ethereum.github.io/beacon-APIs/#/Validator/publishAggregateAndProofsV2)** |
| **[`POST /eth/v1/validator/beacon_committee_subscriptions`](https://ethereum.github.io/beacon-APIs/#/Validator/prepareBeaconCommitteeSubnet)** |
| **[`POST /eth/v1/validator/sync_committee_subscriptions`](https://ethereum.github.io/beacon-APIs/#/Validator/prepareSyncCommitteeSubnets)** |
| **[`POST /eth/v1/validator/beacon_committee_selections`](https://ethereum.github.io/beacon-APIs/#/Validator/submitBeaconCommitteeSelections)** |
| **[`GET /eth/v1/validator/sync_committee_contribution`](https://ethereum.github.io/beacon-APIs/#/Validator/produceSyncCommitteeContribution)** |
| **[`POST /eth/v1/validator/sync_committee_selections`](https://ethereum.github.io/beacon-APIs/#/Validator/submitSyncCommitteeSelections)** |
| **[`POST /eth/v1/validator/contribution_and_proofs`](https://ethereum.github.io/beacon-APIs/#/Validator/publishContributionAndProofs)** |
| **[`POST /eth/v1/validator/prepare_beacon_proposer`](https://ethereum.github.io/beacon-APIs/#/Validator/prepareBeaconProposer)** |
| **[`POST /eth/v1/validator/register_validator`](https://ethereum.github.io/beacon-APIs/#/Validator/registerValidator)** |
| **[`POST /eth/v1/validator/liveness/{epoch}`](https://ethereum.github.io/beacon-APIs/#/Validator/getLiveness)** |
