Endpoint
Autenticação
Este endpoint não requer autenticação, facilitando a verificação do status do serviço sem a necessidade de credenciais.
Response
{
"status": "online",
"timestamp": "2023-05-15T10:30:45Z",
"version": "1.9.2",
"environment": "production",
"services": {
"gateway": "online",
"database": "online",
"tokenizer": "online",
"notifications": "online"
},
"latency": {
"gateway": 45,
"database": 120,
"tokenizer": 38,
"notifications": 78
}
}
Campos da Resposta
| Campo | Tipo | Descrição |
|---|
| status | string | Status geral da API: “online” ou “degraded” |
| timestamp | string | Data e hora da verificação (formato ISO 8601) |
| version | string | Versão atual da API |
| environment | string | Ambiente atual (“production” ou “sandbox”) |
| services | object | Status dos serviços individuais |
| latency | object | Latência atual em milissegundos para cada serviço |
Possíveis Status
- online: O serviço está funcionando normalmente
- degraded: O serviço está operacional, mas com performance reduzida
- offline: O serviço está indisponível (apenas para serviços individuais)
Uso Recomendado
Monitoramento de Disponibilidade
Você pode implementar verificações regulares para garantir que o serviço esteja operacional:
async function checkApiStatus() {
try {
const response = await fetch('https://api.hydrahub.com.br/api/v1/status');
const data = await response.json();
if (data.status === 'online') {
console.log('HYDRA HUB API está online e operacional');
return true;
} else {
console.warn('HYDRA HUB API está com performance degradada');
// Notificar equipe ou tomar ação apropriada
return false;
}
} catch (error) {
console.error('HYDRA HUB API está indisponível:', error);
// Implementar mecanismo de fallback ou alertar equipe
return false;
}
}
// Verificar a cada 5 minutos
setInterval(checkApiStatus, 5 * 60 * 1000);
Verificação Pré-Transação
É recomendável verificar o status da API antes de iniciar operações críticas:
async function processPayment(paymentData) {
// Verificar status da API antes de processar pagamento
const statusCheck = await checkApiStatus();
if (!statusCheck) {
// Informar ao usuário sobre problemas com o processador de pagamentos
return {success: false, message: 'Serviço temporariamente indisponível'};
}
// Prosseguir com o processamento do pagamento
// ...
}
Limites de Taxa
Este endpoint tem um limite mais alto de requisições por minuto em comparação com outros endpoints:
- 60 requisições por minuto por IP
- 300 requisições por hora por IP
Exceder esses limites resultará em um erro HTTP 429 (Too Many Requests).
Boas Práticas
- Não abuse deste endpoint com verificações muito frequentes
- Implemente backoff exponencial em caso de falhas
- Defina alertas baseados no status e latência retornados
- Use timeouts adequados ao verificar o status (recomendado: 5 segundos)
- Verifique individualmente os status dos serviços para diagnósticos mais precisos
O ambiente de Sandbox pode ocasionalmente apresentar latências maiores ou status “degraded” durante manutenções programadas. Isso não afeta o ambiente de produção.