Une Data Room Coffrify est un espace de partage persistant qui regroupe plusieurs transferts sous un accès unique, sécurisé et journalisé. Ce guide vous explique comment : 1) attacher un transfert existant à une Data Room via POST /v1/rooms/{id}/documents, et 2) générer un lien de téléchargement présigné à durée limitée via POST /v1/transfers/{id}/download-url. Le document héritera automatiquement des protections de la room (filigrane, interdiction de téléchargement) et chaque URL sera signée avec HMAC côté serveur, sans jamais exposer vos clés de stockage au client final.
/v1/rooms/{id}/documentsLister les transferts attachés à une Data Room.POST/v1/rooms/{id}/documentsAttacher un transfert existant (identifié par son short_code) à une Data Room.POST/v1/transfers/{id}/download-urlGénérer une ou plusieurs URLs de téléchargement présignées pour les fichiers d'un transfert.Authentification
Ces trois endpoints nécessitent une clé API passée dans l'en-tête Authorization: Bearer <clé>. Les préfixes de clés valides sont cof_live_…, cof_test_… ou cof_sandbox_… selon votre environnement.
- Lister les documents d'une room : scope rooms:read
- Attacher ou détacher un document : scope rooms:manage
- Générer un lien de téléchargement présigné : scope transfers:download
Votre clé doit posséder les deux scopes rooms:manage et transfers:download pour couvrir le flux complet de ce guide.
Corps de la requête : attacher un document
Pour attacher un transfert existant à une room, vous l'identifiez par son short_code. Le tableau ci-dessous liste les champs acceptés.
| Champ | Type | Requis | Description |
|---|---|---|---|
| short_code | string | Oui | Le code court du transfert à attacher (ex. a1b2c3d4). Le transfert doit appartenir au même workspace que la room. |
Corps de la requête : générer un lien de téléchargement
La génération d'un lien de téléchargement précise le fichier visé et la durée de validité souhaitée. Voici les champs disponibles.
| Champ | Type | Requis | Description |
|---|---|---|---|
| file_id | string | Non | Identifiant UUID d'un fichier spécifique. Si omis, une URL est retournée pour chaque fichier du transfert. |
| expires_in_seconds | integer | Non | Durée de validité de l'URL en secondes. Minimum : 60, maximum : 86400 (24 h). Par défaut : 3600 (1 h). |
Exemple complet
L'exemple ci-dessous attache un document à une room, puis génère un lien de téléchargement présigné pour ce document. Choisissez votre langage.
Réponse : document attaché (201)
La réponse renvoie le transfert tel qu'il apparaît désormais dans la room, avec son short_code et son titre. Conservez son id pour les opérations suivantes.
Réponse : liens de téléchargement présignés (200)
La réponse fournit les URLs signées et leur durée de validité (expires_in_seconds). Ces liens court-circuitent la porte publique : ne les exposez jamais côté client.
Erreurs
Les erreurs portent sur une room ou un transfert introuvable, ou un scope manquant. Le tableau ci-dessous indique la résolution.
| Code HTTP | Code erreur | Quand | Résolution |
|---|---|---|---|
| 400 | validation_error | short_code absent ou vide dans le corps de la requête d'attachement. | Vérifiez que le champ short_code est présent et non vide. |
| 404 | not_found | La room ou le transfert n'existe pas dans votre workspace. | Vérifiez l'identifiant de room et le short_code du transfert. |
| 409 | conflict | Le transfert est déjà attaché à une autre room. | Détachez-le d'abord via DELETE /v1/rooms/{autre_id}/documents. |
| 410 | not_found | Le transfert existe mais son statut est deleted. | Créez un nouveau transfert ou restaurez l'original depuis l'interface. |
| 503 | internal_error | Les credentials Scaleway ne sont pas configurés sur le déploiement. | Contactez le support Coffrify ou vérifiez vos variables d'environnement. |
| 429 | rate_limited | Quota sandbox dépassé (25 transferts / 24 h en environnement cof_sandbox_…). | Attendez la prochaine fenêtre de 24 h ou utilisez une clé cof_live_…. |
Voir aussi
- Créer une Data Room
- Créer un transfert et uploader des fichiers
- Référence : GET /v1/rooms/{id}/documents
- Référence : POST /v1/transfers/{id}/download-url
- Gérer les membres d'une Data Room