Erstellen eines Workflows, der eine externe API aufruft - Data360_Govern - Neuheiten

Data360 Govern – Hilfe

Product type
Software
Portfolio
Verify
Product family
Data360
Product
Data360 Govern
Version
Neuheiten
Language
Deutsch
Product name
Data360 Govern
Title
Data360 Govern – Hilfe
Copyright
2024
First publish date
2014
Last updated
2024-11-21
Published on
2024-11-21T15:38:13.793132

Sie können die Workflow-Aktivität HTTP-Anforderung verwenden, um eine Anforderung an ein externes System zu senden, wenn eine bestimmte Aktion in Data360 Govern auftritt.

Im folgenden Beispiel wird beschrieben, wie ein Workflow erstellt wird, der eine Verbindung zur Jira-API herstellt, um ein neues Jira-Ticket zu erstellen, wenn ein Benutzer ein Datenqualitätsproblem in Data360 Govern meldet:

Schritt Beschreibung
Schritt 1 - Erstellen des Workflows

Verwenden Sie den Workflow-Editor, um Ihren Workflow zu erstellen.

Schritt 2 – Konfigurieren der Aktivität für eine HTTP-Anforderung

Konfigurieren Sie die Aktivität für die HTTP-Anforderung, um eine POST-Anforderung an Jira zu senden und ein neues Ticket zu erstellen.

Schritt 3 - Konfigurieren der bedingten Übergänge

Verwenden Sie bedingte Übergänge, um festzulegen, welche E-Mail (Fehler oder Erfolg) an den Initiator des Workflows gesendet wird.

Schritt 4 - Konfigurieren der Aktivitäten für die E-Mail-Benachrichtigung

Konfigurieren Sie den Workflow so, dass eine E-Mail gesendet wird, die den Initiator über das Ergebnis der HTTP-Anforderung informiert.

Schritt 5 - Eine HTTP-Antwortaufgabe hinzufügen Fügen Sie dem Workflow optional eine HTTP-Antwort-Aufgabe hinzu, um nachfolgende Schritte zum Extrahieren von JSON-basierten Eigenschaften aus der API zu ermöglichen.

Schritt 1 - Erstellen des Workflows

In diesem Beispiel wird angenommen, dass Sie bereits einen Aktionstyp erstellt haben, auf dem der Workflow basieren soll. Weitere Informationen zu Aktionstypen finden Sie unter Definieren von Aktionstypen.

  1. Navigieren Sie zu Konfiguration > Workflows.
  2. Klicken Sie im Bereich Workflow-Typen auf die Schaltfläche Hinzufügen, um einen neuen Workflow zu erstellen.
  3. Geben Sie einen Namen für den Workflow ein, z. B. "Jira-Ticket erstellen".
  4. Wählen Sie in der Liste Typ ändern den Eintrag Element hinzugefügt aus.
  5. Wählen Sie in der Liste Objekttyp Ihren Datenqualität-Aktionstyp aus, z. B. Aktionstyp :: Datenqualitätsproblem melden.
  6. Klicken Sie auf Weiter.
  7. Erstellen Sie den Workflow, indem Sie die erforderlichen Aktivitäten von der linken Seite des Bildschirms in den Workflow-Bearbeitungsbereich ziehen. Beispiel:

    Workflow für eine HTTP-Anforderung

Tipp: Weitere Informationen zum Erstellen eines Workflows, der ausgelöst wird, wenn ein Benutzer ein Problem meldet, finden Sie unter Erstellen eines Aktionstyp-Workflows.

Schritt 2 – Konfigurieren der Aktivität für eine HTTP-Anforderung

Konfigurieren Sie die Aktivität für die HTTP-Anforderung, um eine POST-Anforderung an Jira zu senden und ein neues Ticket zu erstellen.

Die genauen Einstellungen, die zum Konfigurieren der Aktivität für die HTTP-Anforderung erforderlich sind, variieren je nach externer API, mit der Sie eine Verbindung herstellen. Das folgende Beispiel zeigt, wie Sie diese Workflow-Aktivität zur Verbindung mit der Jira-API konfigurieren.

  1. Wählen Sie die Aktivität HTTP-Anforderung im Workflow aus, den Sie im vorherigen Schritt erstellt haben.
  2. Fügen Sie die folgenden Header für die Anforderung hinzu:
    Schlüssel Wert
    Autorisierung Basic <base64-codierte E-Mail-Adresse:API-Schlüssel>
    Inhaltstyp application/json

    Sie können auch ein Workflow-Token im Feld Wert des Headers verwenden. Diese können jedoch nicht im Feld Schlüssel verwendet werden. Es gibt zwei Möglichkeiten, ein Token einzufügen:

    • Sie geben es manuell ein, oder:
    • Sie kopieren es von einem anderen Ort und fügen es in das Feld Wert ein.

    Wenn der Workflow ausgeführt wird, werden die Token durch ihren Wert ersetzt.

    So erstellen Sie einen Autorisierungsheader: Kombinieren Sie die E-Mail-Adresse, mit der Sie eine Verbindung zu Jira herstellen, mit Ihrem Jira-API-Schlüssel. Verwenden Sie dazu das Format <email_address>:<API_key>. Verschlüsseln Sie anschließend diesen Wert mit base64. Fügen Sie diesen base64-verschlüsselten Wert der Autorisierungsheader-Spalte hinzu, wobei Sie das Wort Basic voranstellen, beispielsweise so:

    Basic FG5vYmxlQGluZm7mbXguY30uOmD5S3QoEjAnejKLUYpWZ2Y1enlvPLMxOQ==

    Informationen darüber, wie Sie Ihren Jira-API-Schlüssel erhalten, finden Sie in der Jira-Dokumentation, beispielsweise unter https://confluence.atlassian.com/cloud/api-tokens-938839638.html

    Anmerkung: Wenn Sie einen der folgenden Content-Header verwenden, müssen Sie auch einen Wert im Feld Text angeben: "Content-Type", "Content-MD5", "Content-Encoding" und "Content-Length". Wenn Sie einen dieser Header ohne einen Text-Wert verwenden, ist der Workflow-Schritt für die HTTP-Anforderung nicht abgeschlossen.
  3. Wählen Sie die Methode aus. Wählen Sie aus: GET, POST, PUT oder DELETE. Wählen Sie in diesem Fall POST aus.
  4. Geben Sie die URL des externen API-Endpunkts ein. Beispiel: https://example.atlassian.net/rest/api/2/issue
    Tipp: Sie können Token vom Typ Feldwert anfügen in der URL verwenden, indem Sie den Tokenwert aus dem Feld Text kopieren und dort einfügen. Beispiele für Token finden Sie unter Konfigurieren von E-Mail-Benachrichtigungen.
  5. Geben Sie den Text für die Anforderung ein. Zum Erstellen eines neuen Tickets in Jira können Sie beispielsweise JSON verwenden, um auf den Projektschlüssel und die Felder von Jira zu verweisen:
    {   "fields": {       "project":       {         "key": "TEST"       },       "summary": "Data quality issue",       "description": "A data quality issue has been raised in Data360 Govern.",       "issuetype": {         "name": "Bug"       }   } }

    Dadurch wird ein neuer Jira-Fehler im Projekt "TEST" erstellt, mit einer Zusammenfassung und Beschreibung, die den im Anforderungstext enthaltenen Informationen entsprechen:

  6. Setzen Sie den erforderlichen Zeitraum für Zeitüberschreitung bei Anforderung auf maximal 600 Sekunden. Der Standardwert beträgt 90 Sekunden.

Weitere Informationen zur Implementierung dieses Beispiels finden Sie in der Jira-Dokumentation, z. B. unter https://developer.atlassian.com/server/jira/platform/jira-rest-api-examples/

Schritt 3 - Konfigurieren der bedingten Übergänge

Verwenden Sie bedingte Übergänge, um festzulegen, welche E-Mail (Fehler oder Erfolg) an den Initiator des Workflows gesendet wird.

Tipp: Wenn Sie noch nicht mit der Konfiguration von Workflow-Übergängen vertraut sind, lesen Sie nach unter Übergänge.
  1. Fügen Sie dem Übergang, der zu einer E-Mail-Benachrichtigung im Erfolgsfall führt, die folgende Bedingung hinzu:
    Feld Operator Wert
    HTTP-Anforderung :: Statuscode < 299

    Damit wird festgelegt, dass eine E-Mail gesendet wird, die mitteilt, dass die HTTP-Anforderung erfolgreich war, wenn der HTTP-Antwortstatuscode unter 299 liegt.

  2. Fügen Sie dem Übergang, der zu einer E-Mail-Benachrichtigung im Fehlerfall führt, die folgende Bedingung hinzu:
    Feld Operator Wert
    HTTP-Anforderung :: Statuscode > 299

    Damit wird festgelegt, dass eine E-Mail gesendet wird, die mitteilt, dass die HTTP-Anforderung fehlgeschlagen ist, wenn der HTTP-Antwortstatuscode über 299 liegt.

Schritt 4 - Konfigurieren der Aktivitäten für die E-Mail-Benachrichtigung

  1. Wählen Sie die Aktivität E-Mail-Benachrichtigung für den Erfolgsfall aus, und geben Sie einen Namen ein, z. B. „POST-Anforderung erfolgreich“.
  2. Wählen Sie im Feld Empfängertyp den Eintrag Initiator aus.
  3. Geben Sie einen Betreff und einen Text für die E-Mail ein. Der Text kann beispielsweise wie folgt aussehen:

    Es wurde ein neues Jira-Ticket erstellt, um ein Datenqualitätsproblem nachzuverfolgen. Der HTTP-Antwortstatuscode lautet: [HTTPREQUEST|365|statusCode] Der Antworttext lautet: [HTTPREQUEST|365|responseBody]

    In diesem Beispiel werden die Token HTTP-Anforderung :: Statuscode und HTTP-Anforderung :: Antworttext verwendet, die in der E-Mail, die an den Initiator gesendet wird, durch die API-Antwortwerte ersetzt werden.

    Workflow für die HTTP-Antwort per E-Mail

    In der E-Mail enthält der Antworttext die Ticketnummer des neuen Fehlers, die in Jira angelegt wurde.

  4. Wählen Sie die Aktivität E-Mail-Benachrichtigung für den Fehlerfall aus, und geben Sie einen Namen ein, z. B. „POST-Anforderung fehlgeschlagen“.
  5. Wählen Sie im Feld Empfängertyp den Eintrag Initiator aus.
  6. Geben Sie einen Betreff und einen Text für die E-Mail ein. Der Text kann beispielsweise wie folgt aussehen:

    Es ist ein Fehler aufgetreten, der verhindert, dass ein neues Jira-Ticket erstellt wird. Der HTTP-Antwortstatuscode lautet: [HTTPREQUEST|365|statusCode] Der Antworttext lautet: [HTTPREQUEST|365|responseBody]

    In diesem Beispiel werden die Token HTTP-Anforderung :: Statuscode und HTTP-Anforderung :: Antworttext verwendet, die in der E-Mail, die an den Initiator gesendet wird, durch die API-Antwortwerte ersetzt werden.

    Workflow für die HTTP-Antwort per E-Mail

    Die E-Mail enthält Details zu dem Fehler im Antworttext und den Antwortstatuscode, sodass Sie eine Fehlersuche durchführen können.

Anmerkung: Die gesamte Antwort wird in dem Format angezeigt, in dem sie von der API zurückgegeben wird, z. B. JSON oder XML.
Tipp: Wenn Sie Ihre HTTP-Anforderungsaktivität umbenannt haben, zeigen die Token HTTP-Anforderung :: Statuscode und HTTP-Anforderung :: Antworttext den Namen an. Dies ist nützlich, wenn Sie einen Workflow mit mehreren HTTP-Anforderungsaktivitäten haben. Dies gilt auch für HTTP-Antwortaktivitäten.

Schritt 5 - Eine HTTP-Antwortaufgabe hinzufügen

Einem Workflow für eine HTTP-Anforderung kann eine HTTP-Antwortaufgabe hinzugefügt werden, um nachfolgende Schritte zum Extrahieren von JSON-basierten Eigenschaften aus der relevanten API zu ermöglichen.

  1. Erstellen Sie eine neue Workflow-Aufgabe für die HTTP-Antwort.

  2. Wählen Sie auf der Registerkarte Bearbeiten im Editor-Bereich „HTTP-Antwort“ die entsprechende vorgelagerte HTTP-Anforderungsaufgabe aus, um eine Verbindung zur Eingabe herzustellen.

  3. Klicken Sie unter Ausgaben auf die Schaltfläche Hinzufügen (+), um die Ausgabekonfigurationsfelder anzuzeigen, und geben Sie Folgendes ein:

    1. Einen aussagekräftigen Namen Ihrer Wahl. Zum Beispiel „Jira-Schlüssel“.
    2. Den korrekten und gültigen JSON-Pfad.
    Anmerkung: Wenn der Pfad ungültig ist oder die Antwort die Eigenschaft nicht enthält, auf die der Pfad abzielt (z. B. wenn die Anforderung fehlschlägt), ist der Wert eine leerer String.

    Wenn der JSON-Pfad beispielsweise auf „key“ gesetzt ist, könnte die Antwort der API wie folgt aussehen:

    {

    "id":"1234",

    "key":"GOV-16569",

    "self":"http://localhost:8080/rest/api/2/issue/1234"

    }

Anmerkung: Es können beliebig viele Ausgaben hinzugefügt werden, es ist jedoch mindestens eine Ausgabe erforderlich.

Nun können die Antwortausgabewerte in anderen Schritten im Workflow verwendet werden. Zum Beispiel in E-Mail-Token oder in einem Feldänderungsschritt.

Tipp: Klicken Sie auf den Namen des Workflows in Workflow > Workflow-Elemente, um die darin enthaltenen Schritte anzuzeigen, gefolgt von „HTTP-Antwort“ im Bereich Schritte, um die Ausgabenamen, Pfade und Werte anzuzeigen.