Healthcheck

Get application readiness

  • Sandbox: available
  • Staging: available
  • Production: unknown
GET
/ready

Returns the same body as the liveness healthcheck, but with the verdict in the HTTP status. Use it for monitors and alerts that page on status code.

Auth: none. The route needs no bearer token.

Behaviour

  • Runs the same bounded Redis and FHIR store probes as GET /healthcheck.
  • Answers 200 when ok is true and 503 when it is false. The 503 body is the same healthcheck result, so dependencies still names the failing dependency.
  • Do not use this route for container liveness probes: a failing dependency would make the orchestrator restart a backend that is merely degraded.

Example

curl -X GET 'https://api.sandbox.ovok.com/healthcheck/ready'

Response Body

Healthcheck result, HTTP 200 when healthy and 503 when a dependency is down.

application/json
  1. response
ok*boolean

True only when Redis and the FHIR store in dependencies answered inside the probe timeout. The HTTP status stays 200 either way — read this field, not the status code.

dependencies*

Per-dependency probe verdicts. Always present, so a monitor can name the failing dependency.

version?
buildEnv?
commitHash?
buildDate?
runningSince?
Example Request
curl -X GET 'https://api.sandbox.ovok.com/ready'
Example Response
{  "ok": true,  "dependencies": {},  "version": {},  "buildEnv": {},  "commitHash": {},  "buildDate": {},  "runningSince": {}}

Get application health GET

Returns the health of the Ovok backend and its Redis and FHIR store dependencies, together with build identity. Use it for liveness probes and as the source for a monitor that reads the response body. **Auth:** none. The route needs no bearer token. ## Behaviour - Also served at `/` and `/_health`. - Redis and FHIR store are probed in parallel. Each probe has a 2000 ms limit. A timeout or an error counts as `ok: false` for that dependency. - `ok` is `true` only when both `dependencies.redis.ok` and `dependencies.fhirStore.ok` are `true`. Email is not checked. - The HTTP status is always `200`, even when a dependency is down. Read `ok` and `dependencies` from the body. To get a non-2xx status on failure, use `GET /healthcheck/ready`. - `version`, `buildEnv`, `commitHash` and `buildDate` identify the build and are `null` when the build did not set them. `runningSince` is the process start time. ## Example ```bash curl -X GET 'https://api.sandbox.ovok.com/healthcheck' ``` ```json { "ok": true, "dependencies": { "redis": { "ok": true }, "fhirStore": { "ok": true } }, "buildEnv": "production", "runningSince": "2026-04-12T17:21:21.410Z" } ```

Get application readiness GET

Returns the same body as the liveness healthcheck, but with the verdict in the HTTP status. Use it for monitors and alerts that page on status code. **Auth:** none. The route needs no bearer token. ## Behaviour - Runs the same bounded Redis and FHIR store probes as `GET /healthcheck`. - Answers `200` when `ok` is `true` and `503` when it is `false`. The `503` body is the same healthcheck result, so `dependencies` still names the failing dependency. - Do not use this route for container liveness probes: a failing dependency would make the orchestrator restart a backend that is merely degraded. ## Example ```bash curl -X GET 'https://api.sandbox.ovok.com/healthcheck/ready' ```