Base
Ready to call this in production?
Free tier covers personal projects. Pay-as-you-go scales without a card.
Base
Free tier covers personal projects. Pay-as-you-go scales without a card.
This page is the complete index of every JSON-RPC method TheRPC supports on Base (chain ID 8453), grouped by namespace so you can find what you need fast — whether you are reading ETH balances on an Aerodrome pool, replaying a swap on a consumer app, or watching the OP Stack sequencer produce its ~2-second blocks. Each entry describes the method's purpose and typical usage on Base. Click any method name to open its full documentation, with parameters, return values, error cases, and ready-to-run code samples pointed at https://base.therpc.io/YOUR_API_KEY.
The eth_ namespace covers the core functionality you use to interact with the Base blockchain: reading the latest block produced by the sequencer, checking ETH balances and account nonces, estimating gas, submitting signed transactions, calling view functions on contracts like Uniswap or Aerodrome, and fetching receipts and logs. Because Base is an EVM-equivalent OP Stack rollup, these methods behave exactly as they do on Ethereum L1, so existing Ethereum tooling works against Base unchanged.
eth_blockNumberRead the latest Base L2 block height (chain ID 8453) with eth_blockNumber over the TheRPC JSON-RPC endpoint — the cheapest liveness check.
eth_callRun gas-free read-only contract calls on Base (chain ID 8453) with eth_call over TheRPC — query ERC-20 state, Aerodrome pools, and simulate reverts.
eth_chainIdVerify you are on Base mainnet with eth_chainId — it returns 0x2105 (8453) over the TheRPC JSON-RPC endpoint to guard against replay and wrong-network sends.
eth_estimateGasSimulate a Base transaction and get its gas limit with eth_estimateGas over TheRPC (chain ID 8453) before signing — sized in ETH gas units.
eth_feeHistoryPull historical base fees and priority-fee percentiles on Base (chain ID 8453) with eth_feeHistory over TheRPC to build EIP-1559 fee estimators.
eth_gasPriceGet Base's suggested legacy gas price in wei with eth_gasPrice over TheRPC (chain ID 8453) — a quick read of current L2 fee conditions in ETH.
eth_getBalanceRead any account's ETH balance on Base (chain ID 8453) at any block with eth_getBalance over TheRPC — returned in wei, parse with BigInt.
eth_getBlockByHashFetch full Base block data by hash with eth_getBlockByHash over TheRPC (chain ID 8453) — headers, withdrawals, and transactions for any L2 block.
eth_getBlockByNumberFetch Base block data by height or tag with eth_getBlockByNumber over TheRPC (chain ID 8453) — use latest or finalized to walk the L2 chain.
eth_getBlockReceiptsPull every transaction receipt in a Base block in one call with eth_getBlockReceipts over TheRPC (chain ID 8453) — ideal for indexers and log scans.
eth_getBlockTransactionCountByHashCount the transactions in a Base block by its hash with eth_getBlockTransactionCountByHash over TheRPC (chain ID 8453) — gauge block fullness cheaply.
eth_getBlockTransactionCountByNumberCount transactions in a Base block by height or tag with eth_getBlockTransactionCountByNumber over JSON-RPC on chain 8453.
eth_getCodeRead deployed contract bytecode at any block on Base with eth_getCode over JSON-RPC on chain 8453, the Coinbase OP Stack L2.
eth_getFilterChangesPoll a Base filter for new logs, blocks, or pending txs since the last call with eth_getFilterChanges over JSON-RPC on chain 8453.
eth_getFilterLogsFetch every log matching a Base log filter at once with eth_getFilterLogs over JSON-RPC on chain 8453, the Coinbase OP Stack L2.
eth_getLogsQuery Base event logs by address, topics, and block range with eth_getLogs over JSON-RPC on chain 8453 — the core backfill indexing method.
eth_getProofGet Merkle-Patricia proofs for a Base account and its storage slots with eth_getProof over JSON-RPC on chain 8453, the Coinbase OP Stack L2.
eth_getStorageAtRead the 32-byte value at a contract storage slot on Base with eth_getStorageAt over JSON-RPC on chain 8453, the Coinbase OP Stack L2.
eth_getTransactionByBlockHashAndIndexFetch a Base transaction by its block hash and index position with eth_getTransactionByBlockHashAndIndex over JSON-RPC on chain 8453.
eth_getTransactionByBlockNumberAndIndexFetch a Base transaction by block number or tag and index with eth_getTransactionByBlockNumberAndIndex over JSON-RPC on chain 8453.
eth_getTransactionByHashLook up a Base transaction by its hash with eth_getTransactionByHash over JSON-RPC on chain 8453, the Coinbase OP Stack L2 with ETH gas.
eth_getTransactionCountGet a Base account nonce (transactions sent) at any block with eth_getTransactionCount over JSON-RPC on chain 8453, the Coinbase OP Stack L2.
eth_getTransactionReceiptFetch a Base transaction receipt with eth_getTransactionReceipt — status, gas used, effective gas price, and emitted logs for any mined tx.
eth_getUncleByBlockHashAndIndexCall eth_getUncleByBlockHashAndIndex on Base by block hash and index. Base has a single sequencer and no uncles, so this returns null.
eth_getUncleByBlockNumberAndIndexCall eth_getUncleByBlockNumberAndIndex on Base by block height and index. Base uses one sequencer and has no uncles, so it returns null.
eth_getUncleCountByBlockHashCount uncles for a Base block by hash with eth_getUncleCountByBlockHash. Base has a single sequencer, so the count is always 0x0.
eth_getUncleCountByBlockNumberCount uncles for a Base block by height or tag with eth_getUncleCountByBlockNumber. Base uses one sequencer, so the count is always 0x0.
eth_maxPriorityFeePerGasGet a suggested priority fee (tip) in ETH for Base EIP-1559 transactions with eth_maxPriorityFeePerGas on the Base JSON-RPC endpoint.
eth_newBlockFilterCreate a Base server-side block filter with eth_newBlockFilter and poll eth_getFilterChanges for new block hashes on the ~2s Base chain.
eth_newFilterCreate a Base log filter with eth_newFilter and poll eth_getFilterChanges for new events. Watch ERC-20 and DEX logs on Base by address and topics.
eth_newPendingTransactionFilterCreate a Base pending-transaction filter with eth_newPendingTransactionFilter and poll eth_getFilterChanges for new mempool tx hashes.
eth_sendRawTransactionBroadcast a signed, RLP-encoded transaction to Base with eth_sendRawTransaction and get its hash. Submit transfers, deploys, and contract calls.
eth_subscribeOpen a push-based WebSocket subscription on Base (chain ID 8453) with eth_subscribe to stream new heads, logs, and pending transactions without polling.
eth_syncingCall eth_syncing on Base (chain ID 8453) to read a node's sync progress, or false when fully caught up to the OP Stack chain head.
eth_uninstallFilterCall eth_uninstallFilter on Base (chain ID 8453) to remove a server-side log, block, or pending filter by ID and free node resources.
eth_unsubscribeCall eth_unsubscribe on Base (chain ID 8453) to cancel an active WebSocket subscription by ID and stop further push notifications.
The debug_ namespace lets you inspect and analyze Base blockchain data in depth. With methods like debug_traceTransaction and debug_traceCall you can replay a transaction step by step, see every opcode and internal call, and pinpoint exactly where a failed swap or contract interaction reverted. These calls are heavier than standard reads and are commonly used for forensic analysis, MEV research, and debugging complex DeFi interactions on Base; availability may depend on your plan.
debug_getBadBlocksCall debug_getBadBlocks on Base (chain ID 8453) to list invalid blocks the node rejected since startup. Inspect consensus and fork issues.
debug_storageRangeAtCall debug_storageRangeAt on Base (chain ID 8453) to page through a contract's raw storage slots at the state after a given transaction in a block.
debug_traceBlockCall debug_traceBlock on Base (chain ID 8453) for opcode-level traces of every transaction in a block supplied as RLP-encoded bytes.
debug_traceBlockByHashCall debug_traceBlockByHash on Base (chain ID 8453) for opcode-level execution traces of every transaction in a block identified by its hash.
debug_traceBlockByNumberCall debug_traceBlockByNumber on Base (chain ID 8453) for opcode-level traces of every transaction in a block given by number or tag like latest.
debug_traceCallCall debug_traceCall on Base (chain ID 8453) to run a call against a block state and get a full opcode-level trace without sending a transaction.
debug_traceTransactionCall debug_traceTransaction on Base (chain ID 8453) to replay a historical transaction at opcode level and inspect its exact EVM execution.
The trace_ namespace returns detailed execution traces for individual transactions and whole blocks on Base. Methods such as trace_transaction and trace_block surface the full call tree — every internal transfer, contract-to-contract call, and state change — which is invaluable for accounting across Aerodrome and Uniswap routes, reconstructing token flows, and auditing high-value transactions. Trace methods are resource-intensive and typically gated to higher-tier plans.
trace_blockCall trace_block on Base (chain ID 8453) to get flat call-tree traces for every transaction in a block, addressed by number or tag.
trace_callCall trace_call on Base (chain ID 8453) to simulate a call and return a call-tree trace, optional VM trace, and state diff without sending a transaction.
trace_filterCall trace_filter on Base (chain ID 8453) to search traces by address, block range, and pagination across many blocks for indexing and forensics.
trace_replayBlockTransactionsCall trace_replayBlockTransactions on Base (chain ID 8453) to replay every transaction in a block and get call-tree trace, VM trace, and state diff.
trace_replayTransactionCall trace_replayTransaction on Base (chain ID 8453) to replay a historical transaction and get call-tree trace, VM trace, and state diff.
trace_transactionCall trace_transaction on Base (chain ID 8453) to get the OpenEthereum-style call tree of a transaction with every internal call and create.
The net_ namespace exposes network status and connection information for your Base node. Use net_version to confirm you are talking to Base (it returns the chain ID 8453 as a string), net_listening to check that the node is accepting connections, and net_peerCount for peer information. These lightweight checks are handy for health probes and for verifying your endpoint is pointed at the right network before sending transactions.
net_listeningCall net_listening on Base (chain ID 8453) to check whether the node is actively listening for incoming peer-to-peer connections.
net_peerCountCall net_peerCount on Base (chain ID 8453) to get the number of peers connected to the node as a hex-encoded integer.
net_versionCall net_version on Base (chain ID 8453) to get the network ID as a decimal string and confirm a node is on the right Base network.
The txpool_ namespace lets you inspect the pending transaction pool on your Base node. Methods like txpool_status and txpool_content show transactions that are queued or waiting to be included by the OP Stack sequencer, which is useful for monitoring mempool activity, debugging stuck transactions, and observing fee dynamics. Note that on a rollup the sequencer orders inclusion, so mempool visibility differs from a standard L1 node and depends on the upstream node configuration.
txpool_inspectCall txpool_inspect on Base (chain ID 8453) for a readable summary of pending and queued mempool transactions by sender and nonce.
txpool_statusCall txpool_status on Base (chain ID 8453) to get hex-encoded counts of pending and queued transactions in the node mempool.
The web3_ namespace provides basic utility methods for general interaction with Base. web3_clientVersion reports the version string of the underlying client (helpful when confirming OP Stack / Geth-based software), and web3_sha3 computes the Keccak-256 hash of given data — useful for deriving function selectors and event topic hashes without a local crypto library. These are simple, low-cost helpers that round out the JSON-RPC surface.