Skip to content
GitHub

Why the app is or is not reachable: the GatewayClass and the Gateway, the issuer, ports 80 and 443 (from the server), the route, each host's certificate and DNS, and the agent that delivers it.

GET
/api/v1/projects/{project}/environments/{environment}/apps/{app}/doctor
curl --request GET \
--url https://example.com/api/v1/projects/example/environments/example/apps/example/doctor
project
required
string

Project name

environment
required
string

Environment short name

app
required
string

App name

Media typeapplication/json
object
status
required

The worst status of the checks; unknown is never ok.

string
checks
required
Array<object>
object
id
required

gateway-class, gateway, issuer, port-80, port-443, route, certificate, dns, claim, delegation, proxy or agent.

string
subject
required

What was checked (a host, a class, a port), when there are several.

string
status
required

ok, warn, unknown (could not be checked) or fail.

string
detail
required
string
hint

What to do about it.

string | null
graph
required

Every layer from the build to the visitor, with what was observed (M5.5).

object
findings
required

Conclusions, root causes first; nothing unobserved counts as fine.

Array<object>
object
Examplegenerated
{
"status": "example",
"checks": [
{
"id": "example",
"subject": "example",
"status": "example",
"detail": "example",
"hint": "example"
}
],
"graph": {},
"findings": [
{}
]
}
Media typeapplication/json

Problem Details body.

object
code
required

Stable machine-readable code, e.g. forbidden.

string
title
required

Short human readable title.

string
status
required

HTTP status.

integer format: int32
detail

Details, if safe to expose.

string | null
Example
{
"code": "forbidden"
}