Spezifikation eines Statusmodells für eine Destination [M]
Als ein Inhaber einer Fachanwendung möchte ich die von dieser Fachanwendung verwendete Destination sperren.
Dafür ist der im Anhang aufgezeichnete Status-Flow vorgesehen:
- Eine Destination wird am Zustelldienst bekanntgemacht und erhält den Status created. (Sie kann vorbereitet werden und sollte erst bei fertig aufgesetzter Fachanwendung in den Status active wechseln)
- Scope: {{create_destination}}
- Die Destination wird per API-Call in den Status active versetzt und kann ab dann Anträge annehmen.
- Scope: {{manage:destination:}}
- Wenn die Destination in den Status inactive versetzt wird, können keine neuen Anträge mehr angelegt werden. Alle anderen Optionen bleiben möglich. Sie kann wieder in den Status active versetzt werden.
- Scope: {{manage:destination:}}
- Wenn eine Destination in den Status decommissioned versetzt wird, ist weder das Anlegen von Anträgen möglich(, noch ist es möglich, neue Antworten zu versenden). Status-Updates können allerdings noch gesetzt werde.
- Scope: {{manage:destination:}}
- Eine Destination wird durch den Zustelldienst automatisiert gelöscht wenn
- Die SETs aller ihr zugewiesenen Cases abgelaufen sind
In Dokumentation als Empfehlung:
Beim Löschen einer Destination sollte sobald sie einmal aktiviert wurde (2.) im Löschprozess für jede Stufe (3. & 4.) jeweils mindestens 30 Tage vorgesehen werden, sodass laufende Anträge abgeschlossen werden können.
Über die API sollte der Status einer Destination über das Enum-Feld {{status}} verfügbar sein.
Der Status der Destination kann über einen Endpunkt PATCH /destination/<uuid>
mit z.B. dem Feld status=decommissioned
aktualisiert werden.
Akzeptanzkriterien
- Die Destination hat ein Feld
status
mit dem möglichen Wertencreated
,active
,inactive
unddecommissioned
- Es gib eine neue, dokumentierte Fehlermeldung für den Fall, dass eine Submission für eine Destination ≠
active
angelegt werden soll - Es ist dokumentiert, welcher API-Call zum Ändern des Status einer Destination verwendet wird
- Die manuellen Statusübergänge sind nur mit dem Scope
manage:destination:{destinationId}
möglich - Unter Getting Started/Versenden/Zustellpunkt ermitteln ist dokumentiert, dass die Destination einen Status hat und dieser
active
sein muss.
Edited by Jonas Gröger