Gotenberg is a Docker-based API for PDF. It converts web pages and office documents to PDF, then merges, stamps and signs them, makes them archival or accessible, and delivers them.
Run it
Gotenberg ships as a Docker image. Start it with one command:
docker run --rm -p "3000:3000" gotenberg/gotenberg:9
Then send it a request. This one prints a web page to PDF:
curl \
--request POST http://localhost:3000/forms/chromium/convert/url \
--form url=https://example.com \
-o example.pdf
Gotenberg needs no configuration to start. Flags tune it for production when you get there.
Where to go next
Convert a URL, an HTML file and a Word document, then process the result.
How Gotenberg worksEngines, routes, stages, and when to pick a native field or a stage.
RoutesEvery route, and which takes which feature.
ChromiumWeb pages, HTML and Markdown to PDF, and screenshots.
LibreOfficeWord, Excel, PowerPoint and over a hundred other formats to PDF.
Process PDFsMerge, split, stamp, redact, fill, attach and compress any PDF.
StandardsArchival PDF/A, accessible PDF/UA, and Factur-X e-invoices.
Secure your deploymentAuthentication, outbound requests, limits, and the risks behind them.
CookbookWhole tasks in one request: e-invoices, archives, reports, contracts.
InstallImage variants, Compose, Kubernetes, Cloud Run and AWS Lambda.
Upgrade from 8.xWhat changed in Gotenberg 9, and what to change in your requests.
Gotenberg 8.xThe documentation of the previous major version.