Перейти к основному содержанию
Ответы симуляций как через RPC, так и через API предоставляют информацию об изменениях активов и балансов, преобразованных в долларовые значения. Отображаемое долларовое значение представляет собой текущее долларовое значение и отражает самые последние рыночные данные, полученные от CoinGecko. Поддерживаемые стандарты токенов: ERC20 и ERC721.

Ответ RPC

Изменения активов и балансов всегда возвращаются как часть ответа при вызове RPC-методов tenderly_simulateTransaction (одиночная симуляция) и tenderly_simulateBundle (пакетные симуляции). См. Справочник RPC.
https://mainnet.gateway.tenderly.co/${TENDERLY_NODE_ACCESS_KEY}
Следуйте по этим путям, чтобы получить доступ к этой информации:
  • Изменения активов: смотрите в result.assetChanges. Это даст разбивку того, как активы были изменены или перемещены во время транзакции.
  • Изменения балансов: найдите их в result.balanceChanges. Это даёт представление о колебаниях балансов в токенах и долларовых значениях.
Пример ответа
example.json
{
  "assetChanges": [
    {
      "assetInfo": {
        "standard": "ERC20",
        "type": "Fungible",
        "contractAddress": "0xc02...c2",
        "symbol": "weth",
        "name": "WETH",
        "logo": "https://assets.coingecko.com/coins/images/2518/large/weth.webp?1696503332",
        "decimals": 18,
        "dollarValue": "2195.8701171875"
      },
      "type": "Transfer",
      "from": "0xd8...45",
      "to": "0x20...d6",
      "rawAmount": "0x1",
      "amount": "0.000000000000000001",
      "dollarValue": "10.0071875"
    }
  ],
  "balanceChanges": [
    {
      "address": "0x20...1d6",
      "dollarValue": "0.0000021958701171875",
      "transfers": [
        0
      ]
    },
    {
      "address": "0xd8...045",
      "dollarValue": "0.00021958701171875",
      "transfers": [
        0
      ]
    }
  ]
}

Ответ API

Изменения активов и балансов также возвращаются в составе ответа API при вызове эндпоинта simulate (одиночные симуляции):
https://api.tenderly.co/api/v1/account/${TENDERLY_ACCOUNT_SLUG}/project/${TENDERLY_PROJECT_SLUG}/simulate
и эндпоинта simulate-bundle (пакетные симуляции):
https://api.tenderly.co/api/v1/account/${TENDERLY_ACCOUNT_SLUG}/project/${TENDERLY_PROJECT_SLUG}/simulate-bundle
В ответе API структура столь же интуитивна:
  • Изменения активов: найдите transaction.transaction_info.asset_changes. Здесь вы найдёте такие подробности, как тип изменения (transfer, mint, burn), участвующие адреса и сумму как в токене, так и в его долларовом эквиваленте.
  • Изменения балансов: найдите transaction.transaction_info.balance_changes. Этот раздел показывает, как балансы изменились в результате транзакции в токенах и долларах.
Пример ответа
example.json
{
  "asset_changes": [
    {
      "token_info": {
        "standard": "ERC20",
        "type": "Fungible",
        "contract_address": "0xc02...c2",
        "symbol": "weth",
        "name": "WETH",
        "logo": "https://assets.coingecko.com/coins/images/2518/large/weth.webp?1696503332",
        "decimals": 18,
        "dollar_value": "2195.8701171875"
      },
      "type": "Transfer",
      "from": "0xd8...045",
      "to": "0x20...d6",
      "amount": "0.000000000000000001",
      "raw_amount": "1",
      "dollar_value": "0.0000000000000021958701171875"
    }
  ],
  "balance_changes": [
    {
      "address": "0x20...d6",
      "dollar_value": "0.0000000000000021958701171875",
      "transfers": [
        0
      ]
    },
    {
      "address": "0xd...045",
      "dollar_value": "-0.0000000000000021958701171875",
      "transfers": [
        0
      ]
    }
  ]
}
Дополнительную информацию см. в справочнике API и справочниках RPC.