Freshdesk Daily Export mit Power Automate Desktop

Freshdesk Alle Tickets Export via Power Automate (Desktop)

So importierst du alle Tickets aus Freshdesk täglich mit Power Automate (Desktop)

Der Ticket-Export in Freshdesk ist ein Legacy Report in den Augen der Entwickler und deshalb nicht immer so einfach aus dem Freshdesk-System herauszubekommen. Freshdesk hätte es lieber, wenn du ausschließlich mit den Metriken-Exporten oder ganz im eigenen Report-Interface arbeiten würdest. In dieser Anleitung zeige ich dir wie du täglich einen CSV Export der zuletzt bearbeiteten Tickets via Power Automate Desktop ziehst, um dann damit weiterzuarbeiten – z.B. in Excel oder Power Bi.

1 | Voraussetzungen: Report-Konfiguration und Power Automate Desktop App & Freshdesk API Key

Um diesem Tutorial folgen zu können, benötigst du drei Dinge: Einen konfigurierten Report in Freshdesk, den du jeden Tag „abholen“ kannst, einen Fresdesk API Key und die Power Automate Desktop App.

Täglicher Ticket Export

Einen täglichen Ticket Export kannst in deiner Freshdesk Instanz unter https://[tennant-name].freshdesk.com/a/analytics/data-exports/new konfigurieren. Wähle dazu Name, Rhythmus und zu exportierende Felder deines Export aus:

Freshdesk Alle Tickets Export Einstellung

Wichtig: Wähle im letzten Schritt die Bereitstellung via API (nicht E-Mail) aus und kopiere die URL heraus, die Freshdesk dir für den Export generiert hat.

Freshdesk API Key

Deinen Freshdesk API Key findest du unter Profileinstellungen (zu finden im Menü oben rechts hinter deinem Initial oder Profilbild). Der Button zum Aufruf deines API Keys ist fast nicht zu übersehen.

Kopiere dir auch diesen Key heraus.

Power Automate Desktop App

Die Power Automate Desktop kannst du problemlos über den Microsoft Store beziehen. Alternative kann Power Automate Desktop auch im Web heruntergeladen werden.

Power Automate Desktop Microsoft Store

2 | Baue deinen Desktop Flow

Öffne die Power Automate Desktop App und erstelle einen neuen Flow. Wähle zu Beginn am besten einen manuellen Trigger.

Authentifizierung

Die Authentifizierung an der Freshdesk API erfolgt via API Key, der aber im Base64Encoded bereitgestellt werden muss. Ich habe einen kompletten Artikel zu dem Thema Freshdesk API Key Base64 Encoding mit Bordmitteln und werde nur sagen, dass ich das Encoding quasi im Flow vornehme.

Freshdesk Power Automate Auth Header

Freshdesk API GET Request

Dadurch, dass wir die Report URL bereits von Freshdesk haben und den API Key selbst umgewandelt haben, bleibt eigentlich nicht viel im eigentlichen Request zu tun. So sieht die Konfiguration in Power Automate Desktop aus und es kann losgehen:

Freshdesk Power Automate HTTP GET Request

Parsing JSON Response für AWS-URL

Ist der Request erfolgreich, antwortet Freshdesk mit einem JSON-Dokument – das nicht alle Tickets im System beinhaltet. Stattdessen meldet die API nur zurück wo man die CSV-Datei inkl. Token von einem AWS-Server (Amazon Web Services) herunterladen kann.

Freshdesk Power Automate API Response

Um diese Antwort verarbeiten und nach der AWS-URL durchsuchen können, musst die Response erstmal als JSON „einfangen“. Dies geschieht mit dem Convert Json To Custom Object Baustein von Power Bi.

Freshdesk Power Automate Convert JSON to Custom Custom Object

Fetch Freshdesk Export CSV Datei

Durch die Vorarbeit aus dem letzten Schritt, kann ich die AWS-URL nun einfach mit dem Pfad im JSON Object extrahieren. In diesem Fall gebe ich der URL sogar eine eigene Variable.

Freshdesk Power Automate AWS URL Variable

Diese URL ist dann der Ausgangspunkt für den Download from Web Baustein. Der Download erfolgt ohne weitere Authentifizierung und es handelt sich um einen GET-Request. Ich speichere das Ganze auf meinem PC ab (ich habe den Pfad hier mit einer Variablen ersetzt) und Power Automate erstellt die .csv für mich. Done!

Freshdesk Power Automate Download from Web

Bitte beachten, dass beim Destination File Path auch die späterer Datei-Extension bereits eingetragen werden muss!

Einschub: Timestamps zur Systemzeit

Aufmerksame Leser haben es bemerkt: Ich füge mit %Timestamp% noch eine weitere Variable vor der Dateiendung an (weil ich den Export jetzt täglich erwarte!). Den Timestamp generiere vor dem Download. Dies geht in Power Automate sehr gut mit den beiden Komponenten:

  • Get current date & time (nach lokaler Zeitzone)
  • Convert datetime to text (Zielformat „Custom“ = „yyyy-MM-dd“)
Freshdesk Power Automate Timestamp

Der Desktop Flow in der Übersicht

So sieht der Flow in der finalen Version aus:

Das Resultat: Ein CSV-File mit dem Namen data_tickets-freshdesk_20230607.csv.

3 | Weiterverwendung und Reports

Damit kommt nun täglich auf Knopfdruck die neuesten Ticketänderungen von Freshdesk rein. Damit kannst du in Excel weiterarbeiten oder – internetzkidz.de empfiehlt – die Files in Power Bi zu kombinieren und deine Dashboards auf ein neues Level zu heben.

Ein spannender Trick ist das Speichern der CSV-Datei in einem lokal synchronisierten Ordner eines Sharepoints. So wird der File nach dem Download auch direkt in die Cloud hochgeschoben und kann dort von anderen Usern oder Online-Reports zur Aktualisierung genutzt werden.

DU BENÖTIGST HILFE MIT DEINER FRESHDESK REPORTING-INFRASTRUKTUR?

Dann schreib gerne einen Kommentar unter diesen Beitrag! Ich versuche Nachfragen – zeiteffizient zu beantworten. Wenn es einmal schnell gehen muss, dann empfiehlt internetzkidz.de eine Anfrage an THE BIG C Agency – eine Agentur, die auf die Entwicklung von Reporting-Infrastrukturen für Start-Ups und KMUs spezialisiert ist.

Christoph Kleine
Christoph Kleine

... Managing Director bei THE BIG C Agency & Gründer von internetzkidz.de. Neben Online-Marketing beschäftigt er sich mit Usability, Web-Analytics, Marketing-Controlling und Businessplanung. Xing, LinkedIn.

Artikel: 463

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.