Get you own node endpoint today
Start for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.Parameters
string— the subscription type,newFlashblocksin this case.
Response
subscription— the subscription ID.
hash— the block hash. Set to0x0000...0000because the block is still being formed (pre-confirmed).parentHash— hash of the parent block.sha3Uncles— hash of the list of uncles included in the block.miner— the address of the fee recipient (coinbase), typically0x4200000000000000000000000000000000000011.stateRoot— root of the state trie. Set to0x0000...0000because the block is not yet finalized.transactionsRoot— root of the transaction trie of the block.receiptsRoot— root of the receipts trie of the block.logsBloom— bloom filter for the logs in this Flashblock.difficulty— always0x0on Base.number— the block number, encoded as hexadecimal.gasLimit— maximum gas allowed in this block (hex).gasUsed— cumulative gas used up to and including this Flashblock (hex).timestamp— Unix timestamp of block creation (hex).extraData— arbitrary data field set by the sequencer.mixHash— the previous RANDAO value.nonce— always0x0000000000000000on Base.baseFeePerGas— EIP-1559 base fee per gas (hex).withdrawalsRoot— Merkle root of withdrawals.blobGasUsed— cumulative blob gas used, EIP-4844 (hex).excessBlobGas— excess blob gas (hex).parentBeaconBlockRoot— parent beacon block root.uncles— always empty on Base.transactions— array of full transaction objects included in this Flashblock so far. Each object includes standard transaction fields (type,from,to,value,input,hash, etc.).withdrawals— always empty on Base L2.
The
hash and stateRoot fields are zeroed because the block is still being assembled. Once the full 2-second block seals, these values are computed and finalized. See Flashblocks on Base for a comparison.eth_subscribe("newFlashblocks") code examples
Note that subscriptions require a WebSocket connection and WebSocket cat for you to use this method in the console.Install WebSocket cat with:
npm install -g wscatExample notification
Use case
Theeth_subscribe("newFlashblocks") method is useful when you need the complete pre-confirmed block state rather than individual transactions or logs:
-
Block building and state reconstruction. Applications that need to reconstruct the full pending block state—such as custom block explorers or analytics platforms—can consume the Flashblock stream directly instead of polling
eth_getBlockByNumberwithpending. - MEV strategy development. Searchers can observe the sequencer’s transaction ordering in real time across each ~200ms Flashblock, gaining insight into how the pending block is being constructed.
- Infrastructure monitoring. Node operators and RPC providers can use the Flashblock stream to monitor sequencer health, block production cadence, and gas usage patterns with sub-second granularity.