API Notifications
Objectif
Exposer les notifications utilisateur et permettre la gestion de lecture/préférences en cible.
Périmètre
Notifications in-app, push, alertes mairie, favoris et événements métier.
Acteurs/applications consommatrices
- DMV public.
- Mairie.
- Backoffice support.
- Futures apps connectées.
Authentification requise
À confirmer. Une API notifications utilisateur doit être authentifiée.
Permissions/RBAC
- Un utilisateur ne consulte que ses notifications.
- Les alertes mairie restent limitées au périmètre communal autorisé.
- Les envois de masse doivent être réservés à des rôles précis.
Endpoints actuels visibles si confirmés
Aucun endpoint notifications dédié n’a été confirmé dans les routes inspectées.
Routes liées indirectement :
/api/v1/mairie/communes/{communeId}/alertes/api/v1/mairie/acteurs/{acteurId}/alertes
Endpoints cibles proposés si utile
| Méthode | Route proposée | Statut |
|---|---|---|
GET | /api/v1/notifications | Cible proposée. |
PATCH | /api/v1/notifications/{id}/read | Cible proposée. |
POST | /api/v1/notifications/read-all | Cible proposée. |
GET | /api/v1/notification-preferences | Cible proposée. |
PATCH | /api/v1/notification-preferences | Cible proposée. |
Exemple de requête
GET /api/v1/notifications?page=1
Authorization: Bearer <token>
X-App-Source: dmv
Exemple de réponse succès
{
"data": [
{
"id": "notification-id",
"type": "publication",
"read": false,
"created_at": "2026-05-10T10:00:00Z"
}
]
}
Exemple d’erreur
{
"error": "forbidden",
"message": "Cette notification n’appartient pas à l’utilisateur courant."
}
Pagination si applicable
Applicable à la liste notifications.
Rate limiting si applicable
Recommandé sur envois et endpoints de préférences.
Audit/logs si applicable
Obligatoire pour alertes mairie, envois massifs et notifications boostées.
Sécurité
- Ne pas exposer de données sensibles dans les notifications push.
- Calcul des destinataires côté Laravel.
- Respect des préférences et consentements.
État actuel vs cible
| Sujet | État actuel | Cible |
|---|---|---|
| Notifications utilisateur | Pas de route dédiée confirmée. | API in-app + préférences. |
| Alertes mairie | Routes visibles. | Intégration avec notifications contrôlée. |
Points à confirmer
- Provider push.
- Modèle préférences.
- Rétention notifications.
- Anti-spam.