Aller au contenu principal

API Photos

Les photos (agents communautaires, pièces d'identité recto/verso, soumissions « Code de conduite ») sont servies par l'API sous /api/photos/…. Une balise <img> n'envoie pas de jeton : ces routes sont donc ouvertes sans authentification, mais chaque lien porte une signature.

MéthodeEndpointContenu
GET/api/photos/{filename}Photo téléversée depuis le SIG
GET/api/photos/cw/{cwId}/{filename}Photo d'agent importée de Kobo ou Survey Solutions
GET/api/photos/code-conduite/{uuid}/{filename}Photo ou signature d'une soumission « Code de conduite »

Signature​

L'API ne renvoie jamais un chemin nu : les champs photoUrl, photoDocumentRectoUrl, photoDocumentVersoUrl, etc. contiennent une URL relative déjà signée.

/api/photos/cw/<cwId>/photo.jpg?_expiration=1767225600&_hash=…
  • _expiration : horodatage Unix de fin de validité, 12 heures après la lecture de la ressource.
  • _hash : signature calculée avec le secret du serveur sur le chemin et la requête.

Un lien deviné, modifié ou périmé renvoie 403 Lien de photo invalide ou expiré. Pour obtenir un lien neuf, il suffit de relire la ressource (détail de l'agent, liste…). Un fichier absent renvoie 404.

Réponse​

Le fichier est renvoyé tel quel avec son type MIME, Cache-Control: public, max-age=31536000 et X-Content-Type-Options: nosniff.

<img src="https://sig.example.com/api/photos/cw/<cwId>/photo.jpg?_expiration=…&_hash=…" alt="">