Passa al contenuto principale

Delete notification

DELETE 

/company/notifications/:id

Elimina permanentemente una notificazione di sistema. Questa azione è irreversibile e libera spazio nel database.

Obiettivo

Consentire alle aziende di gestire le proprie notifiche eliminando quelle che non necessitano di mantenere, permettendo una pulizia controllata dello storico degli avvisi.

Casi d'uso

  • Pulizia di notifiche obsolete: Eliminare notifiche storiche non rilevanti
  • Eliminazione individuale: Quando l'utente decide di cancellare una notifica specifica
  • Gestione dello storage: Ridurre la dimensione del database eliminando record non necessari
  • Eliminazione dopo azione: Cancellare notifiche dopo aver completato l'azione associata

Flusso di eliminazione

flowchart TD
A[DELETE /{id}] --> B{ID Fornito?}
B -->|No| C[Controlla Body]
B -->|Sì| D[Usa ID del Path]
C -->|Trovato| E[Usa ID del Body]
C -->|Non Trovato| F[Controlla Query]
F -->|Trovato| G[Usa ID della Query]
F -->|Non Trovato| H[400 Bad Request]
D --> I{Utente Autenticato?}
E --> I
G --> I
I -->|No| J[404 USER_NOT_FOUND]
I -->|Sì| K{Azienda Esiste?}
K -->|No| L[401 CIA_NOT_FOUND]
K -->|Sì| M{Notifica Esiste?}
M -->|No| N[404 NOTIFICATION_NOT_FOUND]
M -->|Sì| O[Elimina Notifica]
O --> P[Eliminazione Permanente]
P --> Q[Ritorna Notifica Eliminata - 200]

Flessibilità dei parametri

L'ID della notifica può essere inviato in tre modi (in ordine di priorità):

  1. Path parameter (consigliato): /company/notifications/{id}
  2. Query parameter: `/

Request

Responses

Notifica eliminata con successo.

La risposta contiene la notifica così come esisteva prima di essere eliminata. Questa informazione può essere utile per:

  • Confermare cosa è stato eliminato
  • Aggiornare l'interfaccia utente localmente
  • Logging/audit