Chainstack runs op-geth for regional elastic nodes and op-erigon for global elastic node. See also Clients.
Get you own node endpoint today
Start 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.
This page provides an overview of the available methods on the Chainstack Optimism nodes. Go ahead an try the interactive examples as well.
The table has three columns:
- Method — method name.
- Availability — out of the box on a regional or global node, or on request on a dedicated node since it requires customization.
The list may not be comprehensive but serves as guidance. In general, if the method is available in
op-geth
or inop-erigon
and it's aneth_
method, then it's available on your Chainstack node.If there's a method missing, you are unsure, or just have any questions, talk to us. We love talking to developers 💙🛠️.
Method | Availability in regional elastic nodes | Availability in global elastic nodes | Comments |
---|---|---|---|
eth_getBlockByHash | ✅ | ✅ | |
eth_getBlockByNumber | ✅ | ✅ | |
eth_getBlockTransactionCountByHash | ✅ | ✅ | |
eth_getBlockTransactionCountByNumber | ✅ | ✅ | |
eth_getUncleCountByBlockHash | ✅ | ✅ | |
eth_getUncleCountByBlockNumber | ✅ | ✅ | |
eth_getBlockReceipts | ❌ | ✅ | This an op-erigon method. |
eth_chainId | ✅ | ✅ | |
eth_syncing | ✅ | ✅ | |
eth_blockNumber | ✅ | ✅ | |
eth_accounts | ✅ | Returns list of accounts stored on the node. Will always return empty because Chainstack doesn't store any. | |
eth_call | ✅ | ✅ | |
eth_estimateGas | ✅ | ✅ | |
eth_createAccessList | ✅ | ✅ | |
eth_gasPrice | ✅ | ✅ | |
eth_feeHistory | ✅ | ✅ | |
eth_newFilter | ✅ | ✅ | |
eth_newBlockFilter | ✅ | ✅ | |
eth_newPendingTransactionFilter | ✅ | ✅ | Subsequent eth_getFilterChanges will always return empty because the Optimism mempool is private. |
eth_uninstallFilter | ✅ | ✅ | |
eth_getFilterChanges | ✅ | ✅ | |
eth_getFilterLogs | ✅ | ✅ | |
eth_getLogs | ✅ | ✅ | |
eth_getBalance | ✅ | ✅ | |
eth_getStorageAt | ✅ | ✅ | |
eth_getTransactionCount | ✅ | ✅ | |
eth_getCode | ✅ | ✅ | |
eth_getProof | ✅ | ✅ | |
eth_getTransactionByHash | ✅ | ✅ | |
eth_getRawTransactionByHash | ✅ | ✅ | |
eth_getTransactionByBlockHashAndIndex | ✅ | ✅ | |
eth_getRawTransactionByBlockHashAndIndex | ✅ | ✅ | |
eth_getTransactionByBlockNumberAndIndex | ✅ | ✅ | |
eth_getRawTransactionByBlockNumberAndIndex | ✅ | ✅ | |
eth_getTransactionReceipt | ✅ | ✅ | |
eth_subscribe | ✅ | ✅ | |
eth_unsubscribe | ✅ | ✅ | |
eth_maxPriorityFeePerGas | ✅ | ✅ | |
eth_sendRawTransaction | ✅ | ✅ | |
web3_clientVersion | ✅ | ✅ | |
web3_sha3 | ✅ | ✅ | |
net_listening | ✅ | ✅ | |
net_peerCount | ✅ | ✅ | Will always return 0x0 on op-geth and op-erigon . The p2p networking is done on the op-node , which does not have an endpoint exposed. See also OP issue 5745. |
net_version | ✅ | ✅ | |
eth_callMany | ❌ | ✅ | This is anop-erigon method. |
debug_getModifiedAccountsByNumber | ❌ | ✅ | Enable debug and trace APIs. |
debug_getModifiedAccountsByHash | ❌ | ✅ | Enable debug and trace APIs. |
debug_storageRangeAt | ❌ | ✅ | Enable debug and trace APIs. |
debug_traceBlockByHash | ❌ | ✅ | Enable debug and trace APIs. |
debug_traceBlockByNumber | ❌ | ✅ | Enable debug and trace APIs. |
debug_traceTransaction | ❌ | ✅ | Enable debug and trace APIs. |
debug_traceCall | ❌ | ✅ | Enable debug and trace APIs. |
debug_traceCallMany | ❌ | ✅ | This is an op-erigon method. |
admin_nodeInfo | Can be enabled on dedicated node. | ||
admin_peers | Can be enabled on dedicated node. | ||
admin_addPeer | Can be enabled on dedicated node. |