Rotate PDF Pages
To rotate pages of a document, use Document Engine’s /api/build
endpoint.
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.
Rotating Pages of a File on Disk
Send a multipart request to the /api/build
endpoint, attaching input files and the instructions
JSON:
The example below rotates the first two pages of an eight-page document 90 degrees clockwise. After rotating the first two pages, the result is merged with the remaining six pages of the document to get the final output PDF.
curl -X POST http://localhost:5000/api/build \ -H "Authorization: Token token=<API token>" \ -F document=@/path/to/document.pdf \ -F instructions='{ "parts": [ { "file": "document", "pages": { "start": 0, "end": 1 }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] }, { "file": "document", "pages": { "start": 2, "end": 7 } } ] }' \ -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="document.pdf" Content-Type: application/pdf <PDF data> --customboundary Content-Disposition: form-data; name="instructions" Content-Type: application/json { "parts": [ { "file": "document", "pages": { "start": 0, "end": 1 }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] }, { "file": "document", "pages": { "start": 2, "end": 7 } } ] } --customboundary--
Rotating Pages of a File from a URL
Send a multipart request to the /api/build
endpoint, attaching a URL pointing to an input file and the instructions
JSON.
The following example rotates all the pages of the document at the URL 90 degrees clockwise:
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.pdf" }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] } ] }' \ -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.pdf" }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] } ] } --customboundary--