---
title: "Get Monitoring Data"
description: "Returns time series data used for charts (response times, status tracker, uptime percentage)."
---

`GET /api/websites/:id/monitoring-data`

To keep responses small, the endpoint down-samples the returned data points if needed.

## Query Parameters

- `range` (optional, default: `day`): `day`, `week`, `month`, `year`
- `maxPoints` (optional, default: `300`, max: `2000`): Limits the number of returned data points.

## Example (cURL)

```bash
BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"

curl -X GET "$BASE_URL/api/websites/6bfec6f6-245a-47ce-843b-157d97d56f88/monitoring-data?range=week" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"
```

## Example Response (excerpt)

```json
{
  "responseTimeData": [
    {
      "timestamp": "2026-02-26T12:00:00.000Z",
      "responseTime": 123,
      "status": "success",
      "success": true,
      "timingDns": 12,
      "timingTcp": 20,
      "timingTls": 30,
      "timingTtfb": 50,
      "timingTransfer": 11
    }
  ],
  "statusData": [
    { "date": "26.02", "status": "online" }
  ],
  "uptimePercentage": "99.95",
  "checkSuccessRatePercentage": "99.80",
  "totalChecks": 100,
  "successfulChecks": 99
}
```

## Common Errors

- `400 Website public ID (UUID) required` if `:websitePublicId` is invalid
- `401 Unauthorized` if you are not authenticated
- `403 Forbidden` if you do not have access to the website
- `500 Failed to fetch monitoring data` on server errors

