Workflows bieten seit der Version 2013 von SharePoint die Möglichkeit APIs mit der Aktion “HTTP-Webdienst aufrufen” / “Call HTTP Web Service” anzusprechen und Informationen abzurufen. Die Einsatzmöglichkeiten sind vielfach, beispielsweise ist es möglich aktuelle Nachrichten abzurufen, Twitter einzubinden und die APIs zu veranlassen Aktionen durchzuführen.
In diesem Tutorial zeige ich euch, wie ein Workflow einen REST Call gegen SharePoint durchführt um die Anzahl der Items in einer Liste zu zählen.
Tutorial
- Erstelle im SharePoint Designer einen SharePoint 2013 Workflow. Ob Listen oder Seiten Workflow spielt für dieses Beispiel keine Rolle.
- Füge die Aktion “Wörterbuch erstellen” bzw. bzw. “Build Dictonary” hinzu.
- Klicke auf “dieses” und erstelle zwei Einträge: 1.: Name: Accept, Typ: String, Wert: application/json;odata=verbose und 2.: Name: Content-Type, Typ: String, Wert: application/json;odata=verbose wie nachfolgend mit 3.1 und 3.2 abgebildet.
- Im Anschluss muss auf “Variable: Wörterbuch” geklickt werden und die Variable wie folgt konfiguriert werden.
- Als nächstes wird die eigentliche Aktion “HTTP-Webdienst aufrufen” hinzugefügt. Als Url geben wir http://<page>/_api/web/Lists/GetbyTitle(‘<list tiltle>’)/items an. Wobei die Seite <page> und die Liste <list tiltle> entsprechend angepasst werden müssen.
- Konfiguriere in den Eigenschaften der Aktion bei “Request Header” die Variabel DJSONRequest und bei “ResponseContent” die Variabel, vom Typ Wörterbuch DJSONResult.
- Als nächstes fügen wir die Aktion “Ein Element aus einem Wörterbuch aufrufen” bzw. “Get an Item from a dictonary” hinzu. Hier wählen wir “Element nach Name oder Pfad” aus und gebe “d/results” an. Konfiguriere im Anschluss die Variabel DJSONResult (from) und erstelle eine neue Variabel vom Typ Wörterbuch (hier Dresults).
- Füge jetzt die Aktion “Elemente in einem Wörterbuch zählen” bzw. “Count Items in a dictonary” aus, klicke auf “Wörterbuch” und gebe die Variabel DResults an.
- Füge als letzte Aktion “Nachricht in der Workflowverlaufsliste protokollieren” bzw. “Log to history list” hinzu und konfiguriere die Variabel wir folgt.
- Speichere und publiziere den Workflow.