Skip to content

Readiness — every registered probe passed (unauthenticated, LB-friendly)

GET
/v1/health/ready
curl --request GET \
--url http://localhost:3000/v1/health/ready

“Can this instance serve traffic” vs the liveness /v1/health “is the process up”. Each registered probe races a 2s timeout; an unanswered or thrown probe flips the overall status to unready and the route returns HTTP 503 so a load balancer or replica selector can route around it. Container healthchecks stay on liveness (cheap, no dependency fan-in); this route is for readinessProbe.

All probes passed.

Media typeapplication/json
object
status
required

unready implies an HTTP 503 on this route.

string
Allowed values: ready unready
checks
required

One entry per registered readiness probe, in registration order.

Array<object>
object
name
required
string
ok
required
boolean
error

Present when ok is false — the error message from the failing probe (or the timeout message).

string
Example
{
"status": "ready"
}

At least one probe failed or timed out. Body is the same shape as the 200, with status set to unready.

Media typeapplication/json
object
status
required

unready implies an HTTP 503 on this route.

string
Allowed values: ready unready
checks
required

One entry per registered readiness probe, in registration order.

Array<object>
object
name
required
string
ok
required
boolean
error

Present when ok is false — the error message from the failing probe (or the timeout message).

string
Example
{
"status": "ready"
}