DocsSDKSDK Dart / Flutter

SDK Dart / Flutter

Le SDK Dart officiel est en préparation. En attendant, intégrez Coffrify depuis Dart avec le package http.

SDK1 min de lectureMis à jour le 21 juin 2026
Télécharger en PDF

Cette page décrit comment intégrer Coffrify en Dart ou Flutter. Le package pub.dev est en cours de préparation et pas encore publié. En attendant, l'API REST v1 fonctionne parfaitement depuis Dart avec le package http (déjà inclus dans la majorité des projets Flutter).

Pré-requis

Ajoutez http: ^1.2.0 dans votre pubspec.yaml si ce n'est pas déjà fait. Votre clé d'API démarre par cof_test_ en développement. Ne placez jamais la clé dans le code source : lisez-la depuis une variable d'environnement ou un gestionnaire de secrets.

Créer un transfert

POST/v1/transfersCrée un transfert et renvoie les URL de téléversement et le lien de partage.
import 'dart:convert';
import 'package:http/http.dart' as http;
 
Future<void> main() async {
final apiKey = const String.fromEnvironment('COFFRIFY_API_KEY');
final client = http.Client();
 
final resp = await client.post(
Uri.parse('https://api.coffrify.com/v1/transfers'),
headers: {
'Authorization': 'Bearer $apiKey',
'Content-Type': 'application/json',
'Idempotency-Key': 'transfer-doc-flutter-01',
},
body: jsonEncode({
'files': [{'name': 'rapport.pdf', 'size': 204800, 'mime_type': 'application/pdf'}],
'expires_in_hours': 48,
'max_downloads': 3,
}),
);
 
final body = jsonDecode(resp.body) as Map<String, dynamic>;
print('Lien : ${body["share_url"]}');
client.close();
}

Téléverser les fichiers

Après la création, envoyez chaque fichier en PUT sur l'url correspondante dans upload_urls, en reprenant exactement les headers fournis. Utilisez client.put(Uri.parse(item['url']), headers: item['headers'], body: fileBytes).

Recevoir les webhooks

Configurez un endpoint POST dans votre backend (pas côté Flutter client). Vérifiez les en-têtes webhook-id, webhook-timestamp et webhook-signature selon le standard Standard Webhooks avec HMAC-SHA256 et votre secret whsec_….

Cette page vous a-t-elle aidé ?
Anonyme, dédupliqué 24h par signature locale.