Health
These endpoints let a load balancer or uptime monitor check that the Chat service is up. They are unauthenticated and return fixed markers; they are not a diagnostic API and do not report the health of any dependency.
Paths are relative to /api
Check service health
GET /api/health
Returns a marker confirming the service is running.
A lightweight liveness check. It returns a fixed healthy marker whenever the service can answer the request, and takes no parameters.
- Authentication
- None
Parameters
No parameters.
Returns
Returns a status marker.
curl "$VDF_BASE_URL/api/health" const response = await fetch(`${process.env.VDF_BASE_URL}/api/health`);
if (!response.ok) throw new Error(`Request failed with status ${response.status}`);
const data = await response.json(); import os
import requests
response = requests.get(
f"{os.environ['VDF_BASE_URL']}/api/health",
timeout=30,
)
response.raise_for_status()
data = response.json() {
"success": true,
"status": "healthy",
"message": "Service is running"
} Check detailed health
GET /api/health/detailed
Returns the same liveness signal as Check service health, with a version string and a set of component markers. The component values and the version are static values reported alongside the liveness check, not the outcome of a live probe of each component.
- Authentication
- None
Parameters
No parameters.
Returns
Returns the component markers and version.
curl "$VDF_BASE_URL/api/health/detailed" const response = await fetch(`${process.env.VDF_BASE_URL}/api/health/detailed`);
if (!response.ok) throw new Error(`Request failed with status ${response.status}`);
const data = await response.json(); import os
import requests
response = requests.get(
f"{os.environ['VDF_BASE_URL']}/api/health/detailed",
timeout=30,
)
response.raise_for_status()
data = response.json() {
"success": true,
"status": "healthy",
"components": {
"api": "healthy",
"database": "healthy"
},
"version": "1.0.0"
}