Skip to main content

engine_forkchoiceUpdatedV3

Updates the forkchoice state

Params

(2)

1. Forkchoice state (required)

headBlockHash
string
required
Match pattern:
^0x[0-9a-f]{64}$
safeBlockHash
string
required
Match pattern:
^0x[0-9a-f]{64}$
finalizedBlockHash
string
required
Match pattern:
^0x[0-9a-f]{64}$

2. Payload attributes

timestamp
string
required
Match pattern:
^0x([1-9a-f]+[0-9a-f]{0,15})|0$
prevRandao
string
required
Match pattern:
^0x[0-9a-f]{64}$
suggestedFeeRecipient
string
required
Match pattern:
^0x[0-9,a-f,A-F]{40}$
withdrawals
array[Withdrawal object V1]
required
index
string
required
Match pattern:
^0x([1-9a-f]+[0-9a-f]{0,15})|0$
validatorIndex
string
required
Match pattern:
^0x([1-9a-f]+[0-9a-f]{0,15})|0$
address
string
required
Match pattern:
^0x[0-9,a-f,A-F]{40}$
amount
string
required
Match pattern:
^0x([1-9a-f]+[0-9a-f]{0,15})|0$
parentBeaconBlockRoot
string
required
Match pattern:
^0x[0-9a-f]{64}$

Result

(Response object)
payloadStatus
Payload status
required
status
string
required

Set of possible values is restricted to VALID, INVALID, SYNCING

Allowed values:
VALIDINVALIDSYNCING
latestValidHash
string
Match pattern:
^0x[0-9a-f]{64}$
validationError
string
payloadId
string
Match pattern:
^0x[0-9a-f]{16}$

Errors

CodeMessage
-38002Invalid forkchoice state
-38003Invalid payload attributes
-32602Invalid params
-38005Unsupported fork

Params

Forkchoice state

Payload attributes

Withdrawals*

Request

await window.ethereum.request({
"method": "engine_forkchoiceUpdatedV3",
"params": [
null,
null
]
});