Summary
Add the ability to schedule planned maintenance windows on status pages, showing upcoming and ongoing maintenance alongside the regular service status.
Use Case
When doing planned maintenance (server upgrades, DB migrations, network changes), operators need to inform users in advance and show the expected impact during the window. This is a standard feature in tools like UptimeKuma and Atlassian Statuspage.
Proposed Features
Backend / API
- A
MaintenanceWindow model (or extend StatusPageIncident with a type field):
title: short description (e.g., "Database upgrade")
message: detailed Markdown body explaining impact
startedAt / endedAt: scheduled start and end times
status: scheduled | active | completed
affectedMonitors: list of monitor IDs affected (show as "Under Maintenance" instead of "Down")
pageId: FK to MonitorStatusPage
- CRUD API to create/list/update/delete maintenance windows
- Auto-transition from
scheduled → active → completed based on time (or manual)
Frontend / UI
- Admin panel: Monitor → Status Page → Edit → Maintenance tab
- Create maintenance with title, description, start/end datetime picker, affected services picker
- List of upcoming, active, and past maintenance
- Ability to cancel or complete early
- Status page display:
- Upcoming: Show a banner like "🛠️ Scheduled maintenance on June 10, 2026 from 2:00 AM to 4:00 AM (UTC-7)"
- Active: Show a prominent banner indicating ongoing maintenance, with affected services shown as "Under Maintenance" (yellow/blue badge instead of red/green)
- Past: Show in an incident log as resolved/completed
- Monitors affected by active maintenance should NOT trigger alerts/downtime notifications
Integration
- Monitors under active maintenance should not count as downtime in uptime calculations
- Alerts/notifications should be suppressed for monitors under maintenance
Why This Matters
This is critical for professional use cases (e.g., ERP systems, business SaaS) where planned maintenance needs to be communicated transparently to end users without triggering false alarms.
Summary
Add the ability to schedule planned maintenance windows on status pages, showing upcoming and ongoing maintenance alongside the regular service status.
Use Case
When doing planned maintenance (server upgrades, DB migrations, network changes), operators need to inform users in advance and show the expected impact during the window. This is a standard feature in tools like UptimeKuma and Atlassian Statuspage.
Proposed Features
Backend / API
MaintenanceWindowmodel (or extendStatusPageIncidentwith atypefield):title: short description (e.g., "Database upgrade")message: detailed Markdown body explaining impactstartedAt/endedAt: scheduled start and end timesstatus:scheduled|active|completedaffectedMonitors: list of monitor IDs affected (show as "Under Maintenance" instead of "Down")pageId: FK toMonitorStatusPagescheduled→active→completedbased on time (or manual)Frontend / UI
Integration
Why This Matters
This is critical for professional use cases (e.g., ERP systems, business SaaS) where planned maintenance needs to be communicated transparently to end users without triggering false alarms.