Validate a check configuration, or a whole config-as-code document
POST/api/v1/orgs/:org/checks/validate
Runs the same validation the create/update paths run, but never writes.
CONTENT-NEGOTIATED: a body carrying a top-level checks list (JSON or YAML) is a whole export/manifest document and answers with ValidateDocumentResponse — every issue, each with a stable machine code. Anything else is a single check definition and answers with ValidateCheckResponse, unchanged.
Authorization differs per body, deliberately. A document needs only organization MEMBERSHIP: validating writes nothing, and a CI job asking "is this file valid?" must not need a token that can delete checks. A single check keeps the write floor (role user or above). /import and /apply remain admin-only.
Request
Responses
- 200
- 401
- 403
- 404
Validation result. ValidateCheckResponse for a single check; ValidateDocumentResponse ({valid, issues[], plan?}) when the body was a whole document.
Authentication required
A viewer posted a single check definition, or a non-admin asked for ?plan=true.
Resource not found