curl --request POST \
--url https://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"method": "eth_callMany",
"params": [
[
{
"transactions": [
{
"to": "0x5555555555555555555555555555555555555555",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
},
{
"to": "0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
}
]
}
],
{
"blockNumber": "latest"
}
],
"id": 1
}'
{
"jsonrpc": "2.0",
"id": 1,
"result": [
"0x",
"0x0000000000000000000000000000000000000000000000000000000000000000",
"0x"
]
}
Executes multiple call transactions in sequence without creating transactions on the blockchain.
curl --request POST \
--url https://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"method": "eth_callMany",
"params": [
[
{
"transactions": [
{
"to": "0x5555555555555555555555555555555555555555",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
},
{
"to": "0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
}
]
}
],
{
"blockNumber": "latest"
}
],
"id": 1
}'
{
"jsonrpc": "2.0",
"id": 1,
"result": [
"0x",
"0x0000000000000000000000000000000000000000000000000000000000000000",
"0x"
]
}
eth_callMany
JSON-RPC method executes multiple call transactions in sequence without creating transactions on the blockchain. This method is useful for batch reading contract states and simulating multiple contract interactions efficiently.
transactions
(array, required) — Array of transaction objects to execute
to
(string, required) — The address to calldata
(string, optional) — The data to send with the callfrom
(string, optional) — The address the call is made fromgas
(string, optional) — The gas limit for the callgasPrice
(string, optional) — The gas price for the callvalue
(string, optional) — The value to send with the callblockNumber
(string, required) — Block identifier (e.g., “latest”, or specific block number)0x
or an errorcurl -X POST https://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_callMany",
"params": [
[
{
"transactions": [
{
"to": "0x5555555555555555555555555555555555555555",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
},
{
"to": "0xb8ce59fc3717ada4c02eadf9682a9e934f625ebb",
"data": "0x70a082310000000000000000000000008D25Fb438C6efCD08679ffA82766869B50E24608"
}
]
}
],
{
"blockNumber": "latest"
}
],
"id": 1
}'
eth_callMany
method is essential for applications that need to:
eth_callMany
method executes calls sequentially in the order provided. Each call can see the state changes from previous calls in the batch, making it useful for dependent operations.Successful response with call results
The response is of type object
.
Was this page helpful?