curl --request POST \
--url https://optimism-mainnet.core.chainstack.com/efb0a5eccd2caa5135eb54eba6f7f300 \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"method": "eth_callMany",
"id": 1,
"params": [
[
{
"transactions": [
{
"from": "0xacD03D601e5bB1B275Bb94076fF46ED9D753435A",
"to": "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",
"gas": "0xf4240",
"gasPrice": "0x7896e72a",
"data": "0xa9059cbb000000000000000000000000bc0E63965946815d105E7591407704e6e1964E590000000000000000000000000000000000000000000000000000000005f5e100"
},
{
"to": "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",
"gasPrice": "0x7896e72a",
"data": "0x70a08231000000000000000000000000bc0E63965946815d105E7591407704e6e1964E59"
}
],
"blockOverride": {
"blockNumber": "0x6eee101"
}
}
],
{
"blockNumber": "0x6eee101",
"transactionIndex": 1
},
{}
]
}
'{
"jsonrpc": "<string>",
"id": 123,
"result": [
{}
]
}curl --request POST \
--url https://optimism-mainnet.core.chainstack.com/efb0a5eccd2caa5135eb54eba6f7f300 \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"method": "eth_callMany",
"id": 1,
"params": [
[
{
"transactions": [
{
"from": "0xacD03D601e5bB1B275Bb94076fF46ED9D753435A",
"to": "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",
"gas": "0xf4240",
"gasPrice": "0x7896e72a",
"data": "0xa9059cbb000000000000000000000000bc0E63965946815d105E7591407704e6e1964E590000000000000000000000000000000000000000000000000000000005f5e100"
},
{
"to": "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",
"gasPrice": "0x7896e72a",
"data": "0x70a08231000000000000000000000000bc0E63965946815d105E7591407704e6e1964E59"
}
],
"blockOverride": {
"blockNumber": "0x6eee101"
}
}
],
{
"blockNumber": "0x6eee101",
"transactionIndex": 1
},
{}
]
}
'{
"jsonrpc": "<string>",
"id": 123,
"result": [
{}
]
}Optimism API methodDocumentation Index
Fetch the complete documentation index at: https://docs.chainstack.com/llms.txt
Use this file to discover all available pages before exploring further.
eth_callMany executes a list of transaction bundles without creating transactions on the blockchain. This method is particularly useful for simulating transactions to understand their potential outcomes. It supports simulating transactions at an intermediate state of a block, simulating multiple transactions with sequential dependencies, and overwriting block headers.
This examples simulates the transfer of 100 USDT to an address in block 116318465 at transaction position 1 in the block and does the balance check of the address for the USDT, all in one call.
eth_call.blockNumber, blockHash, coinbase, timestamp, difficulty, gasLimit, and baseFee.blockNumber or Tag and transactionIndex.
eth_call standard.
eth_callMany method is essential for:
Was this page helpful?