# Configurar RPC personalizado no MetaMask e Rabby: URL e Chain ID

> Source: https://docs.blockvectra.com/pt-br/guides/wallet-custom-rpc/

Adicione a URL RPC, o Chain ID e o símbolo nativo no MetaMask ou Rabby e use uma API key exclusiva para a carteira quando a autenticação for necessária.

## 1. Por que usar um RPC personalizado

Ecossistemas blockchain normalmente oferecem endpoints RPC públicos padrão para uso básico da comunidade e primeiros passos de desenvolvedores. Porém, a documentação oficial das redes define limites de taxa e escopos de uso explícitos para esses endpoints:

* **Robinhood Chain**:
  A página oficial [Connecting to Robinhood Chain](https://docs.robinhood.com/chain/connecting) informa que o endpoint público `https://rpc.mainnet.chain.robinhood.com` tem limite de taxa e não é recomendado para cargas de produção (*The following public endpoints are available but are rate-limited and not recommended for production use. For production, use a provider*).
* **HyperEVM**:
  A página oficial [Rate limits and user limits](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/rate-limits-and-user-limits) especifica um limite por IP para o endpoint público `rpc.hyperliquid.xyz/evm` de no máximo 100 requisições EVM JSON-RPC por minuto (*Maximum of 100 EVM JSON-RPC requests per minute for rpc.hyperliquid.xyz/evm*).

## 2. Campos exigidos pela carteira e parâmetros de rede

Carteiras EVM exigem alguns campos específicos ao adicionar ou editar uma rede:

1. **Nome da rede**: o nome legível exibido na interface da carteira.
2. **RPC URL**: o endpoint de comunicação. **A API key deve ser incluída no caminho da URL**, usando o caminho `/v1/{chain}/{api_key}` em `api.blockvectra.com`:
   ```http
   /v1/{chain}/{api_key}
   ```
   > **Importante**: carteiras como MetaMask e Rabby aceitam apenas URLs HTTP(S) padrão no campo RPC URL e **não oferecem cabeçalhos de requisição personalizados** (como `x-api-key: {api_key}`). Por isso, conexões de carteira devem enviar a API key diretamente no caminho da URL. Não inclua uma barra final após `{api_key}`; requisições para um `{chain}` desconhecido retornam HTTP 404.
3. **Chain ID**: o identificador inteiro EIP-155 da rede.
4. **Símbolo da moeda**: o símbolo do ativo nativo usado para gas na rede (por exemplo, `ETH`, `HYPE`).
5. **URL do explorador de blocos**: o endereço principal do explorador de blocos da rede.

### Tabela de parâmetros das redes compatíveis

| Nome da rede | RPC URL (API key no caminho) | Chain ID | Símbolo da moeda | URL do explorador de blocos |
| --- | --- | --- | --- | --- |
| [arb_mainnet](https://blockvectra.com/pt-br/chains/arb_mainnet/) | `https://api.blockvectra.com/v1/arb_mainnet/{api_key}` | 42161 | [ETH](https://docs.arbitrum.io/build-decentralized-apps/reference/node-providers) | [arbiscan.io](https://arbiscan.io) |
| [base_mainnet](https://blockvectra.com/pt-br/chains/base_mainnet/) | `https://api.blockvectra.com/v1/base_mainnet/{api_key}` | 8453 | [ETH](https://docs.base.org/docs/network-information/) | [basescan.org](https://basescan.org) |
| [bsc_mainnet](https://blockvectra.com/pt-br/chains/bsc_mainnet/) | `https://api.blockvectra.com/v1/bsc_mainnet/{api_key}` | 56 | [BNB](https://docs.bnbchain.org/) | [bscscan.com](https://bscscan.com) |
| [Ethereum](https://blockvectra.com/pt-br/chains/eth_mainnet/) | `https://api.blockvectra.com/v1/eth_mainnet/{api_key}` | 1 | [ETH](https://ethereum.org/) | [etherscan.io](https://etherscan.io) |
| [eth_sepolia](https://blockvectra.com/pt-br/chains/eth_sepolia/) | `https://api.blockvectra.com/v1/eth_sepolia/{api_key}` | 11155111 | [SepoliaETH](https://ethereum.org/en/developers/docs/networks/#sepolia) | [sepolia.etherscan.io](https://sepolia.etherscan.io) |
| [HyperEVM](https://blockvectra.com/pt-br/chains/hyperevm_mainnet/) | `https://api.blockvectra.com/v1/hyperevm_mainnet/{api_key}` | 999 | [HYPE](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/hyperevm) | [hyperscan.com](https://www.hyperscan.com/) |
| [polygon_mainnet](https://blockvectra.com/pt-br/chains/polygon_mainnet/) | `https://api.blockvectra.com/v1/polygon_mainnet/{api_key}` | 137 | [POL](https://docs.polygon.technology/) | [polygonscan.com](https://polygonscan.com) |
| [Robinhood Chain](https://blockvectra.com/pt-br/chains/robinhood_mainnet/) | `https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}` | 4663 | [ETH](https://docs.robinhood.com/chain/connecting) | [robinhoodchain.blockscout.com](https://robinhoodchain.blockscout.com) |
| [robinhood_testnet](https://blockvectra.com/pt-br/chains/robinhood_testnet/) | `https://api.blockvectra.com/v1/robinhood_testnet/{api_key}` | 46630 | [ETH](https://docs.robinhood.com/chain/connecting) | [explorer.testnet.chain.robinhood.com](https://explorer.testnet.chain.robinhood.com) |

> **Limitação de somente leitura na HyperEVM**: o endpoint BlockVectra da HyperEVM permite leituras, mas não transmite transações. Use um RPC com suporte a eth\_sendRawTransaction para enviar transações pela carteira. Consulte [Deploy com Foundry ou Hardhat](https://docs.blockvectra.com/en/guides/hyperevm-backfill/#deploy-with-foundry-or-hardhat) no guia da HyperEVM para detalhes de transmissão.

Uma API key funciona em todas as redes compatíveis ao substituir `{chain}` no caminho pelo slug da rede desejada. Para detalhes sobre cotas compartilhadas e roteamento de URLs, consulte o [guia Uma API key, várias redes](https://docs.blockvectra.com/en/guides/one-key-many-chains/).

## 3. Instruções passo a passo para carteiras

### Passos de configuração no MetaMask

Com base no guia oficial do MetaMask [How to add a custom network RPC](https://support.metamask.io/networks-and-sidechains/managing-networks/how-to-add-a-custom-network-rpc/):

1. Abra a extensão de navegador ou o aplicativo móvel do MetaMask.
2. Clique no seletor de rede no topo da interface (ou vá a Settings > Networks).
3. Selecione **Add network** e escolha **Add a network manually** na parte inferior.
4. Preencha os detalhes da rede com a tabela acima:
   * **Network Name**: informe o nome da rede da tabela acima.
   * **New RPC URL**: informe seu endpoint autenticado pelo caminho, como `https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}` (substitua `{api_key}` pela sua API key real).
   * **Chain ID**: informe o Chain ID inteiro da tabela acima.
   * **Currency Symbol**: informe o símbolo do ativo nativo da tabela acima.
   * **Block Explorer URL**: informe o endereço oficial do explorador de blocos da tabela acima (opcional).
5. Clique em **Save** para adicionar a rede e selecioná-la.

> **Enviar transações na HyperEVM**: o endpoint BlockVectra da HyperEVM permite leituras, mas não transmite transações. Use um RPC com suporte a eth\_sendRawTransaction para enviar transações pela carteira (consulte a [explicação de transmissão na HyperEVM](https://docs.blockvectra.com/en/guides/hyperevm-backfill/#deploy-with-foundry-or-hardhat)).

> **Editar uma rede existente**: para atualizar o endpoint RPC de uma rede já na sua lista, vá a Settings > Networks, selecione a rede desejada, edite ou adicione sua URL BlockVectra no campo RPC URL e salve as alterações.

### Passos de configuração no Rabby Wallet

Nas configurações de rede personalizada ou RPC personalizado do Rabby, informe os parâmetros da tabela acima: Network Name, RPC URL (com API key no caminho `https://api.blockvectra.com/v1/{chain}/{api_key}`), Chain ID, Currency Symbol e Block Explorer URL.

> **Observação**: ao adicionar uma rede personalizada ou testnet, confira se o Chain ID corresponde ao ID retornado pelo endpoint para evitar erros de divergência de identificador de rede.

## 4. Dicas de segurança e gestão de uso

Considere estes princípios de segurança e cobrança ao operar um RPC personalizado:

> \[!WARNING]
> **Risco de exposição da API key**: o caminho da URL RPC contém sua API key em texto simples. Nunca compartilhe capturas de tela da configuração de rede da carteira em chats públicos ou fóruns e não inclua URLs com sua API key ativa em repositórios públicos de código ou documentação.

1. **Requisições da carteira contam para o uso da conta**:
   Abrir a carteira, trocar de conta ou atualizar listas de ativos dispara chamadas JSON-RPC em tempo real (como `eth_blockNumber`, `eth_getBalance` e `eth_call`). Essas requisições consomem capacidade de acordo com o peso de CU do método chamado (consulte a [página de preços](https://blockvectra.com/en/pricing/)), considerando os limites da sua conta.
2. **Crie uma API key exclusiva para cada carteira**:
   No [Console](https://console.blockvectra.com/login/?next=%2Fkeys%2F), crie uma API key exclusiva com um nome específico para sua carteira (por exemplo, `metamask-desktop` ou `rabby-extension`). Isso isola o tráfego da carteira pessoal dos seus aplicativos de servidor, scripts automatizados e agentes de IA.
3. **Revogue separadamente em caso de comprometimento**:
   Se suspeitar que uma API key configurada em uma carteira foi exposta, revogue essa API key imediatamente no console, sem afetar as outras API keys ou serviços em execução.
   Se sua sessão expirar ou uma API key for perdida, consulte [Perdeu sua sessão ou API key?](https://docs.blockvectra.com/en/guides/programmatic-signup/#lost-your-session-or-api-key) no guia de cadastro programático para recuperar o controle usando a assinatura da sua carteira Ethereum.

## 5. Recursos relacionados

* [Limites de estado histórico](https://docs.blockvectra.com/en/guides/evm-historical-state/): verifique as janelas de estado autenticadas e o histórico sem API key antes de solicitar um saldo ou valor de contrato anterior; intervalos de consulta de logs têm um limite separado.
* [Guia Uma API key, várias redes](https://docs.blockvectra.com/en/guides/one-key-many-chains/): regras detalhadas de roteamento de URLs, descoberta programática com `GET /v1/chains` e mecanismos de cotas entre redes.
* [Preços e limites dos planos](https://blockvectra.com/en/pricing/): informações sobre pesos de CU, taxas de reposição de capacidade e ampliação de capacidade por recarga.

## Próximos passos

* [Explore o diretório de conjuntos de dados](https://blockvectra.com/en/data/) para ver todos os conjuntos de dados indexados pela BlockVectra.
* [Consulte o plano gratuito e os preços](https://blockvectra.com/en/pricing/#free) para verificar o que sua conta inclui.
* [Entre no console](https://console.blockvectra.com/login/?next=%2Fkeys%2F) para criar uma API key.
