/

Amazon S3

Warehouse connector

Amazon S3

Receive Amazon S3 object events in Tessel through EventBridge, as typed events. Use them to process uploaded files, then read, write or copy objects with a scoped IAM role.

Connect Amazon S3
Connect Amazon S3
See setup steps
See setup steps

Warehouse

Category

Events

Sync mode

p95 750 ms

Latency

7 min

Setup time

What it can do

Triggers · 3
  • Object createdEvent
  • Object deletedEvent
  • Object restoredEvent
Actions · 5
  • Get an objectRead
  • List objectsRead
  • Put an objectWrite
  • Copy an objectWrite
  • Create a presigned URLRead

Overview

The Amazon S3 connector listens for object events from the buckets you choose and reads or writes objects with an IAM role in your account. Each event carries the bucket, key, size and ETag, and every file Tessel touches is listed in the trace of the run.

Teams use it to parse vendor CSVs as they land and load them into Snowflake, to copy signed contracts from Google Drive into an archive bucket and to post a Slack message when a nightly export is missing.

Supported setups

  • General purpose buckets in any AWS region

  • SSE-S3 and SSE-KMS encrypted objects, with kms:Decrypt on the role

  • Prefix and suffix filters per trigger, such as invoices/ and .csv

How event delivery works

You turn on EventBridge notifications for the bucket, and a rule forwards matching events to Tessel's endpoint in your workspace region. Tessel checks each event against the schema and starts the workflow, then assumes your role to read the object.

{
  "source": ["aws.s3"],
  "detail-type": ["Object Created"],
  "detail": {
    "bucket": { "name": ["acme-vendor-drops"] },
    "object": { "key": [{ "prefix": "invoices/" }] }
  }
}
{
  "source": ["aws.s3"],
  "detail-type": ["Object Created"],
  "detail": {
    "bucket": { "name": ["acme-vendor-drops"] },
    "object": { "key": [{ "prefix": "invoices/" }] }
  }
}
{
  "source": ["aws.s3"],
  "detail-type": ["Object Created"],
  "detail": {
    "bucket": { "name": ["acme-vendor-drops"] },
    "object": { "key": [{ "prefix": "invoices/" }] }
  }
}

Large files

Objects over 100 MB are read in ranges and written with multipart upload, so a step never holds a whole file in memory. Writes use the run and step as part of the key, so a retry overwrites rather than duplicates.

Permissions needed

Create an IAM role that trusts Tessel's AWS account with your external ID. It needs read access to the buckets your triggers watch. Write access is only required on prefixes you write to.

  • s3:GetObject and s3:ListBucket on watched buckets

  • s3:PutObject only on prefixes a workflow writes to

  • sts:AssumeRole trust with sts:ExternalId set to your workspace ID

Setup

Five steps. About seven minutes.

Most of the time goes into the CloudFormation stack. Tessel assumes the role before you move on.

  1. Deploy the CloudFormation stack that creates the IAM roleAWS3 min
  2. Turn on EventBridge notifications for the bucketAWS1 min
  3. Paste the role ARN and pick buckets and prefixesTessel2 min
  4. Confirm the external ID matches the trust policyTessel1 min
  5. Upload a test file and watch the event arriveVerify750 ms

Your buckets, in a workflow today.

Connect Amazon S3 on the free plan. Up to three builders and 10,000 runs a month, no card required.

Connect Amazon S3
Connect Amazon S3
All integrations
All integrations

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

Create a free website with Framer, the website builder loved by startups, designers and agencies.