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 examples

Below are simple examples of querying state with the pending block tag 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
}'

📘 Usage notes

Responses for pending reflect state before block confirmation and may change as blocks are produced and confirmed. They are not final; for logic that requires consistency and finality, use confirmed block state.


Official documentation

For more on Flashblocks on GIWA, see the GIWA official documentation.