---
title: "List DNS Monitors"
description: "Lists DNS monitors for an organization (with pagination)."
---

`GET /api/dns-monitors`

Each item contains the DNS monitor itself and does not embed the full customer record.

## Query Parameters

- `organizationId` (optional): defaults to your session organization
- `customerId` (optional)
- `search` (optional)
- `page` (optional, default `1`)
- `perPage` (optional, default `50`, max `200`)

## Example (cURL)

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

curl -X GET \
  "$BASE_URL/api/dns-monitors?organizationId=1&page=1&perPage=50" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"
```

## Example Response

```json
{
  "items": [
    {
      "id": 5,
      "publicId": "79fbe9b0-f9c6-4026-86de-1dbebc84d9bb",
      "organizationId": 2,
      "customerId": 2,
      "customerName": "Zaskoku & Haupt GbR",
      "name": "Primary DNS Monitor",
      "hostname": "claas.sh",
      "checkInterval": 30,
      "timeoutSeconds": 30,
      "dnsConfig": {},
      "allowedCheckCountryCodes": null,
      "status": "active",
      "notificationPhoneNumber": null,
      "notificationEmail": null,
      "lastCheckedAt": "2026-04-03T14:54:56.561Z",
      "createdAt": "2026-04-03T14:54:56.383Z",
      "updatedAt": "2026-04-03T14:54:56.740Z"
    }
  ],
  "total": 0,
  "page": 1,
  "perPage": 50
}
```

## Common errors

- `400 Invalid organizationId` when `organizationId` is invalid
- `400 Invalid customerId` when `customerId` is invalid
- `401 Unauthorized` when you are not logged in
- `403 Forbidden` when you cannot access the organization

