Maintenance windows

How a declared window suppresses alerts and shows a component as Under Maintenance.

Maintenance windows

A maintenance window is declared on a status page, not on a monitor. It names a start time, an end time, a message, and which of the page's components it covers.

Declared through a connected repository today

There is no POST endpoint that creates a maintenance window directly. A window is a field on the StatusPage manifest (spec.maintenanceWindows[]) applied through a connected repository. See Configuration as code for connecting one and the manifest shape. This page describes what a declared window does once it is applied, not a form for creating one.

What applying a window does

Applying a StatusPage manifest with a maintenanceWindows entry reconciles it into a suppression rule (internally, a Silence scoped to the monitors behind the window's named components) covering exactly the start and end time you declared. Editing the manifest and re-applying updates that same window rather than creating a second one, matched by its position in the maintenanceWindows list. Reordering entries in the manifest, not just editing one, can reattach a suppression to the wrong window.

While a window is active:

  • The status page shows it. Any component the window covers reports maintenance, overriding whatever its bound monitor's real status is. A monitor that is actually down during a declared window still shows maintenance, not major_outage, on the page.
  • Alerts are suppressed. The monitors behind those components do not fire alerts for the duration, the same mechanism a manually created silence uses elsewhere in the product.

Outside the window's start and end time, the component reports its bound monitor's real status again, the same mapping described in Pages and components.

On this page