Wartungs-Wiederholungen vorschauen
Berechnet die kommenden Vorkommen eines (noch nicht gespeicherten) Wiederholungsmusters, ohne ein Fenster anzulegen.
POST /api/maintenance-windows/preview-occurrences
Reine Berechnung: Dieser Endpunkt greift nie auf die Datenbank zu. Er nutzt dieselbe
zeitzonenbewusste Wiederholungs-Engine wie der Alarm-Unterdrückungspfad (occurrencesInRange),
sodass die Vorschau nie von dem abweichen kann, was ein gespeichertes Fenster mit denselben
Werten für startTime/endTime/recurrencePattern/timezone tatsächlich unterdrücken wird.
Nützlich, um vor dem Absenden von Maintenance Window erstellen
oder Maintenance Window aktualisieren zu zeigen, was ein
Muster bedeutet.
Body
{
"startTime": "2026-08-10T02:00:00.000Z",
"endTime": "2026-08-10T03:00:00.000Z",
"isRecurring": true,
"recurrencePattern": {
"frequency": "weekly",
"interval": 1,
"daysOfWeek": [1, 3]
},
"timezone": "Europe/Berlin"
}Felder
| Feld | Typ | Beschreibung |
|---|---|---|
startTime | ISO-8601-Datum/Zeit | Erforderlich. Beginn des ersten Vorkommens. |
endTime | ISO-8601-Datum/Zeit | Erforderlich. Ende des ersten Vorkommens. Muss nach startTime liegen. |
isRecurring | boolean | Erforderlich. Bei false enthält die Antwort nur das einzelne Anker-Vorkommen. |
recurrencePattern | Objekt | Erforderlich, wenn isRecurring true ist. Gleiche Struktur wie bei Maintenance Window erstellen. |
timezone | string | Standard "UTC". Die IANA-Zeitzone, in der das Muster interpretiert wird, gleiche Validierung und Kanonisierung wie das timezone-Feld bei Erstellung/Aktualisierung. |
Die Antwort liefert höchstens 5 kommende Vorkommen, mit einem Vorschau-Horizont von bis zu 5 Jahren ab dem aktuellen Zeitpunkt.
Beispiel (cURL)
BASE_URL="https://uptimeify.io"
TOKEN="<dein-api-token>"
curl -X POST "$BASE_URL/api/maintenance-windows/preview-occurrences" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"startTime": "2026-08-10T02:00:00.000Z",
"endTime": "2026-08-10T03:00:00.000Z",
"isRecurring": true,
"recurrencePattern": { "frequency": "weekly", "interval": 1, "daysOfWeek": [1, 3] },
"timezone": "Europe/Berlin"
}'Antwort (Response)
{
"occurrences": [
{ "start": "2026-08-10T00:00:00.000Z", "end": "2026-08-10T01:00:00.000Z" },
{ "start": "2026-08-12T00:00:00.000Z", "end": "2026-08-12T01:00:00.000Z" },
{ "start": "2026-08-17T00:00:00.000Z", "end": "2026-08-17T01:00:00.000Z" }
]
}occurrences kann ein leeres Array sein (z. B. wenn das endRecurrenceDate eines
Wiederholungsmusters bereits vor dem Vorschau-Horizont liegt).
isRecurring: true ohne recurrencePattern ist kein Fehler. Das Fenster gilt dann als nicht
wiederkehrend, und die Antwort enthält nur das eine Vorkommen aus startTime und endTime,
derselbe Rückfall, den die Wiederholungsberechnung auch bei einem fehlerhaften Muster anwendet.
Häufige Fehler
| Status | Beschreibung |
|---|---|
400 (Validierung) | timezone ist ein reiner UTC-Offset oder kein vom Laufzeitsystem erkannter Zonenname. Standard-Zod-Validierungsfehler, kein { data: { code } }. |
400 { data: { code: "invalidWindow" } } | endTime liegt nicht nach startTime. |
401 Unauthorized | Nicht angemeldet. |
Tag-Abdeckung vorschauen
Gibt zurück, wie viele unterschiedliche Monitore eine Menge von Tags aktuell abdeckt, für den Tag-basierten (organisationsweiten) Wartungsfenster-Modus.
Maintenance Window aktualisieren
Aktualisiert ein Wartungsfenster partiell. Alle Felder sind optional; nur angegebene Felder werden geändert. Wenn targets oder tagIds angegeben werden, ersetzen sie die bestehende Auswahl vollständig.