# Arbitrum Documentation > Optimistic rollup L2 on Ethereum. JSON-RPC, Arbitrum Trace, generic Trace, and Debug. - [Quicknode Arbitrum RPC Overview](https://www.quicknode.com/docs/arbitrum.md): Get started with Arbitrum RPC on Quicknode. Access reliable, low-latency Layer 2 infrastructure with globally distributed endpoints for fast, cost-effective Ethereum scaling. ## Making API Requests - [Arbitrum QuickStart](https://www.quicknode.com/docs/arbitrum/quickstart.md): Get started with Arbitrum RPC on Quicknode. Follow this QuickStart to get up and running with your own Quicknode endpoint and making your first API request to the Arbitrum blockchain. - [Arbitrum API Endpoints](https://www.quicknode.com/docs/arbitrum/endpoints.md): Learn how to use Arbitrum RPC endpoints, make API requests, and handle responses with Quicknode. - [Arbitrum Endpoint Security](https://www.quicknode.com/docs/arbitrum/endpoint-security.md): Learn about endpoint security options and how to set up a Quicknode Arbitrum RPC endpoint for optimal performance and security. - [Arbitrum Error Code Reference](https://www.quicknode.com/docs/arbitrum/error-references.md): Learn about Arbitrum error codes, including HTTP, JSON-RPC, and Quicknode's own custom error codes. ## API Reference - [Arbitrum API Overview](https://www.quicknode.com/docs/arbitrum/api-overview.md): Overview of supported Arbitrum APIs, networks and supported products on Quicknode. ## Ethereum JSON-RPC API - [eth_accounts RPC Method](https://www.quicknode.com/docs/arbitrum/eth_accounts.md): Returns an array of addresses owned by the client. Since Quicknode does not store private keys, this will always return an empty response. - [eth_blockNumber RPC Method](https://www.quicknode.com/docs/arbitrum/eth_blockNumber.md): Returns the latest block number of the blockchain. - [eth_call RPC Method](https://www.quicknode.com/docs/arbitrum/eth_call.md): Executes a new message call immediately without creating a transaction on the block chain. - [eth_chainId RPC Method](https://www.quicknode.com/docs/arbitrum/eth_chainId.md): Returns the current network/chain ID, used to sign replay-protected transaction introduced in EIP-155. - [eth_estimateGas RPC Method](https://www.quicknode.com/docs/arbitrum/eth_estimateGas.md): Returns an estimation of gas for a given transaction. - [eth_feeHistory RPC Method](https://www.quicknode.com/docs/arbitrum/eth_feeHistory.md): Returns the collection of historical gas information. - [eth_gasPrice RPC Method](https://www.quicknode.com/docs/arbitrum/eth_gasPrice.md): Returns the current gas price on the network in wei. - [eth_getBalance RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBalance.md): Returns the balance of given account address in wei. - [eth_getBlockByHash RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBlockByHash.md): Returns information of the block matching the given block hash. - [eth_getBlockByNumber RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBlockByNumber.md): Returns information of the block matching the given block number. - [eth_getBlockReceipts RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBlockReceipts.md): Returns all transaction receipts for a given block. - [eth_getBlockTransactionCountByHash RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBlockTransactionCountByHash.md): Returns the number of transactions for the block matching the given block hash. - [eth_getBlockTransactionCountByNumber RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getBlockTransactionCountByNumber.md): Returns the number of transactions for the block matching the given block number. - [eth_getCode RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getCode.md): Returns the compiled bytecode of a smart contract. - [eth_getFilterChanges RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getFilterChanges.md): Polling method for a filter, which returns an array of events that have occurred since the last poll. - [eth_getFilterLogs RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getFilterLogs.md): Returns an array of all logs matching filter with given id. - [eth_getLogs RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getLogs.md): Returns an array of all logs matching a given filter object. - [eth_getProof RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getProof.md): Returns the account and storage values of the specified account including the Merkle-proof. - [eth_getStorageAt RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getStorageAt.md): Returns the value from a storage position at a given address. - [eth_getTransactionByBlockHashAndIndex RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getTransactionByBlockHashAndIndex.md): Returns information about a transaction given a blockhash and transaction index position. - [eth_getTransactionByBlockNumberAndIndex RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getTransactionByBlockNumberAndIndex.md): Returns information about a transaction given a block number and transaction index position. - [eth_getTransactionByHash RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getTransactionByHash.md): Returns the information about a transaction from a transaction hash. - [eth_getRawTransactionByHash RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getRawTransactionByHash.md): Returns the raw transaction data for a transaction hash. - [eth_getTransactionCount RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getTransactionCount.md): Returns the number of transactions sent from an address. - [eth_getTransactionReceipt RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getTransactionReceipt.md): Returns the receipt of a transaction by transaction hash. - [eth_getUncleCountByBlockHash RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getUncleCountByBlockHash.md): Returns the number of uncles for the block matching the given block hash. - [eth_getUncleCountByBlockNumber RPC Method](https://www.quicknode.com/docs/arbitrum/eth_getUncleCountByBlockNumber.md): Returns the number of uncles for the block matching the given block number. - [eth_maxPriorityFeePerGas RPC Method](https://www.quicknode.com/docs/arbitrum/eth_maxPriorityFeePerGas.md): Get the priority fee needed to be included in a block. - [eth_newBlockFilter RPC Method](https://www.quicknode.com/docs/arbitrum/eth_newBlockFilter.md): Creates a filter in the node, to notify when a new block arrives. To check if the state has changed, call eth_getFilterChanges. - [eth_newFilter RPC Method](https://www.quicknode.com/docs/arbitrum/eth_newFilter.md): Creates a filter object, based on filter options, to notify when the state changes (logs). To check if the state has changed, call eth_getFilterChanges. - [eth_newPendingTransactionFilter RPC Method](https://www.quicknode.com/docs/arbitrum/eth_newPendingTransactionFilter.md): Creates a filter in the node to notify when new pending transactions arrive. To check if the state has changed, call eth_getFilterChanges. - [eth_sendRawTransaction RPC Method](https://www.quicknode.com/docs/arbitrum/eth_sendRawTransaction.md): Creates new message call transaction or a contract creation for signed transactions. The new API Credit value for this method is 20 when used part of the Core API. If you are using eth_sendRawTransaction as part of a Marketplace add-on, view the add-on's homepage for more information about the specific charge. - [eth_signTransaction RPC Method](https://www.quicknode.com/docs/arbitrum/eth_signTransaction.md): Signs a transaction that can be submitted to the network later using eth_sendRawTransaction - not supported by Quicknode! - [eth_simulateV1 RPC Method](https://www.quicknode.com/docs/arbitrum/eth_simulateV1.md): Simulates a series of transactions at a specific block height with optional state overrides. This method allows you to test transactions with custom block and state parameters without actually submitting them to the network. - [eth_subscribe RPC Method](https://www.quicknode.com/docs/arbitrum/eth_subscribe.md): Starts a subscription to a specific event. - [eth_syncing RPC Method](https://www.quicknode.com/docs/arbitrum/eth_syncing.md): Returns an object with the sync status of the node if the node is out-of-sync and is syncing. Returns false when the node is already in sync. - [eth_uninstallFilter RPC Method](https://www.quicknode.com/docs/arbitrum/eth_uninstallFilter.md): It uninstalls a filter with the given filter id. - [eth_unsubscribe RPC Method](https://www.quicknode.com/docs/arbitrum/eth_unsubscribe.md): Cancels an existing subscription so that no further events are sent. - [net_listening RPC Method](https://www.quicknode.com/docs/arbitrum/net_listening.md): Returns true if client is actively listening for network connections. - [net_peerCount RPC Method](https://www.quicknode.com/docs/arbitrum/net_peerCount.md): Returns number of peers currently connected to the client. - [net_version RPC Method](https://www.quicknode.com/docs/arbitrum/net_version.md): Returns the current network id. - [web3_clientVersion RPC Method](https://www.quicknode.com/docs/arbitrum/web3_clientVersion.md): Returns the current version of the chain client. - [web3_sha3 RPC Method](https://www.quicknode.com/docs/arbitrum/web3_sha3.md): Returns Keccak-256 (not the standardized SHA3-256) hash of the given data. ## Trace API - [arbtrace_block RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_block.md): Returns traces created at given block (Supported on Erigon). - [arbtrace_call RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_call.md): Executes a new message call and returns a number of possible traces (Supported on Erigon). - [arbtrace_callMany RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_callMany.md): Performs multiple call traces on top of the same block. i.e. transaction n will be executed on top of a pending block with all n-1 transactions applied (traced) first. Allows to trace dependent transactions. (Supported on Erigon). - [arbtrace_filter RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_filter.md): Returns traces matching given filter (Supported on Erigon). - [arbtrace_replayBlockTransactions RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_replayBlockTransactions.md): Replays all transactions in a block returning the requested traces for each transaction (Supported on Erigon). - [arbtrace_replayTransaction RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_replayTransaction.md): Replays a transaction, returning the traces (Supported on Erigon). - [arbtrace_transaction RPC Method](https://www.quicknode.com/docs/arbitrum/arbtrace_transaction.md): Returns all traces of given transaction (Supported on Erigon). ## Debug API - [debug_getBadBlocks RPC Method](https://www.quicknode.com/docs/arbitrum/debug_getBadBlocks.md): Returns a list of the last bad blocks that the client has seen on the network. - [debug_getTrieFlushInterval RPC Method](https://www.quicknode.com/docs/arbitrum/debug_getTrieFlushInterval.md): Retrieves the current value of in-memory trie flush interval - [debug_storageRangeAt RPC Method](https://www.quicknode.com/docs/arbitrum/debug_storageRangeAt.md): Returns the contract storage for the specified range. - [debug_traceBlock RPC Method](https://www.quicknode.com/docs/arbitrum/debug_traceBlock.md): Returns a full stack trace of all invoked opcodes of all transactions that were included in a block. - [debug_traceBlockByHash RPC Method](https://www.quicknode.com/docs/arbitrum/debug_traceBlockByHash.md): Returns the possible tracing result number by executing all transactions in the block specified by the block hash with a tracer. - [debug_traceBlockByNumber RPC Method](https://www.quicknode.com/docs/arbitrum/debug_traceBlockByNumber.md): Returns the tracing result by executing all transactions in the block specified by number with a tracer. - [debug_traceCall RPC Method](https://www.quicknode.com/docs/arbitrum/debug_traceCall.md): Returns the number of possible tracing result by executing an eth call within the context of the given block execution. - [debug_traceTransaction RPC Method](https://www.quicknode.com/docs/arbitrum/debug_traceTransaction.md): Returns all traces of a given transaction. ## Marketplace - [Supported Marketplace Add-Ons for Arbitrum](https://www.quicknode.com/docs/arbitrum/marketplace-addons.md): Learn about the Quicknode Marketplace and how to utilize Marketplace Add-ons on Arbitrum. ## Multi-Region Broadcast - [eth_sendRawTransaction RPC Method](https://www.quicknode.com/docs/arbitrum/eth_sendRawTransaction.md): Creates new message call transaction or a contract creation for signed transactions. The new API Credit value for this method is 20 when used part of the Core API. If you are using eth_sendRawTransaction as part of a Marketplace add-on, view the add-on's homepage for more information about the specific charge. - [qn_broadcastRawTransaction RPC Method - Multi-Region Broadcast](https://www.quicknode.com/docs/arbitrum/qn_broadcastRawTransaction.md): Sends a transaction to multiple regions to encourage faster mining. ## Synchronous SendTransaction - [eth_sendRawTransactionSync RPC Method](https://www.quicknode.com/docs/arbitrum/eth_sendRawTransactionSync.md): Broadcasts a raw transaction to the network and synchronously returns the complete transaction receipt once mined, eliminating the need for manual polling. ## Single Flight RPC - [qn_getBlockWithReceipts RPC Method - Single Flight](https://www.quicknode.com/docs/arbitrum/qn_getBlockWithReceipts.md): Returns information about the specified block and the transaction receipts within it. - [qn_getReceipts RPC Method - Single Flight](https://www.quicknode.com/docs/arbitrum/qn_getReceipts.md): Returns transaction receipts for the block specified.