Skip to main content

eth_getBlockByHash

Returns information about a block by hash on Scroll.

Why Scroll? Build on the largest zkEVM by market share with $750M+ TVL and bytecode-level Ethereum equivalence with bytecode-level EVM equivalence, native Hardhat/Remix/MetaMask support, decentralized proof validation, and Scroll SDK for L2/L3 deployment.

Use Cases#

The eth_getBlockByHash method is essential for:

  • Block verification - Verify block data using its unique hash
  • Chain reorganization handling - Track blocks during reorgs
  • Cross-chain bridges - Verify block finality for zero-migration DeFi protocols, zkEVM-native dApps, and 100+ ecosystem projects with native Ethereum tooling
  • Deterministic queries - Get consistent block data regardless of chain state

Parameters#

ParameterTypeRequiredDescription
blockHashDATAYes32-byte block hash
fullTransactionsBooleanYesIf true, returns full transaction objects; if false, returns transaction hashes

Request#

{
"jsonrpc": "2.0",
"method": "eth_getBlockByHash",
"params": [
"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
false
],
"id": 1
}

Returns#

Returns the same block object as eth_getBlockByNumber, or null if no block is found.

FieldTypeDescription
numberQUANTITYBlock number
hashDATA32-byte block hash
parentHashDATA32-byte parent block hash
timestampQUANTITYUnix timestamp
gasUsedQUANTITYTotal gas used
transactionsArrayTransaction objects or hashes

Code Examples#

curl -X POST https://api-scroll-mainnet.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_getBlockByHash",
"params": [
"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
false
],
"id": 1
}'

Error Handling#

Error CodeMessageDescription
-32602Invalid paramsInvalid block hash format
-32000Block not foundBlock with this hash does not exist