Pular para o conteúdo principal

API Documents des Plaintes

Pièces jointes d'une plainte (justificatifs, photos, courriers). Toutes les routes demandent un utilisateur connecté et vérifient que la plainte est dans son périmètre (403 Cette plainte est hors de votre périmètre. sinon).

Endpoints​

MethodeEndpointDescription
GET/api/plaintes/{id}/documentsListe des documents
POST/api/plaintes/{id}/documentsAjouter un document
GET/api/plaintes/{id}/documents/{documentId}/downloadTelecharger
DELETE/api/plaintes/{id}/documents/{documentId}Supprimer

Liste des documents​

GET /api/plaintes/{id}/documents
{
"success": true,
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"nomOriginal": "recu_paiement.pdf",
"mimeType": "application/pdf",
"taille": 125678,
"tailleFormatee": "122.7 Ko",
"typeDocument": "justificatif",
"description": "Recu du paiement conteste",
"confidentiel": false,
"isImage": false,
"isPdf": true,
"uploadePar": { "id": "…", "nom": "Exemple", "prenom": "Agent" },
"createdAt": "2026-03-15T10:30:00+00:00"
}
]
}

Les documents confidentiels n'apparaissent que pour les superviseurs (ROLE_SUPERVISEUR) et les administrateurs.


Ajouter un document​

POST /api/plaintes/{id}/documents
Content-Type: multipart/form-data
ChampRequisDescription
fileOuiFichier, 10 Mo au plus
typeDocumentNonType libre, autre par défaut
descriptionNonDescription
confidentielNontrue pour restreindre l'accès aux superviseurs

Formats acceptés : PDF, JPEG, PNG, GIF, WebP, Word (.doc, .docx), Excel (.xls, .xlsx) et texte brut.

Réponse 201 Created : { "success": true, "message": "Document uploadé", "data": { … } }.

Erreurs 400 : Aucun fichier reçu, Le fichier ne doit pas dépasser 10 Mo, Type de fichier non autorisé. Formats acceptés: PDF, images, Word, Excel, texte.

curl -X POST "https://sig.example.com/api/plaintes/<id>/documents" \
-H "Authorization: Bearer TOKEN" \
-F "file=@recu.pdf" \
-F "typeDocument=justificatif" \
-F "confidentiel=false"

Telecharger un document​

GET /api/plaintes/{id}/documents/{documentId}/download

Renvoie le fichier binaire. Un document confidentiel demandé par un utilisateur qui n'est ni superviseur ni administrateur renvoie 403 Document confidentiel.


Supprimer un document​

DELETE /api/plaintes/{id}/documents/{documentId}

Seul l'auteur du téléversement ou un administrateur peut supprimer (403 Non autorisé sinon). Réponse : { "success": true, "message": "Document supprimé" }.


Codes d'erreur​

CodeDescription
400Fichier absent, trop volumineux ou de type refusé
401Non authentifie
403Plainte hors périmètre, document confidentiel ou suppression non autorisée
404Plainte, document ou fichier introuvable