Uptimeify Docs

Schedule-Overrides

On-Call-Schedule-Overrides auflisten und hinzufügen: einmalige „X vertritt Y“-Zeitfenster zusätzlich zur regulären Rotation eines Schedules.

GET /api/im/schedules/:id/overrides · POST /api/im/schedules/:id/overrides

Ein Override ist ein einmaliges „X vertritt Y"-Zeitfenster auf einem Schedule: Ein User springt für einen festen Zeitraum ein, zusätzlich zu dem, was die reguläre Rotation sonst ergeben würde: ein Urlaubstausch oder eine Krankheitsvertretung, ohne die Rotation selbst zu bearbeiten. Overrides werden vom selben Hintergrund-Worker zu Schichten materialisiert, der auch die reguläre Rotation materialisiert.

Authentifizierung

Erfordert den Basis-IM-Zugriff, den jeder Endpunkt dieser API benötigt (eine IM-berechtigte Rolle, oder einen organisationsweiten API-Token; Incident Management muss für die Organisation aktiviert sein). Das Auflisten steht jeder IM-berechtigten Rolle offen. Das Hinzufügen eines Overrides erfordert zusätzlich die Schreib-Hürde: Deine Rolle muss admin sein, oder du musst Team-Admin des Schedule-Teams sein.

Overrides auflisten

GET /api/im/schedules/:id/overrides

Liefert die Overrides des Schedules, sortiert nach id. Diese Reihenfolge ist zwingend, nicht beiläufig. im_schedule_override hat keine Prioritätsspalte: Der Vorrang zwischen überlappenden Overrides wird durch die Erstellungsreihenfolge entschieden (der zuletzt erstellte gewinnt), und der Materializer liest sie in genau dieser Reihenfolge. Dieser Endpunkt kann kein Umsortieren anbieten, da es keinen Ort gibt, an dem eine umsortierte Rangfolge gespeichert werden könnte.

Beispiel (cURL)

curl -X GET "$BASE_URL/api/im/schedules/7/overrides" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"

Antwort (Response)

200 OK

[
  {
    "id": 12,
    "scheduleId": 7,
    "userId": "u_abc123",
    "userName": "Jane Doe",
    "startsAt": "2026-08-01T00:00:00.000Z",
    "endsAt": "2026-08-08T00:00:00.000Z",
    "createdAt": "2026-07-20T10:00:00.000Z"
  }
]

Override hinzufügen

POST /api/im/schedules/:id/overrides

Request Body

FeldTypErforderlichBeschreibung
userIdstringJaDer User, der in diesem Zeitfenster einspringt. Muss zu deiner Organisation gehören.
startsAtISO-8601-Datum/ZeitJaBeginn des Zeitfensters.
endsAtISO-8601-Datum/ZeitJaEnde des Zeitfensters. Muss echt nach startsAt liegen.

Beispiel (cURL)

curl -X POST "$BASE_URL/api/im/schedules/7/overrides" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "userId": "u_abc123",
    "startsAt": "2026-08-01T00:00:00.000Z",
    "endsAt": "2026-08-08T00:00:00.000Z"
  }'

Antwort (Response)

200 OK: die neu erstellte Override-Zeile (gleiche Form wie oben in der Liste).

Häufige Fehler

  • 401 Unauthorized wenn du nicht authentifiziert bist
  • 403 Forbidden (imAccessDenied) bei Verwendung eines kunden-gescopten Tokens, oder wenn deine Session keine IM-berechtigte Rolle hat
  • 403 Forbidden (imNotEnabled) wenn Incident Management für die Organisation nicht aktiviert ist
  • 403 Forbidden (imTeamWriteDenied) (nur beim Hinzufügen) wenn deine Rolle nicht admin ist und du kein Team-Admin des Schedule-Teams bist
  • 404 Not Found (imScheduleNotFound) wenn :id nicht existiert oder zu einer anderen Organisation gehört
  • 400 Bad Request (invalidRequestBody) (nur beim Hinzufügen) wenn userId fehlt, startsAt/endsAt fehlt oder kein gültiger Zeitstempel ist, oder startsAt nicht echt vor endsAt liegt
  • 404 Not Found (userNotFound) (nur beim Hinzufügen) wenn userId nicht zu deiner Organisation gehört

Auf dieser Seite