Uptimeify Docs
MonitorsTcp monitors

Get TCP Monitor Check History

Returns paginated check results for a TCP monitor.

GET /api/tcp-monitors/:tcpMonitorPublicId/check-history

Authentication

Requires a valid session.

  • Header: Authorization: Bearer <token>

Parameters

  • tcpMonitorPublicId (Path, required): TCP monitor public UUID.

Query Parameters

  • page (number, optional): Page number (default: 1).
  • limit (number, optional): Items per page (default: 10; max 100). Ignored in favor of export defaults when format=csv or download=1 (default 10000, max 50000).
  • status (string, optional): success or failure (failure also matches timeout).
  • minMs / maxMs (number, optional): Filter by response time range (timingTotal).
  • from / to (ISO date string, optional): Filter by checkedAt range.
  • format (string, optional): json (default) or csv.
  • download (string, optional): 1 to force an attachment download.

cURL

curl "https://YOUR_DOMAIN/api/tcp-monitors/44444444-4444-4444-8444-444444444444/check-history?page=1&limit=50" \
  -H "Authorization: Bearer $TOKEN"

Response

{
  "data": [
    {
      "id": 12345,
      "status": "success",
      "success": true,
      "errorMessage": null,
      "checkedAt": "2026-02-26T12:00:00.000Z",
      "responseTimeMs": 42,
      "location": {
        "name": "Nuremberg (DE)",
        "code": "de-nbg"
      }
    }
  ],
  "total": 1,
  "page": 1,
  "pageCount": 1
}

When format=csv (or download=1), the response is a text/csv (or application/json for format=json&download=1) attachment instead of the paginated JSON envelope above.

Errors

  • 400 TCP monitor public ID (UUID) required
  • 401 Unauthorized
  • 403 Forbidden
  • 404 Not found

On this page