One API, one key, one bill. Compress, merge, split, OCR, and more — from your application to your users in minutes.
Four production endpoints today, more rolling out monthly. All share the same auth and rate-limit model.
Compress a PDF using Ghostscript when available, with an FPDI fallback. Returns a signed download URL.
Merge 2–20 PDFs into a single document in upload order.
Split a PDF into one or more parts by page ranges. Each part is returned with its own signed download URL.
Extract text from an image using Tesseract OCR. Supports 20+ languages.
Convert between PDF and Word, Excel, PowerPoint, JPG, or HTML.
Create legally-binding e-signature requests with webhooks.
Pay for throughput, not features. Every plan includes every endpoint.
For prototypes and side projects.
No credit card required
10 requests / hour
For growing apps & teams.
Billed monthly
1,000 requests / hour
For high-volume production.
Billed monthly
5,000 requests / hour
For regulated workloads.
Pricing on request
Unlimited
Production-ready features baked into every plan.
Issue separate live and test keys. Rotate or revoke any key instantly from your dashboard.
Lightweight router, native Ghostscript & Tesseract paths, signed-URL downloads. No queueing for typical files.
Every call logged with endpoint, status, bytes, and timestamp. Aggregate views per day and per key.
Only SHA-256 hashes are stored. Plaintext is shown once on creation and never again.
By default, an APCu in-memory counter increments on every authenticated call and is bucketed per hour. If APCu is unavailable we fall back to counting rows in api_usage over the last hour.
Processed files are written to a private upload directory and served via short-lived (15-minute) HMAC-signed download URLs. Files are auto-purged after roughly an hour by the existing temp-file cron.
Yes. The public API lives under /api/v1/ and is fully separate from the internal /api/ endpoints used by the web UI. Existing integrations are unaffected.
Yes. Test keys are an organisational convenience, not a billing distinction. Both live and test keys share the same per-user rate-limit bucket.
All v1 endpoints are synchronous — they return when processing finishes. Webhook delivery for long-running jobs (e-signature, large conversions) ships with v2.
Generate a free key, send your first request, and see your usage roll in. No credit card required.