Skip to main content

Maintenance windows

Suppress alert paging for one or more services during planned maintenance.

D
Written by Dave Rochwerger

Part of the Phoenix Alerts Management API reference.

A maintenance window suppresses alert paging for one or more services during a planned time range — for example, while you're doing a database migration. Alerts still come in and are recorded, but nobody is paged for them while the window is active.

You must be an admin of every covered service's team (or an account owner) to create, update, or delete a window.

Create a window

POST /v1/maintenance-windows

Field

Type

Required

Notes

service_uuids

array of string

yes

At least one service UUID.

starts_at

string

yes

UTC ISO-8601 datetime.

ends_at

string

yes

UTC ISO-8601 datetime. Must be after starts_at.

description

string or null

no

Up to 1000 characters.

Example request body:

{
"service_uuids": ["b2c3d4e5-f6a7-8901-bcde-f12345678901"],
"starts_at": "2026-06-23T00:00:00.000Z",
"ends_at": "2026-06-23T04:00:00.000Z",
"description": "Scheduled DB maintenance"
}

Response (201):

{
"object": "maintenance_window",
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"starts_at": "2026-06-23T00:00:00.000Z",
"ends_at": "2026-06-23T04:00:00.000Z",
"description": "Scheduled DB maintenance",
"service_uuids": ["b2c3d4e5-f6a7-8901-bcde-f12345678901"],
"created_at": "2026-06-22T23:00:00.000Z",
"updated_at": "2026-06-22T23:00:00.000Z"
}

List and view windows

GET /v1/maintenance-windows
GET /v1/maintenance-windows/{window_uuid}

GET /v1/maintenance-windows returns windows you can administer. Add ?active=true for only the ones running right now, or ?service_uuid=<uuid> to scope to one service.

GET /v1/maintenance-windows/active lists just the currently-active windows across your account.

Update or cancel a window

PATCH /v1/maintenance-windows/{window_uuid}
DELETE /v1/maintenance-windows/{window_uuid}

PATCH accepts service_uuids (replaces the full set), starts_at, ends_at, description — all optional. You must be an admin of every service currently on the window and every service in the new set.

Example request body:

{"ends_at": "2026-06-23T05:00:00.000Z"}

DELETE cancels the window immediately and returns 204.

Did this answer your question?