Incident abrufen
Liefert die vollständigen Details eines einzelnen Incident-Management-Incidents: den Incident-Datensatz sowie seine Alerts, Timeline-Events und Rollen-Zuweisungen.
GET /api/im/incidents/:id
Liefert die vollständigen Details eines einzelnen Incidents: den Incident-Datensatz sowie seine Alerts (eine sichere, geschwärzte Sicht, siehe unten), Timeline-Events in chronologischer Reihenfolge und Rollen-Zuweisungen.
Authentifizierung
Wie bei Incidents auflisten: jede IM-berechtigte Rolle (admin, editor, responder), oder ein organisationsweiter API-Token. Incident Management muss für die Organisation aktiviert sein.
Beispiel (cURL)
curl -X GET "$BASE_URL/api/im/incidents/42" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"Antwort (Response)
{
"id": 42,
"organizationId": 1,
"teamId": 3,
"title": "Database connection pool exhausted",
"customerId": null,
"primarySourceId": 7,
"severity": "sev1",
"severityManual": false,
"status": "triggered",
"mergedIntoId": null,
"escalationPolicyId": 5,
"currentTier": 1,
"escalationEpoch": 0,
"acknowledgedBy": null,
"acknowledgedAt": null,
"snoozedUntil": null,
"autoResolve": true,
"resolvedBy": null,
"resolveNote": null,
"createdBy": null,
"sourceKind": "alert",
"triggeredAt": "2026-07-17T09:12:00.000Z",
"resolvedAt": null,
"alerts": [
{
"id": 101,
"organizationId": 1,
"sourceId": 7,
"dedupKey": "db-primary-01:pool-exhausted",
"status": "open",
"suppressedReason": null,
"title": "Database connection pool exhausted",
"severity": "sev1",
"host": "db-primary-01",
"mappedFields": {},
"duplicateCount": 0,
"firstSeenAt": "2026-07-17T09:12:00.000Z",
"resolvedAt": null,
"incidentId": 42
}
],
"events": [
{
"id": 501,
"incidentId": 42,
"at": "2026-07-17T09:12:00.000Z",
"kind": "alert_received",
"actorUserId": null,
"payload": {}
}
],
"assignments": [
{
"id": 12,
"userId": "u_abc123",
"userName": "Jane Doe",
"role": "commander",
"createdAt": "2026-07-17T09:15:00.000Z"
}
]
}alerts[].rawPayload wird von diesem Endpunkt nie zurückgegeben: das rohe Webhook-/API-Payload kann API-Keys oder andere Secrets enthalten, die der Betreiber der Source darin platziert hat. Es wird außerdem serverseitig 90 Tage nach dem Eingang durch einen Retention-Job genullt. alerts[].mappedFields ist die bereits normalisierte, sichere Sicht auf denselben Alert und übersteht die Retention.
Retention im Detail: Alert-Payloads (rawPayload) werden 90 Tage nach dem Eingang genullt; aufgelöste (resolved) Alerts werden 90 Tage nach dem Eingang gelöscht; Outbound-Delivery-Datensätze (Integrations-Weiterleitung) werden 90 Tage nach dem Versand gelöscht. Die täglichen Aggregate pro Source (Alert-/Dedup-/Incident-Zähler, wie im Analytics-Tab einer Source angezeigt) werden unbegrenzt aufbewahrt. Das Löschen der zugrunde liegenden Alert-Zeilen löscht diese Historie nicht mit.
Häufige Fehler
401 Unauthorizedwenn du nicht authentifiziert bist403 Forbidden(imAccessDenied) bei Verwendung eines kunden-gescopten Tokens, oder wenn deine Session keine IM-berechtigte Rolle hat403 Forbidden(imNotEnabled) wenn Incident Management für die Organisation nicht aktiviert ist400 Bad Request(invalidRequestBody) wenn:idkeine positive Ganzzahl ist404 Not Found(imIncidentNotFound) wenn der Incident nicht existiert oder zu einer anderen Organisation gehört
Events Ingest
Öffentlicher Alert-Ingest-Endpunkt für Incident Management. Beliebiges JSON-Alert-Payload aus deinem eigenen Monitoring- oder Alerting-System senden; es wird asynchron zu einem Incident verarbeitet.
Incidents auflisten
Liefert eine gefilterte, cursor-paginierte Liste der Incident-Management-Incidents deiner Organisation.