Delete notification
DELETE/company/notifications/:id
Löscht eine Systembenachrichtigung dauerhaft. Diese Aktion ist unwiderruflich und gibt Speicherplatz in der Datenbank frei.
Ziel
Unternehmen die Verwaltung ihrer Benachrichtigungen ermöglichen, indem sie nicht mehr benötigte Einträge löschen können, was eine kontrollierte Bereinigung des Alert-Histors erlaubt.
Anwendungsfälle
- Bereinigung alter Benachrichtigungen: Löschen historischer, nicht relevanter Benachrichtigungen
- Einzellöschung: Wenn ein Benutzer eine bestimmte Benachrichtigung löschen möchte
- Speicherverwaltung: Reduzierung der Datenbankgröße durch Löschen unnötiger Einträge
- Löschung nach Aktion: Entfernen von Benachrichtigungen nach Abschluss der zugehörigen Aktion
Löschablauf
flowchart TD
A[DELETE /{id}] --> B{ID angegeben?}
B -->|Nein| C[Body prüfen]
B -->|Ja| D[Path-ID verwenden]
C -->|Gefunden| E[Body-ID verwenden]
C -->|Nicht gefunden| F[Query prüfen]
F -->|Gefunden| G[Query-ID verwenden]
F -->|Nicht gefunden| H[400 Bad Request]
D --> I{Benutzer authentifiziert?}
E --> I
G --> I
I -->|Nein| J[404 USER_NOT_FOUND]
I -->|Ja| K{Unternehmen existiert?}
K -->|Nein| L[401 CIA_NOT_FOUND]
K -->|Ja| M{Benachrichtigung existiert?}
M -->|Nein| N[404 NOTIFICATION_NOT_FOUND]
M -->|Ja| O[Benachrichtigung löschen]
O --> P[Dauerhafte Löschung]
P --> Q[Gelöschte Benachrichtigung zurückgeben - 200]
Flexibilität der Parameter
Die Benachrichtigungs-ID kann auf drei Arten übermittelt werden (in Prioritätsreihenfolge):
1
Request
Responses
- 200
- 401
- 404
Benachrichtigung erfolgreich gelöscht.
Die Antwort enthält die Benachrichtigung, so wie sie vor dem Löschen existierte. Diese Informationen können nützlich sein für:
- Bestätigung, was gelöscht wurde
- Lokales Aktualisieren der Benutzeroberfläche
- Protokollierung/Überwachung
Nicht autorisiert. Der Benutzer hat kein zugeordnetes Unternehmen.
CIA_NOT_FOUND:
- Dem authentifizierten Benutzer ist kein Unternehmen zugewiesen
- Das Unternehmen wurde deaktiviert oder gelöscht
Ressource nicht gefunden. Dies kann zwei Gründe haben:
USER_NOT_FOUND:
- Das Token enthält eine Benutzer-ID, die nicht existiert
NOTIFICATION_NOT_FOUND:
- Die angegebene ID entspricht keiner Benachrichtigung
- Die Benachrichtigung wurde bereits zuvor gelöscht