Conformité API
Confidentialité et conformité
Exporter des données personnelles, créer des demandes de personnes concernées et gérer l'état du consentement
Ces routes renvoient au centre de confidentialité destiné aux utilisateurs. Ils sont limités à l'utilisateur authentifié et exclure intentionnellement la surface de conformité de l'administrateur.
JWT ou clé utilisateur APIAccès et exportation de style RGPDÉtat de consentementVersion des politiques
Source
- Contrôleur :
backend-nestjs/src/compliance/compliance.controller.ts - DTO :
backend-nestjs/src/compliance/dto/compliance.dto.ts
Authentification et autorisations
- Tous les itinéraires sur cette page nécessitent une authentification.
- Chaque itinéraire est limité à l'utilisateur authentifié.
- Les routes de conformité administrative sous
/api/admin/compliance/*sont explicitement hors de portée de cette référence.
Référence du point de terminaison
| Méthode | Chemin | Objectif | Demande ou requête | Authentification | Source |
|---|---|---|---|---|---|
GET | /api/compliance/me/privacy/access | Générez le rapport d’accès à la confidentialité. | Aucun | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
GET | /api/compliance/me/privacy/export | Exportez les données personnelles de l'utilisateur. | Aucun | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
POST | /api/compliance/me/privacy/requests | Créez une demande de personne concernée. | Corps : requestType,reason,confirmEmail | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
GET | /api/compliance/me/privacy/requests | Répertoriez les demandes des personnes concernées par les données de l'utilisateur. | Requête : statuses,requestTypes,search,offset,limit | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
GET | /api/compliance/me/privacy/consents | Énumérez les décisions de consentement actuelles. | Aucun | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
PUT | /api/compliance/me/privacy/consents/:consentType | Renverser une décision de consentement. | Chemin : consentType, corps : decision,policyVersion,source,metadata | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
POST | /api/compliance/me/privacy/policy-acceptance | Acceptez une version de politique de confidentialité. | Corps : version | Clé JWT ou utilisateur API | compliance/compliance.controller.ts |
Demander des formes
Demandes des personnes concernées
CreateDataSubjectRequestDto
requestType: énumération requiseaccess|export|deletereason: chaîne facultative, maximum 1 000 caractèresconfirmEmail: chaîne facultative, en minuscules, maximum 254 caractères
DataSubjectRequestQueryDto
statuses: tableau de chaînes facultatif, valeurs séparées par des virgules prises en chargerequestTypes: tableau de chaînes facultatif, valeurs séparées par des virgules prises en chargesearch: chaîne facultative, maximum 120 caractèresoffset: entier facultatif>= 0limit: entier facultatif1..500
Consentements
UpsertConsentDto
decision: obligatoireaccepted|revokedpolicyVersion: chaîne obligatoire, 64 caractères maximumsource: chaîne facultative, 64 caractères maximummetadata: objet facultatif
Types de consentement actuels exposés dans le code :
privacy_policyterms_of_servicemarketing_emaildata_processingcookie_analytics
Acceptation de la politique
AcceptPrivacyPolicyDto.version: chaîne obligatoire, 64 caractères maximum
Exemples d'appels
Créer une demande d'exportation
curl -X POST "$PRIMECAL_API/api/compliance/me/privacy/requests" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"requestType": "export",
"reason": "Personal archive"
}'
Mettre à jour une décision de consentement
curl -X PUT "$PRIMECAL_API/api/compliance/me/privacy/consents/marketing_email" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"decision": "revoked",
"policyVersion": "2026-03",
"source": "privacy-center"
}'
Accepter la version actuelle de la politique
curl -X POST "$PRIMECAL_API/api/compliance/me/privacy/policy-acceptance" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"version": "2026-03"
}'
Notes de réponse et de comportement
- Les routes d’accès et d’exportation génèrent des rapports de confidentialité à l’échelle de l ’utilisateur.
- Les modifications de consentement enregistrent des métadonnées supplémentaires telles que la source, l'adresse IP et l'agent utilisateur dans la couche de service.
- La liste des demandes des personnes concernées renvoie uniquement les propres demandes de l'utilisateur actuel.
Meilleures pratiques
- Utilisez des valeurs
policyVersionexplicites partout au lieu de modéliser le consentement comme un booléen simple. - Associez les actions de conformité à
Personal Logs APIdans les interfaces utilisateur du centre de confidentialité. - Exiger une étape de confirmation explicite avant d'envoyer
requestType=deleteà partir d'un client. - Gardez
confirmEmailaligné avec l'e-mail actuel de l'utilisateur authentifié lorsque l'interface utilisateur demande une reconfirmation.