debug_traceBlock - GIWA
Example code for the debug_traceBlock JSON-RPC method. Complete guide on how to use debug_traceBlock JSON-RPC in GetBlock Web3 documentation.
This method replays and traces all transactions in an RLP-encoded block, returning per-transaction execution traces. It is a Dedicated Node tier method.
This method belongs to the debug namespace and is available on GetBlock Dedicated Nodes only. It is not served on shared endpoints.
Parameters
blockRlp
string
Yes
0x-prefixed RLP-encoded block
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_traceBlock",
"params": ["0xf90211a0...", { "tracer": "callTracer" }],
"id": "getblock.io"
}'const axios = require('axios');
const response = await axios.post('https://shared.ap-southeast-1.getblock.io/<ACCESS-TOKEN>/', {
jsonrpc: '2.0',
method: 'debug_traceBlock',
params: ['0xf90211a0...', { tracer: 'callTracer' }],
id: 'getblock.io'
}, {
headers: { 'Content-Type': 'application/json' }
});
console.log(response.data.result);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_traceBlock',
'params': ['0xf90211a0...', { 'tracer': 'callTracer' }],
'id': 'getblock.io'
}
)
print(response.json())Response
{
"jsonrpc": "2.0",
"id": "getblock.io",
"result": [
{
"result": {
"type": "CALL",
"from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"to": "0x4200000000000000000000000000000000000006",
"gasUsed": "0x5208",
"calls": []
}
}
]
}Response Parameters
jsonrpc
string
JSON-RPC protocol version ("2.0")
id
string
Request identifier matching the request
result
array
Per-transaction execution traces
Use Cases
Block Replay: Trace every transaction in a raw block
Debugging: Investigate execution across a whole block
Tracer Selection: Apply callTracer or a custom tracer to a block
Analysis: Reconstruct call graphs from block execution
Error Handling
-32602
Invalid params
Malformed RLP or tracer options
-32601
Method not found
The debug namespace is not enabled on this endpoint
Web3 Integration
Last updated
Was this helpful?