Consolidations
Returns the EIP-7251 requests carried by the block at the specified slot: validator consolidations and switches to compounding withdrawal credentials.
Both kinds arrive through the same execution-layer contract with the same fields, including a source and a target public key. The consensus layer distinguishes them by whether those keys are equal:
consolidation— the keys differ. The source validator exits and its balance moves to the target, which must already have compounding (0x02) withdrawal credentials.compounding_switch— the keys are identical. Nothing exits and no balance moves; the request only changes that validator’s withdrawal credentials from0x01to0x02.
The type field reports which kind an entry is, so you do not have to compare public keys yourself. Use type_filter to narrow the response to one kind.
Results are anchored to the slot whose block body carried the request. For a consolidation the resulting balance transfer settles later, when the pending consolidation queue drains to it; that settlement slot is reported in stage_history.consensus_layer_processed and is not used for filtering. A compounding switch is applied at inclusion, so both slots are the same.
Rejected requests are included. A request rejected at inclusion reached a block but changed no state, so stage_history.consensus_layer_processed is null and, for consolidations, a reject_reason is set.
Because of that delay a past slot’s response is not immutable straight away: a queued consolidation keeps its inclusion slot but gains amount and stage_history.consensus_layer_processed, and flips to completed, long after the slot itself finalized. Cache a slot’s response indefinitely only once no entry in it is queued; entries that are completed or rejected are terminal.
Data is available from the Pectra fork (epoch 364032, first slot 11649024, 7 May 2025) onwards. On mainnet the earliest request observed is in slot 11649029. Slots before Pectra, and slots that carried no such request, return 200 with an empty data array.
The validator filter is optional; if omitted, results include every request in the slot. A validator matches when it is either the source or the target of the request.
You can combine this endpoint with:
- Track consolidations for your own validators across all slots: /api/v2/ethereum/validators/queues/consolidations
- Track compounding switches for your own validators: /api/v2/ethereum/validators/queues/compounding-switches
- Compare the fee in
request.feeagainst every other request submitted in the same execution layer block: /api/v2/ethereum/queues/request-fees
Authorizations
Body
validator and type_filter are optional in this request body
Specify a slot using one of the following methods.
- Slot number
- Consensus layer block root
- View: "latest", "finalized"
- Number
- Root
- View
The Ethereum chain to query.
mainnet, hoodi Cursor value for pagination. See our pagination guide for more details.
The number of items to return per page.
1 <= x <= 10validator is optional in this request body. If not provided, results will be unfiltered.
- Indices/Pubkeys
- Dashboard
- 💎 Deposit
- 💎 Withdrawal
- 💎 Entity
Filter results by request type. Pass one or more types as an array. If omitted, both consolidations and compounding switches are returned.
The kind of EIP-7251 request. Both kinds are submitted to the same execution-layer contract (0x0000BBdDc7CE488642fb579F8B00f3a590007251) using the same request structure; the consensus layer tells them apart by whether the source and target public keys are equal.
consolidation: source and target are different validators. The source validator exits and its balance is transferred to the target, which must already have compounding (0x02) withdrawal credentials.compounding_switch: source and target are the same validator. Nothing exits and no balance moves between validators; the validator's withdrawal credentials change from0x01to0x02, raising its effective balance ceiling from 32 ETH to 2048 ETH.
consolidation, compounding_switch 
