List Maintenance Windows
Returns all maintenance windows visible to the authenticated user, scoped by organization and optional customer filter.
GET /api/maintenance-windows
Query Parameters
customerId(optional): Filter windows by customer ID.organizationId(optional): Defaults to your session organization.
Example (cURL)
BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"
curl -X GET "$BASE_URL/api/maintenance-windows?customerId=1" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"Response
[
{
"id": 42,
"publicId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa",
"organizationId": 10,
"customerId": 1,
"name": "Weekly deployment",
"description": "Rolling update every Monday",
"startTime": "2026-07-07T02:00:00.000Z",
"endTime": "2026-07-07T04:00:00.000Z",
"isRecurring": true,
"recurrencePattern": {
"frequency": "weekly",
"interval": 1,
"daysOfWeek": [1]
},
"isActive": true,
"timezone": "UTC",
"targets": [
{ "type": "website", "id": 101 },
{ "type": "icmp", "id": 5 }
],
"tags": [
{ "id": 7, "publicId": "0b0e4c3e-9a1f-4d3e-8a2b-1c2d3e4f5a6b", "name": "Production", "color": "red" }
],
"websiteId": null,
"icmpMonitorId": null,
"smtpMonitorId": null,
"sshMonitorId": null,
"ftpMonitorId": null,
"imapPopMonitorId": null,
"dnsMonitorId": null,
"customerIpId": null,
"customerDomainId": null,
"createdAt": "2026-06-01T09:00:00.000Z",
"updatedAt": "2026-06-01T09:00:00.000Z"
}
]Each window includes:
targets: array of{ type, id }objects for all explicitly selected monitors (typeis one ofwebsite|dns|icmp|smtp|ssh|ftp|imap_pop).tags: array of tag objects{ id, publicId, name, color }for tag-based coverage; an empty array when the window does not use tag targeting. The tag owner (createdBy) is not part of this response.- Legacy single-target fields (
websiteId,icmpMonitorId, etc.) remain present for backwards compatibility; they arenullwhen multi-target or tag-based selection is used.
Visibility
Which windows come back depends on who is reading, not only on the query parameters:
- An unrestricted reader (organization admin, global admin, and an organization-bound agent token) receives every window of the organization: the customer-anchored ones and the organization-wide ones (
customerId: null). - A customer-scoped reader (a
readonlyuser assigned to one or more customers, and the agent token minted for such a user) receives the windows of their own customers plus the organization-wide ones. Windows belonging to another customer are never returned. - A customer-scoped API token is pinned to the customer it was issued for and receives that customer's windows only.
Passing customerId explicitly narrows the result further. A readonly user may only name a customer they are assigned to; any other customer answers 403 Forbidden.
Common errors
401 Unauthorizedwhen you are not logged in403 Forbiddenwhen you cannot access the organization
Maintenance Windows
Create and manage maintenance windows to suppress alerts during planned work. Windows can target a single monitor, multiple monitors, an entire customer, or any monitor carrying a given tag.
Create Maintenance Window
Creates a new maintenance window. Accepts a single monitor (legacy), multiple monitors, tag-based (including org-wide), or customer-level targeting.