eth_getFilterChanges on Optimism
Returns logs that arrived since the filter was last polled — the polling alternative to WebSocket subscriptions. Stateful; needs a free API key.
Returns only what's new since your last poll. Filters live in one node's memory and expire after a few idle minutes, so re-create on 'filter not found' and don't expect one to survive a node failover.
Optimism endpoint (keyed — free)
https://rpc.nodeflare.app/op/v1/YOUR_KEYMethod
eth_getFilterChanges
Cost
20 CU
Chain ID
10
Block time
~2 s
Finality
~2 s soft · L1-final ~13 min
Logs & events on Optimism
Optimism's log volume is moderate compared to Base — wider eth_getLogs windows are practical, but the 75 CU weight per call still rewards tight filters.
Parameters
[filterId]cURL
curl https://rpc.nodeflare.app/op/v1/YOUR_KEY \
-X POST \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","method":"eth_getFilterChanges","params":["0x0"],"id":1}'ethers.js
import { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider(
'https://rpc.nodeflare.app/op/v1/YOUR_KEY'
);
const result = await provider.send('eth_getFilterChanges', ["0x0"]);Try it live
Runs the example above against the public Optimism endpoint — straight from your browser.
eth_getFilterChanges on Optimism — FAQ
How do I call eth_getFilterChanges on Optimism?
POST a JSON-RPC 2.0 request with "method": "eth_getFilterChanges" to NodeFlare's Optimism endpoint at https://rpc.nodeflare.app/op/v1/YOUR_KEY. This method requires a free API key — it is not available on the public endpoint.
What does eth_getFilterChanges cost on the free tier?
eth_getFilterChanges is weighted at 20 compute units per call. The free tier includes 2,000,000 CU/month, so that is roughly 100,000 eth_getFilterChanges calls per month — no credit card.
Is eth_getFilterChanges available on the public Optimism endpoint?
No. eth_getFilterChanges is a heavy method and requires a free API key. The public no-key endpoint serves standard read methods; create a free key to unlock eth_getFilterChanges, eth_getLogs, trace_* and debug_*.
Anything Optimism-specific to know when using eth_getFilterChanges?
Optimism's log volume is moderate compared to Base — wider eth_getLogs windows are practical, but the 75 CU weight per call still rewards tight filters.
Call eth_getFilterChanges on Optimism with a free key
2,000,000 compute units/month, heavy methods unlocked, every chain included. No credit card.
Get your free API key →