> For the complete documentation index, see [llms.txt](/llms.txt).

# `debug_traceCall`

Returns the number of possible tracing result by executing an `eth_call` within the context of the given block execution. This method uses [1000 credits](/services/get-started/pricing/) from your daily balance.

Limited access

Infura restricts `debug_traceCall` to a select set of customers. Please [contact the Infura support team](https://support.infura.io/ipfs) to ask about custom plans.

## Parameters[​](#parameters "Direct link to Parameters")

- Transaction object with the following fields:

  - `from`: (string) address (20 bytes) the transaction is sent from.
  - `to`: (string) _[required]_ address (20 bytes) the transaction is directed to.
  - `gas`: (string) hexadecimal value of the gas provided for the transaction execution. `eth_call` consumes zero gas, but this parameter may be needed by some executions.
  - `gasPrice`: (string) hexadecimal value of the `gasPrice` used for each paid gas.
  - `maxPriorityFeePerGas`: (string) maximum fee, in wei, the sender is willing to pay per gas above the base fee.
  - `maxFeePerGas`: (string) maximum total fee (base fee + priority fee), in wei, the sender is willing to pay per gas.
  - `value`: (string) hexadecimal of the value sent with this transaction.
  - `data`: (string) hash of the method signature and encoded parameters. See [Ethereum contract ABI specification](https://docs.soliditylang.org/en/latest/abi-spec.html).
- `block parameter`: [_Required_] hexadecimal block number, or one of the string tags `latest`, `earliest`, `pending`, or `finalized`. See the [default block parameter](https://ethereum.org/en/developers/docs/apis/json-rpc/#default-block).  
warning  
`safe` isn't supported. Use `finalized` instead.
- Optional tracing options object with the following fields:

  - `tracer`: (string) _[optional]_ type of tracer. Supports `callTracer` or `prestateTracer`.
  - `tracerConfig`: (object) _[optional]_ tracer configuration options:  
    - `onlyTopCall`: (boolean) _[optional]_ when `true`, will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame.

## Returns[​](#returns "Direct link to Returns")

Depending on the specified tracer type, returns a `callTracer` object or `prestateTracer` object.

## Example[​](#example "Direct link to Example")

Replace `<YOUR-API-KEY>` with an API key from your [Infura dashboard](https://app.infura.io/).

### Request[​](#request "Direct link to Request")

- curl
- WSS

```
curl https://scroll-mainnet.infura.io/v3/<YOUR-API-KEY> \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "method": "debug_traceCall", "params": [{"to": "0x6b175474e89094c44da98b954eedeac495271d0f", "data": "0x70a082310000000000000000000000006E0d01A76C3Cf4288372a29124A26D4353EE51BE"}, "latest", {"tracer": "callTracer"}], "id": 1}'

```

```
wscat -c wss://scroll-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "method": "debug_traceCall", "params": [{"to": "0x6b175474e89094c44da98b954eedeac495271d0f", "data": "0x70a082310000000000000000000000006E0d01A76C3Cf4288372a29124A26D4353EE51BE"}, "latest", {"tracer": "callTracer"}], "id": 1}'

```

### Response[​](#response "Direct link to Response")

```
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "from": "0x0000000000000000000000000000000000000000",
    "gas": "0x28cc0",
    "gasUsed": "0x3635000",
    "to": "0x6b175474e89094c44da98b954eedeac495271d0f",
    "input": "0x70a082310000000000000000000000006e0d01a76c3cf4288372a29124a26d4353ee51be",
    "value": "0x0",
    "type": "CALL"
  }
}

```
