# Ethereum trace_replayBlockTransactions RPC method

Ethereum API method that replays all transactions in a block returning the requested traces for each transaction.

Information

This method is available on Erigon when the trace namespace is enabled.

Learn how to deploy a node with the debug and trace API methods enabled.

Parameters:

  • data — the raw transaction data.
  • array — the type of trace, one or more of:
    • vmTrace — to get a full trace of virtual machine's state during the execution of the given transaction, including any subcalls.
    • trace — to get the basic trace of the given transaction.
    • statediff — to get information on altered Ethereum state due to execution of the given transaction.

Returns:

  • array — the block traces that have the following object shape (all return types are hexadecimal representations of their data type unless otherwise stated):
  • Output — string.
  • transactionHash — the string of the transaction hash.
  • vmtrace — the ParityVmTrace object with:
    • code — string.
    • operations — the array of the ParityVmOperationTrace objects.
  • action — the ParityTrace object with:
    • traceaddress — array.
    • calltype — string.
    • includeintrace — boolean.
    • isprecomplied — boolean.
    • type — string.
    • creationmethod — string.
    • from — address.
    • to — address.
    • gas — quantity.
    • value — quantity.
    • input — data.
    • result — the ParityTraceResult object with:
      • gasused — quantity.
      • output — data.
      • address — address.
      • code — data.
    • subtraces — array.
    • author — address.
    • rewardtype — string.
    • error — string.
  • statechanges — array.

Example:

  • web3.py
  • cURL
from web3 import Web3
node_url = "CHAINSTACK_NODE_URL"
web3 = Web3.HTTPProvider(node_url)

result = web3.make_request('trace_replayBlockTransactions', ['0xF42043',['trace']])
print(result)