July update: URL input and webhooks
We shipped a batch of API improvements this month. Every one of them came from a request by someone building on the API, and together they remove most of the glue code that used to sit around a Converterer integration. Here is what changed.
Convert straight from a URL
input now accepts a public URL as well as a file upload. Converterer fetches the file server-side, so if the source already lives in cloud storage, on a CDN, or behind a customer’s link, you no longer download it just to upload it again:
curl -u "$CONVERTERER_API_KEY:" \
https://api.converterer.com/convert \
-F "input=https://example.com/reports/q2.docx" \
-F "output_format=pdf"
The fetch follows up to 5 redirects, times out sensibly, refuses private and internal addresses, and validates the file exactly like an upload. If something goes wrong you get a specific error_code: url_blocked, url_too_large, or url_unreachable. Details in the file conversion docs.
Signed webhooks
Every webhook delivery now carries a Converterer-Signature header: a timestamp plus an HMAC-SHA256 digest computed with your subscription’s signing secret. Your endpoint can verify that a delivery genuinely came from us and was not replayed, in about five lines of code. The webhooks docs have copy-paste verification snippets for Node, Python, and PHP.
Manage webhooks via the API
Webhook subscriptions no longer require the dashboard. Create, list, and delete them with the same Basic auth as everything else:
curl -u "$CONVERTERER_API_KEY:" \
https://api.converterer.com/webhooks \
-d "url=https://example.com/hooks/converterer"
The response includes the signing secret for the subscription. Infrastructure-as-code setups can now provision Converterer end to end.
Metadata passthrough
Attach up to 50 key-value pairs of your own data to any conversion task with the metadata field. It is stored untouched and echoed back on GET /convert/{id} and in webhook payloads, so your handler can route an event by order ID or tenant without a database lookup.
Richer webhook payloads
Completed-task webhooks now include the output file_name and, when your destination has a public base URL configured, a ready-to-use url for the finished file. Set the new public_base_url on a destination (your CDN domain, for example) and downstream consumers get a fetchable link instead of reconstructing paths. See storage destinations.
Animated GIF and WebP to video
GIFs and animated WebP files now convert to every video container we support: MP4, WebM, MKV, MOV, and the rest. A large GIF converted to MP4 is typically a fraction of the size for the same loop. The usual video options apply, including fps, trimming, codec, and quality. That also rounds out the matrix to more than 300 conversion pairs, including the reverse video-to-GIF path for every source container.
The fine print
Files up to 1 GB are accepted on every plan, uploads and URL inputs alike; if you need more, talk to us about a custom plan. Everything above is live now, documented in the API reference, and included on the free tier: 100 conversions a month, no card required.