List check results

Paginate recent check results with full timing waterfalls.

List check results

GET /monitors/:id/checks

List recent check results with timing data (paginated).

Auth: Bearer token (read scope)

Query parameters

page integer default: 1

Page number.

per_page integer default: 25

Items per page.

Request

bash
curl -H "Authorization: Bearer hu_..." \ "https://happyuptime.com/api/v1/monitors/mon_abc123/checks?per_page=5"

Response

json
{ "data": [ { "id": "chk_001", "monitor_id": "mon_abc123", "status": "up", "response_time_ms": 142, "status_code": 200, "region": "us-east", "timing_dns_ms": 4, "timing_connect_ms": 12, "timing_tls_ms": 23, "timing_ttfb_ms": 89, "timing_transfer_ms": 3, "error_message": null, "checked_at": "2026-03-07T15:00:00Z" }, { "id": "chk_002", "monitor_id": "mon_abc123", "status": "up", "response_time_ms": 156, "status_code": 200, "region": "eu-west", "timing_dns_ms": 8, "timing_connect_ms": 45, "timing_tls_ms": 31, "timing_ttfb_ms": 62, "timing_transfer_ms": 4, "error_message": null, "checked_at": "2026-03-07T15:00:00Z" } ], "meta": { "page": 1, "per_page": 5, "total": 8640, "total_pages": 1728 } }

Timing fields

Each check includes a full timing waterfall broken into five phases:

FieldDescription
timing_dns_msDNS resolution time
timing_connect_msTCP connection time
timing_tls_msTLS handshake time
timing_ttfb_msTime to first byte
timing_transfer_msResponse body transfer time
Ask a question... ⌘I