Skip to main content

📘 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"
}
ChampTypeDescription
idGuidL'identifiant unique de la version des CGU.
htmlContentstringLe contenu des CGU au format HTML.
versionstringLa version des CGU, formatée en vAAAA.MM.JJ.

CguHasAcceptedLatestDto

Représente le statut d'acceptation des CGU pour un utilisateur.

{
"hasAcceptedLatest": "boolean"
}
ChampTypeDescription
hasAcceptedLatestbooleantrue 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 HTTPSignificationDétail
401Non autoriséToken invalide, manquant ou expiré.
404Ressource non trouvéeLe point de terminaison n'existe pas.
500Erreur serveurUne 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