Incidents zusammenführen
Führt einen Incident-Management-Incident in einen anderen zusammen: seine Alerts und seine Timeline wandern mit, der zusammengeführte Incident eskaliert nicht weiter.
POST /api/im/incidents/:id/merge
Führt den Incident :id (die Quelle) in targetIncidentId zusammen, etwa wenn sich zwei Alerts als derselbe Ausfall herausstellen. In einem Schritt:
- alle Alerts und Timeline-Events der Quelle wandern zum Ziel,
- die Quelle erhält den Status
mergedundmergedIntoIdzeigt auf das Ziel, ihre Eskalation endet, - die Timeline der Quelle vermerkt
merged, die des Zielsmerge_received.
Rollen-Zuweisungen bleiben bei der Quelle. Über die API lässt sich ein Zusammenführen nicht rückgängig machen.
Authentifizierung
Jede IM-berechtigte Rolle (admin, editor, responder) oder ein organisationsweiter API-Token, siehe Authentifizierung. Incident Management muss für die Organisation aktiviert sein.
Dem Team des Quell-Incidents vorbehalten: du musst Mitglied im Team von Incident :id oder Organisations-Admin sein. Ein organisationsweiter API-Token gilt dabei als Organisations-Admin.
Anfrage (Request Body)
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
targetIncidentId | number | Ja | Der Incident, in den zusammengeführt wird. Muss zur selben Organisation gehören und darf weder merged noch resolved sein. |
Beispiel (cURL)
curl -X POST "$BASE_URL/api/im/incidents/43/merge" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "targetIncidentId": 42 }'Antwort (Response)
200 OK: der aktualisierte Quell-Incident (gleiche Form wie die items von Incidents auflisten, ohne die Ergänzungsfelder) und die Ziel-ID.
{
"source": {
"id": 43,
"teamId": 3,
"title": "Replica lag above threshold",
"status": "merged",
"mergedIntoId": 42,
"currentTier": null,
"escalationEpoch": 1
},
"targetIncidentId": 42
}(source gekürzt; zurück kommt der vollständige Datensatz.)
Häufige Fehler
401 Unauthorizedwenn du nicht authentifiziert bist403 Forbidden(customerScopedTokenForbidden) bei Verwendung eines kunden-gescopten Tokens403 Forbidden(imAccessDenied) wenn die angemeldete Person keine IM-berechtigte Rolle hat403 Forbidden(imNotEnabled) wenn Incident Management für die Organisation nicht aktiviert ist403 Forbidden(imTeamMembershipRequired) wenn du weder Mitglied im Team des Quell-Incidents noch Organisations-Admin bist400 Bad Request(invalidRequestBody) wenn:idkeine positive Ganzzahl ist, odertargetIncidentIdfehlt oder keine positive Ganzzahl ist404 Not Found(imIncidentNotFound) wenn Quell- oder Ziel-Incident nicht existiert oder zu einer anderen Organisation gehört422 Unprocessable Entity(imIncidentCannotMergeIntoSelf) wenntargetIncidentIdgleich:idist422 Unprocessable Entity(imIncidentAlreadyMerged) wenn der Quell-Incident bereitsmergedist422 Unprocessable Entity(imIncidentTargetAlreadyMerged) wenn der Ziel-Incidentmergedist422 Unprocessable Entity(imMergeTargetClosed) wenn der Ziel-Incidentresolvedist