starknet_simulateTransactions
curl --request POST \
--url https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e \
--header 'Content-Type: application/json' \
--data '
{
"id": 0,
"jsonrpc": "2.0",
"method": "starknet_simulateTransactions",
"params": [
{
"block_number": 17882614
},
[
{
"type": "INVOKE",
"version": "0x3",
"sender_address": "0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696",
"calldata": [
"0x1",
"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",
"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e",
"0x0",
"0x3",
"0x3",
"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e",
"0x52949b84417d800",
"0x0"
],
"signature": [
"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df",
"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c"
],
"nonce": "0x20575",
"resource_bounds": {
"l1_data_gas": {
"max_amount": "0x240",
"max_price_per_unit": "0x57e4e3dbb8"
},
"l1_gas": {
"max_amount": "0x0",
"max_price_per_unit": "0xbd8b9d31c846"
},
"l2_gas": {
"max_amount": "0x3deb40",
"max_price_per_unit": "0x112607df3c"
}
},
"tip": "0x0",
"paymaster_data": [],
"account_deployment_data": [],
"nonce_data_availability_mode": "L1",
"fee_data_availability_mode": "L1"
}
],
[
"SKIP_VALIDATE",
"SKIP_FEE_CHARGE"
]
]
}
'import requests
url = "https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e"
payload = {
"id": 0,
"jsonrpc": "2.0",
"method": "starknet_simulateTransactions",
"params": [{ "block_number": 17882614 }, [
{
"type": "INVOKE",
"version": "0x3",
"sender_address": "0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696",
"calldata": ["0x1", "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", "0x0", "0x3", "0x3", "0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e", "0x52949b84417d800", "0x0"],
"signature": ["0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df", "0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c"],
"nonce": "0x20575",
"resource_bounds": {
"l1_data_gas": {
"max_amount": "0x240",
"max_price_per_unit": "0x57e4e3dbb8"
},
"l1_gas": {
"max_amount": "0x0",
"max_price_per_unit": "0xbd8b9d31c846"
},
"l2_gas": {
"max_amount": "0x3deb40",
"max_price_per_unit": "0x112607df3c"
}
},
"tip": "0x0",
"paymaster_data": [],
"account_deployment_data": [],
"nonce_data_availability_mode": "L1",
"fee_data_availability_mode": "L1"
}
], ["SKIP_VALIDATE", "SKIP_FEE_CHARGE"]]
}
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: 0,
jsonrpc: '2.0',
method: 'starknet_simulateTransactions',
params: [
{block_number: 17882614},
[
{
type: 'INVOKE',
version: '0x3',
sender_address: '0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696',
calldata: [
'0x1',
'0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d',
'0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e',
'0x0',
'0x3',
'0x3',
'0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e',
'0x52949b84417d800',
'0x0'
],
signature: [
'0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df',
'0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c'
],
nonce: '0x20575',
resource_bounds: {
l1_data_gas: {max_amount: '0x240', max_price_per_unit: '0x57e4e3dbb8'},
l1_gas: {max_amount: '0x0', max_price_per_unit: '0xbd8b9d31c846'},
l2_gas: {max_amount: '0x3deb40', max_price_per_unit: '0x112607df3c'}
},
tip: '0x0',
paymaster_data: [],
account_deployment_data: [],
nonce_data_availability_mode: 'L1',
fee_data_availability_mode: 'L1'
}
],
['SKIP_VALIDATE', 'SKIP_FEE_CHARGE']
]
})
};
fetch('https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e', 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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e",
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' => 0,
'jsonrpc' => '2.0',
'method' => 'starknet_simulateTransactions',
'params' => [
[
'block_number' => 17882614
],
[
[
'type' => 'INVOKE',
'version' => '0x3',
'sender_address' => '0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696',
'calldata' => [
'0x1',
'0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d',
'0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e',
'0x0',
'0x3',
'0x3',
'0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e',
'0x52949b84417d800',
'0x0'
],
'signature' => [
'0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df',
'0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c'
],
'nonce' => '0x20575',
'resource_bounds' => [
'l1_data_gas' => [
'max_amount' => '0x240',
'max_price_per_unit' => '0x57e4e3dbb8'
],
'l1_gas' => [
'max_amount' => '0x0',
'max_price_per_unit' => '0xbd8b9d31c846'
],
'l2_gas' => [
'max_amount' => '0x3deb40',
'max_price_per_unit' => '0x112607df3c'
]
],
'tip' => '0x0',
'paymaster_data' => [
],
'account_deployment_data' => [
],
'nonce_data_availability_mode' => 'L1',
'fee_data_availability_mode' => 'L1'
]
],
[
'SKIP_VALIDATE',
'SKIP_FEE_CHARGE'
]
]
]),
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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e"
payload := strings.NewReader("{\n \"id\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e")
.header("Content-Type", "application/json")
.body("{\n \"id\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e")
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\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\n ]\n}"
response = http.request(request)
puts response.read_bodyStarknet node API
starknet_simulateTransactions | Starknet
Starknet API method that simulates the execution of a list of transactions on a given state. Available on Starknet via Chainstack.
POST
/
mt_c524ad9781ae5dccd9ac6f5b0370e
starknet_simulateTransactions
curl --request POST \
--url https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e \
--header 'Content-Type: application/json' \
--data '
{
"id": 0,
"jsonrpc": "2.0",
"method": "starknet_simulateTransactions",
"params": [
{
"block_number": 17882614
},
[
{
"type": "INVOKE",
"version": "0x3",
"sender_address": "0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696",
"calldata": [
"0x1",
"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",
"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e",
"0x0",
"0x3",
"0x3",
"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e",
"0x52949b84417d800",
"0x0"
],
"signature": [
"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df",
"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c"
],
"nonce": "0x20575",
"resource_bounds": {
"l1_data_gas": {
"max_amount": "0x240",
"max_price_per_unit": "0x57e4e3dbb8"
},
"l1_gas": {
"max_amount": "0x0",
"max_price_per_unit": "0xbd8b9d31c846"
},
"l2_gas": {
"max_amount": "0x3deb40",
"max_price_per_unit": "0x112607df3c"
}
},
"tip": "0x0",
"paymaster_data": [],
"account_deployment_data": [],
"nonce_data_availability_mode": "L1",
"fee_data_availability_mode": "L1"
}
],
[
"SKIP_VALIDATE",
"SKIP_FEE_CHARGE"
]
]
}
'import requests
url = "https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e"
payload = {
"id": 0,
"jsonrpc": "2.0",
"method": "starknet_simulateTransactions",
"params": [{ "block_number": 17882614 }, [
{
"type": "INVOKE",
"version": "0x3",
"sender_address": "0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696",
"calldata": ["0x1", "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", "0x0", "0x3", "0x3", "0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e", "0x52949b84417d800", "0x0"],
"signature": ["0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df", "0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c"],
"nonce": "0x20575",
"resource_bounds": {
"l1_data_gas": {
"max_amount": "0x240",
"max_price_per_unit": "0x57e4e3dbb8"
},
"l1_gas": {
"max_amount": "0x0",
"max_price_per_unit": "0xbd8b9d31c846"
},
"l2_gas": {
"max_amount": "0x3deb40",
"max_price_per_unit": "0x112607df3c"
}
},
"tip": "0x0",
"paymaster_data": [],
"account_deployment_data": [],
"nonce_data_availability_mode": "L1",
"fee_data_availability_mode": "L1"
}
], ["SKIP_VALIDATE", "SKIP_FEE_CHARGE"]]
}
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: 0,
jsonrpc: '2.0',
method: 'starknet_simulateTransactions',
params: [
{block_number: 17882614},
[
{
type: 'INVOKE',
version: '0x3',
sender_address: '0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696',
calldata: [
'0x1',
'0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d',
'0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e',
'0x0',
'0x3',
'0x3',
'0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e',
'0x52949b84417d800',
'0x0'
],
signature: [
'0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df',
'0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c'
],
nonce: '0x20575',
resource_bounds: {
l1_data_gas: {max_amount: '0x240', max_price_per_unit: '0x57e4e3dbb8'},
l1_gas: {max_amount: '0x0', max_price_per_unit: '0xbd8b9d31c846'},
l2_gas: {max_amount: '0x3deb40', max_price_per_unit: '0x112607df3c'}
},
tip: '0x0',
paymaster_data: [],
account_deployment_data: [],
nonce_data_availability_mode: 'L1',
fee_data_availability_mode: 'L1'
}
],
['SKIP_VALIDATE', 'SKIP_FEE_CHARGE']
]
})
};
fetch('https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e', 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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e",
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' => 0,
'jsonrpc' => '2.0',
'method' => 'starknet_simulateTransactions',
'params' => [
[
'block_number' => 17882614
],
[
[
'type' => 'INVOKE',
'version' => '0x3',
'sender_address' => '0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696',
'calldata' => [
'0x1',
'0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d',
'0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e',
'0x0',
'0x3',
'0x3',
'0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e',
'0x52949b84417d800',
'0x0'
],
'signature' => [
'0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df',
'0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c'
],
'nonce' => '0x20575',
'resource_bounds' => [
'l1_data_gas' => [
'max_amount' => '0x240',
'max_price_per_unit' => '0x57e4e3dbb8'
],
'l1_gas' => [
'max_amount' => '0x0',
'max_price_per_unit' => '0xbd8b9d31c846'
],
'l2_gas' => [
'max_amount' => '0x3deb40',
'max_price_per_unit' => '0x112607df3c'
]
],
'tip' => '0x0',
'paymaster_data' => [
],
'account_deployment_data' => [
],
'nonce_data_availability_mode' => 'L1',
'fee_data_availability_mode' => 'L1'
]
],
[
'SKIP_VALIDATE',
'SKIP_FEE_CHARGE'
]
]
]),
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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e"
payload := strings.NewReader("{\n \"id\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\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://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e")
.header("Content-Type", "application/json")
.body("{\n \"id\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://starknet-mainnet.core.chainstack.com/mt_c524ad9781ae5dccd9ac6f5b0370e")
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\": 0,\n \"jsonrpc\": \"2.0\",\n \"method\": \"starknet_simulateTransactions\",\n \"params\": [\n {\n \"block_number\": 17882614\n },\n [\n {\n \"type\": \"INVOKE\",\n \"version\": \"0x3\",\n \"sender_address\": \"0x76601136372fcdbbd914eea797082f7504f828e122288ad45748b0c8b0c9696\",\n \"calldata\": [\n \"0x1\",\n \"0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n \"0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e\",\n \"0x0\",\n \"0x3\",\n \"0x3\",\n \"0x253aec31b572ebca17e79e124b9baf03c660bbf6730e535cad3460ff08d255e\",\n \"0x52949b84417d800\",\n \"0x0\"\n ],\n \"signature\": [\n \"0x14b8f6bd001292f88acd544a70f3e2e44a66f28e3d2e1560a59900e613d72df\",\n \"0x3b7adfd8815015a222f8739f3b6b67c213d3398ff9b7e230b5c723ca274cb5c\"\n ],\n \"nonce\": \"0x20575\",\n \"resource_bounds\": {\n \"l1_data_gas\": {\n \"max_amount\": \"0x240\",\n \"max_price_per_unit\": \"0x57e4e3dbb8\"\n },\n \"l1_gas\": {\n \"max_amount\": \"0x0\",\n \"max_price_per_unit\": \"0xbd8b9d31c846\"\n },\n \"l2_gas\": {\n \"max_amount\": \"0x3deb40\",\n \"max_price_per_unit\": \"0x112607df3c\"\n }\n },\n \"tip\": \"0x0\",\n \"paymaster_data\": [],\n \"account_deployment_data\": [],\n \"nonce_data_availability_mode\": \"L1\",\n \"fee_data_availability_mode\": \"L1\"\n }\n ],\n [\n \"SKIP_VALIDATE\",\n \"SKIP_FEE_CHARGE\"\n ]\n ]\n}"
response = http.request(request)
puts response.read_bodyStarknet OpenRPC specFor the latest version of the publicly maintained OpenRPC spec, see the Starknet specs GitHub repo.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.
Parameters
block_id— the hash of the requested block, or number (height) of the requested block, or a block tag, for the block referencing the state or call the transaction on.transactions— the list of transactions to simulate. Each transaction runs on the state left by the previous ones. JSON-RPC API version 0.9 accepts only version 3 transactions ("version": "0x3").simulation_flags— required; a list that can be empty or contain:SKIP_VALIDATE— skip the account’s signature validation.SKIP_FEE_CHARGE— skip charging the fee, so the account doesn’t need the balance to pay it.
Response
result— a list with one entry for each simulated transaction:transaction_trace— the execution trace. It includesvalidate_invocationunless you passSKIP_VALIDATE, andfee_transfer_invocationunless you passSKIP_FEE_CHARGE. A transaction that reverts doesn’t return an error; itsexecute_invocationcontains arevert_reasoninstead.fee_estimation— the fee estimate for the transaction, in the same format asstarknet_estimateFee.
Use case
A practical use case forstarknet_simulateTransactions is to simulate the execution of a list of transactions that interact with contracts on StarkNet. This can be useful for testing and debugging purposes, as it allows developers to understand the potential outcome of these transactions without actually executing them on the network.Last modified on November 13, 2026
Was this page helpful?