eth_getProof on Ethereum
Measured 2026-10-04 by our weekly probe, which calls eth_getProof through the same Ethereum endpoint customers use.
What eth_getProof does
Returns an EIP-1186 Merkle proof for an account and selected storage slots, which a client can verify against the block's state root without trusting the RPC provider.
eth_getProof on Ethereum: what we measured
- Default Ethereum routing keeps state for roughly the last 1,000,000 blocks (about 139.2 days of Ethereum history). A proof for a block older than that needs historical state. Add &archive=1 to send the request to archive upstreams (paid plans).
Example request
curl -s https://rpc.swiftnodes.io/rpc/eth?key=YOUR_API_KEY \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_getProof","params":["0x0000000000000000000000000000000000000000",[],"latest"]}'import { createPublicClient, http } from "viem";
const client = createPublicClient({ transport: http("https://rpc.swiftnodes.io/rpc/eth?key=YOUR_API_KEY") });
// Any JSON-RPC method, typed loosely: eth_getProof on Ethereum
const result = await client.request({
method: "eth_getProof",
params: ["0x0000000000000000000000000000000000000000",[],"latest"],
});Other methods on Ethereum
- eth_getLogsSupported
- eth_getBlockReceiptsSupported
- eth_feeHistorySupported
- eth_createAccessListSupported
- debug_traceCallSupported
- trace_blockSupported
- trace_transactionSupported
eth_getProof on other chains
Support differs by chain; the full measured table is on the eth_getProof reference.
- Base
- Arbitrum
- Optimism
- Polygon
- BNB Smart Chain
- Avalanche
- Sonic
- Linea
- Scroll
- zkSync Era
- Blast
- Mantle
- Gnosis
- Celo
- Berachain
- Monad
- Unichain
- Kaia
- PulseChain
Frequently asked questions
Does Ethereum support eth_getProof?
Yes. eth_getProof answered correctly on the SwiftNodes Ethereum endpoint in our weekly method probe (2026-10-04), which sends real requests through the customer path.
Are there limits on eth_getProof on Ethereum?
Default Ethereum routing keeps state for roughly the last 1,000,000 blocks (about 139.2 days of Ethereum history). A proof for a block older than that needs historical state. Add &archive=1 to send the request to archive upstreams (paid plans).
Ethereum endpoints, live block height and WebSocket status are on the Ethereum RPC page.
One key covers every chain we serve, and SwiftNodes has a free tier.