debug_traceCall - Immutable RPC Method
Trace a call without executing on Immutable. Requires archive node for debugging Web3 gaming (Gods Unchained, RavenQuest), gaming NFTs with enforced royalties, and cross-chain game assets.
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
Request Parameters
Call object (same as eth_call)
Block number or tag
Tracer configuration
Response Body
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
}'import { JsonRpcProvider } from 'ethers';
const provider = new JsonRpcProvider('https://api-immutable-zkevm-mainnet.n.dwellir.com/YOUR_API_KEY');
const trace = await provider.send('debug_traceCall', [
{ to: '0x3A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D', data: '0x70a082310000000000000000000000003A0C2Ba54D6CBd3121f01b96DFd20e99D1696c9D' },
'latest',
{ tracer: 'callTracer' }
]);
console.log('Trace:', trace);Related Methods
eth_call- Execute call without tracedebug_traceTransaction- Trace actual transaction
debug_traceBlockByNumber
Trace all transactions in a block by number on Immutable. Requires archive node.
debug_traceTransaction
Trace a transaction execution on Immutable. Requires archive node for debugging Web3 gaming (Gods Unchained, RavenQuest), gaming NFTs with enforced royalties, and cross-chain game assets.