Requête exemple
Réponse exemple
Récupère un coffre unique par son identifiant (id au format UUID), accompagné de sa structure complète. À la différence d'un simple enregistrement, cet endpoint renvoie le coffre hydraté : ses sections ordonnées par position, et pour chaque section ses items correspondants. Les items rattachés à aucune section (section_id à null) sont regroupés à part dans le tableau orphan_items. Chaque item de type transfert est enrichi des métadonnées du transfert lié (short_code, status, expires_at, etc.). Le coffre est toujours résolu dans le périmètre du workspace de la clé API : un id valide mais appartenant à un autre workspace renvoie 404.
Authentification
Cet endpoint exige une clé API disposant du scope transfers:read. La requête est automatiquement cantonnée au workspace associé à la clé : tous les coffres, sections et items sont filtrés sur le workspace_id du contexte d'authentification. Une clé sans ce scope reçoit une erreur scope_missing (HTTP 403).
Paramètres de chemin
| Paramètre | Type | Requis | Description |
|---|---|---|---|
| id | string (uuid) | Oui | Identifiant unique du coffre. Fourni dans le chemin de l'URL. Un identifiant vide renvoie une erreur validation_error (400). |
Réponse
La réponse est l'objet coffre complet (tous les champs de la table) augmenté de deux propriétés calculées. Les champs principaux du coffre incluent : id, workspace_id, slug, title, description, cover_color (hex, par défaut #5d50ec), cover_emoji, status (draft, active ou archived), les réglages de contrôle d'accès (is_password_protected, require_email_verification, allowed_emails), l'expiration (expires_at), les compteurs d'analytique dénormalisés (view_count, unique_viewers), le filigrane (watermark_enabled, watermark_text), la barrière NDA (require_nda, nda_text) et les horodatages (created_at, updated_at).
Note : le champ password_hash existe en base mais n'est jamais exposé. Les deux propriétés ajoutées sont :
sections: tableau des sections triées parpositioncroissant. Chaque section porteid,title,description,position,is_visible,created_atet un sous-tableauitemscontenant ses items.orphan_items: tableau des items sans section (section_id=null), triés parposition. Chaque item expose notammentkind,transfer_id,external_url,markdown_content,custom_title,custom_description,thumbnail_url,position,is_visible, et, s'il référence un transfert, l'objet imbriquécoffrify_transfers(id,short_code,transfer_title,status,expires_at,total_size_bytes,encryption_mode).
Erreurs
| Code HTTP | Code d'erreur | Quand | Comment résoudre |
|---|---|---|---|
| 400 | validation_error | L'id du coffre est absent ou vide dans le chemin. | Fournir un identifiant de coffre valide dans l'URL. |
| 401 | missing_api_key / invalid_api_key | Clé API absente, malformée, expirée ou révoquée. | Envoyer un en-tête Authorization: Bearer avec une clé valide et active. |
| 403 | scope_missing | La clé API ne possède pas le scope transfers:read. | Émettre ou utiliser une clé disposant du scope transfers:read. |
| 404 | not_found | Aucun coffre avec cet id dans le workspace de la clé. | Vérifier l'id et que le coffre appartient bien au workspace de la clé. |
| 429 | rate_limited | Quota de requêtes dépassé pour la clé. | Respecter les en-têtes de limitation et réessayer après le délai indiqué. |
| 500 | internal_error | Erreur côté base de données lors de la lecture du coffre, des sections ou des items. | Réessayer ; si l'erreur persiste, contacter le support avec l'id du coffre. |
Voir aussi
PATCH/v1/coffres/{id}Met à jour les champs d'un coffre (titre, statut, accès, filigrane, NDA). Scope requis : transfers:write.GET/v1/coffresListe les coffres du workspace. Scope requis : transfers:read./v1/coffres/{id}/itemsRécupère les items d'un coffre indépendamment de la vue hydratée. Scope requis : transfers:read.