📘 Documentation API – Conditions Générales d'Utilisation du Portail Clients du CAM
1. Introduction
Bienvenue dans la documentation de l’API des Conditions Générales d'Utilisation du Portail Clients du CAM.
- Objectif : Fournir un contrat clair pour l'intégration de la fonctionnalité des Conditions Générales d'Utilisation (CGU).
- Audience : Développeurs front-end, partenaires techniques.
- Version :
v1
2. Informations Générales
- Base URL :
https://[URL_DE_BASE_DE_VOTRE_API]/ - Protocoles : HTTPS
- Format : JSON
- Authentification : Bearer Token (JWT)
3. Authentification
L'accès aux points de terminaison des CGU nécessite un jeton d'authentification valide. Le jeton doit être inclus dans l'en-tête Authorization de chaque requête.
Headers :
Authorization: Bearer <token>
4. Endpoints CGU
Cette section détaille les points de terminaison spécifiques à la gestion des CGU.
📄 Récupérer les dernières CGU
Récupère la version la plus récente des Conditions Générales d'Utilisation.
GET /api/app/cgu/latest
Headers :
Authorization: Bearer <token>
Réponse (200 OK) :
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"htmlContent": "<div><h1>Conditions Générales d'Utilisation</h1><p>Contenu HTML des CGU...</p></div>",
"version": "v2025.07.01"
}
❔ Vérifier l'acceptation des dernières CGU
Vérifie si l'utilisateur actuellement authentifié a accepté la dernière version des CGU.
GET /api/app/cgu/has-accepted-latest
Headers :
Authorization: Bearer <token>
Réponse (200 OK) :
{
"hasAcceptedLatest": true
}
✔️ Accepter les dernières CGU
Enregistre que l'utilisateur actuellement authentifié a lu et accepté la dernière version des CGU. Cette action est idempotente.
POST /api/app/cgu/accept-latest
Headers :
Authorization: Bearer <token>
Body :
Aucun contenu (body) n'est requis pour cette requête.
Réponse (200 OK) :
La requête retourne un statut 200 OK sans contenu en cas de succès.
5. Modèles de Données
CguDto
Représente l'objet de transfert de données pour une CGU.
{
"id": "Guid",
"htmlContent": "string",
"version": "string"
}
| Champ | Type | Description |
|---|---|---|
id | Guid | L'identifiant unique de la version des CGU. |
htmlContent | string | Le contenu des CGU au format HTML. |
version | string | La version des CGU, formatée en vAAAA.MM.JJ. |
CguHasAcceptedLatestDto
Représente le statut d'acceptation des CGU pour un utilisateur.
{
"hasAcceptedLatest": "boolean"
}
| Champ | Type | Description |
|---|---|---|
hasAcceptedLatest | boolean | true si l'utilisateur a accepté la dernière version, sinon false. |
6. Exemples d’Utilisation
- Récupérer la dernière CGU :
GET /cgus/latest
- Vérifier l’acceptation :
GET /cgus/has-accepted-latest
- Accepter la dernière CGU :
POST /cgus/accept-latest
7. Gestion des Erreurs
| Code HTTP | Signification | Détail |
|---|---|---|
| 401 | Non autorisé | Token invalide, manquant ou expiré. |
| 404 | Ressource non trouvée | Le point de terminaison n'existe pas. |
| 500 | Erreur serveur | Une erreur interne est survenue. |
8. Sécurité
- Toutes les requêtes doivent être en HTTPS
- Utilisation de tokens JWT
- CORS activé selon domaines autorisés
9. Changelog
v1.0.0 (2025-07-01)
- Création des endpoints CGU :
/cgus/latest,/cgus/has-accepted-latest,/cgus/accept-latest
10. Annexes
- 🔗 Swagger UI : https://[URL_DE_BASE_DE_VOTRE_API]/swagger/index.html
- 📦 Postman Collection : PortailClients API.postman_collection.json
- 📧 Contact support : // TODO