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

# Симуляция бандлов

> Симулируйте бандл транзакций и получайте точные оценки газа с помощью JSON-RPC-методов tenderly_simulateBundle и tenderly_estimateGasBundle.

<Note>Пользовательские RPC-методы находятся в пространстве имён **`tenderly_`**.</Note>

Два метода выполняют последовательность транзакций против заданного блока без их отправки в сеть. Каждая транзакция в бандле выполняется на состоянии, оставленном предыдущей:

* [`tenderly_simulateBundle`](#tenderly_simulatebundle) возвращает полный декодированный результат выполнения каждой транзакции: логи, трассировку вызовов, изменения активов и изменения балансов.
* [`tenderly_estimateGasBundle`](#tenderly_estimategasbundle) выполняет бандл тем же образом, но возвращает только показатели газа по каждой транзакции. Используйте его, когда нужны точные значения газа без полного payload симуляции.

### `tenderly_simulateBundle`

Симулирует бандл транзакций так, как он выполнился бы на заданном блоке, и возвращает результаты для каждой транзакции.

**Параметры**

1. **Transactions** Transactions `ARRAY`: список транзакций в бандле
   * **from** (*опционально*) `STRING`: адрес в hex
   * **to** `STRING`: адрес в hex
   * **gas** (*опционально*) `NUMBER`
   * **maxFeePerGas** (*опционально*) `NUMBER` max fee: максимальная суммарная комиссия за газ, которую отправитель готов заплатить (включает сетевую / базовую комиссию и комиссию майнера / приоритетную), в wei
   * **maxPriorityFeePerGas** (*опционально*) `NUMBER` max priority fee: максимальная комиссия за газ, которую отправитель готов заплатить майнерам, в wei
   * **gasPrice** (*опционально*) `NUMBER`: цена газа, которую отправитель готов заплатить, в wei
   * **value** (*опционально*) `NUMBER`
   * **data** (*опционально*) `STRING`: байты в hex
   * **accessList** (*опционально*) `ARRAY` из записей access list `OBJECT`
     * **address** `STRING` адрес в hex
     * **storageKeys** `ARRAY` из `STRING` — представление 32-байтового ключа хранилища в hex
2. **Simulation Block Number** (*опционально*) Номер блока, против которого должна быть симулирована транзакция. Одно из:
   * `STRING` номер блока
   * `ENUM` тег блока `earliest|finalized|safe|latest|pending`
3. **State Overrides** (*опционально*) `MAP`: сопоставление учётной записи (адреса) со спецификацией переопределения
   * **key** `STRING`: учётная запись, к которой применяется переопределение
   * **value** `OBJECT`: спецификация переопределения
     * **nonce** (*опционально*) `STRING`: hex-переопределение 8-байтового nonce для учётной записи
     * **code** (*опционально*) `STRING`: данные переопределения кода для учётной записи
     * **balance** (*опционально*) `STRING`: hex-переопределение 32-байтового баланса для учётной записи в wei
     * **stateDiff** (*опционально*) `MAP`: сопоставление ключа хранилища со значением переопределения
       * **key** `STRING`: ключ хранилища
       * **value** `STRING`: переопределяемое значение для указанного ключа хранилища
4. **Block Overrides** (опционально) `OBJECT`: набор полей заголовка блока для переопределения.
   * **number** *(опционально)* `STRING`: hex, переопределяет номер блока
   * **difficulty** *(опционально)* `STRING`: hex, переопределяет сложность блока
   * **time** (*опционально*) `STRING`: hex, переопределяет временную метку блока
   * **gasLimit** *(опционально)* `STRING`: hex, переопределяет лимит газа
   * **coinbase** *(опционально)* `STRING`: hex, переопределяет майнера блока
   * **random** *(опционально)* `STRING`: hex, переопределяет extra data блока, которое подаётся в опкод RANDOM
   * **baseFee** *(опционально)* `STRING`: hex, переопределяет базовую комиссию блока

**Пример**

<Tabs>
  <Tab title="example.json">
    ```json title="example.json" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    {
      "id": 0,
      "jsonrpc": "2.0",
      "method": "tenderly_simulateBundle",
      "params": [
      [
    {
      "from": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "data": "0x095ea7b300000000000000000000000020a5814b73ef3537c6e099a0d45c798f4bd6e1d60000000000000000000000000000000000000000000000000000000000000001"
    },
    {
      "from": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
      "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "data": "0x23b872dd000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa9604500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
    }
      ],
      "0xF4D880"
      ]
    }
    ```
  </Tab>

  <Tab title="example">
    ```bash title="example" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    curl https://mainnet.gateway.tenderly.co/$TENDERLY_NODE_ACCESS_KEY \
    -X POST \
    -H "Content-Type: application/json" \
    -d \
    '{
    "id": 0,
    "jsonrpc": "2.0",
    "method": "tenderly_simulateBundle",
    "params": [
    [
    {
    "from": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
    "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
    "data": "0x095ea7b300000000000000000000000020a5814b73ef3537c6e099a0d45c798f4bd6e1d60000000000000000000000000000000000000000000000000000000000000001"
    },
    {
    "from": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
    "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
    "data": "0x23b872dd000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa9604500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
    }
    ],
    "0xF4D880"
    ]
    }'
    ```
  </Tab>

  <Tab title="example.js">
    ```javascript title="example.js" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    // Installation Instructions: https://docs.ethers.io/v5/getting-started/#installing
    const { ethers } = require("ethers");

    async function runSimulateTransaction() {
    // Initialize an ethers instance
    const provider = new ethers.providers.JsonRpcProvider(
    "https://goerli.gateway.tenderly.co/$TENDERLY_WEB3_GATEWAY_KEY"
    );

    // Execute method
    const result = await provider.send("tenderly_simulateBundle", [
    [

    {
    "from": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
    "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
    "data": "0x095ea7b300000000000000000000000020a5814b73ef3537c6e099a0d45c798f4bd6e1d60000000000000000000000000000000000000000000000000000000000000001"
    },
    {
    "from": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
    "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
    "data": "0x23b872dd000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa9604500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
    }
    ],
    "0xF4D880",
    ]);

    // Print the output to console
    console.log(result);

    }

    (async () => {
    runSimulateTransaction();

    })();

    ```
  </Tab>

  <Tab title="example.json">
    ```json title="example.json" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    {
      "id": 0,
      "jsonrpc": "2.0",
      "result": [
    {
      "status": true,
      "gasUsed": "0xb3a8",
      "cumulativeGasUsed": "0x0",
      "blockNumber": "0xf4d881",
      "type": "0x0",
      "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000002000000080000000000000000200000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000080000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000010200000800000000000000000000000000000000000000000000000000000",
      "logs": [
    {
      "name": "Approval",
      "anonymous": false,
      "inputs": [
    {
      "value": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "type": "address",
      "name": "src"
    },
    {
      "value": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
      "type": "address",
      "name": "guy"
    },
    {
      "value": "1",
      "type": "uint256",
      "name": "wad"
    }
      ],
      "raw": {
      "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "topics": [
      "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925",
      "0x000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa96045",
      "0x00000000000000000000000020a5814b73ef3537c6e099a0d45c798f4bd6e1d6"
      ],
      "data": "0x0000000000000000000000000000000000000000000000000000000000000001"
    }
    }
      ],
      "trace": [
    {
      "type": "CALL",
      "from": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "gas": "0x5f58cbc",
      "gasUsed": "0x5f64",
      "value": "0x0",
      "input": "0x095ea7b300000000000000000000000020a5814b73ef3537c6e099a0d45c798f4bd6e1d60000000000000000000000000000000000000000000000000000000000000001",
      "decodedInput": [
    {
      "value": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
      "type": "address",
      "name": "guy"
    },
    {
      "value": "1",
      "type": "uint256",
      "name": "wad"
    }
      ],
      "method": "approve",
      "output": "0x0000000000000000000000000000000000000000000000000000000000000001",
      "decodedOutput": [
    {
      "value": true,
      "type": "bool",
      "name": ""
    }
      ],
      "subtraces": 0,
      "traceAddress": [
      0
      ]
    }
      ]
    },
    {
      "status": true,
      "gasUsed": "0x8a78",
      "cumulativeGasUsed": "0x0",
      "blockNumber": "0xf4d881",
      "type": "0x0",
      "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000080000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000020000000000000000000800000000000000000000000010000000000000004000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000020000000200000800000000000000000000000000000000000000000000000000000",
      "logs": [
    {
      "name": "Transfer",
      "anonymous": false,
      "inputs": [
    {
      "value": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "type": "address",
      "name": "src"
    },
    {
      "value": "0x0000000000000000000000000000000000000000",
      "type": "address",
      "name": "dst"
    },
    {
      "value": "1",
      "type": "uint256",
      "name": "wad"
    }
      ],
      "raw": {
      "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "topics": [
      "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
      "0x000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa96045",
      "0x0000000000000000000000000000000000000000000000000000000000000000"
      ],
      "data": "0x0000000000000000000000000000000000000000000000000000000000000001"
    }
    }
      ],
      "trace": [
    {
      "type": "CALL",
      "from": "0x20a5814b73ef3537c6e099a0d45c798f4bd6e1d6",
      "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "gas": "0x5f58c3c",
      "gasUsed": "0x4874",
      "value": "0x0",
      "input": "0x23b872dd000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa9604500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001",
      "decodedInput": [
    {
      "value": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "type": "address",
      "name": "src"
    },
    {
      "value": "0x0000000000000000000000000000000000000000",
      "type": "address",
      "name": "dst"
    },
    {
      "value": "1",
      "type": "uint256",
      "name": "wad"
    }
      ],
      "method": "transferFrom",
      "output": "0x0000000000000000000000000000000000000000000000000000000000000001",
      "decodedOutput": [
    {
      "value": true,
      "type": "bool",
      "name": ""
    }
      ],
      "subtraces": 0,
      "traceAddress": [
      0
      ]
    }
      ]
    }
      ]
    }
    ```
  </Tab>
</Tabs>

**Результат**

Результаты симуляций `ARRAY`: список результатов симуляций в бандле

* **status** `NUMBER:` либо `1` (успех), либо `0` (провал)
* **gasUsed** `NUMBER`: количество газа, использованного этой конкретной транзакцией
* **cumulativeGasUsed** `NUMBER`: суммарное количество газа, использованное к моменту выполнения этой транзакции в блоке
* **blockNumber** `NUMBER`: номер блока, в котором транзакция была симулирована
* **type** `NUMBER`: тип транзакции, `0x00` для legacy-транзакций, `0x01` для типов с access list, `0x02` для динамических комиссий
* **logsBloom** `STRING`: bloom-фильтр для лёгких клиентов, позволяющий быстро находить связанные логи
* **logs**: массив эмитированных событий `ARRAY` из `OBJECT`
  * **name** `STRING`: имя события
  * **anonymous** `BOOLEAN`: указывает, является ли событие анонимным
  * **inputs**: массив декодированных аргументов лога `ARRAY` из декодированных логов `OBJECT`
    * **name** `STRING`: имя аргумента события
    * **type** `STRING`: тип аргумента события из системы типов Solidity
    * **value** (*опционально*) `STRING` строковое представление значения аргумента; интерпретируйте согласно полю `type`
  * **raw** `OBJECT`: сырые логи
    * **address** `STRING` адрес в hex: адрес контракта, эмитирующего лог
    * **topics** `ARRAY` из `STRING` 32-байтовых hex-значений
    * **data** `STRING` строка в hex, представляющая данные события
* **trace**: Trace `ARRAY` из `OBJECT`
  * **type** `STRING` type: тип элемента трассировки — один из `CALL`| `CALLCODE`| `STATICCALL`| `DELEGATECALL`| `CREATE`| `CREATE2`| `SELFDESTRUCT`
  * **from** `STRING`: адрес в hex
  * **to** `STRING`: адрес в hex
  * **gas** `STRING`: hex-кодированное беззнаковое 64-байтовое целое, представляющее газ события
  * **gasUsed** `STRING`: hex-кодированное беззнаковое 64-байтовое целое, представляющее gasUsed события
  * **value** `STRING`: hex-кодированное беззнаковое 64-байтовое целое, представляющее value события в wei
  * **error** `STRING`: низкоуровневая ошибка виртуальной машины
  * **errorReason** `STRING`: извлечённая причина ошибки при revert
  * **input** `STRING`: hex-кодированная строка, представляющая сырые входные байты для точки трассировки
  * **method** `STRING`: вызванный метод контракта
  * **decodedInput** : декодированный вход вызванного метода — `ARRAY` из декодированных входных аргументов `OBJECT`
    * **value** `STRING`: строковое представление значения аргумента; интерпретируйте согласно полю `type`.
    * **type** `STRING`: тип Solidity этого аргумента
    * **name** `STRING`: имя этого аргумента
  * **output** `STRING`: сырой выход трассировки
  * **decodedOutput** : декодированный выход вызванного метода — `ARRAY` из декодированных выходных аргументов `OBJECT`
    * **value** `STRING`: строковое представление значения аргумента; интерпретируйте согласно полю `type`.
    * **type** `STRING`: тип Solidity этого аргумента
    * **name** `STRING`: имя этого аргумента
  * **subtraces** `NUMBER`: количество дочерних трассировок
  * **traceAddress** : позиция трассировки `ARRAY` из `NUMBER`
* **`assetChanges`** `ARRAY`:
  * **`type`** `STRING` тип изменения актива, может быть transfer, mint, burn
  * **`from`** `STRING`: адрес отправителя (пусто для mint-переводов)
  * **`to`** `STRING`: адрес получателя (пусто для burn-переводов)
  * **`amount`** `STRING`: количество переведённого токена
  * **`rawAmount`** `STRING`: сырое количество перевода токена
  * **`dollarValue`**`STRING`: долларовая стоимость переведённого токена
  * **`assetInfo`**`OBJECT`: информация об активе
    * **`standard`** `STRING`: поддерживаемые стандарты токенов: ERC20, ERC721, NativeCurrency
    * **`type`** `STRING`: тип токена: Native, Fungible, Non-Fungible
    * **`contractAddress`**`STRING` : адрес контракта
    * **`symbol`** `STRING`: символ токена
    * **`name`** `STRING`: имя токена
    * **`logo`** `STRING`: URL иконки токена
    * **`decimals`** `NUMBER`: количество знаков после запятой у токена
    * **`dollarValue`**`STRING`: долларовая стоимость одного токена
* **`balanceChanges`** `ARRAY`: массив изменений баланса — суммарных изменений активов
  * **`address`** `STRING` адрес
  * **`dollarValue`** `STRING`: долларовая стоимость суммарных изменений активов
  * **`transfers`** `ARRAY`: массив индексов изменений активов

### `tenderly_estimateGasBundle`

Рассчитывает точные оценки газа для заданного списка транзакций, с опциональными переопределениями состояния и блока в стиле симуляции. Как и [`tenderly_estimateGas`](/node-rpc/guides/simulate-json-rpc#tenderly_estimategas), каждая оценка основана на полностью выполненной транзакции, поэтому возвращаемые значения точны там, где `eth_estimateGas` мог бы откатиться и дать заниженную оценку. Транзакции выполняются по порядку, каждая на состоянии, оставленном предыдущей.

**Отличия от `tenderly_simulateBundle`:**

* Оба метода выполняют бандл одинаково против заданного блока и оба принимают одинаковые переопределения состояния и блока.
* `tenderly_simulateBundle` возвращает полный декодированный результат выполнения каждой транзакции: логи, трассировку вызовов, изменения активов и изменения балансов.
* `tenderly_estimateGasBundle` возвращает только два показателя газа для каждой транзакции: рекомендуемый лимит газа и фактически потреблённый газ. Используйте его, когда нужны только значения газа; используйте `tenderly_simulateBundle`, когда нужно предварительно оценить эффекты бандла.

**Параметры**

1. **Transactions** Transactions `ARRAY`: список транзакций в бандле, тот же формат, что и в [`tenderly_simulateBundle`](#tenderly_simulatebundle)
2. **Simulation Block Number** (*опционально*) Номер блока, против которого должен быть выполнен бандл. Одно из:
   * `STRING` номер блока
   * `ENUM` тег блока `earliest|finalized|safe|latest|pending`
3. **State Overrides** (*опционально*) `MAP`: сопоставление учётной записи (адреса) со спецификацией переопределения, тот же формат, что и в [`tenderly_simulateBundle`](#tenderly_simulatebundle)
4. **Block Overrides** (*опционально*) `OBJECT`: набор полей заголовка блока для переопределения, тот же формат, что и в [`tenderly_simulateBundle`](#tenderly_simulatebundle)

**Пример**

<Tabs>
  <Tab title="example.json">
    ```json title="example.json" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    {
      "id": 0,
      "jsonrpc": "2.0",
      "method": "tenderly_estimateGasBundle",
      "params": [
        [
          {
            "from": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
            "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
            "data": "0x095ea7b30000000000000000000000009008d19f58aabd9ed0d60971565aa8510560ab410000000000000000000000000000000000000000000000000c1291a92f17a100"
          },
          {
            "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
            "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
            "data": "0x23b872dd0000000000000000000000007f39c581f595b53c5cb19bd0b3f8da6c935e2ca00000000000000000000000009008d19f58aabd9ed0d60971565aa8510560ab410000000000000000000000000000000000000000000000000c1291a92f17a100"
          },
          {
            "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
            "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
            "data": "0x095ea7b30000000000000000000000007f39c581f595b53c5cb19bd0b3f8da6c935e2ca00000000000000000000000000000000000000000000000000c1291a92f17a100"
          },
          {
            "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
            "to": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
            "data": "0xea598cb00000000000000000000000000000000000000000000000000c1291a92f17a100"
          }
        ],
        "latest"
      ]
    }
    ```
  </Tab>

  <Tab title="example">
    ```bash title="example" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    curl https://mainnet.gateway.tenderly.co/$TENDERLY_NODE_ACCESS_KEY \
    -X POST \
    -H "Content-Type: application/json" \
    -d \
    '{
    "id": 0,
    "jsonrpc": "2.0",
    "method": "tenderly_estimateGasBundle",
    "params": [
    [
    {
    "from": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
    "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
    "data": "0x095ea7b30000000000000000000000009008d19f58aabd9ed0d60971565aa8510560ab410000000000000000000000000000000000000000000000000c1291a92f17a100"
    },
    {
    "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
    "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
    "data": "0x23b872dd0000000000000000000000007f39c581f595b53c5cb19bd0b3f8da6c935e2ca00000000000000000000000009008d19f58aabd9ed0d60971565aa8510560ab410000000000000000000000000000000000000000000000000c1291a92f17a100"
    },
    {
    "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
    "to": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
    "data": "0x095ea7b30000000000000000000000007f39c581f595b53c5cb19bd0b3f8da6c935e2ca00000000000000000000000000000000000000000000000000c1291a92f17a100"
    },
    {
    "from": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41",
    "to": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
    "data": "0xea598cb00000000000000000000000000000000000000000000000000c1291a92f17a100"
    }
    ],
    "latest"
    ]
    }'
    ```
  </Tab>

  <Tab title="response.json">
    ```json title="response.json" showLineNumbers theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
    {
      "id": 0,
      "jsonrpc": "2.0",
      "result": [
        { "gas": "0x12579", "gasUsed": "0xff06" },
        { "gas": "0x10918", "gasUsed": "0xb551" },
        { "gas": "0xa621", "gasUsed": "0x6625" },
        { "gas": "0x10649", "gasUsed": "0xb249" }
      ]
    }
    ```
  </Tab>
</Tabs>

**Результат**

Оценки газа `ARRAY`: список оценок газа, по одной на каждую транзакцию в бандле

* **gas** `STRING`: hex-кодированный рекомендуемый лимит газа для установки в транзакции (включает запас над фактически потреблённым газом)
* **gasUsed** `STRING`: hex-кодированное количество газа, фактически потреблённое выполненной транзакцией
