Skip to content

Health Check

A lightweight liveness probe for the FHIR Directory API. Use this endpoint to monitor uptime, drive external status pages, or as a heartbeat for load balancers and deployment verification.

Request

GET /health

Note: the health check is served at the API root (/health), not under /api/v1/, so it's reachable by load balancers and monitoring tools without API-versioning concerns.

Response

json
{
  "success": true,
  "data": {
    "status": "ok",
    "timestamp": "2026-04-13T21:04:57.123Z"
  }
}

Response Fields

FieldTypeDescription
statusstringAlways "ok" when the API is responding. Absence of a response (or non-200 status code) means the API is unavailable.
timestampstringISO 8601 server time at the moment the request was handled. Useful for spotting clock drift or stale cached responses.

HTTP status codes

StatusMeaning
200API is up and serving requests
5xx / timeout / connection refusedAPI is unavailable

Examples

bash
curl https://fhir-api.luxera.io/health
python
import requests

response = requests.get("https://fhir-api.luxera.io/health")
if response.status_code == 200:
    print("API is up")
else:
    print(f"API unavailable: {response.status_code}")
typescript
const response = await fetch("https://fhir-api.luxera.io/health");
if (response.ok) {
  console.log("API is up");
} else {
  console.log(`API unavailable: ${response.status}`);
}
csharp
using var client = new HttpClient();
try
{
    var response = await client.GetAsync("https://fhir-api.luxera.io/health");
    Console.WriteLine(response.IsSuccessStatusCode ? "API is up" : $"API unavailable: {response.StatusCode}");
}
catch (HttpRequestException ex)
{
    Console.WriteLine($"API unavailable: {ex.Message}");
}

Use cases

  • Uptime monitoring — External services like UptimeRobot, Better Stack, or Pingdom can poll /health at regular intervals and alert on downtime.
  • Load balancer heartbeats — Health endpoint for AWS ALB/NLB, Kubernetes liveness probes, or ECS task health checks.
  • Deployment verification — CI/CD pipelines can check /health after a deploy to confirm the new version is serving traffic before completing the rollout.
  • Client fallback logic — Applications can probe /health before falling back to cached data during outages.

The endpoint is intentionally lightweight and has no dependencies on downstream data sources, so a 200 response means the API process is running and able to respond — it does not imply that the endpoint dataset is fresh or that all features are operational.

Built by Luxera Software