Les fonctions PDF de PDF Vision, dans votre propre produit
Compressez, fusionnez, découpez et filigranez des PDF depuis votre serveur. Un appel par opération : le fichier entre, le fichier sort.
Un seul appel
Pas de tâche à suivre ni de fichier temporaire à récupérer : vous envoyez le document, vous recevez les octets.
Rien n’est conservé
Les fichiers vivent dans un dossier temporaire effacé dès la réponse écrite. Aucun document n’entre en base.
SDK Dart
Types, erreurs distinctes et reprise automatique. Utilisable depuis un serveur Dart comme depuis Flutter, web compris.
Votre plan, vos quotas
Une clé dépense l’allocation de son propriétaire. Ce qu’il en reste voyage dans les en-têtes de chaque réponse.
Premier appel
Créez une clé plus bas, mettez-la dans une variable d’environnement, et compressez votre premier document.
import 'package:pdf_vision/pdf_vision_io.dart';
final pdf = PdfVision(apiKey: Platform.environment['PDF_VISION_API_KEY']!);
final source = await pdfFileFromPath('contract.pdf');
final smaller = await pdf.compress(source, quality: CompressionQuality.strong);
await smaller.save('contract-small.pdf');dart pub add pdf_vision — le paquet est publié sur pub.dev.
Les opérations
Les cinq familles sont ouvertes : transformer, sécuriser, convertir, lire et l’IA — sur une seule clé.
POST/v1/compress | Un PDF plus léger. Les couleurs sont conservées à tous les niveaux de compression.transform |
POST/v1/merge | De 2 à 20 PDF en un seul, les pages dans l’ordre d’envoi.transform |
POST/v1/split | Une page par fichier, un fichier par intervalle, ou une seule tranche. Le mode décide si vous recevez un PDF ou une archive.transform |
POST/v1/watermark | Un texte en diagonale sur chaque page, police, couleur et opacité au choix.transform |
POST/v1/protect | Chiffre le document en AES 128 ou 256 bits, avec le détail de ce qui reste autorisé.secure |
POST/v1/unlock | Retire un mot de passe — en le fournissant. C’est la seule façon, et c’est voulu.secure |
POST/v1/remove-restrictions | Lève les interdictions d’impression ou de copie d’un document qui s’ouvre sans mot de passe.secure |
POST/v1/redact | Retire un texte définitivement. Ne rien trouver est un échec, jamais un succès silencieux.secure |
POST/v1/inspect | Dit ce que le document autorise, et lequel des deux appels précédents utiliser.secure |
POST/v1/word-to-pdf | Rend un .doc ou .docx en PDF. Tourne sur nos machines.convert |
POST/v1/excel-to-pdf | Rend un classeur ou un CSV en PDF, mise en page du document conservée par défaut.convert |
POST/v1/pdf-to-markdown | Extrait le texte en Markdown structuré. Un scan est refusé, jamais rendu vide.convert |
POST/v1/pdf-to-word | Rend un PDF en .docx éditable. Facturée à l’appel : allocation bien plus étroite.facturée à l’appelconvert |
POST/v1/pdf-to-excel | Rend les tableaux d’un PDF en .xlsx. Facturée à l’appel, comme la précédente.facturée à l’appelconvert |
POST/v1/ocr | Rend un scan cherchable. Les pages qui ont déjà du texte sont laissées intactes.read |
POST/v1/summarize | Le document en plus court, au format voulu.plan payantai |
POST/v1/ask | Une question sur le document, avec les citations : d’où vient chaque affirmation.plan payantai |
POST/v1/extract | Les champs demandés — numéro de facture, total, échéance — sortis du document.plan payantai |
POST/v1/translate | Le document traduit, mise en page conservée. Rend un PDF.plan payantai |
GET/v1/me | Vérifie une clé et renvoie l’allocation restante. Ne consomme rien. |
Les quatre opérations d’IA envoient le TEXTE du document à un modèle tiers pour être traité — aucune autre ne fait sortir vos documents de nos serveurs. Elles exigent un abonnement payant, et la section 13 des conditions dit exactement ce que cela implique.
Vos clés d’API
Une clé par service qui appelle l’API : le jour où l’une fuite, vous révoquez celle-là sans couper les autres.
Une clé reste sur votre serveur. Elle dépense votre allocation : quiconque la lit peut la dépenser aussi. Ne l’embarquez jamais dans une application mobile ni dans une page web — appelez votre propre serveur depuis là, et laissez-le appeler l’API.