Event Management-Thema offene API
Die Event Management Topic Open -API bietet einen Endpunkt, mit dem Sie ein Thema über Ihren Nachrichten-Broker senden und in einer ServiceNow -Instanz speichern können.
Mit dieser API können Sie Themen, die über Ihren Nachrichten-Broker erstellt wurden, in der Tabelle ServiceNow Thema [topic] speichern.
Diese API wird im Namespace sn-api-notif-mgmt ausgeführt und erfordert die Rolle sn_api_notif_mgmt.event_mgmt_integration.
Event Management-Thema offen – POST /sn_api_notif_mgmt/topic
Erstellt einen neuen Datensatz in der Thementabelle [sn_api_notif_mgmt_topic] und speichert die übergebenen Themeninformationen in diesem Datensatz.
Verwenden Sie diesen Endpunkt, um in Ihrer Message-Bus-Middleware erstellte Themen mit denen in Ihrer ServiceNow -Instanz zu synchronisieren.
Wenn Themen mit diesem Endpunkt erstellt werden, wird das Feld user_created im zugeordneten Themendatensatz auf „ false “ und das Typfeld auf „ egress“ festgelegt.
URL-Format
Versionierte URL: /api/sn_api_notif_mgmt/v1/topic
Standard-URL: /api/sn_api_notif_mgmt/topic
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| contentQuery | Filter, der auf die Nutzlast des Events angewendet werden soll. Diese Abfrage ist ein tieferer Event-Filter, der verwendet wird, um Informationen wie Event-Schweregrad oder Ticket-Typ zu finden. Sie können diesen Parameter als geschachtelte Abfrage übergeben. Beispiel: Für die folgende Nutzlast des Problemticketereignisses gilt diese Abfrage für die Attribute im Objekt „event“ der Nutzlast: Dieser Parameter unterstützt die folgenden Bedingungen:
Beispiel: Dieses Feld wird dem Feld content_query im zugeordneten Themendatensatz zugeordnet. Weitere Informationen finden Sie im TMF688 Event Management API-Benutzerhandbuch. Datentyp: Zeichenfolge |
| externe ID | Eindeutiger externer Bezeichner für das Thema, z. B. eine GUID. Dieses Feld wird dem Feld topic_id im zugeordneten Themendatensatz zugeordnet. Datentyp: Zeichenfolge |
| headerQuery | Filter, der auf die Event-Header-Eigenschaften angewendet werden soll. Diese Abfrage definiert den Typ der Events, die für das zugeordnete Thema abgehört werden sollen. Sie können diesen Parameter als geschachtelte Abfrage übergeben. Dieser Parameter unterstützt die folgenden Bedingungen:
Beispiel: Dieses Feld wird dem Feld header_query im zugeordneten Themendatensatz zugeordnet. Weitere Informationen finden Sie im TMF688 Event Management API-Benutzerhandbuch. Datentyp: Zeichenfolge |
| Name | Der Name des Themas. Dieses Feld wird dem Feld topic_name im zugeordneten Themendatensatz zugeordnet. Datentyp: Zeichenfolge |
| namespace | Namespace für das Thema. Leer, wenn kein Namespace zugeordnet ist. Dieses Feld wird dem Namespace-Feld im zugeordneten Themendatensatz zugeordnet. 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. |
| Content-Type | Datenformat des Anforderungstexts. 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 HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 201 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 400 | Die übergebene externe ID des Themas ist bereits vorhanden. Übergeben Sie die eindeutige externe ID des Themas: Gibt an, dass die übergebene externe ID bereits in der Thementabelle vorhanden ist. Übergeben Sie die eindeutige Kombination aus Themenname, Headerabfrage, Inhaltsabfrage und Namespace : Gibt an, dass die Kombination aus Themenname, Namespace, Headerabfrage und Inhaltsabfrage bereits vorhanden ist. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| contentQuery | Wert des Felds content_query im erstellten Themendatensatz. Datentyp: Zeichenfolge |
| externe ID | Wert des Felds topic_id im erstellten Themendatensatz. Datentyp: Zeichenfolge |
| headerQuery | Wert des Felds header_query im erstellten Themendatensatz. Dieses Feld wird vom Themenauswahl-Framework verwendet, um zu bestimmen, welche Event-Nachrichten an ein Thema gesendet werden sollen. Datentyp: Zeichenfolge |
| id | Sys_id des erstellten Themendatensatzes. Datentyp: Zeichenfolge |
| Name | Der Name des Themas. Datentyp: Zeichenfolge |
| namespace | Wert des Namespace-Felds im erstellten Themendatensatz. Datentyp: Zeichenfolge |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie dieser Endpunkt aufgerufen wird.
curl "http://instance.servicenow.com/api/sn_api_notif_mgmt/topic" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
--data
{
"name": "HighPriorityTroubleTicket",
"headerQuery": "eventType=TroubleTicketStatusChangeEvent,TroubleTicketAttributeChangeEvent",
"contentQuery": "troubleTicket.ticketType=incident&troubleTicket.severity=1",
"externalId": "ext001",
"namespace": "telecomEvents"
}
Antwort:
{
"externalId": "ext001",
"name": "HighPriorityTroubleTicket",
"headerQuery": "eventType=TroubleTicketStatusChangeEvent,TroubleTicketAttributeChangeEvent",
"contentQuery": "troubleTicket.ticketType=incident&troubleTicket.severity=1",
"namespace": "telecomEvents",
"id": "7ee9850443c3f550461f99612bb8f223"
}