Documentation Index
Fetch the complete documentation index at: https://curia.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
GET /api/health tells you whether your Curia instance is running and healthy. It checks database connectivity, reports which agents and skills are loaded, and returns how long the server has been up. Because no authentication is required, you can point any uptime monitor or load balancer health probe directly at this endpoint without managing tokens.
Request
Authorization header is needed. The endpoint is intentionally open so monitoring infrastructure can reach it without credentials.
Response
Response fields
Overall health of the instance. Either
"ok" (all systems nominal) or "degraded" (at least one subsystem has a problem — typically the database).Database connectivity status. Either
"connected" (a SELECT 1 probe succeeded) or "disconnected" (the probe failed). When this is "disconnected", status will be "degraded" and the HTTP response code will be 503.The names of all agents registered at startup. Use this to verify that your agent configuration loaded correctly.
The names of all skills loaded at startup. Use this to confirm that skill manifests were found and parsed successfully.
Seconds since the HTTP server started. This resets to
0 on each restart.Healthy response (200)
Degraded response (503)
When the database is unreachable, the endpoint returns503 Service Unavailable:
HTTP status codes
| Status | Meaning |
|---|---|
200 | Instance is healthy — database connected, all systems nominal |
503 | Instance is degraded — database connectivity probe failed |
Use cases
Load balancer health probe
Configure your load balancer (AWS ALB, nginx, HAProxy) to probe
GET /api/health every 10–30 seconds. Route traffic only to instances that return 200.Uptime monitoring
Add the health endpoint to Uptime Robot, Better Uptime, or any HTTP monitor. Set an alert when the status code changes from
200 or when "status" is not "ok".Deployment verification
After deploying a new version, poll the health endpoint until it returns
200 before switching traffic. A non-200 response during startup usually means the database migration has not completed yet.Startup readiness check
In container orchestration (Kubernetes, ECS), use this endpoint as a readiness probe. Curia is ready to serve traffic once the database reports
"connected".Monitoring tips
The
uptime field counts seconds since the HTTP server process started, not since the last successful request or the last time the database was healthy. Use your process manager or container runtime for absolute uptime tracking.