Skip to content

Supported methods

Parameters, return shapes, transports, costs, and notes for standard EVM JSON-RPC methods.

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, and eth_getStorageAt for direct state reads.
  • Use eth_getLogs for historical event backfills and WebSocket logs subscriptions for live event streams.
  • Use eth_sendRawTransaction for 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 componentApplies toRate
RPC callsDefault1 credit per RPC call
RPC callsRPC method cost class: Standard1 credit per RPC call
RPC callsRPC method cost class: Compute-heavy2 credits per RPC call
RPC callsRPC method cost class: Trace and debug2 credits per RPC call
RPC callsRPC method cost class: Archive and state-heavy2 credits per RPC call
Subscription eventsDefault1 credit per subscription event
Subscription eventsSubscription type: newHeads1 credit per subscription event
Subscription eventsSubscription type: logs1 credit per subscription event
Subscription eventsSubscription type: newPendingTransactions1 credit per subscription event
Subscription eventsSubscription type: syncing1 credit per subscription event

RPC method cost class

ClassMethods
Compute-heavyeth_call, eth_createAccessList, eth_estimateGas, eth_getLogs
Trace and debugdebug_…, trace_…
Archive and state-heavyeth_getBalance, eth_getCode, eth_getProof, eth_getStorageAt, eth_getTransactionCount
StandardAll 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}
A successful response returns the latest block number as a hex quantity.

Client and network

MethodParamsReturnsTransportNotes
web3_clientVersion[]Client version stringHTTPSUseful for diagnostics, not feature detection.
web3_sha3[data]Keccak-256 hashHTTPSInput and output are hex-encoded.
net_version[]Network ID stringHTTPSPrefer eth_chainId for EVM chain identity.
net_listening[]BooleanHTTPSCompatibility method.
net_peerCount[]Peer count hex quantityHTTPSValue depends on upstream node and network.
eth_chainId[]EIP-155 chain ID hex quantityHTTPSUse before signing transactions.
eth_protocolVersion[]Protocol version stringHTTPSLegacy compatibility method.
eth_syncing[]Sync object or falseHTTPSHosted endpoints should normally return false.

Blocks and fees

MethodParamsReturnsTransportNotes
eth_blockNumber[]Latest known block numberHTTPSUse as an anchor for repeatable reads.
eth_getBlockByHash[blockHash, hydrateTransactions]Block object or nullHTTPSSet hydration to true only when full transactions are needed.
eth_getBlockByNumber[blockTagOrNumber, hydrateTransactions]Block object or nullHTTPSSupports latest, safe, finalized, and explicit block numbers.
eth_getBlockReceipts[blockHashOrNumber]Receipt array or nullHTTPSMore efficient than many individual receipt lookups when supported by the upstream client.
eth_getBlockTransactionCountByHash[blockHash]Transaction count hex quantityHTTPSReturns null if the block is unknown.
eth_getBlockTransactionCountByNumber[blockTagOrNumber]Transaction count hex quantityHTTPSUse explicit blocks for repeatable reads.
eth_gasPrice[]Gas price hex quantityHTTPSFor EIP-1559 transactions, prefer fee history and priority fee methods.
eth_maxPriorityFeePerGas[]Priority fee hex quantityHTTPSClient and network behavior can vary.
eth_feeHistory[blockCount, newestBlock, rewardPercentiles]Fee history objectHTTPSUse bounded block counts.
eth_blobBaseFee[]Blob base fee hex quantityHTTPSRelevant for networks with EIP-4844 blob gas.

State and execution

MethodParamsReturnsTransportNotes
eth_getBalance[address, block]Wei balance hex quantityHTTPSUse explicit blocks for repeatable reads.
eth_getStorageAt[address, slot, block]32-byte storage valueHTTPSArchive access is available for historical state.
eth_getTransactionCount[address, block]Account nonce hex quantityHTTPSUse pending carefully when preparing transactions.
eth_getCode[address, block]Contract bytecodeHTTPSEmpty bytecode is returned for EOAs and nonexistent contracts.
eth_getProof[address, storageKeys, block]Account and storage proof objectHTTPSUseful for verification workflows.
eth_call[transactionCallObject, block]Return data bytesHTTPSContract reverts are application results unless the envelope fails.
eth_estimateGas[transactionCallObject, block?]Estimated gas hex quantityHTTPSTreat as an estimate, not a guarantee.
eth_createAccessList[transactionCallObject, block?]Access-list result objectHTTPSUseful for advanced transaction preparation.

Transactions

MethodParamsReturnsTransportNotes
eth_sendRawTransaction[signedTransactionData]Transaction hashHTTPSRecommended submission path. Sign locally.
eth_sendTransaction[transactionObject]Transaction hashHTTPSHosted RPC does not custody user keys; most apps should not rely on this.
eth_sign[address, data]SignatureHTTPSHosted RPC does not custody user keys; prefer wallet or application signing.
eth_signTransaction[transactionObject]Signed transaction dataHTTPSHosted RPC does not custody user keys.
eth_getTransactionByHash[transactionHash]Transaction object or nullHTTPSReturns null until the transaction is known to the node.
eth_getTransactionByBlockHashAndIndex[blockHash, index]Transaction object or nullHTTPSUse when the block hash is already known.
eth_getTransactionByBlockNumberAndIndex[blockTagOrNumber, index]Transaction object or nullHTTPSUse explicit block numbers for repeatable reads.
eth_getTransactionReceipt[transactionHash]Receipt object or nullHTTPSReturns null while pending.
eth_accounts[]Address arrayHTTPSHosted RPC normally returns an empty list.

Logs and filters

MethodParamsReturnsTransportNotes
eth_getLogs[filterObject]Log arrayHTTPSUse bounded block ranges; broad archive scans can hit plan limits.
eth_newFilter[filterObject]Filter IDHTTPSStore filter IDs only for short-lived polling.
eth_newBlockFilter[]Filter IDHTTPSPrefer WebSocket newHeads for long-lived streams.
eth_newPendingTransactionFilter[]Filter IDHTTPSPending transaction visibility varies by network.
eth_getFilterChanges[filterId]Log, block hash, or transaction hash arrayHTTPSPoll frequently enough to avoid filter expiration.
eth_getFilterLogs[filterId]Log arrayHTTPSUse eth_getLogs for stateless historical reads.
eth_uninstallFilter[filterId]BooleanHTTPSAlways uninstall filters created by short-lived jobs.

WebSocket subscriptions

MethodParamsReturnsTransportNotes
eth_subscribe[subscriptionType, options?]Subscription IDWebSocketSupported types include newHeads, logs, newPendingTransactions, and syncing.
eth_unsubscribe[subscriptionId]BooleanWebSocketUnsubscribe 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.

MethodParamsReturnsTransportNotes
eth_coinbase[]AddressHTTPSLegacy compatibility method.
eth_mining[]BooleanHTTPSUsually false on modern hosted endpoints.
eth_hashrate[]Hashrate hex quantityHTTPSUsually 0x0 on modern hosted endpoints.
eth_getWork[]Work arrayHTTPSLegacy proof-of-work method.
eth_submitWork[nonce, powHash, digest]BooleanHTTPSLegacy proof-of-work method.
eth_submitHashrate[hashrate, id]BooleanHTTPSLegacy proof-of-work method.
eth_getUncleCountByBlockHash[blockHash]Uncle count hex quantityHTTPSLegacy Ethereum block structure.
eth_getUncleCountByBlockNumber[blockTagOrNumber]Uncle count hex quantityHTTPSLegacy Ethereum block structure.
eth_getUncleByBlockHashAndIndex[blockHash, index]Uncle block object or nullHTTPSLegacy Ethereum block structure.
eth_getUncleByBlockNumberAndIndex[blockTagOrNumber, index]Uncle block object or nullHTTPSLegacy Ethereum block structure.

Next steps