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

bash
curl -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).

Ask a question... ⌘I