> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uniblock.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# arbtrace_call

> Simulates a message call and returns detailed traces, such as VM execution trace, state diffs, and basic call traces. Supported only on OpenEthereum and Erigon with trace mode enabled (for blocks &lt; 22207816).

### Parameters

<ParamField query="chainId" type="string" default="421614" required>
  Unique identifier for a blockchain network.
</ParamField>

<ParamField body="id" type="number" default={1} required>
  Request identifier used to match responses.
</ParamField>

<ParamField body="jsonrpc" type="string" default="2.0" required>
  JSON-RPC version.
</ParamField>

<ParamField body="method" type="string" default="arbtrace_call" required>
  JSON-RPC method name.
</ParamField>

<ParamField body="params" type="object" default={[{},["trace"],"latest"]} placeholder="[{},[&#x22;trace&#x22;],&#x22;latest&#x22;]" required>
  An array containing the transaction call object, trace types, and block tag/number.

  Positional parameters for <code>arbtrace\_call</code>:

  <ul>
    <li><code>params\[0]</code>: Transaction call object for simulation.</li>
    <li><code>params\[1]</code>: Trace types to return: trace, vmTrace, or stateDiff.</li>
    <li><code>params\[2]</code>: Block number (hex) or tag ("latest", "pending").</li>
  </ul>
</ParamField>

### Returns

<ResponseField name="result" type="object">
  Traces of the simulated call execution.

  <Expandable title="properties">
    <ResponseField name="output" type="string">
      Output returned by the simulated contract call (hex encoded).
    </ResponseField>

    <ResponseField name="trace" type="array">
      Basic call traces.

      <Expandable title="items">
        <ResponseField name="items[]" type="object">
          <Expandable title="properties">
            <ResponseField name="action" type="object">
              <Expandable title="properties">
                <ResponseField name="from" type="string" />

                <ResponseField name="to" type="string" />

                <ResponseField name="callType" type="string" />

                <ResponseField name="gas" type="string" />

                <ResponseField name="input" type="string" />

                <ResponseField name="value" type="string" />
              </Expandable>
            </ResponseField>

            <ResponseField name="result" type="object">
              <Expandable title="properties">
                <ResponseField name="gasUsed" type="string" />

                <ResponseField name="output" type="string" />
              </Expandable>
            </ResponseField>

            <ResponseField name="subtraces" type="integer" />

            <ResponseField name="traceAddress" type="array">
              <Expandable title="items">
                <ResponseField name="items[]" type="integer" />
              </Expandable>
            </ResponseField>

            <ResponseField name="transactionPosition" type="integer" />

            <ResponseField name="type" type="string" />
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="vmTrace" type="object">
      Virtual machine execution trace (if requested).
    </ResponseField>

    <ResponseField name="stateDiff" type="object">
      State difference result of call (if requested).
    </ResponseField>

    <ResponseField name="destroyedContracts" type="array">
      List of self-destructed contracts.

      <Expandable title="items">
        <ResponseField name="items[]" type="string" />
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash Curl theme={null}
  curl --request POST \
    --url https://api.uniblock.dev/uni/v1/json-rpc?chainId=421614 \
    --header 'content-type: application/json' \
    --data '{
      "id": 1,
      "jsonrpc": "2.0",
      "method": "arbtrace_call",
      "params": [
        {},
        [
          "trace"
        ],
        "latest"
      ]
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json Success theme={null}
  {
    "jsonrpc": "2.0",
    "id": 1,
    "result": {}
  }
  ```
</ResponseExample>
