Erstellen Sie eine Datenstromaktion, um Benutzer abzurufen

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

    Vorbereitungen

    Wenn Sie eine vorhandene Spoke ServiceNow® IntegrationHub 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 dann Datenstromaus.
    3. Füllen Sie die Felder des Formulars aus.
      Tabelle : 1. Formular „Aktionseigenschaften“
      Feld Wert
      Name Name Ihrer Wahl. Beispiel: Benutzer abrufen.
      Zugänglich von Alle Anwendungsbereiche.
      Kategorie Lassen Sie dieses Feld leer.
      Schutz Keine.
      Anwendung Spoke-App zur Integration in die SaaS-Anwendung. Diese Spoke-App kann eine vorhandene IntegrationHub -Spoke oder eine neue, von Ihnen 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 Benutzerauthentifizierung 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 für die Benutzerauthentifizierung sind die Administrator-Benutzer-ID und der Site-Name. In der Dokumentation für die von Ihnen gewählte API erfahren Sie mehr über die Anforderungen für die Benutzerauthentifizierung in Ihrem speziellen Fall. Wenn die API ein Zugriffstoken erfordert, wird später automatisch eine Variable „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 diese 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.
      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 die offsetbasierte Paginierung verwenden, verwenden Sie die Paginierungsvorlage „Limit/Offset“ (Limit/Offset), um die Paginierungskonfiguration vorab zu laden.

      Hinweis:
      Der Wert der reservierten getNextPage- Variablen bestimmt, ob eine weitere Ergebnisseite angefordert werden soll. Solange die Variable getNextPageauf truegesetzt ist, sendet die Aktion weiterhin Anforderungen für die nächste Seite.
    10. Schreiben Sie ein Paginierungsvariablenskript, um die Paginierungsvariablen zu aktualisieren.

      Das Skript wird für jede Anforderung ausgeführt. Wenn Sie eine Paginierungsvorlage verwenden, passen Sie das vorinstallierte Skript nach Bedarf an.

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

      Setup-Schritt für 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 zum 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 Schritte aus, um ein benutzerdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen.
      Endpunkt Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Er 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 Benutzer. Informationen zur Auswahl der entsprechenden Anforderung finden Sie in der Dokumentation für die von Ihnen gewählte API.
      SOAP-Umschlag XML-Anforderungsnachricht zum Abrufen einer Liste aller Benutzer. In der Dokumentation für die von Ihnen gewählte API erfahren Sie, wie Sie eine XML-Anforderungsnachricht schreiben. Im Allgemeinen sollte der Header Ihre Eingabevariablen für die Benutzerauthentifizierung sowie die Variable Credential Value (Anmeldeinformationswert) als Zugriffstoken enthalten. Der Text sollte die Anforderung enthalten, eine Liste aller Benutzer und Ihrer Variablen aus dem Setup-Schritt der Paginierung abzurufen.
      Hinweis:
      Ein Beispiel für einen SOAP-Umschlag finden Sie in 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 Schritte aus, um ein benutzerdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen.
      Basis-URL Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Er 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 für die API, mit der Sie arbeiten, erfahren Sie, wie Sie den Ressourcenpfad erstellen.
      HTTP-Methode GET.
      Abfrageparameter Fügen Sie Parameter für die Paginierung hinzu. Legen Sie die Werte als Variablen fest, die Sie im Setup-Schritt für die Paginierung erstellt haben.

      Die folgende Abbildung zeigt ein abgeschlossenes Beispiel des REST-Schritts. Dieses Beispiel stammt aus der Datenstromaktion Jira Benutzer abrufen, die im Subflow Jira Abonnements herunterladen verwendet wird.

      REST-Schritt
    14. Klicken Sie in der Aktionsgliederung auf Analysieren.
    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 Splitter-Schritt.
    17. Füllen Sie die Felder des Formulars aus.
      Tabelle : 6. Schritt „Splitter“
      Feld Wert
      Quellformat Wählen Sie XML oder JSONaus, abhängig vom von der API-Antwort zurückgegebenen Format.
      Elementpfad Absoluter Pfad zu einem Benutzerelement in der Antwortnachricht. Informationen zum Format der Antwortnachricht finden Sie in der Dokumentation für die API, mit der Sie arbeiten.
      • Beispiel für XML-Elementpfad: /message/body/user
      • Beispiel für JSON-Elementpfad: $.data.user
    18. Klicken Sie in der Aktionsgliederung auf Ausgaben.
    19. Klicken Sie auf Ausgabe erstellen, und bearbeiten Sie die Variable wie gezeigt.
      Tabelle : 7. Aktionsausgabe
      Bezeichnung Name Typ Obligatorisch
      targetObject targetObject Objekt Nein
    20. Fügen Sie untergeordnete Elemente für targetObject basierend auf den in der Antwortnachricht zurückgegebenen untergeordneten Elementen des Benutzers hinzu.
      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
      letzteAnmeldungszeit letzteAnmeldungszeit Zeichenfolge Nein
      active active Wahr/Falsch Nein
    21. Klicken Sie in der Aktionsgliederung auf den Schritt Skriptparser.
    22. Erstellen Sie ein targetObject- Ausgabeobjekt für jedes Benutzerelement in der Antwort, und ordnen Sie dann jedes untergeordnete Benutzerelement einem untergeordneten targetObject- Element zu.

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

      Hinweis:
      Diese Beispiele zeigen die Arten von Elementen, die im Allgemeinen in einer Antwort auf eine Anforderung zum Abrufen von Benutzern 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 Ihre Datenstromaktion Fehler aufweist, stellen Sie sicher, dass Sie die richtigen Endpunkte verwenden und 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.