rpc_modules - Arbitrum RPC Method
Inspect which JSON-RPC namespaces are enabled on your Arbitrum endpoint. Useful for capability checks, client diagnostics, and RPC feature discovery.
Returns the enabled JSON-RPC namespaces exposed by the connected Arbitrum endpoint together with their version strings.
Non-standard method.
rpc_modulesis a client-introspection RPC that is commonly available on Geth-compatible stacks, but it is not part of the core Ethereum Execution API method set. Availability varies by client and operator policy.
Why Arbitrum? Build on Ethereum's leading Layer 2 with 46% L2 market share and $12B+ TVL with full EVM compatibility, 1.5M daily transactions, and $3B+ DAO treasury for ecosystem growth.
When to Use This Method
rpc_modules is useful for DeFi developers, protocol teams, and dApp builders seeking Ethereum scalability:
- Capability Discovery — Detect whether namespaces like
debug,trace,txpool, orerigonare exposed before attempting those calls - Client Diagnostics — Verify what the serving node has enabled when debugging environment-specific issues
- Infrastructure Audits — Compare public and private endpoints to confirm which RPC surfaces are intentionally exposed
- Runtime Feature Gating — Adjust tooling behavior dynamically based on the actual namespaces available on a node
Request Parameters
This method accepts no parameters.
Response Body
Object whose keys are enabled namespaces and whose values are version strings
Error Responses
Code Examples
curl -X POST https://api-arbitrum-mainnet-archive.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "rpc_modules",
"params": [],
"id": 1
}'Error Handling
| Error Code | Message | Description |
|---|---|---|
| -32601 | Method not found | The client or endpoint does not expose rpc_modules |
| -32603 | Internal error | The node rejected or failed to process the request |
Related Methods
web3_clientVersion- Inspect the client software version stringdebug_traceTransaction- Debug namespace exampletrace_transaction- Trace namespace example
eth_protocolVersion
Get the current Ethereum protocol version on Arbitrum. Useful for client compatibility checks and identifying version-gated features.
eth_mining
Check the legacy eth_mining compatibility method on Arbitrum. Public endpoints often return a client-specific unsupported-method response instead of a boolean.