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

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.

Parameters

Parameter
Type
Required
Description

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"
}'
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_traceTransaction',
    params: ['0x3c8a1f5b2d9e4076c1a8b3d5e7f9021436587a9cbdef012345678abcdef901234', { 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_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

Parameter
Type
Description

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

Error Code
Message
Description

-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?