Skip to main content

Flashblocks


What is Flashblocks?

Flashblocks lets you get transaction and network state faster by using the current in-progress block state before the block is finally confirmed. You can check information at shorter intervals than waiting for the block to be fully produced, which is useful for latency-sensitive applications.

This feature does not replace block confirmation; it aims to give fast feedback based on pre-confirmation state. You can see the latest state before confirmation—such as whether a transaction is included in a block, account balance and nonce changes, event logs, and call results. This is not final confirmed state, but it can be used as fast, meaningful feedback for user experience.


Supported JSON-RPC methods

Flashblocks is available with the pending block tag on the following standard JSON-RPC methods, so you can query results that reflect pre-confirmation state. State queried with pending reflects the current in-progress block after the last confirmed block (the latest tag).


Usage example

Below is a simple example of querying pending state via JSON-RPC.

eth_call example

curl https://giwa-sepolia.nodit.io/{{API-KEY}} \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"method":"eth_call",
"params":[
{ "to": "0x...", "data": "0x..." },
"pending"
],
"id":1
}'

eth_getBlockByNumber example

curl https://giwa-sepolia.nodit.io/{{API-KEY}} \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"method":"eth_getBlockByNumber",
"params":["pending", true],
"id":1
}'

:::info 📘 Note

Responses based on pending reflect pre-confirmation state and may change during block production and finalization. Since this is not final confirmed state, any logic requiring consistency and finality should use confirmed block state instead. :::


Official documentation

For more details on Flashblocks on GIWA, refer to the GIWA official documentation.