MetaMask and Rabby Custom RPC Setup: URL and Chain ID
Add a BlockVectra RPC URL to MetaMask or Rabby. Find chain IDs and native symbols, configure a path API key and manage a dedicated wallet key.
Add the RPC URL, chain ID and native symbol in MetaMask or Rabby, and use a dedicated wallet key when authentication is required.
- First step: Read the wallet network parameter table and enter its fields in your wallet, using
/v1/{chain}/{api_key}for authenticated RPC. - Done when: Saving adds the network and switches to it in MetaMask; the configured chain ID matches the ID returned by the endpoint.
Chain parameters and access options.
1. Why use a custom RPC
Blockchain ecosystems generally provide default public RPC endpoints for basic community usage and developer onboarding. However, official network documentation defines explicit rate limits and usage scope for these endpoints:
- Robinhood Chain:
The official documentation page Connecting to Robinhood Chain notes that the public endpoint
https://rpc.mainnet.chain.robinhood.comis rate-limited and not recommended for production workloads (The following public endpoints are available but are rate-limited and not recommended for production use. For production, use a provider). - HyperEVM:
The official documentation page Rate limits and user limits specifies an IP-based limit for the public endpoint
rpc.hyperliquid.xyz/evmof a maximum of 100 EVM JSON-RPC requests per minute (Maximum of 100 EVM JSON-RPC requests per minute for rpc.hyperliquid.xyz/evm).
2. Required wallet fields and network parameters
EVM wallets require several specific fields when adding or editing a network:
- Network Name: The human-readable label displayed in the wallet interface.
- RPC URL: The communication endpoint. The API key must be placed in the URL path, using path
/v1/{chain}/{api_key}onapi.blockvectra.com:/v1/{chain}/{api_key}Important: Wallets like MetaMask and Rabby only accept standard HTTP(S) URLs in their RPC URL field and do not support custom request headers (such as
x-api-key: {api_key}). Consequently, wallet connections must supply the API key directly in the URL path. Do not include a trailing slash after{api_key}, and note that requests targeting an unknown{chain}return HTTP 404. - Chain ID: The EIP-155 integer chain identifier.
- Currency Symbol: The symbol of the chain's native gas asset (e.g.
ETH,HYPE). - Block Explorer URL: The primary web address of the network's block explorer.
Supported chains network parameter table
| Network Name | RPC URL (Path Key) | Chain ID | Currency Symbol | Block Explorer URL |
|---|---|---|---|---|
| Arbitrum One | https://api.blockvectra.com/v1/arb_mainnet/{api_key} | 42161 | ETH | arbiscan.io |
| Arc | https://api.blockvectra.com/v1/arc_mainnet/{api_key} | 5042 | — | — |
| Avalanche C-Chain | https://api.blockvectra.com/v1/avax_mainnet/{api_key} | 43114 | — | — |
| Base | https://api.blockvectra.com/v1/base_mainnet/{api_key} | 8453 | ETH | basescan.org |
| Berachain | https://api.blockvectra.com/v1/berachain_mainnet/{api_key} | 80094 | — | — |
| Boba | https://api.blockvectra.com/v1/boba_mainnet/{api_key} | 288 | — | — |
| BNB Smart Chain | https://api.blockvectra.com/v1/bsc_mainnet/{api_key} | 56 | BNB | bscscan.com |
| Celo | https://api.blockvectra.com/v1/celo_mainnet/{api_key} | 42220 | — | — |
| Ethereum | https://api.blockvectra.com/v1/eth_mainnet/{api_key} | 1 | ETH | etherscan.io |
| Ethereum Sepolia | https://api.blockvectra.com/v1/eth_sepolia/{api_key} | 11155111 | SepoliaETH | sepolia.etherscan.io |
| Fraxtal | https://api.blockvectra.com/v1/fraxtal_mainnet/{api_key} | 252 | FRAX | fraxscan.com |
| Gnosis | https://api.blockvectra.com/v1/gnosis_mainnet/{api_key} | 100 | — | — |
| HyperEVM | https://api.blockvectra.com/v1/hyperevm_mainnet/{api_key} | 999 | HYPE | hyperscan.com |
| Ink | https://api.blockvectra.com/v1/ink_mainnet/{api_key} | 57073 | ETH | explorer.inkonchain.com |
| Katana | https://api.blockvectra.com/v1/katana_mainnet/{api_key} | 747474 | ETH | katanascan.com |
| Linea | https://api.blockvectra.com/v1/linea_mainnet/{api_key} | 59144 | — | — |
| Metal L2 | https://api.blockvectra.com/v1/metall2_mainnet/{api_key} | 1750 | — | — |
| Mode | https://api.blockvectra.com/v1/mode_mainnet/{api_key} | 34443 | — | — |
| OP Mainnet | https://api.blockvectra.com/v1/op_mainnet/{api_key} | 10 | — | — |
| Polygon | https://api.blockvectra.com/v1/polygon_mainnet/{api_key} | 137 | POL | polygonscan.com |
| Robinhood Chain | https://api.blockvectra.com/v1/robinhood_mainnet/{api_key} | 4663 | ETH | robinhoodchain.blockscout.com |
| Robinhood Chain Testnet | https://api.blockvectra.com/v1/robinhood_testnet/{api_key} | 46630 | ETH | explorer.testnet.chain.robinhood.com |
| Rootstock | https://api.blockvectra.com/v1/rootstock_mainnet/{api_key} | 30 | — | — |
| Soneium | https://api.blockvectra.com/v1/soneium_mainnet/{api_key} | 1868 | — | — |
| Sonic | https://api.blockvectra.com/v1/sonic_mainnet/{api_key} | 146 | — | — |
| Unichain | https://api.blockvectra.com/v1/unichain_mainnet/{api_key} | 130 | ETH | uniscan.xyz |
| World Chain | https://api.blockvectra.com/v1/world_mainnet/{api_key} | 480 | — | — |
| X Layer | https://api.blockvectra.com/v1/xlayer_mainnet/{api_key} | 196 | — | — |
| Zora | https://api.blockvectra.com/v1/zora_mainnet/{api_key} | 7777777 | — | — |
HyperEVM send-method boundary: Keyed BlockVectra HyperEVM endpoints list eth_sendRawTransaction in methods.allow; the public keyless endpoint does not. Before sending from your wallet, confirm the selected endpoint allows eth_sendRawTransaction and matches the chain ID. See Deploy with Foundry or Hardhat in the HyperEVM guide for details.
An API key works across supported chains by substituting {chain} in the path with the desired chain slug. For details on shared quotas and URL routing, see the One key, many chains guide.
3. Step-by-step wallet instructions
MetaMask configuration steps
Based on the official MetaMask help guide How to add a custom network RPC:
- Open the MetaMask browser extension or mobile application.
- Click the network selector dropdown at the top of the interface (or navigate to Settings > Networks).
- Select Add network, then choose Add a network manually at the bottom.
- Fill in the network details using the table above:
- Network Name: Enter the chain name from the table above.
- New RPC URL: Enter your path-authenticated endpoint, such as
https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}(replace{api_key}with your actual API key). - Chain ID: Enter the integer chain ID from the table above.
- Currency Symbol: Enter the native asset symbol from the table above.
- Block Explorer URL: Enter the official block explorer address from the table above (optional).
- Click Save to add the network and switch to it.
Sending transactions on HyperEVM: Keyed BlockVectra HyperEVM endpoints list eth_sendRawTransaction in methods.allow; the public keyless endpoint does not. Before sending from your wallet, confirm the selected endpoint allows eth_sendRawTransaction and matches the chain ID. (see HyperEVM broadcasting explanation).
Editing an existing network: To update the RPC endpoint for a network already in your list, go to Settings > Networks, select the target network, edit or add your BlockVectra URL in the RPC URL field, and save your changes.
Rabby Wallet configuration steps
In Rabby's custom network or custom RPC settings, enter the parameters from the table above: Network Name, RPC URL (with path key https://api.blockvectra.com/v1/{chain}/{api_key}), Chain ID, Currency Symbol, and Block Explorer URL.
Note: When adding a custom network or testnet, ensure that the Chain ID matches the ID returned by the endpoint to prevent network ID mismatch errors.
4. Security tips and usage management
Keep the following security and billing principles in mind when operating a custom RPC:
[!WARNING] API Key exposure risk: The RPC URL path contains your API key in plain text. Never share screenshots of your wallet's network configuration in public chat rooms or forums, and do not commit URLs containing your live key into public code repositories or documentation.
- Wallet requests count toward account usage:
Opening the wallet, switching accounts, or refreshing asset lists triggers live JSON-RPC calls (such as
eth_blockNumber,eth_getBalance, andeth_call). These requests consume capacity according to the called method's CU weight (see the pricing page) against your account limits. - Create a dedicated API key for each wallet:
In the Console, create a dedicated API key labeled specifically for your wallet (e.g.
metamask-desktoporrabby-extension). This keeps your personal wallet traffic isolated from your server applications, automated scripts, and AI Agents. - Independent revocation on compromise: If you suspect an API key configured in a wallet has been exposed, revoke that individual key in the console immediately without impacting any other running keys or services. If your session expires or a key is lost, refer to Lost your session or API key? in the programmatic sign-up guide to regain control using your Ethereum wallet signature.
5. Related resources
- Historical state limits: Check authenticated state windows and keyless history before requesting an earlier balance or contract value; log query spans are a separate limit.
- One key, many chains guide: Detailed URL routing rules, programmatic discovery with
GET /v1/chains, and cross-chain quota mechanics. - Pricing and plan limits: Information on CU weights, throughput replenishment rates, and payment deposit upgrades.
Next steps
- Browse the datasets directory to see every dataset BlockVectra indexes.
- See the free plan and pricing to check what your account includes.
- Log in to the console to create an API key.
Last updated:
Simulate Transactions
Dry-run multiple transactions and inspect state changes before sending them on-chain using eth_simulateV1. Learn supported chain method policies, execution spec request payloads, CU pricing weights, and AI Agent MCP integration.
WebSocket Subscriptions
Connect to BlockVectra WebSocket endpoints for eth_subscribe newHeads and logs. Learn connection methods, filter rules, reconnection backoff, and recovery.