REST-API

Zweck der API

Häufig soll FLOWWER in die bestehende Infrastruktur integriert werden. Um das oder andere Drittsoftware effizient an FLOWWER anbinden zu können, haben wir dem Systeme eine REST-API (Programmierschnittstelle) hinzugefügt.
Auf diese Weise kann Software ohne die grafische Benutzeroberfläche nutzen zu müssen, direkt mit dem FLOWWER-System Daten austauschen. Das ist besonders nützlich, wenn eine Datenschnittstelle zur Anbindung an eine kundenspezifische Softwarelösung entwickelt werden soll. Auch für automatische Aufgaben (z.B. den regelmäßigen Upload oder Download von Dokumenten / Belegen) ist die FLOWWER REST-API sehr nützlich.

API-Format

Die FLOWWER-API folgt der OpenAPI-Specification - einem Standard zur Beschreibung REST-konformer Programmierschnittstellen. Damit wird die Nutzung API-Tools wie z.B. Postman oder verschiedener Client-Generatoren möglich.

Beschreibung der API

Jedes FLOWWER-Konto verfügt über eine eigene REST-API. Zur einfacheren Orientierung steht 'Swagger UI' jedem FLOWWER-Konto unter folgendem URI zur Verfügung:

https://Ihre-FLOWWER-Kontokennung.flowwer.de/swagger

Das optionale Marktplatz-Feature „REST-API“ (früher „alternativer Download“) ermöglicht es, freigegebene Dokumente an weitere Ziele (zusätzlich zu DATEV Unternehmen Online) zu übertragen.
Der Upload von Daten in das FLOWWER-System ist auch ohne Aktivierung des Features möglich.

Authentifizierung / Sicherheit

Die Authentifizierung findet über ein Token ("X-FLOWWER-ApiKey") im HTTP-Header des REST-Calls statt.

Ein Token können Sie über ein Dienstkonto für API-Zugriffe (bevorzugte Methode) erstellen.

Arbeiten mit Schnittstellen-Clients

Die nachfolgende Erklärung ist für fortgeschrittene Benutzer / Entwickler gedacht.
Einfache Aktionen können entweder mit FLOWWER.exe (alternativ FLOWWER-PWSH) oder einem eigenen Python/PowerShell-Script erledigt werden.

Unter Zuhilfenahme des Drittanbieterprogramms 'OpenAPI-Generator' kann aus der OpenAPI-Spezifikation von FLOWWER ein passender Schnittstellen-Client erstellt werden.

Erstellung über die Kommandozeile

Die folgenden Schritte sind unter Verwendung von PowerShell beschrieben und lediglich als gedanklicher Einstieg in die Thematik zu verstehen. Die Ort zu passenden java.exe wird als Bestandteil der PATH-Umgebungsvariable vorausgesetzt.

Download des OpenAPI Generators (derzeit (2021-06-28) aktuelle Version ist 5.1.1):
PS > Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.1.1/openapi-generator-cli-5.1.1.jar

Erzeugen eines FLOWWER-ApiClients unter Verwendung des csharp-netcore Generators (-g csharp-netcore) mit Einschränkung auf die Download-API (--global-property apis=Download).
PS C:\temp> java -jar .\openapi-generator-cli.jar generate -g csharp-netcore -i https://200001.flowwer.de/swagger/v1/swagger.json -o FLOWWER-API --global-property apis=Download

Erstellung mit dem Online-Generator

Zum aktuellen Zeitpunkt (2021-06-14) beherrscht der online Swagger Editor leider nicht die Erstellung von 'csharp-netcore'-Clients.

Den Swagger Online-Generator finden Sie unter folgendem URI: Swagger Editor (online)

Schlagworte: ,

Nächster Artikel

Benutzerrechte