Checkmate
Getting started

API reference

REST API base URL, authentication, and where to find the full OpenAPI spec.

Checkmate serves an interactive Swagger UI from every running server.

Where to find it

  • Swagger UIhttp(s)://<your-host>/api-docs
  • API base URLhttp(s)://<your-host>/api/v1

The Swagger page rewrites the server URL dynamically based on the request host, so the examples always target the server you're viewing.

Authentication

Every endpoint except registration, login, and invite acceptance requires a JWT bearer token:

Authorization: Bearer <token>

Tokens come from POST /api/v1/auth/login. The token lifetime is controlled by the TOKEN_TTL env var on the server (default 99 days). Role-based checks (user, admin, superadmin) are enforced per-route by the isAllowed middleware.

Common endpoints

MethodPathPurpose
POST/auth/loginLog in, receive JWT
GET/monitors/teamList monitors for the current team
POST/monitorsCreate a monitor (admin+)
POST/monitors/pause/:monitorIdPause/resume a monitor (admin+)
GET/monitors/export/jsonExport monitors as JSON (admin+)
POST/monitors/import/jsonImport monitors from JSON (admin+)
GET/incidentsList incidents
GET/notificationsList notification channels
GET/status-page/:urlPublic status page payload

For the complete, machine-readable schema see /api-docs on your server or the openapi.json shipped with the server package.

See also

On this page