Skip to main content

debug_traceCall

Traces a call without creating a transaction on Immutable.

Archive Node Required

This method requires an archive node. It is not available on full nodes.

Use Cases#

  • Transaction simulation - Debug before sending
  • Gas analysis - Analyze gas usage per opcode
  • Contract debugging - Step through execution for Web3 gaming (Gods Unchained, RavenQuest), gaming NFTs with enforced royalties, and cross-chain game assets

Parameters#

ParameterTypeRequiredDescription
callObjectYesCall object (same as eth_call)
blockNumberQUANTITY|TAGYesBlock number or tag
tracerConfigObjectNoTracer configuration

Request#

{
"jsonrpc": "2.0",
"method": "debug_traceCall",
"params": [
{
"to": "0x3A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D",
"data": "0x70a082310000000000000000000000003A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D"
},
"latest",
{}
],
"id": 1
}

Code Examples#

curl -X POST https://api-immutable-zkevm-mainnet.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "debug_traceCall",
"params": [
{"to": "0x3A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D", "data": "0x70a082310000000000000000000000003A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D"},
"latest",
{"tracer": "callTracer"}
],
"id": 1
}'