> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Como Usar getHealth

> Aprenda casos de uso do getHealth, exemplos de código, parâmetros de solicitação, estrutura de resposta e dicas.

O endpoint [`getHealth`](https://www.helius.dev/docs/api-reference/rpc/http/gethealth) é usado para verificar o status de saúde atual de um nó RPC Solana. Um nó saudável é geralmente considerado aquele que está operacional e razoavelmente sincronizado com o resto do cluster (especificamente, dentro de uma certa distância de slots do último slot confirmado do cluster, conhecido como `HEALTH_CHECK_SLOT_DISTANCE`).

Este endpoint é crucial para monitorar a saúde do nó, especialmente para aplicações ou infraestruturas que dependem da disponibilidade e confiabilidade de um nó RPC.

## Como Funciona

O método `getHealth` utiliza o mecanismo padrão de POST JSON-RPC com o método `getHealth`. Este método verifica se o nó RPC está saudável e sincronizado com o cluster Solana.

## Casos de Uso Comuns

* **Monitoramento de Nós:** Verifique regularmente a saúde dos nós RPC para garantir que estejam operacionais e sincronizados.
* **Balanceamento de Carga:** Use verificações de saúde para determinar se um nó deve receber tráfego em uma configuração de balanceamento de carga.
* **Sistemas de Failover:** Acione o failover para um nó de backup se um nó primário se tornar não saudável.
* **Depuração de Conectividade:** Verifique rapidamente se um nó RPC está responsivo.

## Parâmetros de Solicitação

Este método não possui parâmetros.

## Estrutura de Resposta

* **Para POST JSON-RPC `getHealth`:**
  * **`result`**: `"ok"` se o nó estiver saudável.
  * Pode retornar um objeto de erro ou outros valores de string (como `"behind"` ou `"unknown"`) se estiver não saudável, embora a resposta exata de erro para um nó não saudável possa ser instável ou variar entre provedores.

## Exemplos

### 1. Verificar Saúde do Nó usando JSON-RPC (POST com cURL)

<CodeGroup>
  ```bash cURL (JSON-RPC POST) theme={"system"}
  curl https://mainnet.helius-rpc.com/?api-key=<api-key> -X POST -H "Content-Type: application/json" -d \
    '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "getHealth"
    }'
  ```

  ```javascript JavaScript (using @solana/web3.js) theme={"system"}
  const { Connection } = require('@solana/web3.js');

  async function checkRpcHealth(rpcUrl) {
      const connection = new Connection(rpcUrl);
      try {
          const health = await connection.rpcRequest('getHealth', []);
          console.log(`getHealth result for ${rpcUrl}:`, health);
          return health.result;
      } catch (error) {
          console.error(`Error calling getHealth for ${rpcUrl}:`, error.message);
          return null;
      }
  }

  // Example usage:
  checkRpcHealth('https://mainnet.helius-rpc.com/?api-key=<api-key>');
  ```
</CodeGroup>

**Resposta esperada JSON-RPC (para um nó saudável):**

```json theme={"system"}
{
  "jsonrpc": "2.0",
  "result": "ok",
  "id": 1
}
```

## Dicas para Desenvolvedores

* **Definição de Saudável:** "Saudável" geralmente significa que o nó é responsivo e não está muito atrás da ponta do cluster. A diferença exata de slots (`HEALTH_CHECK_SLOT_DISTANCE`) pode ser configurada no nó.
* **Interpretando `"behind"` ou `"unknown"`:** Se você receber `"behind {distance}"` ou `"unknown"`, o nó está operacional, mas pode não estar totalmente atualizado ou capaz de determinar seu status em relação ao cluster. Dependendo dos requisitos de sua aplicação, você pode tratar esses estados de maneira diferente.
* **Diferenças entre Provedores:** O comportamento exato e os códigos/corpos de resposta para um nó não saudável podem variar ligeiramente entre provedores de RPC.
* **Tratamento de Erros:** Sempre implemente um tratamento adequado de erros ao chamar `getHealth`, pois problemas de rede ou no nó podem causar a falha completa da solicitação.

Este guia fornece as informações necessárias para usar o endpoint `getHealth` para monitorar o status de um nó RPC Solana.
