trace_transaction

Traces a call to eth_sendRawTransaction without making the call, returning the traces

๐Ÿšง

Note for trace_ methods

  1. trace_ namespace methods are only available on paid plans.
    1. developer plan, team plan, enterprise plan, custom plans. dedicated nodes
  2. trace_ namespace methods are only available on erigon client.

Parameters

  • transactionHash - the transaction hash of the transaction that needs to be traced.
curl https://ethereum-mainnet-archive.allthatnode.com/8U3JLUhzIDg3GShvy9hkCCSYkLGc11kj \
--request POST \
--header "Content-Type: application/json" \
--data '{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "trace_transaction",
  "params": [
    "0xa310ce8dc2288d000bd3043a861a822b47894d1730cf0f9b75ad8cc34a7107be"
  ]
}'

Returns

  • An array of traces matching given filter
    • action - The ParityTrace object, which has the following fields:
      • from - The address of the sender
      • callType - The type of method such as call, delegatecall
      • gas - The gas provided by the sender, encoded as hexadecimal
      • input - The data sent along with the transaction
      • to - The address of the receiver
      • value - The integer of the value sent with this transaction, encoded as hexadecimal
    • blockHash - The hash of the block where this transaction was in
    • blockNumber - An integer value representing the block number where this transaction was in
    • error - The error message, if any
    • result - The ParityTraceResult object which has the following fields:
      • gasUsed - The amount of gas used by this specific transaction alone
      • output - The value returned by the contract call, and it only contains the actual value sent by the RETURN method. If the RETURN method was not executed, the output is empty bytes
    • subtraces - The traces of contract calls made by the transaction
    • traceAddress - The list of addresses where the call executed, the address of the parents and the order of the current sub call
    • transactionHash - The hash of the transaction
    • transactionPosition - The transaction position
    • type - The value of the method such as call or create
{
    "jsonrpc": "2.0",
    "id": 1,
    "result": [
        {
            "action": {
                "from": "0x42b4d2b675c0553b7fac27b32dc45c53fec1ed63",
                "callType": "call",
                "gas": "0xb9c3",
                "input": "0xa9059cbb00000000000000000000000051d5d0139e10a28bd820731cec2842e99331eeed00000000000000000000000000000000000000000000000000000000026a2dcc",
                "to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
                "value": "0x0"
            },
            "blockHash": "0x3db47b026da64a965e7f40a88cd5cf36befcf940be96ca23526348e7afd9d9be",
            "blockNumber": 17784556,
            "result": {
                "gasUsed": "0x5fb5",
                "output": "0x"
            },
            "subtraces": 0,
            "traceAddress": [],
            "transactionHash": "0xa310ce8dc2288d000bd3043a861a822b47894d1730cf0f9b75ad8cc34a7107be",
            "transactionPosition": 104,
            "type": "call"
        }
    ]
}

Try Yourself

Language
Click Try It! to start a request and see the response here!