Skip to main content
POST
/
eth_call
curl --request POST \
  --url https://monad-testnet.core.chainstack.com/9c5b265f20b3ea5df4f54f70eb74b800/ \
  --header 'Content-Type: application/json' \
  --data '{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "eth_call",
  "params": [
    {
      "to": "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
      "data": "0x06fdde03"
    },
    "latest"
  ]
}'
{
  "jsonrpc": "<string>",
  "id": 123,
  "result": "<string>"
}
Monad API method that executes a new message call immediately without creating a transaction on the blockchain. This is useful for reading data from smart contracts or simulating transactions.
Monad-specific behavior:
  • Calls reliant on old state (with an old block number) may fail, because full nodes do not provide access to arbitrary historic state.
  • Does not accept EIP-4844 (blob) transaction type, as EIP-4844 is not supported on Monad.
Get you 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

  • object — the transaction call object:
    • from (optional) — address the transaction is sent from
    • to — address the transaction is directed to
    • gas (optional) — gas provided for the call
    • gasPrice (optional) — gas price for the call
    • value (optional) — value sent with the call
    • data (optional) — hash of the method signature and encoded parameters
  • quantity or tag — integer block number, or the string latest, earliest, or pending

Response

  • result — the return value of the executed contract call.

eth_call code examples

const { ethers } = require("ethers");

const provider = new ethers.JsonRpcProvider("CHAINSTACK_NODE_URL");

async function callContract() {
  // Call name() on Wrapped Monad (WMON) contract
  const result = await provider.call({
    to: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
    data: "0x06fdde03" // name()
  });
  console.log(result);
}

callContract();

Use case

A practical use case for eth_call is reading data from smart contracts, such as token balances, contract state variables, or simulating complex transactions before sending them.

Body

application/json
id
integer
default:1
jsonrpc
string
default:2.0
method
string
default:eth_call
params
array

Response

200 - application/json

The return value of the executed contract call.

jsonrpc
string
id
integer
result
string