Health
Liveness probe.#
/lmkit/v1/healthReturns 200 OK when the server process is alive. Use this endpoint for container orchestration liveness checks (e.g. Kubernetes livenessProbe). This endpoint is always anonymous and does not require authentication.
Responses
| Status | Type | Description |
|---|---|---|
| 200 | OK |
curl -X GET "$LMKIT_ONE_URL/lmkit/v1/health" \
-H "Authorization: Bearer $LMKIT_API_KEY"Anonymous readiness probe.#
/lmkit/v1/health/readyAnswers 200 with {"status":"ready"} when the server can serve requests and 503 with the reason ("not_ready", "warming", "draining") otherwise, and nothing else: no counts, no model names, no version. For probes that cannot send a header (platform health checks, plain load balancers, HEAD-only monitors); the authenticated ready route carries the detailed body.
Responses
| Status | Type | Description |
|---|---|---|
| 200 | OK | |
| 503 | Service Unavailable |
curl -X GET "$LMKIT_ONE_URL/lmkit/v1/health/ready" \
-H "Authorization: Bearer $LMKIT_API_KEY"Anonymous readiness probe.#
/lmkit/v1/health/readyAnswers 200 with {"status":"ready"} when the server can serve requests and 503 with the reason ("not_ready", "warming", "draining") otherwise, and nothing else: no counts, no model names, no version. For probes that cannot send a header (platform health checks, plain load balancers, HEAD-only monitors); the authenticated ready route carries the detailed body.
Responses
| Status | Type | Description |
|---|---|---|
| 200 | OK | |
| 503 | Service Unavailable |
curl -X HEAD "$LMKIT_ONE_URL/lmkit/v1/health/ready" \
-H "Authorization: Bearer $LMKIT_API_KEY"Readiness probe.#
/lmkit/v1/readyReturns 200 OK when the server is ready to accept inference requests, including infrastructure details (backend init state, loaded models, queue depth, active inferences). Answers 503 while the backend initializes, while configured warmup models are still loading ('warming'), and the moment a graceful shutdown begins ('draining'), so an orchestrator routes traffic only to nodes that can serve it. Requires the configured pre-shared bearer token because the response exposes internal runtime state. A probe that wants this body sends Authorization: Bearer … (Kubernetes httpHeaders); a probe that cannot send a header uses the anonymous health/ready route, which answers the same decision with the status alone. The slots_saturation and queue_depth fields also feed KEDA's metrics-api scaler on Prometheus-less stacks.
Responses
| Status | Type | Description |
|---|---|---|
| 200 | OK | |
| 503 | Service Unavailable |
curl -X GET "$LMKIT_ONE_URL/lmkit/v1/ready" \
-H "Authorization: Bearer $LMKIT_API_KEY"