AWS S3 n8n integrationAutomate AWS S3 with n8n.
Every file a workflow produces can land in a bucket the second it exists. The AWS S3 n8n integration is one node, 12 operations and 3 resources: Bucket, File and Folder. It uploads, downloads, copies, lists and removes, for teams that already store on S3 and want the workflow to do the moving.
Verified Trustpilot reviews · AI, automation & growth agency
What does the AWS S3 n8n integration actually cover?
The AWS S3 node is the one n8n ships for Amazon S3, and it works on three things: buckets, files and folder keys. Twelve operations in total, split as four on buckets, five on files and three on folders. The AWS credential, the stored login n8n keeps for you, is created once in the Credentials menu and every workflow then picks it from the node dropdown.
The first job most teams hand it is storage at the end of a chain. A workflow renders a PDF, or pulls the rows it needs out of Google Sheets and turns them into a CSV, then Upload a file drops the result into a bucket under a file name the workflow composes, an invoice number and a month for instance. Create a folder and its Parent Folder Key keep that tidy when one folder per client reads better than a flat list of keys.
The second runs the other way. Download a file pulls an object into a binary field, the container n8n uses for file data rather than text, and the next node passes it on: an attachment on a message in Slack, a file sent through Gmail, or a payload handed to a parsing service. The bucket is left exactly as it was.
Third comes housekeeping, which is where the list operations earn their place. Get many files shows what a bucket holds, Search a bucket narrows it with Prefix when keys follow a convention, and Delete a file or Delete a folder clears what a retention rule no longer needs. Copy a file writes a second copy elsewhere, and its Storage Class field can send that copy to Glacier or Deep Archive.
Twelve operations do not cover the whole S3 API. For anything the node leaves out, the HTTP Request node calls any endpoint of the API and reuses the same AWS credential through predefined authentication, so one set of keys still runs the workflow. Reaching for it is normal practice here, not a sign that something went wrong.
Two limits are worth knowing before you build. There is no AWS S3 trigger node in n8n, so the workflow starts elsewhere, most often on a Schedule Trigger that runs at a fixed interval. And any list operation stops at Limit unless Return All is on, the setting that quietly truncates results once a bucket grows past what a test run showed.
Two other pages help when the ground is still moving. The n8n review is the place to start if the platform choice is not settled, and the n8n training if a team would rather learn the node than call a freelance every time a workflow breaks.
How do you connect AWS S3 to n8n?
- 01
Create an access key in the IAM console
In the IAM console, open your user name in the upper right, then Security credentials. Under Access keys, select Create access key and pick a use case, or Other when nothing fits. Set a description tag such as
n8n integrationso the key stays recognizable, then reveal the Access Key ID and the Secret Access Key. - 02
Save the AWS (IAM) credential in n8n
Open Credentials in n8n and create an AWS (IAM) credential. Select your AWS Region first, then paste the Access Key ID and the Secret Access Key. Working with short-lived keys instead, turn on the temporary security credential option and add the Session token. The credential is stored once and shows up in every workflow that needs it.
- 03
Point the AWS S3 node at that credential
Add the AWS S3 node, choose the credential in its dropdown, then set Resource and Operation. Teams that would rather not keep static keys in n8n use the AWS (Assume Role) credential instead: it authenticates by assuming an IAM role through AWS STS, and the keys for that call are either typed in or read from the environment n8n runs in, which is the route for an instance self-hosted on EKS, ECS or EC2.
Every AWS S3 operation, one by one
The AWS S3 node exposes 12 operations across 3 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.
| Resource | Create | Get Many | Delete | Copy | Download | Search | Upload |
|---|---|---|---|---|---|---|---|
| Bucket | ✓ | ✓ | ✓ | ✓ | |||
| File | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| Folder | ✓ | ✓ | ✓ |
Operations index
Bucket
4 operationsCreate a bucket
bucket.createWhat you see in n8n
Notes & use cases
A new bucket appears in the account behind the credential, and the workflow carries on with that name. Useful when each client needs its own storage space, not a shared prefix.
Key parameters
- Name: the name of the bucket to create, typed in or built from an expression, the n8n syntax that reads a value from the incoming item, such as
{{ $json.client_slug }}. - Region: in Additional Fields, the region the bucket is created in; left empty, n8n uses the region on the credential.
- ACL: the canned ACL applied to the bucket, from
PrivatetopublicRead.
Delete a bucket
bucket.deleteWhat you see in n8n
Notes & use cases
One field is all this operation asks for, which makes it easy to wire at the end of a lifecycle: a bucket created for a single batch, removed once the batch is confirmed.
Key parameters
- Name: the name of the AWS S3 bucket to delete, usually carried from an earlier node with an expression like
{{ $json.bucket }}rather than typed by hand.
Get many buckets
bucket.getAllWhat you see in n8n
Notes & use cases
Nothing is required here: n8n returns the buckets the credential can see, one item per bucket, ready for a loop or a filter downstream.
Key parameters
- Return All: switched on, n8n walks the pages of the API until every bucket is back.
- Limit: the maximum number of buckets returned while Return All stays off, which is plenty for a check inside the editor.
Search a bucket
bucket.searchWhat you see in n8n
Notes & use cases
Inside a single bucket, this operation returns the keys it holds and can group them, which is the closest a workflow gets to browsing a folder tree.
Key parameters
- Bucket Name: the bucket to search in.
- Prefix: in Additional Fields, limits the response to keys starting with the string you give, a client folder for instance.
- Delimiter with Include Common Prefixes: the delimiter groups keys, and the option returns those grouped prefixes rather than the object contents.
- Start After: the key S3 starts listing from, to resume where a previous run stopped.
File
5 operationsCopy a file
file.copyWhat you see in n8n
Notes & use cases
Copying writes the object to a second path and leaves the source alone. Both paths start with a slash, then the bucket, then the key, as in /bucket/my-image.jpg.
Key parameters
- Source Path: the source bucket and the key of the source object, separated by a slash.
- Destination Path: the destination bucket and the key to write, for example
/bucket/my-second-image.jpg. - Storage Class: in Additional Fields, where the copy lands, from
standardtoglacierordeepArchive. - Metadata Directive:
copykeeps the metadata of the source object,replaceuses what the request provides.
Delete a file
file.deleteWhat you see in n8n
Notes & use cases
Removing an object needs the bucket and the exact key, and nothing more unless the bucket keeps versions.
Key parameters
- Bucket Name: the bucket holding the object.
- File Key: the full key of the object, folder prefix included.
- Version ID: in Options, targets one version of the object instead of the current one.
Download a file
file.downloadWhat you see in n8n
Notes & use cases
The object comes back as binary data attached to the item rather than as text in a field, which is what the nodes downstream expect when they send or parse a file.
Key parameters
- Bucket Name: the bucket to read from.
- File Key: the key of the object to download.
- Put Output File in Field: the name of the output binary field the file is placed in, and the name every later node has to read.
Get many files
file.getAllWhat you see in n8n
Notes & use cases
Objects in a bucket come back one item at a time, and a folder key narrows the list before the workflow starts looping over it.
Key parameters
- Bucket Name: the bucket to read.
- Folder Key: in Options, restricts the listing to one folder instead of the whole bucket.
- Return All: leave it off while building, because the run then stops at Limit rather than walking a bucket with thousands of keys in it.
Upload a file
file.uploadWhat you see in n8n
Notes & use cases
Whatever the previous node produced ends up in the bucket under the name you choose, as binary data or as plain text typed into the node.
Key parameters
- Bucket Name: the destination bucket.
- File Name: the key written in the bucket,
hello.txtor a name built from the item. - Binary File and Input Binary Field: turn Binary File on and name the input binary field holding the file; turn it off and File Content takes the text to store.
- Parent Folder Key: in Additional Fields, the folder the file is created in.
Folder
3 operationsCreate a folder
folder.createWhat you see in n8n
Notes & use cases
n8n writes a folder key into the bucket, so later operations can address files by folder instead of through one long flat key.
Key parameters
- Bucket Name: the bucket the folder belongs to.
- Folder Name: the name of the folder to create.
- Parent Folder Key: in Additional Fields, the folder you want to create it in, which is how a second level appears.
- Storage Class: also in Additional Fields, from
standardtointelligentTieringoronezoneIA.
Delete a folder
folder.deleteWhat you see in n8n
Notes & use cases
Two fields, no options, no room for a surprise: the bucket and the folder key, and the folder is gone.
Key parameters
- Bucket Name: the bucket that holds the folder.
- Folder Key: the key of the folder to remove, as it appears in the bucket.
Get many folders
folder.getAllWhat you see in n8n
Notes & use cases
Folders sitting in a bucket come back as items, which gives a workflow a map of the place before it decides where to write.
Key parameters
- Bucket Name: the bucket to inspect.
- Folder Key: in Options, the folder whose content gets listed instead of the bucket root.
- Fetch Owner: the owner field is absent from the response by default, so switch it on to get the owner with each key.
Need help automating AWS S3 with n8n?
A person reads every message.


