- getHeader + Parameters
- registerValidator + Parameters + registerValidator_request_inner - Properties + Return type + Authorization + HTTP request headers
- status + Parameters + Return type + Authorization + HTTP request headers
- submitBlindedBlock + Parameters
This API allows Builders to enable and disable errors and modifications for various payloads. It provides endpoints to manage errors on payload requests and reveals, as well as to modify payload attributes and the payload itself.
Method | Endpoint | Description |
---|---|---|
DELETE | /mock/errors/payload_request |
Disables errors on /eth/v1/builder/header/... |
POST | /mock/errors/payload_request |
Enables errors on /eth/v1/builder/header/... |
POST | /mock/errors/payload_request/{slotOrEpoch}/{slotOrEpochNumber} |
Enables errors on /eth/v1/builder/header/... starting at the specified slot or epoch |
DELETE | /mock/errors/payload_reveal |
Disables errors on /eth/v1/builder/blinded_blocks |
POST | /mock/errors/payload_reveal |
Enables errors on /eth/v1/builder/blinded_blocks |
POST | /mock/errors/payload_reveal/{slotOrEpoch}/{slotOrEpochNumber} |
Enables errors on /eth/v1/builder/blinded_blocks starting at the specified slot or epoch |
DELETE | /mock/invalid/payload_attributes |
Disables any payload attributes modification |
POST | /mock/invalid/payload_attributes/{type} |
Enables specified type of payload attributes modification |
POST | /mock/invalid/payload_attributes/{type}/{slotOrEpoch}/{slotOrEpochNumber} |
Enables specified type of payload attributes modification starting at the specified slot or epoch |
DELETE | /mock/invalid/payload |
Disables any modification to payload built |
POST | /mock/invalid/payload/{type} |
Enables specified type of modification to payload built |
POST | /mock/invalid/payload/{type}/{slotOrEpoch}/{slotOrEpochNumber} |
Enables specified type of modification to payload built starting at the specified slot or epoch |
-
DELETE
/mock/errors/payload_request
- Description: Disables errors on
/eth/v1/builder/header/...
. - Responses:
200
: Errors disabled successfully.
- Description: Disables errors on
-
POST
/mock/errors/payload_request
- Description: Enables errors on
/eth/v1/builder/header/...
. - Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
POST
/mock/errors/payload_request/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables errors on
/eth/v1/builder/header/...
starting at the specified slot or epoch. - Parameters:
slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling errors.
- Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
DELETE
/mock/errors/payload_reveal
- Description: Disables errors on
/eth/v1/builder/blinded_blocks
. - Responses:
200
: Errors disabled successfully.
- Description: Disables errors on
-
POST
/mock/errors/payload_reveal
- Description: Enables errors on
/eth/v1/builder/blinded_blocks
. - Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
POST
/mock/errors/payload_reveal/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables errors on
/eth/v1/builder/blinded_blocks
starting at the specified slot or epoch. - Parameters:
slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling errors.
- Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
DELETE
/mock/invalid/payload_attributes
- Description: Disables any payload attributes modification.
- Responses:
200
: Payload attributes modification disabled successfully.
-
POST
/mock/invalid/payload_attributes/{type}
- Description: Enables specified type of payload attributes modification.
- Parameters:
type
(path): The type of payload attributes modification.
- Responses:
200
: Payload attributes modification enabled successfully.
-
POST
/mock/invalid/payload_attributes/{type}/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables specified type of payload attributes modification starting at the specified slot or epoch.
- Parameters:
type
(path): The type of payload attributes modification.slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling modification.
- Responses:
200
: Payload attributes modification enabled successfully.
-
DELETE
/mock/invalid/payload
- Description: Disables any modification to payload built.
- Responses:
200
: Payload modification disabled successfully.
-
POST
/mock/invalid/payload/{type}
- Description: Enables specified type of modification to payload built.
- Parameters:
type
(path): The type of payload modification.
- Responses:
200
: Payload modification enabled successfully.
-
POST
/mock/invalid/payload/{type}/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables specified type of modification to payload built starting at the specified slot or epoch.
- Parameters:
type
(path): The type of payload modification.slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling modification.
- Responses:
200
: Payload modification enabled successfully.
The API uses standard HTTP status codes to indicate the success or failure of a request. Additional error information is provided in the response body using the following schema:
components:
schemas:
Error:
type: object
properties:
code:
type: integer
message:
type: string
Method | HTTP request | Description |
---|---|---|
getHeader | GET /eth/v1/builder/header/{slot}/{parent_hash}/{pubkey} |
Get an execution payload header. |
registerValidator | POST /eth/v1/builder/validators |
Register or update a validator's block building preferences. |
status | GET /eth/v1/builder/status |
Check if builder is healthy. |
submitBlindedBlock | POST /eth/v1/builder/blinded_blocks |
Submit a signed blinded block and get unblinded execution payload. |
GetHeaderResponse getHeader(slot, parent_hash, pubkey)
Get an execution payload header.
Requests a builder node to produce a valid execution payload header, which can be integrated into a blinded beacon block and signed. If the builder is unable to produce a valid execution payload header, then the builder MUST return a 204 response. If the request is invalid, then the builder MUST return an error response (400) with a description of the validation failure. After Deneb, return the KZG commitments for any associated blobs attached to the execution payload.
Name | Type | Description | Notes |
---|---|---|---|
slot | String | The slot for which the block should be proposed. | [default to null] |
parent_hash | String | Hash of execution layer block the proposer will build on. | [default to null] |
pubkey | String | The validator's BLS public key. | [default to null] |
Name | Type | Description | Notes |
---|---|---|---|
version | String | [default to null] | |
data | GetHeaderResponse_data | [default to null] |
No authorization required
- Content-Type: Not defined
- Accept:
application/json
registerValidator(registerValidator_request_inner)
Register or update a validator's block building preferences.
Registers a validator's preferred fee recipient and gas limit. A success response (200) indicates that the registration was valid. If the registration passes validation, then the builder MUST integrate the registration into its state, such that future blocks built for the validator conform to the preferences expressed in the registration. If the registration is invalid, then the builder MUST return an error response (400) with a description of the validation failure.
Name | Type | Description | Notes |
---|---|---|---|
registerValidator_request_inner | List | A signed declaration of a validator's block building preferences. |
Name | Type | Description | Notes |
---|---|---|---|
message | registerValidator_request_inner_message | [default to null] | |
signature | String | [default to null] |
null (empty response body)
No authorization required
- Content-Type: application/json
- Accept: application/json
status()
Check if builder is healthy.
Checks if builder can respond to requests normally.
This endpoint does not need any parameter.
null (empty response body)
No authorization required
- Content-Type: Not defined
- Accept: application/json
SubmitBlindedBlockResponse submitBlindedBlock(submitBlindedBlock_request, Eth-Consensus-Version)
Submit a signed blinded block and get unblinded execution payload.
Submits a `SignedBlindedBeaconBlock` to the builder, binding the proposer to the block. A success response (200) indicates that the signed blinded beacon block was valid. If the signed blinded beacon block was invalid, then the builder must return an error response (400) with a description of the validation failure. After Deneb, this endpoint will additionally return the associated blobs in the response.
Name | Type | Description | Notes |
---|---|---|---|
submitBlindedBlock_request | submitBlindedBlock_request | A `SignedBlindedBeaconBlock`. | |
Eth-Consensus-Version | String | Version of the block being submitted | [optional] [default to null] [enum: phase0, altair, bellatrix, capella, deneb, electra] |
Name | Type | Description | Notes |
---|---|---|---|
parent_hash | String | [default to null] | |
fee_recipient | String | An address on the execution (Ethereum 1) network. | [default to null] |
state_root | String | [default to null] | |
receipts_root | String | [default to null] | |
logs_bloom | String | [default to null] | |
prev_randao | String | [default to null] | |
block_number | String | [default to null] | |
gas_limit | String | [default to null] | |
gas_used | String | [default to null] | |
timestamp | String | [default to null] | |
extra_data | String | Extra data on the execution (Ethereum 1) network. | [default to null] |
base_fee_per_gas | String | [default to null] | |
block_hash | String | [default to null] | |
transactions | List | [default to null] | |
withdrawals | List | [default to null] | |
execution_payload | SubmitBlindedBlockResponse_data_oneOf_2_execution_payload | [default to null] | |
blobs_bundle | SubmitBlindedBlockResponse_data_oneOf_2_blobs_bundle | [default to null] |
No authorization required
- Content-Type:
application/json
- Accept:
application/json
This API allows Builders to enable and disable errors and modifications for various payloads. It provides endpoints to manage errors on payload requests and reveals, as well as to modify payload attributes and the payload itself.
Method | Endpoint | Description |
---|---|---|
DELETE | /mock/errors/payload_request |
Disables errors on /eth/v1/builder/header/... |
POST | /mock/errors/payload_request |
Enables errors on /eth/v1/builder/header/... |
POST | /mock/errors/payload_request/{slotOrEpoch}/{slotOrEpochNumber} |
Enables errors on /eth/v1/builder/header/... starting at the specified slot or epoch |
DELETE | /mock/errors/payload_reveal |
Disables errors on /eth/v1/builder/blinded_blocks |
POST | /mock/errors/payload_reveal |
Enables errors on /eth/v1/builder/blinded_blocks |
POST | /mock/errors/payload_reveal/{slotOrEpoch}/{slotOrEpochNumber} |
Enables errors on /eth/v1/builder/blinded_blocks starting at the specified slot or epoch |
DELETE | /mock/invalid/payload_attributes |
Disables any payload attributes modification |
POST | /mock/invalid/payload_attributes/{type} |
Enables specified type of payload attributes modification |
POST | /mock/invalid/payload_attributes/{type}/{slotOrEpoch}/{slotOrEpochNumber} |
Enables specified type of payload attributes modification starting at the specified slot or epoch |
DELETE | /mock/invalid/payload |
Disables any modification to payload built |
POST | /mock/invalid/payload/{type} |
Enables specified type of modification to payload built |
POST | /mock/invalid/payload/{type}/{slotOrEpoch}/{slotOrEpochNumber} |
Enables specified type of modification to payload built starting at the specified slot or epoch |
-
DELETE
/mock/errors/payload_request
- Description: Disables errors on
/eth/v1/builder/header/...
. - Responses:
200
: Errors disabled successfully.
- Description: Disables errors on
-
POST
/mock/errors/payload_request
- Description: Enables errors on
/eth/v1/builder/header/...
. - Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
POST
/mock/errors/payload_request/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables errors on
/eth/v1/builder/header/...
starting at the specified slot or epoch. - Parameters:
slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling errors.
- Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
DELETE
/mock/errors/payload_reveal
- Description: Disables errors on
/eth/v1/builder/blinded_blocks
. - Responses:
200
: Errors disabled successfully.
- Description: Disables errors on
-
POST
/mock/errors/payload_reveal
- Description: Enables errors on
/eth/v1/builder/blinded_blocks
. - Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
POST
/mock/errors/payload_reveal/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables errors on
/eth/v1/builder/blinded_blocks
starting at the specified slot or epoch. - Parameters:
slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling errors.
- Responses:
200
: Errors enabled successfully.
- Description: Enables errors on
-
DELETE
/mock/invalid/payload_attributes
- Description: Disables any payload attributes modification.
- Responses:
200
: Payload attributes modification disabled successfully.
-
POST
/mock/invalid/payload_attributes/{type}
- Description: Enables specified type of payload attributes modification.
- Parameters:
type
(path): The type of payload attributes modification.
- Responses:
200
: Payload attributes modification enabled successfully.
-
POST
/mock/invalid/payload_attributes/{type}/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables specified type of payload attributes modification starting at the specified slot or epoch.
- Parameters:
type
(path): The type of payload attributes modification.slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling modification.
- Responses:
200
: Payload attributes modification enabled successfully.
-
DELETE
/mock/invalid/payload
- Description: Disables any modification to payload built.
- Responses:
200
: Payload modification disabled successfully.
-
POST
/mock/invalid/payload/{type}
- Description: Enables specified type of modification to payload built.
- Parameters:
type
(path): The type of payload modification.
- Responses:
200
: Payload modification enabled successfully.
-
POST
/mock/invalid/payload/{type}/{slotOrEpoch}/{slotOrEpochNumber}
- Description: Enables specified type of modification to payload built starting at the specified slot or epoch.
- Parameters:
type
(path): The type of payload modification.slotOrEpoch
(path): Specify whether to use slot or epoch (enum:slot
,epoch
).slotOrEpochNumber
(path): The slot or epoch number to start enabling modification.
- Responses:
200
: Payload modification enabled successfully.
The API uses standard HTTP status codes to indicate the success or failure of a request. Additional error information is provided in the response body using the following schema:
components:
schemas:
Error:
type: object
properties:
code:
type: integer
message:
type: string
Method | HTTP request | Description |
---|---|---|
getHeader | GET /eth/v1/builder/header/{slot}/{parent_hash}/{pubkey} |
Get an execution payload header. |
registerValidator | POST /eth/v1/builder/validators |
Register or update a validator's block building preferences. |
status | GET /eth/v1/builder/status |
Check if builder is healthy. |
submitBlindedBlock | POST /eth/v1/builder/blinded_blocks |
Submit a signed blinded block and get unblinded execution payload. |
GetHeaderResponse getHeader(slot, parent_hash, pubkey)
Get an execution payload header.
Requests a builder node to produce a valid execution payload header, which can be integrated into a blinded beacon block and signed. If the builder is unable to produce a valid execution payload header, then the builder MUST return a 204 response. If the request is invalid, then the builder MUST return an error response (400) with a description of the validation failure. After Deneb, return the KZG commitments for any associated blobs attached to the execution payload.
Name | Type | Description | Notes |
---|---|---|---|
slot | String | The slot for which the block should be proposed. | [default to null] |
parent_hash | String | Hash of execution layer block the proposer will build on. | [default to null] |
pubkey | String | The validator's BLS public key. | [default to null] |
Name | Type | Description | Notes |
---|---|---|---|
version | String | [default to null] | |
data | GetHeaderResponse_data | [default to null] |
No authorization required
- Content-Type: Not defined
- Accept:
application/json
registerValidator(registerValidator_request_inner)
Register or update a validator's block building preferences.
Registers a validator's preferred fee recipient and gas limit. A success response (200) indicates that the registration was valid. If the registration passes validation, then the builder MUST integrate the registration into its state, such that future blocks built for the validator conform to the preferences expressed in the registration. If the registration is invalid, then the builder MUST return an error response (400) with a description of the validation failure.
Name | Type | Description | Notes |
---|---|---|---|
registerValidator_request_inner | List | A signed declaration of a validator's block building preferences. |
Name | Type | Description | Notes |
---|---|---|---|
message | registerValidator_request_inner_message | [default to null] | |
signature | String | [default to null] |
null (empty response body)
No authorization required
- Content-Type: application/json
- Accept: application/json
status()
Check if builder is healthy.
Checks if builder can respond to requests normally.
This endpoint does not need any parameter.
null (empty response body)
No authorization required
- Content-Type: Not defined
- Accept: application/json
SubmitBlindedBlockResponse submitBlindedBlock(submitBlindedBlock_request, Eth-Consensus-Version)
Submit a signed blinded block and get unblinded execution payload.
Submits a `SignedBlindedBeaconBlock` to the builder, binding the proposer to the block. A success response (200) indicates that the signed blinded beacon block was valid. If the signed blinded beacon block was invalid, then the builder must return an error response (400) with a description of the validation failure. After Deneb, this endpoint will additionally return the associated blobs in the response.
Name | Type | Description | Notes |
---|---|---|---|
submitBlindedBlock_request | submitBlindedBlock_request | A `SignedBlindedBeaconBlock`. | |
Eth-Consensus-Version | String | Version of the block being submitted | [optional] [default to null] [enum: phase0, altair, bellatrix, capella, deneb, electra] |
Name | Type | Description | Notes |
---|---|---|---|
parent_hash | String | [default to null] | |
fee_recipient | String | An address on the execution (Ethereum 1) network. | [default to null] |
state_root | String | [default to null] | |
receipts_root | String | [default to null] | |
logs_bloom | String | [default to null] | |
prev_randao | String | [default to null] | |
block_number | String | [default to null] | |
gas_limit | String | [default to null] | |
gas_used | String | [default to null] | |
timestamp | String | [default to null] | |
extra_data | String | Extra data on the execution (Ethereum 1) network. | [default to null] |
base_fee_per_gas | String | [default to null] | |
block_hash | String | [default to null] | |
transactions | List | [default to null] | |
withdrawals | List | [default to null] | |
execution_payload | SubmitBlindedBlockResponse_data_oneOf_2_execution_payload | [default to null] | |
blobs_bundle | SubmitBlindedBlockResponse_data_oneOf_2_blobs_bundle | [default to null] |
No authorization required
- Content-Type:
application/json
- Accept:
application/json