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.
- 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 Slack, Discord, Email, PagerDuty, Opsgenie, Telegram, and webhook channels.
- 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. |
For authentication, errors, and TypeScript ergonomics, see Authentication, Error Handling, TypeScript Tips, and the full Reference.