Platform
ScaiWave ScaiGrid ScaiCore ScaiBot ScaiDrive ScaiKey Models Tools & Services
Solutions
Organisations Developers Internet Service Providers Managed Service Providers AI-in-a-Box
Resources
Support Documentation Blog Downloads
Company
About Research Careers Investment Opportunities Contact
Log in

Health and metrics API

2 endpoints. Outside /v1/. Unauthenticated.

Method Path Purpose
GET /health Readiness probe.
GET /metrics Prometheus scrape endpoint.

GET /health#

bash
1
curl https://your-host/health
json
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
  "status": "ok",
  "checks": {
    "database": "ok",
    "redis": "ok",
    "nats": "ok",
    "weaviate": "ok",
    "version": "1.1.0"
  }
}

Returns 200 when all checked dependencies are reachable; 503 if any is failing. Use as a Kubernetes readiness probe (and a slower liveness probe with retries — DB hiccups shouldn't restart the pod).

GET /metrics#

Prometheus text format. Configure your scraper to hit this on every API pod.

Useful metric families:

  • scaiwave_http_requests_total — labelled by route, method, status.
  • scaiwave_http_request_duration_seconds — histogram.
  • scaiwave_ai_tokens_total{tenant, model, direction} — counter.
  • scaiwave_ws_connections{tenant} — gauge.
  • scaiwave_arq_queue_depth{queue} — gauge.
  • scaiwave_arq_jobs_total{function, status} — counter.
  • scaiwave_search_queries_total{type, status} — counter.
  • scaiwave_search_latency_seconds — histogram.
  • scaiwave_scaikey_reconcile_diffs_total — drift counter for identity sync.
  • scaiwave_call_active{tenant} — gauge of in-flight calls.

The version of the running build is also exposed as a label on the scaiwave_build_info gauge for dashboards that need to know what's running.

Updated 2026-05-17 13:10:03 View source (.md) rev 3