debug_traceTransaction - GIWA
Example code for the debug_traceTransaction JSON-RPC method. Complete guide on how to use debug_traceTransaction JSON-RPC in GetBlock Web3 documentation.
This method replays a mined transaction and returns a detailed execution trace, including internal calls and value transfers. It is a Dedicated Node tier method widely used for debugging and MEV analysis.
This method belongs to the debug namespace and is available on GetBlock Dedicated Nodes only. It is not served on shared endpoints.
Parameters
transactionHash
string
Yes
32-byte transaction hash
options
object
No
Tracer options (e.g. callTracer, prestateTracer)
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_traceTransaction",
"params": ["0x3c8a1f5b2d9e4076c1a8b3d5e7f9021436587a9cbdef012345678abcdef901234", { "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_traceTransaction',
params: ['0x3c8a1f5b2d9e4076c1a8b3d5e7f9021436587a9cbdef012345678abcdef901234', { 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_traceTransaction',
'params': ['0x3c8a1f5b2d9e4076c1a8b3d5e7f9021436587a9cbdef012345678abcdef901234', { 'tracer': 'callTracer' }],
'id': 'getblock.io'
}
)
print(response.json())Response
{
"jsonrpc": "2.0",
"id": "getblock.io",
"result": {
"type": "CALL",
"from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"to": "0x4200000000000000000000000000000000000006",
"value": "0x0",
"gasUsed": "0x5208",
"output": "0x",
"calls": []
}
}Response Parameters
jsonrpc
string
JSON-RPC protocol version ("2.0")
id
string
Request identifier matching the request
result
object
Execution trace of the transaction
Use Cases
Transaction Debugging: Trace exactly how a transaction executed
Internal Transfers: Extract nested calls and ETH movements
MEV Analysis: Reconstruct arbitrage and sandwich behavior
Revert Root Cause: Locate the frame where a transaction reverted
Error Handling
-32602
Invalid params
Malformed transaction hash or tracer options
-32601
Method not found
The debug namespace is not enabled on this endpoint
Web3 Integration
Last updated
Was this helpful?