Run PDF workflows in your environment
Connect self-hosted n8n to pdfRest Cloud or a pdfRest deployment in your infrastructure. Control the workflow host, its network access, and how your document process connects to internal systems.
Why choose self-hosted n8n?
Self-hosted n8n gives your team control over the workflow environment, update timing, and access to internal services. Pair it with a private pdfRest deployment when the document-processing step needs to stay on your network, or use pdfRest Cloud to keep that processing service hosted.
Your team maintains the n8n service, storage, backups, and network configuration. Infrastructure and product licensing are separate considerations. For a managed workflow host, use the n8n Cloud setup guide.
Before you start
- A running n8n instance and an owner or admin account, or a local test environment prepared below.
- A pdfRest Cloud API key or the URL of your deployed pdfRest service.
- Network access from n8n to that endpoint, plus credentials for your source and destination systems.
Operation availability and usage depend on your pdfRest deployment and plan. Cloud Starter and Container Trial apply watermarks or, for some output types, text redactions. Compare pdfRest plans.
Prepare your n8n instance
If n8n is already running, continue to node installation. These alternatives start a local test instance; choose one.
Run a local n8n instance with Docker
Install and start Docker. Open your terminal and run:
docker volume create pdfrest_n8n_data
docker run -d --name pdfrest-n8n -p 127.0.0.1:5678:5678 -e GENERIC_TIMEZONE=Etc/UTC -e TZ=Etc/UTC -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true -v pdfrest_n8n_data:/home/node/.n8n n8nio/n8nOpen http://localhost:5678 and complete the initial account setup. The volume retains the instance data across restarts. Replace both timezone values if schedules should use your local timezone. Run the creation command once; stop and restart the existing container with:
docker stop pdfrest-n8n
docker start pdfrest-n8nIf startup fails, run docker logs --tail 50 pdfrest-n8n. This local example binds the editor to your computer. Your computer and Docker must remain running. For a maintained deployment, follow n8n’s current deployment guidance. Running n8n in Docker does not also deploy pdfRest.
Run a local n8n instance directly
Use this option only with an n8n release that still supports direct installation. n8n has deprecated this method for newer releases; prefer Docker for a new deployment. Install a runtime supported by both your n8n release and the pdfRest node, then open your terminal and run:
npx n8nComplete any installation prompt, open http://localhost:5678, and set up your account. Keep the terminal open while n8n runs. Stop with Ctrl+C and return by running the same command under the same operating-system account. See n8n’s direct-installation guide for current prerequisites.
Install pdfRest API Toolkit
- Sign in to n8n as an owner or admin.
- Open Settings → Community Nodes → Install.
- Enter
@pdfrest/n8n-nodes-pdfrest, review the installation prompts, and select Install. - Return to your workflow, search for pdfRest in the nodes panel, and add pdfRest API Toolkit.
Where verified-node discovery is enabled, you can also install through the nodes panel. For installation controls and updates, see n8n’s community-node management guide.
Connect your pdfRest deployment
Use pdfRest Cloud
Create a pdfRest account and get your API key from the account dashboard. In the pdfRest API Toolkit node, create a pdfRest API credential. Select the US (https://api.pdfrest.com) or EU (https://eu-api.pdfrest.com) API Base URL, enter your API key, and save the credential.
Use a self-hosted pdfRest deployment
Deploy pdfRest through Container or AWS. In the credential, select Self-Hosted or Container Deployment and enter its Deployment URL. This credential does not require an API key for self-hosted pdfRest; configure product licensing in the pdfRest deployment.
Keep Cloud API keys in n8n credentials rather than workflow exports or ordinary node fields. The selected endpoint receives the documents and parameters supplied to the node.
Choose an endpoint n8n can reach
A URL that works in your desktop browser may not work from the n8n host. Test connectivity from the environment where n8n runs. For containers, localhost refers to that container, not another container or the host computer. Use the service address or host address appropriate to your deployment.
Self-hosting n8n alone does not keep PDF processing local. A Cloud credential sends documents to pdfRest Cloud. To keep the processing step private, configure n8n to use your private pdfRest service and account for any external source, destination, or analysis nodes in the workflow.
Test a complete PDF workflow
Use a small sample PDF in Google Drive to verify the connection and file handling before adding more operations. Connect your Google Drive account in n8n and create separate input and output folders.
- Start with a Manual Trigger and a Google Drive node configured to download your sample file. A file ID or metadata alone is not the PDF; confirm the download produces binary file data.
- Add pdfRest API Toolkit, select your credential, and choose Compress PDF.
- Choose Input File. Set Input File Data Field Name to the binary field from the download node, typically
data. Select the compression settings for your test. - Enable Download Output Files and set Output File Data Field Name to
data. Without the download option, processing returns its JSON response by default. - Connect a Google Drive upload node. Use the output binary field
data, give the result a distinct filename, and select the output folder. - Execute the workflow and open the saved PDF. Check the content and file size; compression results depend on the source document.
Once the test works, replace the manual start with a Google Drive trigger for new files in your input folder, map its file ID into the download node, and test again. Keep the output folder outside the watched input folder to avoid processing the same result repeatedly. Publish or activate the workflow using the controls in your n8n version.
Move from a local test to ongoing automation
Use an always-on host for scheduled and event-driven workflows. Configure a reachable HTTPS webhook address when external services must call n8n, and keep persistent storage and backups for workflows and credentials. Test node and n8n updates against your document workflow before rollout.
For the complete hosting configuration, follow n8n’s deployment documentation. The local startup examples above are for building and testing the integration.
Troubleshoot the connection
The node is missing
Confirm the package installed successfully and that community nodes are enabled by your instance configuration. An owner or admin can review the installed package under Settings → Community Nodes.
Authentication or connection fails
For pdfRest Cloud, verify the selected endpoint, API key, plan, and usage allowance. For self-hosted pdfRest, check the Deployment URL, network access, and product licensing. Review the failed execution for the specific API response.
The next step has no PDF file
Confirm the input step downloaded the PDF as binary data and that the field name matches Input File Data Field Name. Turn on Download Output Files for the processing step, then match its output field in the upload step. Operations producing multiple files use suffixes such as data_1; check the actual output before mapping them.
