All standard Ethereum JSON-RPC methods work identically on Flashblocks endpoints. Use the
"pending" block tag to resolve against pre-confirmed state instead of the transaction pool. See the Overview for endpoint URLs and a full explanation of the two tiers.HTTP Methods
| Method | Description |
|---|---|
| eth_simulateV1 | Simulate transaction bundles against pre-confirmed state |
| base_transactionStatus | Check if a transaction has been received by the node mempool |
WebSocket Subscriptions
On a Flashblocks WSS endpoint,eth_subscribe with newHeads emits a new event approximately every 200ms per Flashblock instead of every 2 seconds. Three additional subscription types are also available that are exclusive to Flashblocks endpoints:
| Subscription | Description |
|---|---|
| newFlashblockTransactions | Stream individual transactions as they are pre-confirmed (~200ms each) |
| pendingLogs | Stream filtered event logs from pre-confirmed transactions |
| newFlashblocks | Stream full Flashblock payload objects from the sequencer |
Infrastructure Stream
The raw Flashblocks infrastructure stream is the upstream WebSocket feed consumed by Flashblocks-aware RPC nodes. It emits a new message approximately every 200ms as the sequencer pre-confirms transactions.| Network | Raw stream URL |
|---|---|
| Mainnet | wss://mainnet.flashblocks.base.org/ws |
| Sepolia | wss://sepolia.flashblocks.base.org/ws |
Flashblock Object
The root structure of each infrastructure stream message.Unique identifier for the block being built. Remains consistent across all Flashblocks within a single full block.
Flashblock index within the current block. Starts at 0 (system transactions only). User transactions begin at index 1. Typically reaches 9–10 per block, but may exceed 10 during sequencer timing drift.
Block header properties. Only present when
index is 0. See Base Object.Incremental block state changes for this Flashblock. Present in every message. See Diff Object.
Supplemental data. Unstable — fields may change without notice. See Metadata Object.
Base Object
Contains full block header properties. Only present in theindex: 0 message (the first Flashblock of each full block).
Hash of the parent block.
Address receiving transaction fees (coinbase).
Block number in hex.
Maximum gas allowed in this block (hex).
Unix timestamp of block creation (hex).
EIP-1559 base fee per gas (hex).
Previous RANDAO value used for on-chain randomness.
Arbitrary data field set by the sequencer.
Diff Object
Contains the incremental block state changes for this specific Flashblock. Present in every message.Merkle root of the state trie after applying this Flashblock’s transactions.
Hash of the partial block at this Flashblock index. Changes with each Flashblock as more transactions are pre-confirmed.
Cumulative gas used up to and including this Flashblock (hex).
Cumulative blob gas used (EIP-4844, hex).
Array of RLP-encoded transactions included in this Flashblock.
Validator withdrawals (always empty on Base L2).
Merkle root of transaction receipts.
Bloom filter for logs in this Flashblock.
Merkle root of withdrawals.
Metadata Object
Receipt Object
The abbreviated transaction receipt included inmetadata.receipts. Check the type field to determine transaction type.
Transaction type:
0x0 Legacy, 0x1 Access List, 0x2 EIP-1559, 0x7e Deposit (L1→L2).Transaction status:
0x1 for success, 0x0 for failure.Total gas used in the block up to and including this transaction (hex).
Array of event logs emitted by the transaction. See Log Object.
Bloom filter for the logs in this receipt.
Index of the transaction within the block (hex).
Log Object
Complete Examples
Index 0 — includes thebase object (block header):
base object: