JSON-RPCОбзор

eth_simulateV1: параметры, возвращаемые значения и CU

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

Сводка

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

Вычислительные единицы (CU) и цены

CU за вызов

20 CU

Цена за 1M вызовов (USD)

$2.00

Параметры

ПараметрТипОписание
payloadobjectОбъект полезной нагрузки симуляции: blockStateCalls (обязательно) — массив симулируемых блоков, каждый с опциональными blockOverrides (переопределение заголовка блока), stateOverrides (переопределение состояния аккаунта) и calls (вызовы или транзакции для выполнения в этом блоке); validation (boolean, по умолчанию false) запускает большинство стандартных проверок EVM, если true, и ведет себя как eth_call, если false; traceTransfers (boolean, по умолчанию false) добавляет переводы ETH в логи как события Transfer ERC-20; returnFullTransactions (boolean) возвращает полные объекты транзакций, если true, или только хэши в противном случае.
blockQUANTITY|TAG|HASHОпциональный номер блока (шестнадцатеричное число с префиксом 0x), хэш блока или тег блока для симуляции; по умолчанию 'latest'.

Возвращаемое значение

  • Тип: ARRAY
  • Описание: EthSimulateResult: массив объектов симулированных блоков, каждый из которых содержит поля заголовка, такие как number, hash, parentHash, timestamp, gasLimit, gasUsed, baseFeePerGas и feeRecipient, а также массив calls; каждый вызов содержит status (0x1 в случае успеха, 0x0 при сбое), returnData, gasUsed и maxUsedGas, с логами при успехе или error при сбое.

Примечания

Доступность зависит от политики методов сети (methods.allow). Сети, не поддерживающие этот метод, возвращают -32601 method not available (не тарифицируется).

Пример запроса

export BLOCKVECTRA_API_KEY=rgw_your_api_key

curl -X POST "https://api.blockvectra.com/v1/robinhood_mainnet" \
  -H 'Content-Type: application/json' \
  -H "x-api-key: $BLOCKVECTRA_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_simulateV1",
    "params": [
      {
        "blockStateCalls": [
          {
            "calls": [
              {
                "to": "<toAddress>",
                "data": "<callData>"
              }
            ]
          }
        ]
      },
      "latest"
    ],
    "id": 1
  }'

Поддерживаемые сети

Доступно во всех поддерживаемых сетях, кроме: BNB Smart Chain (bsc_mainnet), Ethereum (eth_mainnet), Ethereum Sepolia (eth_sepolia), HyperEVM (hyperevm_mainnet).

Последнее обновление: