[Epic] Self-Service-API im Java & .NET SDK
Warum?
Voraussetzung für dieses Epic ist die Fertigstellung des Epic::Self-Service-API (Anlegen und Verwalten von Zustellpunkten über Self-Service-API)
Die Nutzung dieser API soll für Anbindende einfach über ein SDK ermöglicht werden - sowohl für JAVA als auch .NET.
Die Priorität ist hoch, da zu erwarten ist, dass, sobald die API draußen ist, die Firmen anfangen, mit entsprechend höherem Aufwand als notwendig wäre für Standard-Sprachen, die Anbindung selbst durchzuführen.
Relevante Links und Bemerkungen
- EPIC-Beschreibung Self-Service-API: #388 (closed)
- Issues von Epic::Self-Service-API: https://git.fitko.de/fit-connect/planning/-/boards/44?label_name[]=Epic%3A%3ASelf-Service-API
Akzeptanzkriterien und Anwendungsfälle
Übergreifende Akzeptanzkriterien:
-
Alle Endpunkte der API sind einfach über die SDKs nutzbar. Ermöglichung folgender Anwendungsfälle: -
Einfache Konfiguration für client-id und client-secret um sich den Token für alle folgende Use-Cases abzuholen -
Alle Zustellpunkte des Clients in eine Liste laden - https://docs.fitko.de/fit-connect/docs/apis/self-service-api#get-/v1/destinations -
Alle Details zu einem ausgewählten Zustellpunkt laden - https://docs.fitko.de/fit-connect/docs/apis/self-service-api#get-/v1/destinations/-destinationId- -
Neuen Zustellpunkt anlegen - inkl. JWK-Zuordnung - https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#post-/v1/destinations & https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#post-/v1/destinations/-destinationId-/keys -
Details zu einem existierenden Zustellpunkt laden (https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#get-/v1/destinations/-destinationId-) und dann partiell oder vollständig aktualisieren https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#put-/v1/destinations/-destinationId- & https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#patch-/v1/destinations/-destinationId- -
Löschen eines Zustellpunktes https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#delete-/v1/destinations/-destinationId- -
JWK hinzufügen und optional direkt als aktiven Verschlüsselungskey definieren (https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#post-/v1/destinations/-destinationId-/keys & https://docs.fitko.de/fit-connect/docs/apis/self-service-api?version=1.0.0#patch-/v1/destinations/-destinationId-)
-
-
Methodensignaturen sind über alle Programmiersprachen gleich -
Alle Funktionalitäten des SDKs sind in der Dokumentation integriert mit entsprechenden Code-Beispielen -
Video zur Nutzung des SDKs wurde bereitgestellt -
Kommunikationsmaßnahmen begleitend zur Veröffentlichung der Test- und Produktiv-nutzbaren Version wurden angestoßen
Zudem sollen die folgenden Akzeptanzkriterien in allen Stories dieses Epics eingehalten werden:
-
Alle Vorgaben aus den Vorgaben für kryptographische Verfahren werden eingehalten. -
Für die implementierten Funktionalitäten des SDK liegen Unit Tests vor. -
Es gibt einen Integrationstest, der das SDK verwendet. -> https://git.fitko.de/fit-connect/zustelldienst-api-tests/ -
Die Library ist thread-safe. -
Die Library kann auch hinter einem HTTP-Proxy genutzt werden. -
Es werden nach Möglichkeit keine neuen Libraries im Vergleich zu den Implementierungen im Zustelldienst eingebunden.
-> Eigentlich ein Thema für https://wiki.fit-connect.fitko.dev/de/PM_PUBLIC/DefinitionOf (Vielleicht sollten wir das mal in die Teamvereinbarung verschieben -- Marco)
Stories zu dem Epic (jeweils parallel für Java & .NET)
-
Methodensignaturen definieren -
Token holen, Liste und Details der Zustellpunkte abfragen (1 bis 3) -
Existierenden Zustellpunkt verändern (5) -
JWK Token hochladen und optional aktivieren (7) -
Neuen Zustellpunkt anlegen und löschen (4 & 6) -
Dokumentation des SDKs -
Videos zu den SDKs erstellen -
Veröffentlichung des SDKs -
Definition of Done wurde geprüft