DocsCoffreExporter un coffre

Exporter un coffre

Exportez le contenu d'un coffre dans un bundle JSON auto-portant et signé, pour la sauvegarde, l'archivage ou la remise d'un dossier vérifiable.

Coffre3 min de lectureMis à jour le 10 juin 2026
Télécharger en PDF

L'export d'un coffre vous remet une copie auto-portante et vérifiable de son contenu : la fiche du coffre, ses sections, la liste de ses éléments (transferts attachés, liens, métadonnées) et la chaîne de preuve associée, le tout scellé par une attestation. C'est la brique de réversibilité de Coffrify, alignée sur le référentiel NF Z42-020 : vous récupérez vos données à tout moment, dans un format stable que n'importe qui peut contrôler sans dépendre de la plateforme. Cette page explique comment déclencher un export, ce que contient l'archive et comment la récupérer.

Cas d'usage

Deux situations reviennent le plus souvent. La sauvegarde : vous exportez régulièrement un coffre pour en conserver une copie froide hors plateforme, par exemple dans votre propre stockage en UE, afin de répondre à une obligation d'archivage ou simplement de dormir tranquille. La remise de dossier : à la clôture d'une mission, d'une transaction (data room) ou d'un litige, vous fournissez à un tiers une copie complète et horodatée du coffre, dont l'intégrité peut être contrôlée indépendamment grâce à l'attestation embarquée.

Exporter un coffre

L'export se déclenche par un simple appel authentifié. Il renvoie directement le bundle d'export au format JSON dans le corps de la réponse : il n'y a ni traitement asynchrone, ni lien temporaire à attendre pour cette opération. L'appel exige le scope transfers:read.

GET/v1/coffres/{id}/exportExporte le contenu d'un coffre sous forme de bundle JSON auto-portant et signé (sections, éléments, chaîne de preuve, attestation).

Le paramètre {id} est l'identifiant du coffre (celui renvoyé à la création, ou listé via GET /v1/coffres). Aucun corps de requête n'est nécessaire.

import { Coffrify } from '@coffrify/sdk';
 
const coffrify = new Coffrify({ apiKey: process.env.COFFRIFY_API_KEY });
 
const bundle = await coffrify.coffres.export('cof_3f9a2b1c');
 
console.log(bundle.object); // 'coffre_export'
console.log(bundle.chain_valid); // true
console.log(bundle.items.length); // nombre d'éléments
console.log(bundle.attestation.sha256);

Récupérer et stocker l'archive

Comme le bundle arrive dans le corps de la réponse, vous pouvez l'écrire tel quel sur disque pour le conserver. Conservez le fichier JSON intégral : c'est lui qui porte l'attestation. Ne le reformatez pas et ne le tronquez pas si vous comptez en vérifier l'intégrité plus tard, car l'empreinte est calculée sur la donnée exportée.

# Récupérer l'export et l'horodater dans un fichier de sauvegarde
curl -s https://api.coffrify.com/v1/coffres/cof_3f9a2b1c/export \
-H "Authorization: Bearer $COFFRIFY_API_KEY" \
-o "coffre-cof_3f9a2b1c-$(date +%Y%m%d).json"

Côté Node, sérialisez l'objet reçu sans le modifier, puis archivez-le là où vous le souhaitez (stockage objet, disque, coffre-fort de secrets pour les dossiers sensibles).

import { writeFile } from 'node:fs/promises';
 
const res = await fetch(
'https://api.coffrify.com/v1/coffres/cof_3f9a2b1c/export',
{ headers: { Authorization: `Bearer ${process.env.COFFRIFY_API_KEY}` } }
);
const bundle = await res.json();
 
const stamp = new Date().toISOString().slice(0, 10);
await writeFile(`coffre-cof_3f9a2b1c-${stamp}.json`, JSON.stringify(bundle, null, 2));

Contenu du bundle

La réponse est un objet JSON dont voici les champs de premier niveau. Les trois blocs coffre, sections et items constituent la donnée exportée ; attestation permet d'en contrôler l'intégrité.

ChampTypeDescription
objectstringToujours coffre_export.
standardstringRéférentiel d'alignement (NF Z42-020 (aligned)).
exported_atstringHorodatage de génération de l'export (ISO 8601).
chain_validbooleantrue si la chaîne de preuve du coffre est cohérente de bout en bout.
chain_lengthnumberNombre d'entrées dans la chaîne de preuve.
coffreobjectLa fiche du coffre (id, titre, description, slug, statut, dates).
sectionsarrayLes sections du coffre, ordonnées (titre, description, position, visibilité).
itemsarrayLes éléments du coffre (voir ci-dessous).
attestationobjectEmpreinte, référence, horodatage et signature de l'export.

Chaque entrée de items décrit un élément du coffre : son kind (par exemple un transfert attaché ou un lien externe), le transfer_id ou l'external_url correspondant, un titre et une description personnalisés, sa position, sa visibilité, ainsi que des métadonnées d'intégrité comme content_sha256, original_size et original_mime. Le bloc attestation contient l'empreinte sha256, une reference unique, l'horodatage generated_at, la valeur de signature et l'adresse verify_public_key où récupérer la clé publique de vérification.

{
"object": "coffre_export",
"standard": "NF Z42-020 (aligned)",
"exported_at": "2026-06-10T14:32:07.118Z",
"chain_valid": true,
"chain_length": 12,
"coffre": {
"id": "cof_3f9a2b1c",
"title": "Data room - Acquisition Atlas",
"status": "active",
"created_at": "2026-05-02T09:14:00Z"
},
"sections": [
{ "id": "sec_01", "title": "Juridique", "position": 0, "is_visible": true }
],
"items": [
{
"id": "item_8a",
"section_id": "sec_01",
"kind": "transfer",
"transfer_id": "tr_9d4e",
"custom_title": "Pacte d'actionnaires",
"content_sha256": "…",
"original_size": 482311,
"original_mime": "application/pdf",
"position": 0
}
],
"attestation": {
"sha256": "…",
"reference": "Z42-EXPORT-cof_3f9a2b1c",
"generated_at": "2026-06-10T14:32:07.118Z",
"verify_public_key": "https://trust.coffrify.com (clé publique Ed25519)"
}
}

Erreurs

Si le coffre n'existe pas (ou n'appartient pas à votre espace de travail), l'API renvoie un statut 404 avec l'enveloppe d'erreur standard. Une clé sans le scope transfers:read est rejetée avant d'atteindre le coffre.

{
"error": {
"code": "not_found",
"message": "Coffre cof_inconnu not found",
"request_id": "req_8c2f0a91"
}
}
Cette page vous a-t-elle aidé ?
Anonyme, dédupliqué 24h par signature locale.