Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/openstatusHQ/openstatus. ๐ซ Status page with uptime monitoring & API monitoring as code ๐ซ openstatus.dev
bun drizzle-orm monitoring monitoring-as-code nextjs observability on-call open-source shadcn-ui status-page statuspage synthetic-monitoring tinybird turso uptime uptime-checker uptime-monitor
Something went wrong. Try again.
MDX
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395---category: SDKtitle: Referencedescription: "Complete reference for enums, regions, assertions, and TypeScript type exports in the openstatus Node.js SDK"---
## Enums
### Periodicity
| Value | Description ||-------|-------------|| `PERIODICITY_30S` | Every 30 seconds || `PERIODICITY_1M` | Every 1 minute || `PERIODICITY_5M` | Every 5 minutes || `PERIODICITY_10M` | Every 10 minutes || `PERIODICITY_30M` | Every 30 minutes || `PERIODICITY_1H` | Every 1 hour |
### HTTPMethod
| Value | Description ||-------|-------------|| `HTTP_METHOD_GET` | GET || `HTTP_METHOD_POST` | POST || `HTTP_METHOD_HEAD` | HEAD || `HTTP_METHOD_PUT` | PUT || `HTTP_METHOD_PATCH` | PATCH || `HTTP_METHOD_DELETE` | DELETE || `HTTP_METHOD_TRACE` | TRACE || `HTTP_METHOD_CONNECT` | CONNECT || `HTTP_METHOD_OPTIONS` | OPTIONS |
### MonitorStatus
| Value | Description ||-------|-------------|| `ACTIVE` | Monitor is healthy || `DEGRADED` | Latency threshold exceeded || `ERROR` | Monitor is failing |
### TimeRange
| Value | Description ||-------|-------------|| `TIME_RANGE_1D` | Last 24 hours || `TIME_RANGE_7D` | Last 7 days || `TIME_RANGE_14D` | Last 14 days |
### StatusReportStatus
| Value | Description ||-------|-------------|| `INVESTIGATING` | Actively investigating the issue || `IDENTIFIED` | Root cause has been identified || `MONITORING` | Fix deployed, monitoring || `RESOLVED` | Issue fully resolved |
### OverallStatus
| Value | Description ||-------|-------------|| `OPERATIONAL` | All systems operational || `DEGRADED` | Performance is degraded || `PARTIAL_OUTAGE` | Some systems are down || `MAJOR_OUTAGE` | Major systems are down || `MAINTENANCE` | Scheduled maintenance || `UNKNOWN` | Status cannot be determined |
### NotificationProvider
| Value | Description ||-------|-------------|| `DISCORD` | Discord webhook || `EMAIL` | Email notification || `GOOGLE_CHAT` | Google Chat webhook || `GRAFANA_ONCALL` | Grafana OnCall || `MS_TEAMS` | Microsoft Teams (Power Automate workflow) || `NTFY` | Ntfy push service || `PAGERDUTY` | PagerDuty || `OPSGENIE` | Opsgenie || `SLACK` | Slack webhook || `SMS` | SMS notification || `TELEGRAM` | Telegram bot || `WEBHOOK` | Custom webhook || `WHATSAPP` | WhatsApp |
### OpsgenieRegion
| Value | Description ||-------|-------------|| `US` | US region || `EU` | EU region |
### PageAccessType
| Value | Description ||-------|-------------|| `PUBLIC` | Publicly accessible || `PASSWORD_PROTECTED` | Requires password || `AUTHENTICATED` | Requires authentication || `IP_RESTRICTED` | Restricted to the CIDR ranges in `allowed_ip_ranges` |
### PageTheme
| Value | Description ||-------|-------------|| `SYSTEM` | Follow system theme || `LIGHT` | Light theme || `DARK` | Dark theme |
### PageComponentType
| Value | Description ||-------|-------------|| `MONITOR` | Linked to a monitor || `STATIC` | Static component (manual) |
### PageMetricType
| Value | Description ||-------|-------------|| `DURATION` | Status bars represent response duration || `REQUESTS` | Status bars represent request counts || `MANUAL` | Status bars set manually |
### PageBarType
| Value | Description ||-------|-------------|| `ABSOLUTE` | Status bar computed from absolute values || `MANUAL` | Status bar set manually |
### NumberComparator
| Value | Description ||-------|-------------|| `EQUAL` | Equal to target || `NOT_EQUAL` | Not equal to target || `GREATER_THAN` | Greater than target || `GREATER_THAN_OR_EQUAL` | Greater than or equal || `LESS_THAN` | Less than target || `LESS_THAN_OR_EQUAL` | Less than or equal |
### StringComparator
| Value | Description ||-------|-------------|| `CONTAINS` | Contains target string || `NOT_CONTAINS` | Does not contain target || `EQUAL` | Equal to target || `NOT_EQUAL` | Not equal to target || `EMPTY` | Value is empty || `NOT_EMPTY` | Value is not empty || `GREATER_THAN` | Lexicographically greater || `GREATER_THAN_OR_EQUAL` | Lexicographically greater than or equal to target || `LESS_THAN` | Lexicographically less || `LESS_THAN_OR_EQUAL` | Lexicographically less than or equal to target |
### RecordComparator
| Value | Description ||-------|-------------|| `EQUAL` | Equal to target || `NOT_EQUAL` | Not equal to target || `CONTAINS` | Contains target string || `NOT_CONTAINS` | Does not contain target |
### ServingStatus
| Value | Description ||-------|-------------|| `SERVING` | Service is healthy and serving || `NOT_SERVING` | Service is not healthy |
## Regions
Monitor from 28 global locations across multiple providers.
```typescriptimport { Region } from "@openstatus/sdk-node";
regions: [Region.FLY_AMS, Region.FLY_IAD, Region.KOYEB_FRA];```
### Fly.io Regions (18)
| Enum Value | Location ||------------|----------|| `FLY_AMS` | Amsterdam || `FLY_ARN` | Stockholm || `FLY_BOM` | Mumbai || `FLY_CDG` | Paris || `FLY_DFW` | Dallas || `FLY_EWR` | Newark || `FLY_FRA` | Frankfurt || `FLY_GRU` | Sรฃo Paulo || `FLY_IAD` | Washington D.C. || `FLY_JNB` | Johannesburg || `FLY_LAX` | Los Angeles || `FLY_LHR` | London || `FLY_NRT` | Tokyo || `FLY_ORD` | Chicago || `FLY_SJC` | San Jose || `FLY_SIN` | Singapore || `FLY_SYD` | Sydney || `FLY_YYZ` | Toronto |
### Koyeb Regions (6)
| Enum Value | Location ||------------|----------|| `KOYEB_FRA` | Frankfurt || `KOYEB_PAR` | Paris || `KOYEB_SFO` | San Francisco || `KOYEB_SIN` | Singapore || `KOYEB_TYO` | Tokyo || `KOYEB_WAS` | Washington |
### Railway Regions (4)
| Enum Value | Location ||------------|----------|| `RAILWAY_US_WEST2` | US West || `RAILWAY_US_EAST4` | US East || `RAILWAY_EUROPE_WEST4` | Europe West || `RAILWAY_ASIA_SOUTHEAST1` | Asia Southeast |
## Assertions
### Status Code Assertions
Validate HTTP response status codes using `NumberComparator`.
```typescriptimport { NumberComparator } from "@openstatus/sdk-node";
statusCodeAssertions: [ { comparator: NumberComparator.EQUAL, target: BigInt(200) }, { comparator: NumberComparator.LESS_THAN, target: BigInt(400) },];```
### Body Assertions
Validate response body content using `StringComparator`.
```typescriptimport { StringComparator } from "@openstatus/sdk-node";
bodyAssertions: [ { comparator: StringComparator.CONTAINS, target: '"status":"ok"' }, { comparator: StringComparator.NOT_EMPTY, target: "" },];```
### Header Assertions
Validate response headers using `StringComparator` with a header `key`.
```typescriptimport { StringComparator } from "@openstatus/sdk-node";
headerAssertions: [ { key: "content-type", comparator: StringComparator.CONTAINS, target: "application/json", },];```
### DNS Record Assertions
Validate DNS records using `RecordComparator`. Supported record types: `A`, `AAAA`, `CNAME`, `MX`, `TXT`.
```typescriptimport { RecordComparator } from "@openstatus/sdk-node";
recordAssertions: [ { record: "A", comparator: RecordComparator.EQUAL, target: "93.184.216.34", }, { record: "CNAME", comparator: RecordComparator.CONTAINS, target: "cdn", },];```
## TypeScript Type Exports
All types and enums exported from `@openstatus/sdk-node`:
### Monitor Types
- `HTTPMonitor`, `Headers`, `OpenTelemetryConfig` โ HTTP monitor configuration- `TCPMonitor` โ TCP monitor configuration- `DNSMonitor` โ DNS monitor configuration- `StatusCodeAssertion`, `BodyAssertion`, `HeaderAssertion`, `RecordAssertion` โ assertion types- `CreateHTTPMonitorRequest`, `CreateHTTPMonitorResponse` โ HTTP monitor CRUD- `CreateTCPMonitorRequest`, `CreateTCPMonitorResponse` โ TCP monitor CRUD- `CreateDNSMonitorRequest`, `CreateDNSMonitorResponse` โ DNS monitor CRUD- `UpdateHTTPMonitorRequest`, `UpdateHTTPMonitorResponse`- `UpdateTCPMonitorRequest`, `UpdateTCPMonitorResponse`- `UpdateDNSMonitorRequest`, `UpdateDNSMonitorResponse`- `ListMonitorsRequest`, `ListMonitorsResponse`- `DeleteMonitorRequest`, `DeleteMonitorResponse`- `TriggerMonitorRequest`, `TriggerMonitorResponse`- `GetMonitorStatusRequest`, `GetMonitorStatusResponse`, `RegionStatus`- `GetMonitorSummaryRequest`, `GetMonitorSummaryResponse`
### Monitor Enums
- `Periodicity` โ check interval- `Region` โ monitoring region- `MonitorStatus` โ active / degraded / error- `HTTPMethod` โ HTTP methods- `TimeRange` โ metrics time range- `NumberComparator`, `StringComparator`, `RecordComparator` โ assertion comparators
### Health Types
- `CheckRequest`, `CheckResponse`- `ServingStatus` โ serving / not serving
### Status Report Types
- `StatusReport`, `StatusReportSummary`, `StatusReportUpdate`- `CreateStatusReportRequest`, `CreateStatusReportResponse`- `GetStatusReportRequest`, `GetStatusReportResponse`- `ListStatusReportsRequest`, `ListStatusReportsResponse`- `UpdateStatusReportRequest`, `UpdateStatusReportResponse`- `DeleteStatusReportRequest`, `DeleteStatusReportResponse`- `AddStatusReportUpdateRequest`, `AddStatusReportUpdateResponse`- `StatusReportStatus` โ investigating / identified / monitoring / resolved
### Status Page Types
- `StatusPage`, `StatusPageSummary`- `PageComponent`, `PageComponentGroup`- `PageSubscriber`- `CreateStatusPageRequest`, `CreateStatusPageResponse`- `GetStatusPageRequest`, `GetStatusPageResponse`- `ListStatusPagesRequest`, `ListStatusPagesResponse`- `UpdateStatusPageRequest`, `UpdateStatusPageResponse`- `DeleteStatusPageRequest`, `DeleteStatusPageResponse`- `AddMonitorComponentRequest`, `AddMonitorComponentResponse`- `AddStaticComponentRequest`, `AddStaticComponentResponse`- `RemoveComponentRequest`, `RemoveComponentResponse`- `UpdateComponentRequest`, `UpdateComponentResponse`- `CreateComponentGroupRequest`, `CreateComponentGroupResponse`- `DeleteComponentGroupRequest`, `DeleteComponentGroupResponse`- `UpdateComponentGroupRequest`, `UpdateComponentGroupResponse`- `SubscribeToPageRequest`, `SubscribeToPageResponse`- `UnsubscribeFromPageRequest`, `UnsubscribeFromPageResponse`- `ListSubscribersRequest`, `ListSubscribersResponse`- `GetStatusPageContentRequest`, `GetStatusPageContentResponse`- `GetOverallStatusRequest`, `GetOverallStatusResponse`, `ComponentStatus`- `GetStatusPageOverviewRequest`, `GetStatusPageOverviewResponse`, `PageConfiguration`- `OverallStatus`, `PageAccessType`, `PageTheme`, `PageComponentType`, `PageMetricType`, `PageBarType`
### Maintenance Types
- `Maintenance`, `MaintenanceSummary`- `CreateMaintenanceRequest`, `CreateMaintenanceResponse`- `GetMaintenanceRequest`, `GetMaintenanceResponse`- `ListMaintenancesRequest`, `ListMaintenancesResponse`- `UpdateMaintenanceRequest`, `UpdateMaintenanceResponse`- `DeleteMaintenanceRequest`, `DeleteMaintenanceResponse`
### Notification Types
- `Notification`, `NotificationSummary`- `NotificationData`- `DiscordData`, `EmailData`, `GoogleChatData`, `GrafanaOncallData`, `MsTeamsData`, `NtfyData`, `OpsgenieData`, `PagerDutyData`, `SlackData`, `SmsData`, `TelegramData`, `WebhookData`, `WebhookHeader`, `WhatsappData`- `CreateNotificationRequest`, `CreateNotificationResponse`- `GetNotificationRequest`, `GetNotificationResponse`- `ListNotificationsRequest`, `ListNotificationsResponse`- `UpdateNotificationRequest`, `UpdateNotificationResponse`- `DeleteNotificationRequest`, `DeleteNotificationResponse`- `SendTestNotificationRequest`, `SendTestNotificationResponse`- `CheckNotificationLimitRequest`, `CheckNotificationLimitResponse`- `NotificationProvider`, `OpsgenieRegion`
### Client Types
- `OpenStatusClient` โ client interface- `OpenStatusClientOptions` โ client configuration- `createOpenStatusClient` โ factory function- `openstatus` โ default client instance