For the complete documentation index, see llms.txt. This page is also available as Markdown.

debug_traceBlockByHash - GIWA

Example code for the debug_traceBlockByHash JSON-RPC method. Complete guide on how to use debug_traceBlockByHash JSON-RPC in GetBlock Web3 documentation.

This method traces the execution of every transaction in a block identified by its hash. It is a Dedicated Node tier method commonly used with the callTracer.

Parameters

Parameter
Type
Required
Description

blockHash

string

Yes

32-byte block hash

options

object

No

Tracer options (e.g. callTracer)

Request

curl --location --request POST 'https://shared.ap-southeast-1.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "debug_traceBlockByHash",
    "params": ["0x9f2b4c1d7e3a6084b5c9d0e1f2a3b4c5d6e7f8091a2b3c4d5e6f708192a3b4c5d", { "tracer": "callTracer" }],
    "id": "getblock.io"
}'
example.js
const axios = require('axios');

const response = await axios.post('https://shared.ap-southeast-1.getblock.io/<ACCESS-TOKEN>/', {
    jsonrpc: '2.0',
    method: 'debug_traceBlockByHash',
    params: ['0x9f2b4c1d7e3a6084b5c9d0e1f2a3b4c5d6e7f8091a2b3c4d5e6f708192a3b4c5d', { tracer: 'callTracer' }],
    id: 'getblock.io'
}, {
    headers: { 'Content-Type': 'application/json' }
});

console.log(response.data.result);
example.py
import requests

response = requests.post(
    'https://shared.ap-southeast-1.getblock.io/<ACCESS-TOKEN>/',
    headers={'Content-Type': 'application/json'},
    json={
        'jsonrpc': '2.0',
        'method': 'debug_traceBlockByHash',
        'params': ['0x9f2b4c1d7e3a6084b5c9d0e1f2a3b4c5d6e7f8091a2b3c4d5e6f708192a3b4c5d', { 'tracer': 'callTracer' }],
        'id': 'getblock.io'
    }
)

print(response.json())

Response

{
    "jsonrpc": "2.0",
    "id": "getblock.io",
    "result": [
        {
            "txHash": "0x3c8a1f5b2d9e4076c1a8b3d5e7f9021436587a9cbdef012345678abcdef901234",
            "result": {
                "type": "CALL",
                "from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
                "to": "0x4200000000000000000000000000000000000006",
                "gasUsed": "0x5208",
                "calls": []
            }
        }
    ]
}

Response Parameters

Parameter
Type
Description

jsonrpc

string

JSON-RPC protocol version ("2.0")

id

string

Request identifier matching the request

result

array

Per-transaction execution traces for the block

Use Cases

  • Block Tracing: Trace all transactions in a known block by hash

  • Call Graphs: Extract internal calls with the callTracer

  • MEV Analysis: Reconstruct ordering and internal transfers

  • Debugging: Investigate failures across a block

Error Handling

Error Code
Message
Description

-32602

Invalid params

Malformed block hash or tracer options

-32601

Method not found

The debug namespace is not enabled on this endpoint

Web3 Integration

Last updated

Was this helpful?