[.NET SDK] SDK Anpassungen ZSD SSP Routing 2.X
Warum
Als SDK-Team möchten wir sicherstellen, dass wir weiterhin kompatibel mit den Schnittstellen der Teams Zustelldienst (ZSD), Routing und Self-Service Portal (SSP) bleiben. Mit dem geplanten Major Releasewechsel stehen einige signifikante Änderungen. Ohne Anpassungen auf SDK-Seite drohen Integrationsprobleme, inkonsistente Datenverarbeitung und fehlende Unterstützung neuer Features.
Ziel
Als Entwickler:in im SDK-Team möchte ich alle relevanten API-Änderungen aus dem Releasewechsel von ZSD Routing und SSP im SDK nachvollziehen, sodass Anwendungen, die das SDK nutzen, vollständig kompatibel mit den neuen Schnittstellen bleiben, deprecated Felder nicht mehr verwenden und neue Validierungslogiken korrekt abbilden. Soweit möglich / sinnvoll sollte angestrebt werden, in den SDKs möglichst wenige breaking changes einzubauen.
Links, Hinweise, Bemerkungen
- Stand Team ZSD: #3302
- Stand Team Routing:
relevante Stories
- Analyse und Kategorisierung aller Breaking Changes aus dem ZSD/SSP Release (https://git.fitko.de/fit-connect/planning/-/issues/3304, #tbdssp, #tbdrouting)
- ZSD https://git.fitko.de/fit-connect/planning/-/issues/3304:
- Umsetzung Änderung #3319 – Öffentlicher Zugriff /destinations/{id} + Entfernen polymorpher Payloads (SDK: wenn überhaupt keine Änderungen in den SDKs- Model bleibt gleich)
- Anpassung Metadatensatz #3320 – Vorbereitung Modularisierung, Deprecation veralteter Felder (SDK: kleine Änderungen, aber ggf. Breaking Change bei Änderung des Models)
- Webhooks #3323 (#573) – Entfernen deprecated Felder, optionales submissionIds
- Implementierung #310 – Status FORWARDED entfernen
- jwk.use entfernen (#3325)
- callback aus PUT/GET entfernen (#3326)
- Entfernen replyChannels (#3328)
- Umbenennung services/serviceType → publicService(Type) (#499) (SDK: kleine Änderungen, aber ggf. Breaking Change bei Änderung des Models)
Verpflichtend encryptedData validieren (#322)Optimierung Attachment Handling (#3331)
- Routing:
- Umstellung auf Routing 2.0 - https://git.fitko.de/fit-connect/planning/-/issues/3293#note_233649
- SSP:
- Keine SDK-relevante SSP Änderungen
Anmerkung: bei den durchgestrichene Stories bewertet Team SDK, dass hier keine Änderungen notwendig sind
Akzeptanzkriterien
-
Alle Änderungen aus dem ZSD-Release sind im SDK korrekt nachvollzogen -
Submissions ohne Fachdaten link - nicht relevant für JAVA, auch wenn Fachdaten als Anhang übermitteln werden wird ein leeres Bytearray übergeben
- @PEDRO_MARQUES wahrscheinlich gleich in .NET, aber bitte prüfen
-
Webhooks - auf submissions.submissionId zurückgreifen. link - Anpassung der Callback-Objekte notwendig
-
Das forward-submission-Event link - Über die SDKs kann der Nutzer das Event nicht setzen. Daher für uns keine Änderung notwendig. Aus der Liste der zulässigen Events müssen wir es rausnehmen, sobald v1 auch nicht mehr unterstützt wird.
-
Metadaten link - nach dem Update sollte der OD die Möglichkeit behalten abhängig vom Empfänger 1.X oder 2.X zu versenden. Für FV wahrscheinlich nicht notwendig
- Default sollte immer die neueste Version der Metadaten sein, jedoch müssen wir mit dem Update eine Konfiguration einbauen um mit einer spezifischen bzw. der letzten 1.X Version des Metadatenschemas versenden zu können. Ebenfalls gilt das für den Empfänger, falls ein OD nur 1.X Metadatenschemas versenden kann.
-
Basis-URLs und Pfade link -
Verbot der Verwendung des JWE "zip" Headers link - NIMBUS Update
-
Umbenennung von serviceType und services link - auch vereinheitlichen, falls bei uns diese Namen auch unterschiedlich benannt werden
-
replyChannels auf Wurzelebene link - eigentlich bei uns bereits umgesetzt, aber sollten wir noch abschließend prüfen
-
Status-Codes und Header link - speziell die Integrationstests könnten hier in Fehler laufen
-
Abruf von Destinations über die Submission-API link -
Das jwk.use-Feld link - speziell im Kontext der JS.SDKs müssen wir das genauer prüfen
-
Das callback-Feld link
-
-
Alle Änderungen aus dem SSP-Release sind im SDK korrekt nachvollzogen - keine SDK relevanten Änderungen
-
Alle Änderungen aus dem Routing-Release sind im SDK korrekt nachvollzogen -
Entfernung von destinationParameters aus der Routing-API link
-
-
Bereinigung von deprecated Feldern -> entfernen -
Breaking Changes der META-SDKs einbauen, bzw. Vorausdenken was noch umgebaut wird -
Review & Test aller Änderungen + API-Konformität im Integrationstest verifizieren -
Das SDK funktioniert in einer vollständigen E2E-Teststrecke gegen die neuen APIs -
Anpassung SDK-Dokumentation, Migrationsanleitung(auch die Migrationsanleitung von 1 auf 2 mit veröffentlichen), Releasevorbereitung -
... -
Definition of Done wurde überprüft.