HTTP & TCP monitors
Poll endpoints and TCP ports on a configurable interval. Track uptime, latency, and degraded response times.
TLS & DNS monitors
Watch SSL certificates for expiration and DNS records for unexpected changes.
Cron job monitors
Heartbeat-based monitoring for scheduled tasks. Your job pings Overwatch — no inbound probing required.
Alert channels
Route status-change alerts to Slack, Discord, Teams, email, or a webhook.
Monitor types at a glance
Creating a monitor
Send aPOST request to /api/v1/monitors with a name, type, and a config object. The fields inside config vary by monitor type — see each type’s page for details.
201:
Monitor response fields
string
Unique monitor identifier.
string
Display name you assigned when creating the monitor.
string
One of
HTTP, TCP, TLS, DNS, or SCHEDULED.object
Type-specific configuration object. Fields vary by monitor type.
string
Current status. Possible values depend on the monitor type. Starts as
unknown until the first check completes.boolean
Whether the monitor is actively running checks. Defaults to
true.string | null
ISO 8601 timestamp of the last check-in. Only populated for
SCHEDULED monitors.string | null
Status reported on the last check-in (
ok or fail). Only populated for SCHEDULED monitors.string
ISO 8601 timestamp of when the monitor was created.
string
ISO 8601 timestamp of the last update to the monitor record.
Plan limits
The number of monitors you can create depends on your plan.The default check interval for new monitors is 5 minutes. Pro plans support intervals as low as 1 minute. If you need 10-second intervals, contact us about Enterprise.
422 response with "upgrade": true. Upgrade your plan from Settings → Plan to add more monitors.
Listing monitors
Retrieve all monitors for your organization with aGET request:
type query parameter:
range parameter. Accepted values are 1d, 7d, 30d, and 90d (default).