Node.js SDK
The openstatus Node.js SDK lets you manage monitors, status pages, status reports, maintenance windows, and notifications from JavaScript and TypeScript. Request and response messages are fully typed, generated from the openstatus protobuf schemas.
The SDK is open source and developed in its own repository, openstatusHQ/sdk-node (separate from the main monorepo).
Features
- HTTP, TCP, and DNS monitoring — monitor websites, APIs, database connections, and DNS records from 28 locations worldwide. (ICMP and gRPC monitors exist in the API but are not yet exposed by this SDK.)
- Status pages — create and manage public status pages with monitor-based or static components, grouping, and subscribers.
- Status reports and maintenance — manage incident reports with update timelines and schedule planned maintenance windows.
- Notifications — configure all 13 channels: Slack, Discord, Microsoft Teams, Email, SMS, WhatsApp, Telegram, PagerDuty, Opsgenie, Google Chat, Grafana OnCall, ntfy, and generic webhooks.
- Type-safe — typed request/response messages generated from the openstatus protobuf schemas.
- Cross-runtime — works on Node.js, Deno, and Bun, in both ESM and CJS.
Installation
npm install @openstatus/sdk-node
See Getting Started for JSR, Deno, and Bun instructions, a quick start, and a full end-to-end workflow.
Services
The client exposes one service per domain. Each has its own reference page:
| Service | Page | Purpose |
|---|---|---|
| Monitor | Monitor Service | Manage HTTP, TCP, and DNS monitors; trigger checks; read status and summaries. |
| Health | Health Service | Liveness check for the API. No authentication required. |
| Status Report | Status Report Service | Manage incident reports and their update timelines. |
| Status Page | Status Page Service | Manage status pages, components, component groups, and subscribers. |
| Maintenance | Maintenance Service | Schedule and manage planned maintenance windows. |
| Notification | Notification Service | Configure notification channels and check usage limits. |
| Private Location | Private Location Service | Manage self-hosted probes and their agent tokens. |
For authentication, errors, and TypeScript ergonomics, see Authentication, Error Handling, TypeScript Tips, and the full Reference.