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

  1. Select +, then in Apps select Amazon S3, or search S3. Choose the step.
  2. Choose the Connection, then the Bucket from its list.
  3. 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.
  4. 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.