Aller au contenu principal
TransConvert

PDF Compression API

Shrink PDF files with one POST request via Ghostscript's own recompression — pick a quality level, optionally convert to grayscale, and never get back a file bigger than what you uploaded.

POST https://transconvert.com/api/v1/convert.php

Paramètres

Field Description
AuthorizationRequired. "Bearer tc_live_...".
categorySet to "document-compress".
levelOptional: "low", "medium" (default), "high", or "none".
grayscaleOptional. "1" to also convert to grayscale; omit for full color.
fileRequired. A PDF that is not open/password-protected.

Exemples

TransConvert
curl -X POST \
  https://transconvert.com/api/v1/convert.php \
  -H "Authorization: Bearer tc_live_your_key_here" \
  -F "category=document-compress" \
  -F "level=high" \
  -F "file=@report.pdf" \
  -o output.pdf

Réponse

En cas de succès (200) : les octets bruts du fichier converti, avec les en-têtes Content-Type et Content-Disposition renseignés en conséquence. En cas d’échec : un corps JSON de la forme {"error": {"code": "...", "message": "..."}} avec un code de statut HTTP correspondant — voir Erreurs ci-dessous.

Header Value
Content-TypeLe vrai type MIME du fichier converti (par ex. image/png, application/pdf).
Content-Dispositionattachment; filename="..." — un nom de fichier suggéré, comme pour tout téléchargement de fichier.
Content-LengthTaille du corps de la réponse, en octets.
X-Original-SizeLa taille du fichier envoyé, en octets, avant compression.
X-Saved-PercentEnviron de combien le résultat est plus petit que l’original, en pourcentage arrondi à l’entier (peut être 0).

Chaque erreur suit la même structure JSON, par exemple pour un quota dépassé :

429 Too Many Requests
{
  "error": {
    "code": "quota_exceeded",
    "message": "Monthly API allowance of 5000 conversion-minutes reached.",
    "limit": 5000,
    "used": 5000
  }
}

Erreurs

Chaque échec renvoie une enveloppe d’erreur JSON avec un "code" que votre application peut tester, ainsi qu’un "message" lisible. Certaines erreurs incluent des champs supplémentaires (quota_exceeded inclut par exemple "limit" et "used").

Status & code When it happens
401 missing_keyAucun en-tête Authorization n’a été envoyé.
401 invalid_keyLa clé n’existe pas, ou a été révoquée.
403 account_suspendedLe compte propriétaire de cette clé est suspendu.
403 plan_requiredLe compte est sur l’offre Free — l’accès à l’API nécessite Basic, Lite, Pro ou Team.
400 invalid_category"category" n’était pas "image" ni "document".
400 no_fileAucun fichier n’a été envoyé, ou l’envoi a échoué — le champ doit s’appeler "file".
413 file_too_largeLe fichier dépasse la taille maximale de téléversement autorisée par votre offre.
429 quota_exceededLe quota mensuel de minutes de conversion de l’offre est épuisé. Réinitialisation au début du mois calendaire suivant.
429 concurrency_limitTrop de conversions déjà en cours simultanément pour ce compte (partagé avec le site) — attendez qu’une conversion se termine, puis réessayez.
422 conversion_failedLe fichier lui-même n’a pas pu être converti — "message" en explique la raison. Le code de statut varie selon la cause : 400/415/422 signifient que le fichier ou la cible ne fonctionneront pas, peu importe le nombre de tentatives ; 500/503 signifient un problème côté serveur, et 503 en particulier mérite une brève nouvelle tentative.

Supported formats

PDF

Voir aussi