Marketplace has launched, further enabling blockchain developers! Learn more


debug_traceCall RPC method

The debug_traceCall EVM method is only supported on the Avalanche C-Chain.


  1. Object - The transaction call object, should have this shape:

    from - (optional) String of the address the transaction is sent from.

    to - String of the address the transaction is directed to.

    gas - (optional) Integer of the gas provided for the transaction execution.

    gasPrice - (optional) Integer of the gasPrice used for each paid gas encoded as a hexadecimal.

    value - (optional) Integer of the value sent with this transaction encoded as a hexadecimal.

    data - (optional) String of the hash of the method signature and encoded parameters, see the Ethereum Contract ABI.

  2. Quantity or Tag - Integer block number, or the string 'latest', 'earliest' or 'pending', see the default block parameter.


    1. Array - Block traces, which have the following object shape (all return types are hexadecimal representations of their data type unless otherwise stated):

      Result - Transaction Trace Object, which has the following fields:

      Failed - Boolean.

      Gas - Quantity.

      ReturnValue - Data.

      StructLogs - Array:

      Entries - Array.

      StoragesByDepth - Array.

Code Examples:

To use the debug_traceCall EVM method on the Avalanche C-Chain, ensure that the end of your URL includes ext/bc/C/rpc.

const ethers = require("ethers");
(async () => {
  const provider = new ethers.providers.JsonRpcProvider("");
  const response = await provider.send("debug_traceCall", [
      "to": "0x6b175474e89094c44da98b954eedeac495271d0f",
Ready to get started? Create a free account