Ereignisbenachrichtigungsmanagement – API öffnen
Die Ereignisbenachrichtigungsmanagement Offen Die API stellt einen Endpunkt zum Erstellen, Aktualisieren und Löschen von Ereignissen aus der Tabelle „Ereignisse“ [em_event] bereit.
Die Ereignisbenachrichtigungsmanagement Offen API (sn_ind_tmf688) ist ein ServiceNow Implementierung der Spezifikation „TM Forum Open API“. Diese API basiert auf TMF688 Ereignismanagement-API – Benutzerhandbuch v4.0.0 . Zusätzliche Alarminformationen finden Sie in TMF642 – Anwenderhandbuch für Alarmmanagement-API .
Diese API kann erweitert werden, um Anpassungen an erforderlichen Parametern, die Validierung des Anforderungstexts, zusätzliche REST-Vorgänge und Feldzuordnungen vorzunehmen. Weitere Informationen finden Sie unterDie Ereignisbenachrichtigungsmanagement – Entwicklerleitfaden für offene API.
Ereignisbenachrichtigungsmanagement – offene API – POST instance_Name/scope_ID/GUID
Platziert die Nutzlast der zugehörigen Anforderung in die NowMQ-Warteschlange. Diese Warteschlange wird dann im Hintergrund verarbeitet, um Ereignisse in der Tabelle „Ereignisse“ [em_event] zu erstellen, zu aktualisieren und zu löschen.
Dieser Endpunkt unterscheidet sich von anderen Endpunkten in ServiceNow Plattform. Anstatt einen Endpunkt für jede bestimmte Aufgabe zu haben, z. B. Erstellen, Aktualisieren und Löschen, gibt es nur einen einzigen Endpunkt für alle Funktionen. Der Parameter eventTypeIn der Aufrufnutzlast bestimmt die auszuführende Aufgabe basierend auf dem übergebenen Wert von AlarmCreateEvent , AlarmUpdateEvent , Oder AlarmDeleteEvent .
Das Format des REST-Aufrufs unterscheidet sich auch von Standard-REST-Implementierungen. Jedes externe System, das diese API verwendet, z. B. Kafka, Datenbanküberwachungen oder andere Anwendungen, muss sich zuerst bei registrieren ServiceNow Plattform. Sie müssen auch über einen eigenen Webhook verfügen, der die während der Registrierung bereitgestellten Informationen verwendet, um die Signatur zu generieren, die für den Aufruf dieses Endpunkts erforderlich ist, einschließlich Instanz_Name , Anwendung Umfang_ID , Und eindeutig GUID . Die GUID Gibt das externe Netzwerksystem an, von dem die Anforderung stammt.
TMFAlarmAPIKonstanten Skripteinbindung für die entsprechende eventTypeParameterwert. Alle Parameter, die in der Nutzlast übergeben und nicht im Schema definiert sind, werden vom Endpunkt ignoriert.AlarmCreateEvent:ALARM_CREATE_EVENT_SCHEMAAlarmUpdateEvent:ALARM_CHANGE_EVENT_SCHEMAAlarmDeleteEvent:ALARM_DELETE_EVENT_SCHEMA
URL-Format
Standard-URL: <instance_name>/<scope_id>/<GUID>
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| event | Details zum aufgetretenen Ereignis. Datentyp: Objekt |
| Ereignis.Alarm | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Details zum zugehörigen Alarm. Datentyp: Objekt |
| Ereignis.Alarm.BetroffenService | Liste von mindestens einem Service, der vom Alarm betroffen ist. Datentyp: Array von Objekten |
| Ereignis.Alarm.affectedService.href | URL-Referenz, die Details zum betroffenen Service bereitstellt. Datentyp: Zeichenfolge |
| event.alarm.affectedService.id | Bezeichner des Service, der vom Alarm betroffen ist. Dieser Wert ist dem betroffenen Konfigurationselement (CI) in der Warnung zugeordnet. Datentyp: Zeichenfolge |
| Ereignis.Alarm.alarmedObjekt | Erforderlich beim Erstellen eines Ereignisses. Details des Alarmobjekts. Datentyp: Objekt |
| Ereignis.Alarm.alarmedObject.href | Erforderlich beim Erstellen eines Ereignisses. URL-Referenz zum Abrufen der Details des Alarmobjekts. Datentyp: Zeichenfolge |
| event.alarm.alarmedObject.id | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Eindeutiger Bezeichner des Alarmobjekts. Dieser Wert ist einem CI im System zugeordnet. Datentyp: Zeichenfolge |
| Ereignis.Alarm.Alarmtyp | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Typ des Alarms. Wird verwendet, um den Alarm zu kategorisieren. Beispiel: „QualityOfServiceAlarm“ Datentyp: Zeichenfolge |
| Ereignis.Alarm.gekreuzter Schwellenwert.Information | Details zum überschrittenen Schwellenwert. Datentyp: Objekt |
| Ereignis.Alarm.gekreuztSchwellenwert.Information.ThresholdId | Eindeutiger Bezeichner des Schwellenwerts, der den Alarm verursacht hat. Datentyp: Zeichenfolge |
| Ereignis.Alarm.externe AlarmId | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Erforderlich, wenn eventTypeIst AlarmDeleteEvent Oder AlarmChangeEvent Wenn IdParameter ist nicht angegeben. Eindeutiger Bezeichner für den Alarm aus dem Quellsystem, das den Alarm sendet. Datentyp: Zeichenfolge |
| Ereignis.Alarm.href | URL-Verweis auf den Alarm. Beispiel: „http://api/alarm/ROUTER_IF@Cisco-0000-0-0-0-0-00-00-0-- Xz0/00@00“ Datentyp: Zeichenfolge |
| event.alarm.id | Erforderlich, wenn eventTypeIst AlarmDeleteEvent Oder AlarmChangeEvent Wenn externalAlarmIdIst nicht angegeben. Eindeutiger Bezeichner des Alarms. Vom Alarmbesitzer angegeben. Beispiel: „8675399“ Datentyp: Zeichenfolge |
| Ereignis.Alarm.WahrnehmungSchweregrad | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Mögliche Schweregrade, die dem Alarm zugeordnet sind. Die Werte stimmen mit der ITU-T-Empfehlung X.733 überein. Nachdem ein Alarm gelöscht wurde, wird sein wahrgenommener Schweregrad auf „LÖSCHEN“ festgelegt und kann nicht mehr festgelegt werden. Gültige Werte:
Datentyp: Zeichenfolge |
| event.alarm.probableCause | Erforderlich, wenn eventTypeIst AlarmCreateEvent .Höchstwahrscheinlich Situation, die den Alarm auslöst. Verwenden Sie mit alarmTypeUm den Alarm zu qualifizieren. Die möglichen Werte entsprechen der ITU-T-Empfehlung X.733 oder 3GPP TS 32.111-2 Anhang B. Beispiel: „Schwellenwert überschritten“ Datentyp: Zeichenfolge |
| Ereignis.Alarm.QuellSystemId | Erforderlich, wenn eventTypeIst AlarmCreateEvent . Eindeutiger Bezeichner des Quellsystems des Alarms. Beispiel: „SOURCE_SYSTEM_vManage_00000_000_00“ Datentyp: Zeichenfolge |
| Ereignis.Alarm.spezifisches Problem | Spezifisches Problem, das den Alarm auslöst. Verwenden Sie mit probableCauseTparameter, um den Alarm zu qualifizieren. Beispiel: „Schwellenwert für eingehenden Datenverkehr überschritten“ Datentyp: Zeichenfolge |
| eventType | Erforderlich. Typ des zu verarbeitenden Ereignisses. Gültige Werte:
Datentyp: Zeichenfolge |
Header
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST-API-Header .
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter REST API-HTTP-Antwortcodes .
| Statuscode | Beschreibung |
|---|---|
| 200 | Wird für jeden Anruf unabhängig vom tatsächlichen Verarbeitungsstatus des Anrufs zurückgegeben. Gibt nur an, dass der Endpunkt die Anforderung erhalten hat. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Keine | Dieser Endpunkt ist asynchron und gibt daher keine Antwortdaten zurück. |
cURL-Anforderung
Im Folgenden wird die mögliche Nutzlast für ein „Alarm erstellen“-Ereignis angezeigt. Dieses Beispiel spiegelt die Parameter wider, die sich in der Standardimplementierung befinden ( AlarmCreateEventSchema ).
--data "{
"eventType": "AlarmCreateNotification",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"alarmType": "QualityOfServiceAlarm",
"perceivedSeverity": "MINOR",
"alarmedObject": {
"id": "vManage_000000",
"href": " http://api/alarmedobject/000000"
},
"probableCause": "Threshold crossed",
"sourceSystemId": "SOURCE_SYSTEM_vManage_00000_000_00",
"href": "http://api/alarm/ROUTER_IF@Cisco-0000-0-0-0-0-00-00-0-- Xz0/00@00",
"specificProblem": "Inbound Traffic threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
},
"affectedService": [
{
"id": "SD WAN Enterprise Solutions",
"href": "http://api/service/vlan_dot0_dot0"
}
]
}
}
}
Keine Antwort zurückgegeben.
cURL-Anforderung
Im Folgenden wird die mögliche Nutzlast für ein Change-Alarmereignis angezeigt. Dieses Beispiel spiegelt die Parameter wider, die sich in der Standardimplementierung befinden ( AlarmChangeEventSchema ).
--data "{
"eventType": "AlarmChangeEventSchema",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"perceivedSeverity": "MAJOR",
"probableCause": "Threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
},
"affectedService": [
{
"id": "SD WAN Enterprise Solutions",
"href": "http://api/service/vlan_dot0_dot0"
}
]
}
}
}
Keine Antwort zurückgegeben.
cURL-Anforderung
Im Folgenden wird die mögliche Nutzlast für ein Löschalarm-Ereignis (Löschen) angezeigt. Dieses Beispiel spiegelt die Parameter wider, die sich in der Standardimplementierung befinden ( AlarmDeleteEventSchema ).
--data "{
"eventType": "AlarmDeleteEventSchema",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"perceivedSeverity": "MAJOR",
"probableCause": "Threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
}
}
}
}
Keine Antwort zurückgegeben.