Why File Storage Is a Common n8n Bottleneck
n8n is excellent at moving data between services, triggering actions, and transforming information. But it doesn't give you a place to permanently store binary files. If your workflow generates a PDF invoice, downloads a user-submitted image, or fetches a report from an external API, you need somewhere to put that file — and a stable URL to reference it later.
Temporary file storage inside a workflow only lasts for the duration of that execution. That's fine for processing, but it means any downstream step that needs to retrieve the file hours or days later will come up empty. This is why connecting n8n to a dedicated file-hosting service is often the missing piece in otherwise solid automation stacks.
Foldr.Space is built for exactly this use case: upload a file, get a permanent download link, and use that link anywhere — in emails, Slack messages, CRMs, or database records. Because the links never expire on the free tier or paid plans, you don't have to worry about automated workflows breaking because a URL rotted.
Understanding Foldr's API Before You Build
Before wiring anything into n8n, it helps to understand what Foldr's API actually does. The developer API at /api/v1 accepts file uploads programmatically and returns a permanent URL for each file. It also supports bulk uploads, which is useful when your workflow needs to handle multiple files in a single execution.
Authentication uses an API key tied to your Foldr account. You'll pass this key in the request header. The response includes the file's permanent download link, a direct embed URL (for images, video, and audio), and metadata like file size and upload timestamp. Those fields become variables you can pass downstream to other nodes in your n8n workflow.
One thing worth knowing upfront: the free tier allows uploads up to 2GB with no account required, but API access for automation requires a Pro account or a Foldr Space. If you're building a workflow for a team, a Foldr Space (available in 5GB, 20GB, and 100GB tiers) keeps everything organized under a shared storage bucket rather than scattered across individual accounts.
Setting Up the Foldr Node in n8n
Foldr has a native integration with n8n, which means you don't have to build an HTTP Request node from scratch. You can find the integration details and authentication steps on the Foldr n8n integration page at /integrations/n8n. Once you've connected your account using your API key, the node will appear in your workflow editor like any other connected service.
To authenticate, go to your Foldr account settings, generate an API key, and paste it into the n8n credential manager. Give the credential a clear name — something like 'Foldr Production' — so it's easy to identify if you're managing multiple environments. After that, the Foldr node in n8n will let you select actions like uploading a file or retrieving file metadata.
If you prefer to use an HTTP Request node instead of the native integration — for example, if you need more control over request headers — you can call the upload endpoint directly. Set the method to POST, point it at the Foldr API endpoint, and pass your binary data as multipart/form-data. Either approach works; the native node just reduces the setup time significantly.
Building a Basic Automated File Upload Workflow
A minimal n8n file upload workflow has three parts: a trigger that starts the execution, a node that produces or retrieves the binary file, and the Foldr upload node that stores it and returns a URL. The trigger could be a webhook, a schedule, a form submission, an email attachment, or any other event your stack produces.
Let's say you're automating weekly PDF reports. Your workflow fetches data from a database, generates a PDF using a tool like a Code node or an external service, and then passes that binary output to the Foldr upload node. Foldr stores the file and returns a permanent link. The final node in the workflow sends that link to a Slack channel or writes it to a Google Sheet — wherever your team needs it.
A slightly more advanced pattern involves using the n8n file upload node in combination with Foldr's password-protected links feature. When you upload via the API, you can set a password on the link so that only recipients with the password can download the file. This is useful for sharing sensitive reports or client deliverables without exposing the file publicly.
For workflows that generate many files per run, Foldr's bulk upload capability via the API means you don't have to loop through files one at a time. A single API call can handle a batch, and the response will include an array of permanent URLs — one per file — that you can iterate over in subsequent nodes.
Handling Binary Data Correctly in n8n
The most common point of failure in n8n file upload workflows is mishandling binary data. n8n stores binary data in a separate data structure from the JSON fields. If you try to pass a file URL string to an upload node expecting actual binary content, the node will fail or upload an empty file.
Always check that the node producing your file is outputting binary data, not just a URL or a base64 string. Nodes like 'Read Binary File', 'HTTP Request' (with 'Response Format' set to 'File'), and email nodes that extract attachments will give you proper binary output. If you're working with base64-encoded content, use a Code node to convert it to a Buffer before passing it to the upload node.
Another thing to watch: file names. The Foldr API will accept an upload without an explicit filename, but the resulting link will have a generated name that may not be human-readable. Pass the filename explicitly in your upload call — especially for client-facing files — so the download experience is clean. You can set this dynamically using n8n expressions, pulling the filename from earlier in the workflow.
Using Permanent Links in Downstream Workflow Steps
The permanent download link returned by Foldr is the real value of this integration. Once you have that URL, you can use it anywhere in your workflow — and across future workflows — without worrying about it expiring. Store it in your database, embed it in a notification email, add it to a CRM record, or pass it to a client portal.
For image and video files, Foldr also returns a direct embed URL. This is a separate link that serves the raw file content directly, making it suitable for use in HTML img tags, video players, or anywhere you need the file to render inline rather than trigger a download. If your workflow is generating image assets — banners, thumbnails, charts — this embed URL is often more useful than the standard download link.
Foldr also supports link expiration and self-destructing links configured at upload time via the API. If your workflow is handling time-sensitive files — one-time reports, temporary access grants, audit documents — you can set the link to expire after a specific period or after a single download. The permanent link option and the expiring link option aren't mutually exclusive across all use cases; you choose per upload based on what the workflow needs.
Connecting Form Submissions to File Storage
One specific workflow pattern worth highlighting is the file-upload form. Foldr includes a form builder that supports file uploads natively. When someone submits a file through a Foldr form, the upload goes directly into your Foldr storage and you can trigger an n8n workflow via webhook to process the submission immediately.
This is a clean alternative to building a custom file-upload form and managing your own storage. The Foldr upload endpoint at /upload handles the file receipt, Foldr stores it and generates a permanent link, and your n8n workflow picks up from there — routing the file to the right place, notifying the right people, and logging the submission wherever you need it.
This pattern works well for client asset submission, job application portals, event photo collection, or any scenario where external users need to send files into your workflow. Because the storage is handled by Foldr rather than your own infrastructure, you don't need to configure S3 buckets, set permissions, or manage storage scaling.
Testing and Debugging Your File Upload Integration
Before pushing any file-upload workflow to production, test it with real binary data — not placeholder text. Small test files that complete quickly can mask issues that only appear with larger payloads, like timeout errors or multipart encoding problems. Test with files close to your expected real-world size.
Use n8n's execution log to inspect what the Foldr node receives and returns at each step. If an upload is failing, check the response body in the log — Foldr's API returns descriptive error messages that usually point directly to the problem, whether that's an authentication issue, an oversized file, or a malformed request.
For workflows that run on a schedule or via webhook trigger, set up a notification node at the end of the error branch — not just the success branch. If a file upload fails silently, you want to know about it before it becomes a problem upstream. A simple Slack or email alert on workflow failure takes minutes to set up and saves hours of debugging later.
Frequently Asked Questions
Do I need a paid Foldr account to use the n8n integration?
The Foldr API and n8n integration require a Pro account or a Foldr Space subscription. The free tier allows manual uploads up to 2GB without an account, but programmatic access for automation workflows is a paid feature. Pro plans start with a one-time payment option, and Foldr Spaces are available for teams needing shared storage.
What file size limits apply when uploading via the n8n integration?
The free tier supports uploads up to 2GB. Pro accounts and Foldr Spaces extend this significantly depending on the plan. If your workflows regularly generate large files — video exports, bulk archives, large datasets — check the specific limits on your current plan before building your workflow around them.
Will my uploaded file links break if I downgrade or cancel my Foldr plan?
Foldr's permanent links are designed to persist, but the specific terms around link retention after a plan change depend on your account status. It's worth reviewing Foldr's documentation or contacting support if you're planning a plan change and have critical workflow links in use downstream.
Can I use Foldr to store files uploaded through an n8n webhook trigger?
Yes. If your n8n workflow receives a webhook that includes a file attachment — for example, from a form submission or a third-party service — you can pass that binary data directly to the Foldr upload node. The workflow will store the file and return a permanent link you can use in subsequent nodes.
How do password-protected links work when set via the API?
When uploading via the Foldr API, you can include a password parameter that protects the download link. Anyone who tries to access the link will be prompted to enter the password before the file downloads. You set this at upload time, and it applies immediately — there's no separate step required after the upload completes.
Is there a way to replace a file at an existing URL after uploading it?
Foldr Pro supports swappable images, which lets you replace the file behind an existing link without changing the URL. This is useful in workflows where the same link is embedded in a document or webpage and you need to update the underlying file without breaking all references to it.
If you're ready to stop cobbling together temporary file workarounds in your automations, start by connecting n8n to Foldr with a single test workflow: trigger it manually, upload one file, and log the returned URL. Once you've confirmed the basic pattern works end to end, layering in password protection, expiring links, or bulk uploads is straightforward. That first successful automated upload is the proof of concept everything else builds from.