Simulate a transaction
simulateSimulate a call and return success, gas, decoded return, and best-effort state diff / asset changes / logs. Provide a high-level call (address + function + args) or raw (to + data), never both.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Raw form: target address. | |
| args | No | Function arguments, in order. Pass uint values as decimal strings. | |
| data | No | Raw form: calldata (0x-prefixed hex bytes). | |
| from | Yes | The sender address (the user's wallet). No key is needed — nothing is signed. | |
| chain | Yes | Chain alias from GET /v1/chains (for example "ethereum", "base", "monad", "bsc") or numeric EIP-155 chain id. | |
| value | No | Native value in wei (decimal string), for payable functions. | |
| address | No | 0x contract address. | |
| rpc_url | No | Override HTTP(S) RPC URL. Required for chains with no default (e.g. local/31337) or custom EVM chain ids. | |
| function | No | Function name, or full signature like "transfer(address,uint256)" if overloaded. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| logs | Yes | ||
| revert | No | ||
| success | Yes | ||
| gas_used | Yes | ||
| state_diff | Yes | ||
| return_value | No | ||
| asset_changes | Yes |