object — the transaction call object:
from — (optional) the address used to send the transaction.to — the address to which the transaction is directed, a wallet or a smart contract.gas — (optional) the maximum amount of gas that can be used by the transaction.gasPrice — (optional) the amount of gas price the sender is willing to pay for each gas unit in Wei.value — (optional) the value sent with this transaction, encoded as hexadecimal.data — (optional) additional data to be sent with the call, usually used to invoke functions from smart contracts.quantity or tag — the block number in hex format or block tag (latest, earliest, pending, safe, finalized).
object — (optional) an object identifying the type of tracer and its configuration:
4byteTracer — tracer that captures the function signatures and call data sizes.callTracer — tracer that captures information on all call frames executed during a transaction.prestateTracer — tracer with two modes: prestate and diff.disableStorage — when enabled, prevents tracing of storage changes.disableStack — when enabled, skips tracing of stack changes.enableMemory — when false, prevents tracing of memory changes.enableReturnData — when false, prevents tracing of return data.timeout — timeout period for JavaScript-based tracing calls. Default is 5s.enableMemory, disableStorage, disableStack, and enableReturnData settings will not have any effect.When no built-in tracer is selected, the response defaults to the Struct/opcode logger.callTracer responseobject — the callTracer traces object:
from — the address of the sender who initiated the transaction.gas — the units of gas included in the transaction by the sender.gasUsed — the total used gas by the call, encoded as hexadecimal.to — the address of the recipient of the transaction. For contract creation transactions, this field is null.input — the optional input data sent with the transaction.output — the return value of the call, encoded as a hexadecimal string.error — an error message in case the execution failed.revertReason — the reason why the transaction was reverted, returned by the smart contract if any.calls — a list of sub-calls made by the contract during the call, each represented as a nested call frame object.4byteTracer responseobject — the 4byteTracer traces object:
result — a map of the function signature, the call data size, and how many times the function was called.prestateTracer responseobject — the prestateTracer traces object:
smart contract address — the address of the smart contract associated with the result.
balance — the balance of the contract, expressed in Wei and encoded as a hexadecimal string.code — the bytecode of the contract, encoded as a hexadecimal string.nonce — the nonce of the account associated with the contract, represented as an unsigned integer.storage — a map of key-value pairs representing the storage slots of the contract.debug_traceCall code examplesdebug_traceCall method is to simulate and trace a smart contract function call without submitting an actual transaction. Developers can use this to inspect internal calls, verify expected behavior, and debug contract interactions before committing transactions on-chain. This is particularly useful for testing complex DeFi interactions on Arbitrum.