PDF API for developers
Automate PDF work from your own apps with a simple HTTPS API. Send a file, get the result back in the same response – nothing is stored.
Quick start
curl -X POST https://dpdfconverter.com/api/v1/merge \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "files=@first.pdf" -F "files=@second.pdf" \
-o merged.pdf
Create API keys on your account page. Keys are shown once and stored only as a hash.
Endpoints
| Endpoint | Input | Parameters | Returns |
|---|---|---|---|
POST /api/v1/merge | 2+ files | – | |
POST /api/v1/split | file | ranges e.g. 1-3,4- | ZIP of PDFs |
POST /api/v1/rotate | file | angle 90|180|270, pages | |
POST /api/v1/compress | file | level screen|ebook|printer|lossless | |
POST /api/v1/grayscale | file | – | PDF (vector-preserving grayscale) |
POST /api/v1/pdfa | file | – | PDF/A-2b (issues reported in X-PDFA-Problems) |
POST /api/v1/protect | file | password | PDF (AES-256) |
POST /api/v1/unlock | file | password | |
POST /api/v1/watermark | file | text, opacity | |
POST /api/v1/office-to-pdf | file .docx/.xlsx/.pptx/.odt… | – | PDF (LibreOffice) |
POST /api/v1/pdf-to-text | file | – | JSON {pages:[{page,text}]} |
POST /api/v1/ocr | file PDF | lang e.g. eng, deu | Searchable PDF |
POST /api/v1/info | file | – | JSON metadata & page sizes |
Limits and errors
- Uploads up to 100 MB per file. Requests time out after 120 seconds.
- Monthly call quota depends on your plan; each successful request counts as one call.
- Errors return JSON
{"error": "message"}with status 400 (bad input), 401 (missing/invalid key), 402 (quota or credits exhausted), 413 (file too large), 429 (rate limited) or 501 (feature not available on this server).
Data handling
Each request is processed in a private temporary folder that is deleted when the response is sent. A background sweeper removes anything left behind after 15 minutes (for example after a crash). We log the endpoint, status, size and duration for billing and abuse prevention – never file contents.