Convert MS Office Documents to PDF
To convert an Office file to a PDF, send a request to the /api/build
endpoint, including both the Office file as input and the instructions
JSON.
The default output from the
/api/build
endpoint is a PDF file. You can also specify other file types. Learn more about the output options in our API Reference.
Before you get started, make sure Document Engine is up and running.
You’ll be sending multipart POST requests with instructions to Document Engine’s /api/build
endpoint. To learn more about multipart requests, refer to our blog post on the topic, A Brief Tour of Multipart Requests.
Check out the API Reference to learn more about the /api/build
endpoint and all the actions you can perform on PDFs with Document Engine.
Converting an Office File from Disk
Send a multipart request to the /api/build
endpoint and attach an Office file:
curl -X POST http://localhost:5000/api/build \ -H "Authorization: Token token=<API token>" \ -F document=@/path/to/example-document.docx \ -F instructions='{ "parts": [ { "file": "document" } ] }' \ -o result.pdf
POST /api/build HTTP/1.1 Content-Type: multipart/form-data; boundary=customboundary Authorization: Token token=<API token> --customboundary Content-Disposition: form-data; name="document"; filename="example-document.docx" Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document <DOCX data> --customboundary Content-Disposition: form-data; name="instructions" Content-Type: application/json { "parts": [ { "file": "document" } ] } --customboundary--
Converting an Office File from URL
Send a multipart request to the /api/build
endpoint, attaching a URL pointing to the Office file:
curl -X POST http://localhost:5000/api/build \ -H "Authorization: Token token=<API token>" \ -F instructions='{ "parts": [ { "file": { "url": "https://pspdfkit.com/downloads/examples/paper.docx" } } ] }' \ -o result.pdf
POST /api/build HTTP/1.1 Content-Type: multipart/form-data; boundary=customboundary Authorization: Token token=<API token> --customboundary Content-Disposition: form-data; name="instructions" Content-Type: application/json { "parts": [ { "file": { "url": "https://pspdfkit.com/downloads/examples/paper.docx" } } ] } --customboundary--