Public API

Public API v1

Build file conversion into your application with the Convertere Public API.

Send a file, get a converted one back. The Convertere API converts images, documents, spreadsheets, presentations, audio and video through one REST interface. Create a job, give it a file (upload it or point at an HTTPS URL), then collect the result by polling, long-polling or webhook. Live keys spend the same credits as the website. Test keys are free. See Pricing for current plans.

Quickstart · Interactive reference · OpenAPI 3.1 document

Who it is for

  • Product teams adding "convert or export this file" to an app, without running LibreOffice, ImageMagick or FFmpeg themselves.
  • Backend and platform engineers who need retry-safe job creation, least-privilege keys and webhook-driven flows.
  • Internal tools and automation that process batches of files and need a predictable cost per file.

Start in three steps

  1. Create a test key. In your organization's Settings → API Keys tab, choose Create API Key and set the mode to Test (cvio_test_...). Test keys never spend credits.
  2. Create a job. One POST /jobs describes the import, the conversion and the export. Example in the quickstart.
  3. Upload, wait, download. PUT the bytes to the uploadUrl the job returns, call GET /jobs/{id}?wait=25 until the status is terminal, then read the download link from the export/url task. Full walkthrough with curl, JavaScript and Python: Quickstart.

What you get

  • Jobs and tasks: an import, a convert and an export task per job, with a tag to match your own records.
  • Three ways in: a single presigned upload, a multipart upload for files over 100 MB, or import/url with optional request headers.
  • Three ways to wait: polling, a bounded long-poll (?wait=, up to 25 s, one request), or signed webhooks.
  • Signed webhooks: Convertere-Signature: t=...,v1=... with a 5-minute replay window; retries at 60 s, 5 min, 15 min and 1 h.
  • Scoped keys: job.read, job.write, webhook.read, webhook.write; test and live keys are isolated from each other.
  • Safe retries: send an Idempotency-Key with POST /jobs; a retry returns the original response instead of a second job.
  • One credit balance: API jobs use the same credits as the website. A job the balance cannot cover is refused with 402 and the shortfall.
  • Machine-readable spec: OpenAPI 3.1 at /v1/openapi.json, generated from the code that serves the API.

Base URL

https://api.convertere.io/v1

All routes in these guides are relative to this base URL. GET /operations and GET /openapi.json are public; every other endpoint needs an API key.

The machine-readable description is the OpenAPI 3.1 document at /v1/openapi.json. It is generated from the code that serves the API, so it always matches the behaviour documented here.

How it works

  1. Create a job that describes an import, a conversion and an export.
  2. Give the job its file: PUT the bytes to the upload URL it returns, upload in parts for files over 100 MB, or let the platform fetch an HTTPS URL.
  3. Wait for the job: poll it, long-poll with ?wait=, or receive a signed webhook.
  4. Download the result from the export task. Results are kept for 24 hours.

Versioning

/v1 is additive only: new compatible fields and behaviour may be added while existing ones keep working. Breaking changes will use a new version path. Responses may include a Deprecation header when something is being retired.

Guides

Interactive API reference

On this page