Erstellen Sie eine Datenstromaktion, um Anwender abzurufen

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 6 Minuten Lesedauer
  • Erstellen Sie eine Datenstromaktion, um eine Liste von Benutzerabonnements aus der SaaS-Anwendung abzurufen.

    Vorbereitungen

    Wenn Sie eine vorhandene ServiceNow® IntegrationHub -Spoke verwenden, prüfen Sie, ob sie über eine Datenstromaktion verfügt, um eine Liste von Benutzern abzurufen, die Sie verwenden können, anstatt eine zu erstellen.

    Weitere Informationen zu Datenstromaktionen finden Sie unter Datenstromaktionen.

    Erforderliche Rolle: flow_designer oder admin

    Prozedur

    1. Navigieren zu Alle > Flow Designer > Designer.
    2. Klicken Sie auf Neu, und wählen Sie Datenstromaus.
    3. Füllen Sie die Felder des Formulars aus.
      Tabelle : 1. Formular „Aktionseigenschaften“.
      Feld Wert
      Name Name Ihrer Wahl. Beispiel: Anwender abrufen.
      Zugänglich von Alle Anwendungsbereiche.
      Kategorie Lassen Sie dieses Feld leer.
      Schutz Keine.
      Anwendung Spoke-App zur Integration mit der SaaS-Anwendung. Diese Spoke-App kann eine vorhandene IntegrationHub -Spoke oder eine neu erstellte Spoke sein.
      In-Flow-Anmerkung Lassen Sie dieses Feld leer.
      Beschreibung Beschreibung Ihrer Wahl.
    4. Klicken Sie auf Absenden.
    5. Wenn die API, mit der Sie arbeiten, eine Anwenderauthentifizierung für Anforderungen erfordert, klicken Sie in der Aktionsgliederung auf Eingaben, und fügen Sie Eingaben für die Authentifizierung hinzu.
      Beispiele für allgemeine Eingaben zur Anwenderauthentifizierung sind Administratoranwender-ID und Site-Name. In der Dokumentation für die von Ihnen ausgewählte API erfahren Sie mehr über die Anforderungen für die Anwenderauthentifizierung in Ihrem speziellen Fall. Wenn die API ein Zugriffstoken erfordert, wird später automatisch eine Variable für den Anmeldeinformationswert erstellt. Sie müssen kein Zugriffstoken als Eingabe hinzufügen.

      Wenn Sie Ihre abgeschlossene Datenstromaktion in einem Subflow verwenden, definieren Sie, welche Werte als Eingaben übergeben werden sollen.

    6. Klicken Sie in der Aktionsgliederung auf Anforderung.
    7. Füllen Sie die Felder des Formulars aus.
      Tabelle : 2. Anforderungsformular
      Feld Wert
      So rufen Sie Daten ab Wählen Sie entweder REST-Schritt oder SOAP-Schritt aus. Ihre Auswahl hängt von der API für die SaaS-Anwendung ab, die Sie integrieren möchten.
      Paginierung aktivieren Ausgewählt.
      Vor jeder Anforderung ein Skript ausführen Nicht ausgewählt.
    8. Klicken Sie in der Aktionsgliederung auf den Schritt „Paginierungseinrichtung “.
    9. Definieren Sie Paginierungsvariablen basierend auf den von der SaaS-API verwendeten Abfrageparametern.

      Wenn Sie Offset-basierte Paginierung verwenden, verwenden Sie die Paginierungsvorlage „Limit/Offset“, um die Paginierungskonfiguration vorab zu laden.

      Hinweis:
      Der Wert der reservierten getNextPage- Variablen bestimmt, ob eine weitere Seite mit Ergebnissen angefordert werden soll. Solange die Variable getNextPage auf „ true“ festgelegt ist, sendet die Aktion weiterhin Anforderungen für die nächste Seite.
    10. Schreiben Sie ein Skript für Paginierungsvariablen, um die Paginierungsvariablen zu aktualisieren.

      Das Skript wird bei jeder Anforderung ausgeführt. Wenn Sie eine Paginierungsvorlage verwenden, passen Sie das vorab geladene Skript nach Bedarf an.

      Die folgende Abbildung zeigt ein abgeschlossenes Beispiel für den Setup-Schritt der Paginierung. Dieses Beispiel stammt aus der Datenstromaktion „Anwender abrufen“, die im Subflow Webex „ Abonnements herunterladen verwendet wird.

      Setup-Schritt für die Paginierung
      Hinweis:
      Paginierungsvariablen unterstützen nur den Datentyp Zeichenfolge. Zum Ausführen von mathematischen Operationen müssen Sie den Wert in eine ganze Zahl konvertieren, alle erforderlichen Vorgänge ausführen und sie dann wieder in eine Zeichenfolge konvertieren.
    11. Klicken Sie in der Aktionsgliederung auf SOAP-Schritt oder REST-Schritt, je nachdem, welche Option Sie für das Abrufen von Daten ausgewählt haben.
    12. Wenn Sie SOAP-Schrittausgewählt haben, füllen Sie das Formular wie gezeigt aus.
      Tabelle : 3. SOAP-Schrittformular
      Feld Wert
      Verbindungsdetails
      Verbindung Verbindungs-Alias verwenden.
      Verbindungsalias Verbindungsalias, den Sie beim Erstellen des Integrationsprofils erstellt haben. Wenn Sie noch kein Integrationsprofil erstellt haben, führen Sie die folgenden Schritte aus, um ein anwenderdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen.
      Endpunkt Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Sie wird auf die Verbindungs-URL aus dem HTTP(s)-Verbindungsdatensatz festgelegt, der mit dem Alias verknüpft ist.
      Details anfordern
      Umschlag erstellen Manuell.
      SOAP-Aktion API-Anforderung zum Abrufen einer Liste aller Anwender. Informationen zur Auswahl der entsprechenden Anforderung finden Sie in der Dokumentation zu der von Ihnen ausgewählten API.
      SOAP-Umschlag XML-Anforderungsnachricht zum Abrufen einer Liste aller Anwender. In der Dokumentation für die von Ihnen ausgewählte API erfahren Sie, wie Sie eine XML-Anforderungsnachricht schreiben. Im Allgemeinen sollte der Header Ihre Eingabevariablen für die Anwenderauthentifizierung sowie die Variable „Anmeldeinformationswert“ als Zugriffstoken enthalten. Der Textkörper sollte die Anforderung zum Abrufen einer Liste aller Anwender und Ihrer Variablen aus dem Setup-Schritt der Paginierung enthalten.
      Hinweis:
      Ein Beispiel für einen SOAP-Umschlag finden Sie unter der Datenstromaktion „Benutzer abrufen“, die im Subflow Webex „ Abonnements herunterladen verwendet wird.
    13. Wenn Sie REST-Schrittausgewählt haben, füllen Sie das Formular wie gezeigt aus.
      Tabelle : 4. REST-Schrittformular
      Feld Wert
      Verbindungsdetails
      Verbindung Verbindungs-Alias verwenden.
      Verbindungsalias Verbindungsalias, den Sie beim Erstellen des Integrationsprofils erstellt haben. Wenn Sie noch kein Integrationsprofil erstellt haben, führen Sie die folgenden Schritte aus, um ein anwenderdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen.
      Basis-URL Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Sie wird auf die Verbindungs-URL aus dem HTTP(s)-Verbindungsdatensatz festgelegt, der mit dem Alias verknüpft ist.
      Details anfordern
      Build-Anforderung Manuell.
      Ressourcenpfad Pfad zur Ressource. Dieser Wert wird an die Basis-URL angehängt. In der Dokumentation der API, mit der Sie arbeiten, erfahren Sie, wie Sie den Ressourcenpfad erstellen.
      HTTP-Methode ABRUFEN.
      Abfrageparameter Fügen Sie Parameter für die Paginierung hinzu. Legen Sie die Werte als die Variablen fest, die Sie im Setup-Schritt der Paginierung erstellt haben.

      Die folgende Abbildung zeigt ein abgeschlossenes Beispiel für den REST-Schritt. Dieses Beispiel stammt aus der Datenstromaktion Jira „ Anwender abrufen“, die im Subflow Jira „ Abonnements herunterladen verwendet wird.

      REST-Schritt
    14. Klicken Sie in der Aktionsgliederung auf Analyse.
    15. Füllen Sie die Felder des Formulars aus.
      Tabelle : 5. Analyseformular
      Feld Wert
      So werden eiWie werden Sie jeden Datensatz identifizieren? JSON/XML-Splitter
      So werden die einzelnen Elemente in einem Objekt analysiert Skriptparser
    16. Klicken Sie in der Aktionsgliederung auf den Schritt Splitter.
    17. Füllen Sie die Felder des Formulars aus.
      Tabelle : 6. Schritt „Splitter“
      Feld Wert
      Quellformat Wählen Sie je nach dem von der API-Antwort zurückgegebenen Format XML oder JSONaus.
      Elementpfad Absoluter Pfad zu einem Anwenderelement in der Antwortnachricht. Informationen zum Format der Antwortnachricht finden Sie in der Dokumentation der API, mit der Sie arbeiten.
      • Beispiel-XML-Elementpfad: /message/body/user
      • Beispiel für den JSON-Elementpfad: $.data.user
    18. Klicken Sie in der Aktionsgliederung auf Ausgaben.
    19. Klicken Sie auf Ausgabe erstellen und bearbeiten Sie die Variable wie in der Abbildung dargestellt.
      Tabelle : 7. Aktionsausgabe
      Bezeichnung Name Typ Obligatorisch
      targetObject targetObject Objekt Nein
    20. Fügen Sie untergeordnete Elemente für targetObject basierend auf den untergeordneten Anwenderelementen hinzu, die in der Antwortnachricht zurückgegeben werden.
      Eine XML-Antwort könnte beispielsweise so aussehen.
      <message>​
        <body>​
          <user>
            <userID>​12345</userID>​
            ​<email>​email@email.com</email>​
            <firstName>​Jane</firstName>​
            <lastName>​Doe</lastName>​
            <lastLoginTime>​08/13/2019 20:08:16</lastLoginTime>​
            <active>​TRUE</active>​
          </user>​
          <user>
            ...
          </user>
        </body>​
      </message>
      Fügen Sie für diese Antwort die untergeordneten Elemente wie gezeigt hinzu.
      Tabelle : 8. Untergeordnete Elemente für targetObject
      Bezeichnung Name Typ Obligatorisch
      userID userID Zeichenfolge Nein
      E-Mail E-Mail Zeichenfolge Nein
      firstName firstName Zeichenfolge Nein
      lastName lastName Zeichenfolge Nein
      letzteAnmeldezeit letzteAnmeldezeit Zeichenfolge Nein
      active active Wahr/Falsch Nein
    21. Klicken Sie in der Aktionsgliederung auf den Schritt Skript-Parser.
    22. Erstellen Sie für jedes Anwenderelement in der Antwort ein targetObject- Ausgabeobjekt, und ordnen Sie dann jedes untergeordnete Anwenderelement einem untergeordneten targetObject- Element zu.

      Das Parser-Skript wird für jedes Anwenderelement ausgeführt.

      Hinweis:
      Diese Beispiele zeigen die Arten von Elementen, die normalerweise in einer Antwort auf die Anforderung zum Abrufen von Anwendern enthalten sind. Kopieren Sie diese Skripts nicht direkt. Verwenden Sie Elementnamen aus der Dokumentation für die API, mit der Sie arbeiten.
      Beispielskript, das eine XML-Antwort analysiert.
      (function parse(inputs, outputs) {
          var xmlDoc = new XMLDocument(inputs.sourceItem, false);
          outputs.targetObject.userID = xmlDoc.getNodeText('/user/userID');
          outputs.targetObject.email = xmlDoc.getNodeText('/user/email');
          outputs.targetObject.firstName = xmlDoc.getNodeText('/user/firstName');
          outputs.targetObject.lastName = xmlDoc.getNodeText('/user/lastName');
          outputs.targetObject.lastLoginTime = xmlDoc.getNodeText('/user/lastLoginTime');
          outputs.targetObject.active = xmlDoc.getNodeText('/user/active');
      })(inputs, outputs)
      Beispielskript, das eine JSON-Antwort analysiert
      (function parse(inputs, outputs) {
          var record = JSON.parse(inputs.sourceItem);
          outputs.targetObject.userID = record.userID;
          outputs.targetObject.email = record.email;
          outputs.targetObject.firstName = record.firstName;
          outputs.targetObject.lastName = record.lastName;
          outputs.targetObject.lastLoginTime = record.lastLoginTime;
          outputs.targetObject.active = record.active;
      })(inputs, outputs)
    23. Um Ihre Datenstromaktion zu testen, klicken Sie auf Test.
      1. Zeigen Sie die Testergebnisse und Systemprotokolle an, um Details zu Fehlern zu erhalten.
        Um Systemprotokolle anzuzeigen, navigieren Sie zu Systemprotokolle > Systemprotokoll > Alle.
      2. Wenn bei der Datenstromaktion Fehler auftreten, vergewissern Sie sich, dass Sie die richtigen Endpunkte verwenden und dass die API-Anforderungen und -Antworten wie erwartet strukturiert sind.
    24. Nachdem Sie sich vergewissert haben, dass die Datenstromaktion wie erwartet funktioniert, klicken Sie auf Veröffentlichen.