---
title: "health status"
method: GET
path: "/health/status"
tags: ["health"]
---

# health status

`GET /health/status`

Health status endpoint. Returns cached health status (database connectivity, worker count).
Cache TTL is fixed at 5 seconds. Use force=true query parameter to bypass cache.
Note: This endpoint is intentionally different from Kubernetes probes to avoid confusion.
For k8s liveness/readiness probes, use /version endpoint.

## Query parameters

- `force` boolean

## Response `200`

server is healthy or degraded

- HealthStatusResponse — Health status response (cached with 5s TTL)
  - `status` 'healthy' | 'degraded' | 'unhealthy', required — Overall health status
  - `checked_at` string, date-time, required — Timestamp when the health check was actually performed (not cache return time)
  - `database_healthy` boolean, required — Whether the database is reachable
  - `workers_alive` integer, required — Number of workers that pinged within last 5 minutes

## Other responses

- `503` — server is unhealthy (database unreachable)

---

[API](https://skmtc.net/windmill/apis/windmill-api.md) · [All operations](https://skmtc.net/windmill/apis/windmill-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/windmill/windmill-api/revisions/db0e7e036e34/schema)
