🤔 Got questions? Schedule an office hours session.

tenderly_simulateTransaction - Ethereum Mainnet


Summary

Simulates a transaction as it would execute on the given block, allowing overrides of state variables and balances of all accounts.
The method returns:

  • decoded logs,
  • decoded call trace,
  • decoded asset changes (assetChanges),
  • decoded state changes (stateChanges),
  • balance changes (balanceChanges),
  • nonce change,
  • code change (when simulating a code override).

Note: change fields (assets, balance, state and nonce, and code) are omitted if no change has taken place.

Parameters

1. Transaction Call

From Address

The address the transaction is sent from
Example: 0x12345...

To Address

The address the transaction is directed to
Example: 0x12345...

Gas Hex

Integer of the gas provided for the transaction execution
Example: 0x3fa89

Gas Price Hex

Integer of the gasPrice used for each paid gas
Example: 0xff

Value Hex

Integer of the value sent with this transaction
Example: 0xff

Input Bytes

Hash of the method signature and encoded parameters
Example: 0x00000...

MaxFeePerGas Number

Specifies the maximum fee per unit of gas the sender is willing to pay for the transaction.
Example: 0x2540be400

MaxPriorityFeePerGas Number

Indicates the maximum priority fee per unit of gas to incentivize miners for transaction processing.
Example: 0x3b9aca00

AccessList Number

Defines addresses and storage keys that the transaction intends to access for optimized gas usage.
Example: [{'address': '0x1234...', 'storageKeys': ['0x5678...', '0x9abc...']}]

MaxFeePerBlobGas Number

Specifies the maximum fee per unit of gas for processing data blobs within the transaction.
Example: 0x12a05f200

BlobVersionedHashes Number

Contains versioned hashes for data blobs associated with the transaction to ensure integrity.
Example: ['0x123456789abcdef...', '0xfedcba987654321...']

2. Block Number Quantity or Tag

Hex block number, or the tag latest, earliest, pending, finalized or safe
Example: latest

3. State Overrides

Key Address

The account to override balance or storage
Example: 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2

Nonce Number

Hex encoded 8 byte nonce override for the account
Example: 0x1e91

Code DATA

Data of the code override for the account
Example: N/A

Balance Number

hex encoded balance override for the account in wei
Example: 0x8062461898512542557

State Diff JSON

Mapping from storage slot to override value for that slot
Example: {"0xedd7d04419e9c48ceb6055956cbb4e2091ae310313a4d1fa7cbcfe7561616e03": "0x0000000000000000000000000000000000000000000000000000000000000001"}

4. Block Overrides

Number Number

Overrides the block number
Example: 0x129d59a

Difficulty Number

Overrides the block difficulty
Example: 0xff

Time Number

Overrides the block timestamp
Example: 0x18e7ac25d30

Gas Limit Number

Overrides gas limit
Example: 0x1c9c380

Coinbase Number

Overrides block miner
Example: 0xff

Random Number

overrides the blocks extra data which feeds into the RANDOM opcode
Example: 0xff

Base Fee Number

Overrides block base fee
Example: 0x6d974775d

Code Examples