eth_simulateV1
curl --request POST \
--url https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/ \
--header 'Content-Type: application/json' \
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [
{
"blockStateCalls": [
{
"calls": []
}
]
},
"latest"
]
}
'import requests
url = "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/"
payload = {
"id": 1,
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [{ "blockStateCalls": [{ "calls": [] }] }, "latest"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
id: 1,
jsonrpc: '2.0',
method: 'eth_simulateV1',
params: [{blockStateCalls: [{calls: []}]}, 'latest']
})
};
fetch('https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'id' => 1,
'jsonrpc' => '2.0',
'method' => 'eth_simulateV1',
'params' => [
[
'blockStateCalls' => [
[
'calls' => [
]
]
]
],
'latest'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/"
payload := strings.NewReader("{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/")
.header("Content-Type", "application/json")
.body("{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "<string>",
"id": 123,
"result": {}
}Robinhood Chain node API
eth_simulateV1 | Robinhood
Robinhood Chain API method that simulates transaction execution. eth_simulateV1 JSON-RPC method available on the Robinhood Chain blockchain via Chainstack.
POST
/
eth_simulateV1
curl --request POST \
--url https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/ \
--header 'Content-Type: application/json' \
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [
{
"blockStateCalls": [
{
"calls": []
}
]
},
"latest"
]
}
'import requests
url = "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/"
payload = {
"id": 1,
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [{ "blockStateCalls": [{ "calls": [] }] }, "latest"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
id: 1,
jsonrpc: '2.0',
method: 'eth_simulateV1',
params: [{blockStateCalls: [{calls: []}]}, 'latest']
})
};
fetch('https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'id' => 1,
'jsonrpc' => '2.0',
'method' => 'eth_simulateV1',
'params' => [
[
'blockStateCalls' => [
[
'calls' => [
]
]
]
],
'latest'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/"
payload := strings.NewReader("{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/")
.header("Content-Type", "application/json")
.body("{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://robinhood-mainnet.core.chainstack.com/23cf4479b299ab4835d76c05c468ca6e/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": 1,\n \"jsonrpc\": \"2.0\",\n \"method\": \"eth_simulateV1\",\n \"params\": [\n {\n \"blockStateCalls\": [\n {\n \"calls\": []\n }\n ]\n },\n \"latest\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "<string>",
"id": 123,
"result": {}
}Robinhood Chain API method that simulates transaction execution.
Parameters
object— the simulation configuration objectquantity or tag— the block number in hex format or block tag (latest,earliest,pending,safe,finalized)
Response
object— the simulation result
eth_simulateV1 code examples
const { JsonRpcProvider } = require("ethers");
const provider = new JsonRpcProvider("CHAINSTACK_NODE_URL");
async function call() {
const result = await provider.send("eth_simulateV1", [{"blockStateCalls": [{"calls": []}]}, "latest"]);
console.log(result);
}
call();
from web3 import Web3
node_url = "CHAINSTACK_NODE_URL"
web3 = Web3(Web3.HTTPProvider(node_url))
result = web3.provider.make_request("eth_simulateV1", [{"blockStateCalls": [{"calls": []}]}, "latest"])
print(result)
curl -X POST "CHAINSTACK_NODE_URL" \
-H "Content-Type: application/json" \
--data '{
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [{"blockStateCalls": [{"calls": []}]}, "latest"],
"id": 1
}'
Last modified on July 18, 2026
Was this page helpful?
⌘I