Developer Hub
DocuShell API Docs
DocuShell gives developers, freelancers, and businesses one async API surface for parsing PDFs, rendering documents, capturing webpages, compressing files, and converting PDFs to Word.
Base URL
https://api.docushell.com/api
Use this as the API client base, then call /v1/... routes from your server or automation.
Auth
Bearer + Idempotency-Key
Bearer authentication is required. Idempotency is optional but recommended for every submit call.
Job flow
queued -> processing -> done
Submit work, poll /v1/jobs/:jobId, then stream artifacts or files from the shared download route.
Section
Who This Is For
Developers use DocuShell when they want stable HTTP endpoints and clean copy-paste samples instead of building PDF processing pipelines from scratch.
Freelancers use the same queued job model to automate deliverables like parsed research packets, branded Markdown exports, or client-ready PDF conversions.
Businesses get one public gateway and one auth model across the PDF stack, even though the work happens in dedicated services behind the scenes.
Section
Start Here
Getting started
Create an API key, add the required headers, learn the queued job lifecycle, and copy the first request.
Parse PDF
Learn single-file and batch parse request shapes, structured JSON, bounding boxes, Markdown, HTML, text, and annotated PDF workflows.
Resume Parse
Use the resume-specific API for ATS-friendly candidate, contact, section, skills, keyword, and warning fields.
Billing
Understand plan access, monthly credits, cancellation behavior, and invoice handling.
Section
Endpoint Inventory
This is the canonical public API surface documented in this hub.
| Method | Path | Purpose |
|---|---|---|
| POST | /v1/parse | Queue one PDF parse job with JSON, Markdown, HTML, text, and annotated PDF artifacts. |
| POST | /v1/parse/batch | Accept an async batch of PDFs with shared parse options, required idempotency, per-file artifacts, and terminal batch status. |
| GET | /v1/parse/batch/:batchId | Poll parse batch status, per-file statuses, usage, expiry, webhook delivery state, and artifact links. |
| GET | /v1/parse/batch/:batchId/download | Generate and stream a ZIP containing completed file artifacts for the batch. |
| GET | /v1/parse/batch/:batchId/files/:fileId/download?format=json|markdown|html|text|annotated_pdf|markdown_with_html|markdown_with_images|tagged_pdf | Download one requested artifact for one completed file in a batch. |
| POST | /v1/resume/parse | Queue ATS-focused resume parsing with candidate, contact, section, skills, keyword, confidence, and warning fields. |
| POST | /v1/markdown-to-pdf | Render Markdown into a PDF. |
| POST | /v1/url/render | Capture a public webpage as a PDF. |
| POST | /v1/pdf/compress | Compress one or more uploaded PDFs. |
| POST | /v1/pdf/to-word | Convert a PDF into a DOCX file. |
| GET | /v1/jobs/:jobId | Poll a queued job until it reaches a terminal state. |
| GET | /v1/jobs/:jobId/download | Download the final file for non-parse jobs. |
| GET | /v1/jobs/:jobId/download?format=json|markdown|html|text|annotated_pdf|markdown_with_html|markdown_with_images|tagged_pdf | Download parse artifacts directly. |
Section
First Request
Use the Markdown lane for a fast smoke test of auth, idempotency, status polling, and downloads.
First request
bash
curl -X POST "https://api.docushell.com/api/v1/markdown-to-pdf" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: quickstart-001" \
-d '{
"markdown": "# DocuShell\n\nRendered through the public API.",
"file_name": "quickstart.md",
"page_size": "A4"
}'