eth_call - Base

Example code for the eth_call JSON-RPC method. Complete guide on how to use eth_call JSON-RPC in GetBlock Web3 documentation.

This method executes a new message call immediately without creating a transaction on the blockchain. This is the primary method for reading data from smart contracts, including token balances, contract state, and view/pure function results.

Parameters

Parameter
Type
Required
Description

transaction

object

Yes

Transaction call object

blockParameter

string

Yes

Block number in hex, or "latest", "earliest", "pending"

Transaction Object

Field
Type
Required
Description

from

string

No

20-byte sender address

to

string

Yes

20-byte recipient/contract address

gas

string

No

Gas limit for the call (hex)

gasPrice

string

No

Gas price in wei (hex)

value

string

No

Value to send in wei (hex)

data

string

No

Encoded function call data

Request

curl --location --request POST 'https://go.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "eth_call",
    "params": [{
        "to": "0x4200000000000000000000000000000000000006",
        "data": "0x70a082310000000000000000000000006E0d01A76C3Cf4288372a29124A26D4353EE51BE"
    }, "latest"],
    "id": "getblock.io"
}'

Response

Response Parameters

Parameter
Type
Description

jsonrpc

string

JSON-RPC protocol version ("2.0")

id

string

Request identifier matching the request

result

string

Hex-encoded return data from the contract call

Use Cases

  • Token Balances: Query ERC-20 token balances using balanceOf

  • Contract State: Read public state variables from smart contracts

  • Price Feeds: Query oracle prices from Chainlink or other protocols

  • NFT Metadata: Read NFT ownership and metadata

  • DeFi Calculations: Query pool reserves, exchange rates, and liquidity

Error Handling

Error Code
Message
Description

-32602

Invalid params

Invalid transaction object or block parameter

-32603

Internal error

Contract execution error

3

Execution reverted

Contract reverted the call

-32000

Execution error

Insufficient gas or other execution failure

Web3 Integration

Last updated

Was this helpful?