Skip to main content

debug_traceTransaction RPC Method

Returns all traces of a given transaction (Trace Mode required).

Updated on
Aug 2, 2024

debug_traceTransaction RPC Method

Please note that all debug_trace methods can be used for blocks after 22207818, while arbtrace_ methods can be used on blocks prior to 22207816. Block 22207817 cannot be traced but is empty.
Please note that this RPC method is available to all users on the Growth plan and higher. If you are using the Free or Starter plan, you will need to upgrade to utilize this method. See our pricing for more information.

Parameters

transactionHash
string
The transaction hash that needs to be traced, encoded in hexadecimal format
object
object
REQUIRED
The tracer object with the following fields:
tracer
string
The type of tracer. It could be callTracer, prestateTracer or stylusTracer
tracerConfig
object
The object to specify the configurations of the tracer
onlyTopCall
boolean
When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame
timeout
string
A string of decimal integers that overrides the JavaScript-based tracing calls default timeout of 5 seconds.

Returns

result
An object containing detailed information about the traced transaction
beforeEVMTransfers
An array representing EVM transfers that occurred before the execution of the transaction
purpose
(Optional) The purpose of the EVM transfer
from
(Optional) The Ethereum address initiating the transfer
to
(Optional) The Ethereum address receiving the transfer
value
(Optional) The value of the transfer, specified in hexadecimal format (Wei)
afterEVMTransfers
An array representing EVM transfers that occurred after the execution of the transaction
purpose
(Optional) The purpose of the EVM transfer
from
(Optional) The Ethereum address initiating the transfer
to
(Optional) The Ethereum address receiving the transfer
value
(Optional) The value of the transfer, specified in hexadecimal format (Wei)
from
The address the transaction is sent from
gas
The integer of the gas provided for the transaction execution
gasUsed
The integer of the gas used
to
The address the transaction is directed to
input
The data given at the time of input
calls
An array containing information about internal calls made during the transaction
from
The address making the call
gas
The gas limit specified for the call
gasUsed
The amount of gas used during the call
to
The address being called
input
The input data for the call
output
The output data of the call
value
The value (in Wei) sent with the call
type
The type of call (e.g., CALL or STATICCALL)
calls
The sub-calls associated with the call
value
The integer of the value sent with this transaction
type
The type of the call
Request
1
curl https://docs-demo.arbitrum-mainnet.quiknode.pro/ \
2
-X POST \
3
-H "Content-Type: application/json" \
4
--data '{"method":"debug_traceTransaction","params":["0x3c9329b765d88c03d18f87dc1f2b5138c89d9a415d5c73dc7827b87aca176c8e", {"tracer": "callTracer"}], "id":1,"jsonrpc":"2.0"}'
5
Don't have an account yet?
Create your QuickNode endpoint in seconds and start building
Get started for free