All endpoints use JSON. Authenticated endpoints require a session cookie (set by login). API key auth coming soon for Pro+ plans.
/api/auth/registerCreate a new account
{ "email": "you@example.com", "password": "...", "name": "..." }/api/auth/loginLog in and get session cookie
{ "email": "you@example.com", "password": "..." }/api/auth/meAuth requiredGet current user info
/api/monitorsAuth requiredList all your monitors
/api/monitorsAuth requiredCreate a new monitor
{ "name": "My Site", "url": "https://example.com", "method": "GET", "checkInterval": 180 }/api/monitors/:idAuth requiredGet monitor details + recent checks
/api/monitors/:idAuth requiredUpdate monitor settings
{ "name": "Updated Name", "checkInterval": 60 }/api/monitors/:idAuth requiredDelete a monitor
/api/monitors/:id/checkAuth requiredTrigger an immediate check
/api/monitors/:id/statsAuth requiredGet uptime stats (24h, 7d, 30d, 90d)
/api/monitors/:id/badgeGet SVG uptime badge (public, no auth)
/api/monitors/bulkAuth requiredBulk create monitors from URL list
{ "urls": ["https://example.com", "https://api.example.com"] }/api/status-pagesAuth requiredList your status pages
/api/status-pagesAuth requiredCreate a status page
{ "title": "My Status", "slug": "my-status", "monitorIds": ["..."] }/api/status-pages/:slug/publicGet public status page data (no auth)
/api/monitors/:id/percentilesAuth requiredResponse time percentiles (p50, p95, p99)
/api/monitors/:id/reportAuth requiredGenerate uptime report (daily breakdown)
/api/monitors/:id/sslAuth requiredSSL certificate details for a monitor
/api/monitors/:id/duplicateAuth requiredDuplicate a monitor with all settings
/api/monitors/importAuth requiredImport monitors from JSON
{ "monitors": [{ "name": "...", "url": "...", "method": "GET" }] }/api/monitors/searchAuth requiredSearch monitors by name/URL
/api/monitors/pause-allAuth requiredPause or resume all monitors
{ "paused": true }/api/heartbeat/:monitor-idReceive heartbeat ping from your service (no auth)
/api/status-pages/:slug/subscribeSubscribe to status page notifications (no auth)
{ "email": "user@example.com" }/api/maintenanceAuth requiredList maintenance windows
/api/maintenanceAuth requiredCreate maintenance window
{ "title": "...", "startsAt": "...", "endsAt": "...", "monitorIds": ["..."] }/api/dashboard/summaryAuth requiredAggregate dashboard stats (uptime, response times)
/api/healthService health check (no auth)
/api/stats/publicPublic aggregate stats (no auth)
Full API access is available on Pro ($5/mo) and Business ($15/mo) plans. API key authentication is coming soon — for now, use session cookies.