GraphOps supports standard Ethereum-compatible JSON-RPC methods on supported EVM networks. Methods are available over HTTPS unless the transport column says WebSocket only. Current credit rates and method classes appear below.
Bitcoin RPC uses native Bitcoin JSON-RPC method names rather than the EVM methods listed on this page. See API integration for the Bitcoin endpoint and request shape.
Method behavior can differ by network and node client. Check the notes for the methods you use; for an unlisted method or network-specific feature, ask GraphOps support about availability.
Choose a method
- Use
eth_call,eth_getBalance,eth_getCode, andeth_getStorageAtfor direct state reads. - Use
eth_getLogsfor historical event backfills and WebSocketlogssubscriptions for live event streams. - Use
eth_sendRawTransactionfor transaction submission. Sign transactions in your application or wallet. - Use
safe,finalized, or explicit block references when consistency matters more than freshness. - Use Substreams or Subgraphs when the workflow is better served by streaming or indexed GraphQL access.
Current credit rates
Current rates. Last updated: Oct 23, 2026, 12:00 AM UTC.
| Usage component | Applies to | Rate |
|---|---|---|
| RPC calls | Default | 1 credit per RPC call |
| RPC calls | RPC method cost class: Standard | 1 credit per RPC call |
| RPC calls | RPC method cost class: Compute-heavy | 2 credits per RPC call |
| RPC calls | RPC method cost class: Trace and debug | 2 credits per RPC call |
| RPC calls | RPC method cost class: Archive and state-heavy | 2 credits per RPC call |
| Subscription events | Default | 1 credit per subscription event |
| Subscription events | Subscription type: newHeads | 1 credit per subscription event |
| Subscription events | Subscription type: logs | 1 credit per subscription event |
| Subscription events | Subscription type: newPendingTransactions | 1 credit per subscription event |
| Subscription events | Subscription type: syncing | 1 credit per subscription event |
RPC method cost class
| Class | Methods |
|---|---|
| Compute-heavy | eth_call, eth_createAccessList, eth_estimateGas, eth_getLogs |
| Trace and debug | debug_…, trace_… |
| Archive and state-heavy | eth_getBalance, eth_getCode, eth_getProof, eth_getStorageAt, eth_getTransactionCount |
| Standard | All methods not matched by another class |
Request example
{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_blockNumber",
"params": []
}Response example
{ "jsonrpc": "2.0",JSON-RPC version "id": 1,Matches the id you sent "result": "0x112a880"Latest block: 18,000,000 in decimal}Client and network
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
web3_clientVersion | [] | Client version string | HTTPS | Useful for diagnostics, not feature detection. |
web3_sha3 | [data] | Keccak-256 hash | HTTPS | Input and output are hex-encoded. |
net_version | [] | Network ID string | HTTPS | Prefer eth_chainId for EVM chain identity. |
net_listening | [] | Boolean | HTTPS | Compatibility method. |
net_peerCount | [] | Peer count hex quantity | HTTPS | Value depends on upstream node and network. |
eth_chainId | [] | EIP-155 chain ID hex quantity | HTTPS | Use before signing transactions. |
eth_protocolVersion | [] | Protocol version string | HTTPS | Legacy compatibility method. |
eth_syncing | [] | Sync object or false | HTTPS | Hosted endpoints should normally return false. |
Blocks and fees
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_blockNumber | [] | Latest known block number | HTTPS | Use as an anchor for repeatable reads. |
eth_getBlockByHash | [blockHash, hydrateTransactions] | Block object or null | HTTPS | Set hydration to true only when full transactions are needed. |
eth_getBlockByNumber | [blockTagOrNumber, hydrateTransactions] | Block object or null | HTTPS | Supports latest, safe, finalized, and explicit block numbers. |
eth_getBlockReceipts | [blockHashOrNumber] | Receipt array or null | HTTPS | More efficient than many individual receipt lookups when supported by the upstream client. |
eth_getBlockTransactionCountByHash | [blockHash] | Transaction count hex quantity | HTTPS | Returns null if the block is unknown. |
eth_getBlockTransactionCountByNumber | [blockTagOrNumber] | Transaction count hex quantity | HTTPS | Use explicit blocks for repeatable reads. |
eth_gasPrice | [] | Gas price hex quantity | HTTPS | For EIP-1559 transactions, prefer fee history and priority fee methods. |
eth_maxPriorityFeePerGas | [] | Priority fee hex quantity | HTTPS | Client and network behavior can vary. |
eth_feeHistory | [blockCount, newestBlock, rewardPercentiles] | Fee history object | HTTPS | Use bounded block counts. |
eth_blobBaseFee | [] | Blob base fee hex quantity | HTTPS | Relevant for networks with EIP-4844 blob gas. |
State and execution
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_getBalance | [address, block] | Wei balance hex quantity | HTTPS | Use explicit blocks for repeatable reads. |
eth_getStorageAt | [address, slot, block] | 32-byte storage value | HTTPS | Archive access is available for historical state. |
eth_getTransactionCount | [address, block] | Account nonce hex quantity | HTTPS | Use pending carefully when preparing transactions. |
eth_getCode | [address, block] | Contract bytecode | HTTPS | Empty bytecode is returned for EOAs and nonexistent contracts. |
eth_getProof | [address, storageKeys, block] | Account and storage proof object | HTTPS | Useful for verification workflows. |
eth_call | [transactionCallObject, block] | Return data bytes | HTTPS | Contract reverts are application results unless the envelope fails. |
eth_estimateGas | [transactionCallObject, block?] | Estimated gas hex quantity | HTTPS | Treat as an estimate, not a guarantee. |
eth_createAccessList | [transactionCallObject, block?] | Access-list result object | HTTPS | Useful for advanced transaction preparation. |
Transactions
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_sendRawTransaction | [signedTransactionData] | Transaction hash | HTTPS | Recommended submission path. Sign locally. |
eth_sendTransaction | [transactionObject] | Transaction hash | HTTPS | Hosted RPC does not custody user keys; most apps should not rely on this. |
eth_sign | [address, data] | Signature | HTTPS | Hosted RPC does not custody user keys; prefer wallet or application signing. |
eth_signTransaction | [transactionObject] | Signed transaction data | HTTPS | Hosted RPC does not custody user keys. |
eth_getTransactionByHash | [transactionHash] | Transaction object or null | HTTPS | Returns null until the transaction is known to the node. |
eth_getTransactionByBlockHashAndIndex | [blockHash, index] | Transaction object or null | HTTPS | Use when the block hash is already known. |
eth_getTransactionByBlockNumberAndIndex | [blockTagOrNumber, index] | Transaction object or null | HTTPS | Use explicit block numbers for repeatable reads. |
eth_getTransactionReceipt | [transactionHash] | Receipt object or null | HTTPS | Returns null while pending. |
eth_accounts | [] | Address array | HTTPS | Hosted RPC normally returns an empty list. |
Logs and filters
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_getLogs | [filterObject] | Log array | HTTPS | Use bounded block ranges; broad archive scans can hit plan limits. |
eth_newFilter | [filterObject] | Filter ID | HTTPS | Store filter IDs only for short-lived polling. |
eth_newBlockFilter | [] | Filter ID | HTTPS | Prefer WebSocket newHeads for long-lived streams. |
eth_newPendingTransactionFilter | [] | Filter ID | HTTPS | Pending transaction visibility varies by network. |
eth_getFilterChanges | [filterId] | Log, block hash, or transaction hash array | HTTPS | Poll frequently enough to avoid filter expiration. |
eth_getFilterLogs | [filterId] | Log array | HTTPS | Use eth_getLogs for stateless historical reads. |
eth_uninstallFilter | [filterId] | Boolean | HTTPS | Always uninstall filters created by short-lived jobs. |
WebSocket subscriptions
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_subscribe | [subscriptionType, options?] | Subscription ID | WebSocket | Supported types include newHeads, logs, newPendingTransactions, and syncing. |
eth_unsubscribe | [subscriptionId] | Boolean | WebSocket | Unsubscribe before closing long-lived clients when possible. |
Legacy compatibility
These methods exist for compatibility with Ethereum clients and older tooling. Some return values are not useful on proof-of-stake or L2 networks.
| Method | Params | Returns | Transport | Notes |
|---|---|---|---|---|
eth_coinbase | [] | Address | HTTPS | Legacy compatibility method. |
eth_mining | [] | Boolean | HTTPS | Usually false on modern hosted endpoints. |
eth_hashrate | [] | Hashrate hex quantity | HTTPS | Usually 0x0 on modern hosted endpoints. |
eth_getWork | [] | Work array | HTTPS | Legacy proof-of-work method. |
eth_submitWork | [nonce, powHash, digest] | Boolean | HTTPS | Legacy proof-of-work method. |
eth_submitHashrate | [hashrate, id] | Boolean | HTTPS | Legacy proof-of-work method. |
eth_getUncleCountByBlockHash | [blockHash] | Uncle count hex quantity | HTTPS | Legacy Ethereum block structure. |
eth_getUncleCountByBlockNumber | [blockTagOrNumber] | Uncle count hex quantity | HTTPS | Legacy Ethereum block structure. |
eth_getUncleByBlockHashAndIndex | [blockHash, index] | Uncle block object or null | HTTPS | Legacy Ethereum block structure. |
eth_getUncleByBlockNumberAndIndex | [blockTagOrNumber, index] | Uncle block object or null | HTTPS | Legacy Ethereum block structure. |