Seven Amazon S3 steps work with your buckets, on Amazon S3 or an S3-compatible store:
- Upload a file — Puts a file from an earlier step in a bucket.
- Download a file — Brings an object from a bucket, for the steps after.
- List objects — The objects in a bucket — the next steps run once for each.
- Delete an object — Removes an object from a bucket.
- Copy an object — Copies an object to a new key, in the same bucket or another.
- Get a presigned URL — A link to an object that works for a time, without the bucket being public.
- Create a bucket — Makes a new bucket in the connection's region.
In the step picker they are under Developer. Changes data marks Upload, Copy and Create a bucket; Deletes data marks Delete an object.
Who can do this
Workspace Admins and Editors. Amazon S3 is a paid-plan service: you can build and test these steps on any plan; publishing needs a paid plan.
Before you start
An Amazon S3 connection in this workspace — see Connect Amazon S3 or an S3-compatible store.
Steps
- Select +, then in Apps select Amazon S3, or search S3. Choose the step.
- Choose the Connection, then the Bucket from its list.
- Fill in the step. A key is the object's path in the bucket —
northwind/INV-1042.pdf:- Upload a file — Key (empty keeps the file's own name), the File from an earlier step, optional Content type, and Public — off unless the file is meant for everyone. An object already at the key is replaced.
- Download a file — Key.
- List objects — optional Starting with —
northwind/— and Most objects, 1,000 unless you change it, up to 10,000. - Delete an object — Key.
- Copy an object — Key, optional To bucket (empty is the same bucket) and New key.
- Get a presigned URL — Key and Lasts for (seconds) — empty is an hour, up to seven days.
- Create a bucket — Name: 3 to 63 lowercase letters, numbers, dots and hyphens, unique across all of S3.
- Select Run this step, then check Output.
Output
| Step | Fields |
|---|---|
| Upload a file | bucket, key, size, contentType, etag. |
| Download a file | bucket, key, name, size, contentType, modifiedAt — and the file itself, for the steps after. |
| List objects | One item per object — bucket, key, name, size, modifiedAt, etag — and the next steps run once for each. |
| Delete an object | bucket, key, deleted — false when nothing was there. |
| Copy an object | bucket, key, size, contentType, etag, and fromBucket, fromKey. |
| Get a presigned URL | url, and expiresAt in UTC. |
| Create a bucket | bucket, region. |
Good to know
- Presigned links instead of public objects. To share a file with a customer, upload it private and send a presigned URL that lasts a day.
- Public needs the bucket's permission. Many buckets turn public objects off; then Upload with Public on is refused.
- Paid: a live run on a plan without paid services is skipped; tests work on any plan.
If something goes wrong
| What the run says | Why | What to do |
|---|---|---|
| Amazon S3 now asks for an access key, secret and region. Reconnect it to use the Amazon S3 steps. | The connection was made with the old form. | Reconnect it on Connections. |
| There is no object at that key. | The key is wrong, or the object has gone. | Check the key — it is case-sensitive. |
| The bucket does not take public-read objects … | Public is on, and the bucket turns public objects off. | Untick Public, or allow it on the bucket. |
| Amazon S3 refused: … The key lacks the permission, or the bucket's policy does not allow it. | The key may not do that on this bucket. | Give the key the permission. |
| Choose the bucket from the list. A value from an earlier step cannot name it. | Bucket holds a {{ }}. |
Choose it from the list. |
| “…” cannot be a bucket name: … | The name breaks S3's rules. | Use lowercase letters, numbers, dots and hyphens. |