Langkau ke kandungan utama
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

Parameter

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.

Contoh

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

Respons

Jika berjaya (200): bait mentah fail yang telah ditukar, dengan header Content-Type dan Content-Disposition ditetapkan untuknya. Jika gagal: badan JSON berbentuk {"error": {"code": "...", "message": "..."}} dengan kod status HTTP yang sepadan — lihat Ralat di bawah.

Header Value
Content-TypeJenis MIME sebenar fail yang telah ditukar (cth. image/png, application/pdf).
Content-Dispositionattachment; filename="..." — cadangan nama fail, sama seperti muat turun fail lain.
Content-LengthSaiz badan respons dalam bait.
X-Original-SizeSaiz fail yang dimuat naik dalam bait, sebelum pemampatan.
X-Saved-PercentAnggaran berapa peratus lebih kecil hasilnya berbanding asal, sebagai peratusan nombor bulat (boleh jadi 0).

Setiap ralat mengikut bentuk JSON yang sama, contohnya apabila kuota melebihi had:

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

Ralat

Setiap kegagalan memulangkan sampul ralat JSON dengan "code" yang boleh digunakan kod anda untuk bercabang, ditambah "message" yang boleh dibaca manusia. Sesetengah ralat menyertakan medan tambahan (quota_exceeded menyertakan "limit" dan "used", sebagai contoh).

Status & code When it happens
401 missing_keyTiada header Authorization dihantar.
401 invalid_keyKunci tersebut tidak wujud, atau telah dibatalkan.
403 account_suspendedAkaun yang memiliki kunci ini telah digantung.
403 plan_requiredAkaun berada pada pelan Percuma — akses API memerlukan Basic, Lite, Pro, atau Team.
400 invalid_category"category" bukan "image" atau "document".
400 no_fileTiada fail dihantar, atau muat naik gagal — medan itu mesti dinamakan "file".
413 file_too_largeFail melebihi saiz muat naik maksimum pelan anda.
429 quota_exceededPeruntukan minit penukaran bulanan pelan telah habis digunakan. Direset pada awal bulan kalendar berikutnya.
429 concurrency_limitTerlalu banyak penukaran sedang berjalan serentak untuk akaun ini (dikongsi dengan laman web) — tunggu sehingga salah satu selesai dan cuba lagi.
422 conversion_failedFail itu sendiri tidak dapat ditukar — "message" menerangkan sebabnya. Kod status berbeza mengikut sebab: 400/415/422 bermaksud fail atau target tidak akan berfungsi tidak kira berapa kali anda cuba semula; 500/503 bermaksud masalah di pihak pelayan, dan 503 khususnya berbaloi untuk dicuba semula dengan singkat.

Supported formats

PDF

Berkaitan