Coffrifydocs
⌘K
Getting Started

Quickstart

Premier transfert chiffré en 5 minutes.

Prérequis

Une clé API depuis Dashboard → API Keys. Node.js ≥ 18, Python ≥ 3.10, Go ≥ 1.21 ou l'un des 7 SDKs officiels.

1. Installer le SDK

bash
npm install @coffrify/sdk

2. Créer un transfert

typescript
import Coffrify from '@coffrify/sdk';

const client = new Coffrify({ apiKey: process.env.COFFRIFY_API_KEY });

const { transfer } = await client.transfers.create({
  files: [{ name: 'contrat.pdf', size: 204800 }],
  expires_in: '7d',
});

console.log(transfer.short_code); // "X9aB2c"
console.log(transfer.share_url);  // "https://r.coffrify.com/X9aB2c"

3. Uploader les fichiers

La réponse contient `upload_urls` - des URLs présignées valables **15 minutes**. Uploadez directement depuis votre backend (pas de proxy Coffrify, zéro surcharge) :

upload.tstypescript
for (const [i, uploadUrl] of transfer.upload_urls.entries()) {
  await fetch(uploadUrl, {
    method: 'PUT',
    body: fileBuffers[i],
    headers: { 'Content-Type': mimeTypes[i] },
  });
}

// Signaler que tous les fichiers sont uploadés
await client.transfers.finalize(transfer.id);

4. Partager le lien

Envoyez `transfer.share_url` au destinataire. Le lien fonctionne sans compte Coffrify. Si un mot de passe a été défini (`password`), il sera demandé au téléchargement. Le transfert expire automatiquement après `expires_in`.

Chiffrement

AES-256-GCM côté serveur dès le plan gratuit. Pour du **zero-knowledge E2E** (clé jamais transmise au serveur, déchiffrement 100 % côté client), voir [Chiffrement E2E](/docs-public/security-encryption).

Prochaines étapes

  • [Authentification & scopes](/docs-public/authentication) - clés test vs live, permissions fines
  • [SDK JavaScript complet](/docs-public/sdk-javascript) - TypeScript types, streaming, retries
  • [Webhooks](/docs-public/webhooks) - être notifié à chaque événement
  • [Chiffrement E2E](/docs-public/security-encryption) - architecture zero-knowledge