REST API Reference68 endpoints across 10 resource groups

Overview

PropertyValue
Base URLhttps://api.websignal.io
API versionv1
Content typeapplication/json
OpenAPI spechttps://api.websignal.io/swagger/v1/swagger.json
Health checkhttps://api.websignal.io/health

All endpoints use the /api/v1/ prefix. Responses are JSON. Standard HTTP status codes indicate success (2xx), client errors (4xx), and server errors (5xx).

Authentication

Include an OAuth 2.0 Bearer token in the Authorization header:

Authorization: Bearer <access_token>

Supported grant types:

Most endpoints require the monitor.admin scope. See individual endpoints for specific requirements.

Monitors

Create, update, delete, and list website monitors. Each monitor tracks the availability and performance of a URL and can be associated to one service group.

MethodEndpointDescriptionAuth
GET/api/v1/monitorList all monitors for the authenticated usermonitor.admin
GET/api/v1/monitor/{id}Get a specific monitor by IDmonitor.admin
POST/api/v1/monitorCreate a new monitor (optionally attach to a service group via serviceGroupId)monitor.admin
PUT/api/v1/monitor/{id}Update an existing monitor, including service-group association and monitor typesmonitor.admin
DELETE/api/v1/monitor/{id}Delete a monitormonitor.admin
POST/api/v1/monitor-testRun a one-off HTTP availability test against a URLmonitor.admin
POST/api/v1/monitor-test/sslRun a one-off SSL certificate test against a URLmonitor.admin
POST/api/v1/monitor-test/dnsRun a one-off DNS resolution test against a hostnamemonitor.admin

Service Groups

Manage service groups used to organize monitors. A monitor belongs to one service group, and each service group supports at most one monitor per type (HTTP, SSL, Latency, DNS).

MethodEndpointDescriptionAuth
GET/api/v1/service-groupList service groups for the authenticated usermonitor.admin
GET/api/v1/service-group/{id}Get a specific service group by ID, including associated monitorsmonitor.admin
DELETE/api/v1/service-group/{id}Soft-delete a service group and schedule permanent purge after 90 days; non-shared monitors in the group are also soft-deletedmonitor.admin

Monitor Data & Reports

Retrieve analytical data, reports, and historical metrics for a monitor.

MethodEndpointDescriptionAuth
GET/api/v1/monitor/{id}/availabilityGet availability data for a monitormonitor.admin
GET/api/v1/monitor/{id}/latencyGet latency analytics for a monitormonitor.admin
GET/api/v1/monitor/{id}/ssl-statusGet the latest SSL certificate status for a monitormonitor.admin
GET/api/v1/monitor/{id}/ssl-historyGet SSL certificate check history for a monitormonitor.admin
GET/api/v1/monitor/{id}/dns-historyGet DNS check history and schedule status for a monitormonitor.admin
GET/api/v1/monitor/{id}/incidentGet incidents associated with a monitormonitor.admin
POST/api/v1/monitor/{id}/report/generateGenerate a performance report for a monitormonitor.admin

Incidents

Query and manage incidents detected by your monitors. Incidents represent periods of downtime, SSL issues, latency spikes, or DNS problems.

MethodEndpointDescriptionAuth
GET/api/v1/incidentList incidents with optional date range and pagination filtersmonitor.admin
GET/api/v1/incident/{id}Get a single incident with full details and notesmonitor.admin
PATCH/api/v1/incident/{id}Update an incident (e.g. acknowledge)monitor.admin

Status Pages

Create and manage public status pages with grouped systems, optional custom banners, incident-history visibility controls, manual operator status overrides/messages, high-contrast visual status indicators, and 24-hour service-group health timelines.

MethodEndpointDescriptionAuth
GET/api/v1/status-pageList status pages for the authenticated usermonitor.admin
GET/api/v1/status-page/{id}Get a status page by IDmonitor.admin
POST/api/v1/status-pageCreate a status pagemonitor.admin
PUT/api/v1/status-page/{id}Update a status pagemonitor.admin
DELETE/api/v1/status-page/{id}Delete a status pagemonitor.admin
GET/api/v1/status-page/{id}/incidents/{incidentPostId}Get a status page incident post by IDmonitor.admin
POST/api/v1/status-page/{id}/incidentsCreate an operator-authored public incident/custom update post for a status pagemonitor.admin
GET/api/v1/public/status-page/{slug}Get public status page data by slug (anonymous), including plan-gated service-group timeline samples with per-day uptime percentages and timeline window metadata (24h/7d/30d)none

Incident Notes

Add, update, and manage notes on incidents for postmortem tracking and team communication.

MethodEndpointDescriptionAuth
GET/api/v1/incident/{incidentId}/notesList all notes for an incidentmonitor.admin
POST/api/v1/incident/{incidentId}/notesCreate a new note on an incidentmonitor.admin
PATCH/api/v1/incident/{incidentId}/notes/{noteId}Update an existing notemonitor.admin
DELETE/api/v1/incident/{incidentId}/notes/{noteId}Delete a notemonitor.admin

Action Groups

Manage global action groups that define how you are notified when incidents occur. Action groups can be associated with multiple monitors and support email, SMS, and webhook alert channels.

MethodEndpointDescriptionAuth
GET/api/v1/action-groupsList all action groups for the authenticated user with monitor countsmonitor.admin
GET/api/v1/action-groups/{id}Get a specific action group with associated monitor countmonitor.admin
DELETE/api/v1/action-groups/{id}Delete an action groupmonitor.admin
POST/api/v1/action-groups/{id}/monitors/{monitorId}Associate an action group with a monitormonitor.admin
DELETE/api/v1/action-groups/{id}/monitors/{monitorId}Disassociate an action group from a monitormonitor.admin
POST/api/v1/action-groups/emailCreate an email action groupmonitor.admin
GET/api/v1/action-groups/email/{id}Get an email action group by IDmonitor.admin
PUT/api/v1/action-groups/email/{id}Update an email action groupmonitor.admin
GET/api/v1/action-groups/sms/{id}Get an SMS action group by IDmonitor.admin
PUT/api/v1/action-groups/sms/{id}Update an SMS action groupmonitor.admin
POST/api/v1/action-groups/webhookCreate a webhook action groupmonitor.admin
GET/api/v1/action-groups/webhook/{id}Get a webhook action group by IDmonitor.admin
PUT/api/v1/action-groups/webhook/{id}Update a webhook action groupmonitor.admin

Monitor Alert Actions

Per-monitor alert action endpoints. These legacy endpoints manage alert actions scoped to a specific monitor. For new integrations, prefer the global Action Groups endpoints above.

MethodEndpointDescriptionAuth
GET/api/v1/monitor/{monitorId}/action-groupsList all alert action groups for a monitormonitor.admin
POST/api/v1/monitor/{monitorId}/email-action-groupCreate an email alert actionmonitor.admin
GET/api/v1/monitor/{monitorId}/email-action-groupList email alert actionsmonitor.admin
GET/api/v1/monitor/{monitorId}/email-action-group/{id}Get a specific email alert actionmonitor.admin
PUT/api/v1/monitor/{monitorId}/email-action-groupUpdate an email alert actionmonitor.admin
DELETE/api/v1/monitor/{monitorId}/email-action-group/{id}Delete an email alert actionmonitor.admin
POST/api/v1/monitor/{monitorId}/sms-action-groupCreate an SMS alert actionmonitor.admin
GET/api/v1/monitor/{monitorId}/sms-action-groupList SMS alert actionsmonitor.admin
DELETE/api/v1/monitor/{monitorId}/sms-action-group/{id}Delete an SMS alert actionmonitor.admin
POST/api/v1/monitor/{monitorId}/webhook-action-groupCreate a webhook alert actionmonitor.admin
GET/api/v1/monitor/{monitorId}/webhook-action-groupList webhook alert actionsmonitor.admin
PUT/api/v1/monitor/{monitorId}/webhook-action-groupUpdate a webhook alert actionmonitor.admin
DELETE/api/v1/monitor/{monitorId}/webhook-action-group/{id}Delete a webhook alert actionmonitor.admin

Users

Manage user accounts and profiles. User identity is linked to Auth0.

MethodEndpointDescriptionAuth
GET/api/v1/userGet the authenticated user's profileuser.read
GET/api/v1/user/preferencesGet the authenticated user's persisted application preferencesuser.read
POST/api/v1/userCreate a new user accountuser.create
PUT/api/v1/user/{id}Update a user profilemonitor.admin
PATCH/api/v1/user/preferencesUpdate the authenticated user's persisted application preferencesedit:user
DELETE/api/v1/user/{id}Delete a user accountmonitor.admin
GET/api/v1/user/{userId}/trialGet the user's trial statusmonitor.admin
PUT/api/v1/user/{userId}/trialUpdate the user's trialmonitor.admin

Products & Plans

Retrieve available subscription plans and pricing tiers.

MethodEndpointDescriptionAuth
GET/api/v1/productList all available products and plansmonitor.admin