Run deployment self-checks (admin-only)
const url = 'https://example.com/api/admin/diagnostics/run';const options = {method: 'POST', headers: {'X-Ssoossh-Key-Secret': '<X-Ssoossh-Key-Secret>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/admin/diagnostics/run \ --header 'X-Ssoossh-Key-Secret: <X-Ssoossh-Key-Secret>'Runs the deployment self-checks and returns what they found: whether the server can reach its own public URL, how the client IP is resolved through http.trusted_proxies, whether the edge weakens the security headers the app sets, and whether the edge adds dangerous CORS headers. The edge checks call the server’s own public_url back through whatever sits in front of it; the target is always public_url and cannot be supplied by the caller. Nothing is written.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”What the checks found
object
Checks are the individual results, in display order.
object
Findings are the individual observations, already phrased for an operator. Empty when the check found nothing to report.
ID is a stable machine key for the check, e.g. “reachability”.
Remediation is the concrete fix. Empty when the status is “ok”.
Status is the worst finding’s severity: “ok”, “warn”, “critical”, or “skipped”.
Summary is the one-line headline for the check.
Title is the human name of the check.
PublicOrigin is the URL the edge checks probed, echoed so the operator can confirm the run tested what they expected. Empty when http.public_url is not set.
Example generated
{ "checks": [ { "findings": [ "example" ], "id": "example", "remediation": "example", "status": "example", "summary": "example", "title": "example" } ], "public_origin": "example"}Not authenticated
object
Data is always null on an error response.
Error is a human-readable message. Branch on the HTTP status rather than this string; it is for humans and logs.
ErrorCode is a machine-readable error classifier. One of the error_code constants from internal/apitypes; use this to decide whether to retry or branch on the failure mode.
Example
{ "error": "certificate request \"9f1c…\" not found", "error_code": "not_found"}Not authorized as admin
object
Data is always null on an error response.
Error is a human-readable message. Branch on the HTTP status rather than this string; it is for humans and logs.
ErrorCode is a machine-readable error classifier. One of the error_code constants from internal/apitypes; use this to decide whether to retry or branch on the failure mode.
Example
{ "error": "certificate request \"9f1c…\" not found", "error_code": "not_found"}Too many runs
object
Data is always null on an error response.
Error is a human-readable message. Branch on the HTTP status rather than this string; it is for humans and logs.
ErrorCode is a machine-readable error classifier. One of the error_code constants from internal/apitypes; use this to decide whether to retry or branch on the failure mode.
Example
{ "error": "certificate request \"9f1c…\" not found", "error_code": "not_found"}