Get monitor
Retrieve monitor details including 30-day uptime percentage.
Get monitor
GET /monitors/:id
Get monitor details including 30-day uptime percentage.
Auth: Bearer token (read scope)
Request
bashcurl -H "Authorization: Bearer hu_..." \ "https://happyuptime.com/api/v1/monitors/mon_abc123"
Response
json{ "data": { "id": "mon_abc123", "project_id": "proj_xyz", "name": "API Server", "type": "http", "url": "https://api.example.com/health", "method": "GET", "status": "up", "interval_seconds": 60, "timeout_ms": 30000, "regions": ["us-east", "eu-west", "ap-southeast"], "tags": ["production", "api"], "headers": {}, "assertions": { "status_code": 200 }, "paused": false, "uptime_30d": 99.97, "created_at": "2026-03-01T10:00:00Z", "updated_at": "2026-03-07T14:30:00Z" } }
Response fields
id string
Unique monitor ID, prefixed with mon_.
status string
Current aggregate status: up, down, degraded, or unknown.
uptime_30d number
Uptime percentage over the trailing 30 days.
regions string[]
Regions the monitor runs from. Any of: us-east, us-west, eu-west, eu-central, ap-southeast, ap-northeast.
assertions object
Response assertions applied on every check (e.g. status_code, body_contains).