Réponse exemple
GET/v1/workspace/datarooms/{id}/audit/heatmapMatrice de consultation (viewers x documents) d'une Data Room, agregee cote serveur.Cet endpoint alimente la vue Audit vendor d'une Data Room. Il calcule, cote serveur, une heatmap croisant les viewers invites et les documents, le nombre de vues par cellule, la duree cumulee de consultation, les tops (5 viewers et 5 documents les plus consultes) et une timeline des 30 derniers jours. Les vues prises en compte couvrent les 60 derniers jours (les cellules et les totaux), tandis que la timeline ne porte que sur les 30 derniers jours. Aucune adresse IP ni User-Agent brut n'est renvoye dans la reponse : seules des donnees agregees et l'identite des viewers (label, email) sont exposees, par prudence vis-a-vis de la conformite RGPD interne.
Authentification
L'acces repose sur une session authentifiee valide (via getAuthedContext), aucun scope de cle API specifique n'est requis. L'appelant doit en outre pouvoir gerer la Data Room : etre proprietaire de compte (isAccountOwner), avoir le role workspace owner ou admin, ou disposer de la capacite can_manage_coffres. La Data Room ciblee doit appartenir au workspace courant (workspace_id verifie cote serveur en defense en profondeur).
Parametres de chemin
| Champ | Type | Requis | Description |
|---|---|---|---|
| id | string (UUID) | Oui | Identifiant de la Data Room. Doit correspondre au format UUID 36 caracteres (^[a-f0-9-]{36}$), sinon la requete est rejetee en 400. |
Reponse
La reponse JSON contient l'objet dataroom (id, reference, name), la liste viewers (chaque viewer avec id, label derive du nom ou de l'email, email, company, status, total_views), la liste documents (id, title, total_views), et cells, un tableau de tuples [viewerId, documentId, count, durationMs] ou count est le nombre de vues et durationMs la duree cumulee. Les champs top_viewers et top_documents reprennent les 5 entrees les plus consultees, triees par total_views decroissant. timeline est un tableau de 30 buckets contigus { day: 'YYYY-MM-DD', views: N } (cles UTC, jours sans activite inclus avec views: 0). Enfin generated_at horodate la generation (ISO 8601). La reponse est servie avec l'en-tete Cache-Control: no-store.
| Champ | Type | Description |
|---|---|---|
| dataroom | object | Metadonnees de la Data Room : id, reference, name. |
| viewers | array | Viewers invites avec id, label, email, company, status, total_views. |
| documents | array | Documents de la Data Room avec id, title, total_views. |
| cells | array | Tuples [viewerId, documentId, count, durationMs] : une cellule par couple viewer/document consulte. |
| top_viewers | array | Jusqu'a 5 viewers les plus consultes (id, label, total_views...), tri decroissant. |
| top_documents | array | Jusqu'a 5 documents les plus consultes (id, title, total_views), tri decroissant. |
| timeline | array | 30 buckets { day, views } (UTC), jours vides remplis a 0. |
| generated_at | string | Horodatage ISO 8601 de generation de la heatmap. |
Erreurs
| Code | Quand | Resolution |
|---|---|---|
| 400 bad_request | L'id est absent ou ne respecte pas le format UUID attendu. | Fournir un identifiant de Data Room valide (UUID 36 caracteres). |
| 401 unauthorized | Aucune session authentifiee valide n'a pu etre etablie. | Se reconnecter et reessayer avec une session active. |
| 403 forbidden | L'utilisateur n'a pas la capacite de gestion, ou la Data Room appartient a un autre workspace. | Verifier le role/capacite (owner, admin ou can_manage_coffres) et que la Data Room appartient bien au workspace courant. |
| 404 not_found | Aucune Data Room ne correspond a l'id fourni. | Verifier l'identifiant de la Data Room. |
Voir aussi
- GET /v1/workspace/datarooms/{id} : details et configuration d'une Data Room.
- GET /v1/workspace/datarooms/{id}/viewers : liste des viewers invites et leur statut.
- GET /v1/workspace/datarooms/{id}/documents : documents publies dans la Data Room.