Health & Sistema

2. Health & Sistema#

GET/health#

Verifica se o serviço e suas dependencias (MySQL, Redis) estão funcionando.

Auth: Nenhuma

Resposta 200:

json
{
  "status": "ok",
  "service": "biazap-api",
  "checks": {
    "mysql": "ok",
    "redis": "ok"
  }
}

Resposta 503 (degradado):

json
{
  "status": "degraded",
  "service": "biazap-api",
  "checks": {
    "mysql": "ok",
    "redis": "error: connection refused"
  }
}

GET/ready#

Verifica se todas as dependencias (MySQL, Redis, S3) estão funcionando.

Auth: Nenhuma

Resposta 200:

json
{
  "status": "ready",
  "checks": {
    "mysql": "ok",
    "redis": "ok",
    "s3": "ok"
  }
}

Resposta 503 (degradado):

json
{
  "status": "degraded",
  "checks": {
    "mysql": "ok",
    "redis": "error"
  }
}

GET/metrics#

Metricas Prometheus.

Auth: Desabilitado por padrão quando METRICS_BEARER_TOKEN estiver vazio. Para expor:

  • defina METRICS_BEARER_TOKEN e envie Authorization: Bearer <METRICS_BEARER_TOKEN>
  • ou habilite explicitamente ALLOW_PUBLIC_METRICS=true

Se ALLOW_PUBLIC_METRICS=false e METRICS_BEARER_TOKEN estiver vazio, a API responde 401.

Resposta: Texto no formato Prometheus exposition.

Exemplos de series expostas (não exaustivo): biazap_active_instances, biazap_connection_states, biazap_messages_total, biazap_send_latency_seconds_*, biazap_webhook_failures_total, biazap_send_failures_total, biazap_throttle_pauses_total, biazap_realtime_events_dropped_total (eventos descartados quando o cliente SSE/WS não acompanha o hub), biazap_queue_depth, biazap_redis_latency_seconds_*, biazap_s3_latency_seconds_*.