Réponse exemple
GET/v1/workspace/datarooms/{id}/audit/export.csvExporte le journal des consultations d'une data room au format CSV (UTF-8 avec BOM).Cet endpoint génère et télécharge un fichier CSV contenant l'historique des consultations (vues, téléchargements) d'une data room donnée. Il est destiné à l'audit vendor : il permet de produire une piste auditable de qui a consulté quels documents, quand et pendant combien de temps. La réponse n'est pas du JSON : c'est un flux text/csv servi en pièce jointe (Content-Disposition: attachment), avec un nom de fichier de la forme dataroom-audit-{reference}-{AAAA-MM-JJ}.csv. Le fichier inclut un BOM UTF-8 en tête afin qu'Excel ouvre correctement les caractères accentués.
Comportements notables : les adresses IP sont anonymisées avant export (IPv4 tronquée en /24, IPv6 en /64) pour rester proportionnées à la finalité d'audit comportemental. L'export est plafonné à 50 000 lignes (les vues les plus récentes en premier, triées par viewed_at décroissant). Chaque export réussi est lui-même journalisé dans le journal d'audit du workspace (action coffrify.dataroom.audit_exported).
Authentification
Cet endpoint repose sur une session utilisateur authentifiée (et non sur un scope de clé API). L'appelant doit disposer d'un droit de gestion sur le workspace actif : être propriétaire du compte (isAccountOwner), avoir le rôle workspace owner ou admin, ou détenir la capacité can_manage_coffres. À défaut, l'accès est refusé. La data room ciblée doit en outre appartenir au workspace actif de la session (défense en profondeur).
Paramètres de requête
| Champ | Type | Requis | Description |
|---|---|---|---|
| id | string (UUID) | Oui | Identifiant de la data room, fourni dans le chemin. Doit respecter le format UUID (36 caractères, [a-f0-9-]), sinon la requête est rejetée en 400. |
Réponse
En cas de succès (200), le corps est un fichier CSV dont chaque ligne représente une consultation. Les colonnes, dans l'ordre, sont : viewed_at_iso (horodatage ISO de la vue), viewer_email, viewer_name, viewer_company (identité du destinataire invité), document_title (titre du document consulté, ou son identifiant si le titre est introuvable), action (type d'événement, ex. view, download), duration_ms (durée de consultation en millisecondes, vide si absente), ip_anonymized (IP tronquée /24 ou /64, vide si absente) et user_agent. Les valeurs contenant une virgule, un guillemet ou un saut de ligne sont échappées selon la convention CSV (guillemets doublés). Les lignes sont séparées par \r\n.
Erreurs
| Code | Quand | Résolution |
|---|---|---|
400 bad_request | L'identifiant id est absent ou ne respecte pas le format UUID attendu. | Vérifiez que l'identifiant de data room transmis est un UUID valide à 36 caractères. |
401 unauthorized | La session n'a pas pu être authentifiée. | Authentifiez-vous (session valide) avant d'appeler l'endpoint. |
403 forbidden | L'utilisateur n'a pas de droit de gestion (owner/admin/can_manage_coffres/propriétaire du compte), ou la data room n'appartient pas au workspace actif. | Connectez-vous avec un compte disposant des droits de gestion sur le bon workspace, ou vérifiez que la data room appartient bien à ce workspace. |
404 not_found | Aucune data room ne correspond à l'identifiant fourni. | Vérifiez l'identifiant de la data room ; elle a peut-être été supprimée. |
Voir aussi
- GET /v1/workspace/datarooms/{id} — récupérer les métadonnées d'une data room.
- GET /v1/workspace/datarooms/{id}/viewers — lister les destinataires invités d'une data room.
GET /v1/workspace/audit— consulter le journal d'audit global du workspace (qui inclut l'événementcoffrify.dataroom.audit_exported).