Amazon S3 Component
Manage objects and buckets in Amazon S3.
Component key: aws-s3
Description
Amazon S3 is an object storage service from Amazon Web Services (AWS). This component allows you to create, read, update, move, list, and delete objects (files) within an Amazon S3 bucket.
API Documentation
This component was built using the Amazon S3 API Reference.
A common integration pattern involves listing files in a file store, and performing a series of actions on the array of files that are returned. See our looping over files quickstart for information about how to create a loop over an array of files.
Listening for file changes
You can leverage Amazon Simple Notification Service (SNS) to listen for file changes in S3. Our GitHub examples repo contains an example integration that illustrates how to listen for file changes in S3 and perform an action when a file is added or updated - you can import and try it out for yourself.
The example integration contains three flows:
- Create and configure SNS topic runs when an instance is deployed and will create an SNS topic and configure it to listen for new files added to S3. It instructs SNS to notify the Receive SNS Notifications flow when a new file is added to an S3 bucket that a user selected as part of the configuration wizard.
- Receive SNS Notifications will receive the SNS notification and extract the S3 bucket and key from the message. It will fetch the file that was added. From there, you can process or send that file to another system.
- Remove SNS Topic will remove the SNS topic that was created in the first flow when an instance is deleted.
Streaming large files to S3
Amazon S3 offers a feature called multipart upload that allows you to upload large files in parts. This component supports multipart uploads in two ways:
-
File Streaming: This is useful if you are looping over a paginated API and would like to stream the response to S3 as a CSV (or similar) file. This option is useful when you have a large number of records to process and you want to avoid loading all of them into memory at once (which can cause an out-of-memory error). When you use the Upload Stream actions, the component will automatically handle the multipart upload for you. Within your integration you would:
- Run a Upload Stream - Create Stream action to create a new file stream.
- Loop over the records you want to write to the file.
- For each record, run a Upload Stream - Write Data action to write the record to the file stream.
- Run a Upload Stream - Close Stream action to close the file stream and upload the file to S3.
-
Multipart Upload: This is useful if you have a file that is already split into parts and you want to upload the parts to S3 and then join them together. Within your integration you would:
- Run a Create Multipart Upload action to start a new multipart upload.
- Run a Generate Presigned URL for Multipart Uploads action to generate a presigned URL for each part.
- Run an HTTP component Post action to post each part to the presigned URL.
- Run a Complete Multipart Upload to complete the multipart upload.
This option requires that you manually handle the multipart upload process and abide by the restrictions that Amazon S3 imposes on multipart uploads (like each part being at least 5MB in size, with the exception of the last part).
Connections
AWS S3 Access Key and Secret
An AWS IAM access key pair is required to interact with Amazon S3. Ensure the key pair generated in AWS has proper permissions to the S3 resources to access. Read more about S3 IAM actions in the AWS documentation.
Prerequisites
- An AWS account with IAM access
- Appropriate permissions to create IAM access keys
Setup Steps
To create an IAM access key pair:
- Sign in to the AWS Console and navigate to Identity and Access Management (IAM)
- Select the IAM user that will be used for the integration
- Navigate to the Security credentials tab
- Under the Access keys section, select Create access key
- Choose the appropriate use case (e.g., Third-party service or Application running outside AWS)
- Copy both the Access key ID and Secret access key when displayed
The Secret access key is only shown once during creation. If it is not copied at this time, a new access key pair must be created.
Configure the Connection
- Enter the Access key ID into the connection configuration
- Enter the Secret access key into the connection configuration
| Input | Notes | Example |
|---|---|---|
| Access Key ID | AWS IAM Access Key ID used for programmatic access. Create access keys in the AWS IAM Console under Security Credentials. | AKIAIOSFODNN7EXAMPLE |
| Secret Access Key | AWS IAM Secret Access Key paired with the Access Key ID. <strong>Important:</strong> This value is only shown once when created in the AWS IAM Console. | wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY |
AWS Role ARN
AWS Assume Role authentication allows assuming an IAM role using temporary security credentials. This method is useful for cross account access or when implementing principle of least privilege.
Refer to the AWS documentation on assuming roles for detailed information.
Prerequisites
- Completed API Key Secret connection setup (access key pair required)
- Appropriate permissions to create IAM roles
Setup Steps
An IAM user with access keys is required to assume a role. If access keys have not been created, follow the API Key Secret setup steps first, then return here to create the IAM role.
Create an IAM Role with Trust Policy
- From the IAM Console, navigate to Roles and select Create Role
- Select Custom trust policy as the trusted entity type
- Enter the trust policy below, replacing
USER_ARNwith the IAM user ARN:
View trust policy template
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "USER_ARN"
},
"Action": "sts:AssumeRole"
}
]
}
- Click Next and attach the appropriate S3 permissions policy (e.g., AmazonS3FullAccess or AmazonS3ReadOnlyAccess)
- Complete the remaining steps and select Create Role
- Copy the Role ARN from the role summary (format:
arn:aws:iam::123456789012:role/role-name)
Configure the Connection
- Role ARN: The ARN of the IAM role to assume
- Access Key ID: From the IAM user (see API Key Secret)
- Secret Access Key: From the IAM user
- External ID (optional): Shared secret for enhanced security
The External ID provides additional security for cross-account access. Refer to the AWS documentation for more information.
Verify Connection
The IAM user credentials assume the role, which provides temporary credentials with the role's attached permissions. Ensure the trust policy correctly references the IAM user ARN.
| Input | Notes | Example |
|---|---|---|
| Access Key ID | An AWS IAM Access Key ID | AKIAIOSFODNN7EXAMPLE |
| External ID | Provides enhanced security measures to the connection. Optional, but recommended. Please check AWS docs for more information. | shared-common-secret |
| Role ARN | An AWS IAM Role ARN | arn:aws:iam::OtherAccount-ID:role/assumed-role-name |
| Secret Access Key | An AWS IAM Secret Access Key | wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY |
Triggers
New and Updated Files
Checks for new and updated files in a specified S3 bucket on a configured schedule. | key: pollChangesFilesTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
The New and Updated Files trigger checks for new and updated files in a specified S3 bucket on a configured schedule. It monitors file changes based on the LastModified timestamp of objects.
For more information on S3 objects, see Working with Amazon S3 objects.
How It Works
- Run on the configured schedule (e.g., every 5 minutes)
- List objects in the bucket using the ListObjectsV2 API (up to 4,000 objects)
- Compare each object's
LastModifiedtimestamp against the last poll time - Return keys for any files modified since the last poll
- Maintain state to track the last poll time automatically
On the first run, the trigger sets the poll timestamp without returning files. Subsequent runs detect files created or modified after that timestamp.
Configuration
- Connection: AWS IAM credentials (Access Key or dynamic credentials)
- AWS Region: The region where the S3 bucket is located
- Bucket Name: The name of the S3 bucket to monitor
Returned Data
The trigger returns an array of object keys (file paths) that have been created or modified since the last poll. When no changes are detected, returns an empty array and sets polledNoChanges to true.
View example response
{
"data": [
"path/to/new-file.txt",
"path/to/updated-file.pdf",
"images/photo.jpg"
]
}
Best Practices
- Polling Frequency: Use 5-15 minute intervals for active buckets; longer intervals for low-activity buckets
- Object Limit: The trigger checks up to 4,000 objects per poll; for larger buckets, consider using the Webhook trigger with SNS notifications instead
- Permissions: The IAM credentials require
s3:ListBucketpermission on the bucket
New Buckets
Checks for new buckets on a configured schedule. | key: pollNewBucketsTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
Webhook
Trigger to handle SNS subscription for S3 event notifications | key: snsS3NotificationWebhook
The Webhook trigger receives event notifications from Amazon S3 via Amazon SNS when changes occur in a monitored S3 bucket. It handles both subscription confirmation and notification events automatically.
For real-time notifications without polling delays, use this trigger instead of the New and Updated Files polling trigger.
How It Works
- When an SNS topic subscribes to the flow URL, AWS sends a
SubscriptionConfirmationmessage - The trigger automatically confirms the subscription by requesting the
SubscribeURL - After confirmation, the trigger receives
Notificationmessages containing S3 event data - Messages are routed to the appropriate branch based on type
Branch Logic
This trigger uses branching to route different message types:
- Subscribe: Routes SNS subscription confirmation messages (automatically confirmed)
- Notification: Routes S3 event notifications containing bucket and object information
Configuration
To configure S3 event notifications:
- Create an SNS topic using the Create Topic For S3 Event Notification action
- Update the topic policy using the Update Topic Policy For S3 Event Notification action
- Subscribe to the topic using the Subscribe to Topic action with the flow URL as the endpoint
- Configure bucket notifications using the Bucket SNS Event Trigger Configuration action
A full list of supported S3 event types is available in the Event notification types documentation.
Returned Data
The trigger returns the parsed SNS message in the payload body. The Message field contains a JSON string with S3 event records that can be parsed for bucket name, object key, and event type.
View example response
{
"Type": "Notification",
"MessageId": "22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324",
"TopicArn": "arn:aws:sns:us-east-2:123456789012:MyTopic",
"Subject": "Amazon S3 Notification",
"Message": "{\"Records\":[{\"eventName\":\"ObjectCreated:Put\",\"s3\":{\"bucket\":{\"name\":\"my-bucket\"},\"object\":{\"key\":\"test-file.txt\"}}}]}"
}
Best Practices
- Region: The SNS topic must be in the same AWS region as the S3 bucket
- Topic Type: Use standard SNS topics; FIFO topics are not supported for S3 notifications
- Delivery: Notifications are delivered at least once but may arrive out of order or as duplicates
Data Sources
Select AWS Region
Select an AWS region | key: selectRegion | type: picklist
Select Bucket
Choose a bucket from a list | key: selectBucket | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
Actions
Abort Multipart Upload
Abort a multipart upload | key: abortMultipartUpload
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Upload ID | The unique identifier for the multipart upload, returned by 'Create Multipart Upload' action. | xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg |
{
"data": {
"$metadata": {
"httpStatusCode": 204,
"requestId": "DZ1ZJB3H2JB1234",
"extendedRequestId": "0D9BDVoAGoHqu3dIW4WHmaO4kkiWecrbf0yLRMe/JmUfX7N/12345=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Bucket SNS Event Trigger Configuration
Add events to send notifications to SNS Topic | key: bucketEventTriggerConfiguration
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Bucket Owner Account ID | The 12-digit AWS Account ID of the bucket owner. Find this in the AWS Console account settings or use the 'Get Current Account' action. | 123456789012 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Event Notification Name | A unique name for the event notification configuration. | S3ObjectCreatedAlert |
| Event Types | S3 event types that will trigger notifications. For more information, see S3 Event Notification Types. | s3:ObjectCreated:* |
| SNS Topic ARN | The Amazon Resource Name (ARN) of the SNS topic. For more information, see SNS ARN Format. | arn:aws:sns:us-east-1:123456789012:S3EventNotifications |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "73B4K590MABCMWV",
"extendedRequestId": "AHYlhdFxyrlbc3otaMb/gcjlmDEY+UT3xt7Vz6ZQ8F4B1234GZQSGN7D6yDV7mEC+U/1xU0pKc=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Complete Multipart Upload
Complete a multipart upload | key: completeMultipartUpload
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Parts | The list of uploaded parts to complete the multipart upload. Reference the 'Parts' field from the 'List Parts' action output. | |
| Upload ID | The unique identifier for the multipart upload, returned by 'Create Multipart Upload' action. | xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "GD4Y1XMZ6MFV1234",
"extendedRequestId": "Ego8CAUdYnt2THhZmBLnbfmTPY0HR8zA9rEMkSg+OB0t/uldGkuBlI6UF9X+123456=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"ServerSideEncryption": "AES256",
"Bucket": "bucket-name",
"ETag": "\"d96cf49f8c439501eb19c4728712345-1\"",
"Key": "image.jpg",
"Location": "https://bucketname.s3.us-east-2.amazonaws.com/image.jpg"
}
}
Copy Object
Copy an object in S3 from one location to another | key: copyObject
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| ACL Permissions | Canned ACL permissions to apply to the object. For more information, see S3 Canned ACLs. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Destination Bucket Name | The destination bucket where the object will be copied. For same-bucket copies, use the same name for both source and destination buckets. | my-company-archive |
| Destination Key | The destination object's key (file path) to copy to. Do not include a leading /. | archive/2024/database-backup.sql |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Source Bucket Name | The source bucket containing the object to copy. For same-bucket copies, use the same name for both source and destination buckets. | my-company-data-prod |
| Source Key | The source object's key (file path) to copy from. Do not include a leading /. | backups/2024/database-backup.sql |
{
"data": {
"CopyObjectResult": {
"ETag": "Example",
"LastModified": "2020-01-01T00:00:00.000Z"
}
}
}
Create Multipart Upload
Create a multipart upload | key: createMultipartUpload
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| ACL Permissions | Canned ACL permissions to apply to the object. For more information, see S3 Canned ACLs. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Object Tags | Key-value pairs to tag the object for filtering and organization. For more information, see S3 Object Tagging. | Environment, Production |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "J4Q9AY99DPMR1234",
"extendedRequestId": "P59zKeH2C4Jz3VAC1I+12345Gty4d4gyl9JYQmc4udM6bCB6w/MEg8AKKWUuBH1x0EU2dufwkw=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"ServerSideEncryption": "AES256",
"Bucket": "bucket-name",
"Key": "file.txt",
"UploadId": "9DWJzLdFIcK05G2Yq.TNhJbCU57dDZyIRlO_tHcdFgYqWQgtu6XdASs7h.DJlcWk2M9vmEx72gXcS8q5SBu_12345ccg-"
}
}
Create SNS Topic For S3 Event Notification
Create an Amazon SNS Topic to be used with S3 Event Notifications | key: createTopic
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Name | The name of the SNS topic to create. | ProductionNotifications |
{
"data": {
"TopicArn": "arn:aws:Example Topic Arn"
}
}
Delete Bucket
Deletes the S3 bucket. All objects in the bucket must be deleted before the bucket itself can be deleted | key: deleteBucket
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 204,
"requestId": "CBD415E7",
"extendedRequestId": "WXvHrStedS7jFJZVw0Pt1LH3K3Nn99XFGuyELkK7UQANs3IOHs9GsR=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Delete Object
Delete an Object within an S3 Bucket | key: deleteObject
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
{
"data": {
"DeleteMarker": true,
"VersionId": "3/L4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo",
"RequestCharged": "requester"
}
}
Delete Objects
Delete multiple objects from a bucket | key: deleteObjects
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Keys | A list of object keys to delete. These are the file paths of the objects you want to delete. Do not include a leading /. | path/to/file1.txt |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "FAQAVT",
"extendedRequestId": "T/nk6UtPuVs11K6ji59C8phr==",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"Deleted": [
{
"Key": "file.csv"
},
{
"Key": "audio.mp3"
}
]
}
}
Generate Presigned URL
Generate a presigned URL that can be used to upload or download an object in S3 | key: generatePresignedUrl
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| Action Type | Specifies whether the presigned URL will allow download or upload operations. | download |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Expiration Seconds | Number of seconds until the presigned URL expires. Default is 3600 (1 hour). | 3600 |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
{
"data": "https://my-bucket.s3.us-east-2.amazonaws.com/my-file.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256..."
}
Generate Presigned URL for Multipart Uploads
Generate presigned URL's that can be used to upload or download an object in S3 | key: generatePresignedForMultiparUploads
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Expiration Seconds | Number of seconds until the presigned URL expires. Default is 3600 (1 hour). | 3600 |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Upload ID | The unique identifier for the multipart upload, returned by 'Create Multipart Upload' action. | xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg |
| URLs to Generate | The number of presigned URLs to generate for multipart uploads. | 10 |
{
"data": [
{
"url": "https://my-bucket.s3.us-east-2.amazonaws.com/my-file.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256...",
"partNumber": 1
}
]
}
Get Bucket Location
Get the location (AWS region) of a bucket by name | key: getBucketLocation
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": "us-east-1"
}
Get Bucket Notification Configuration
Returns the notification configuration of a bucket | key: getBucketNotificationConfiguration
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "2KMYXFM4GHPES",
"extendedRequestId": "dLu9EloFaZ2UeACk5l4IovjfHXHTkM7kFLdThrbIJIjn05dgO7bdU3TUJ7/8DzZvcQ==",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"LambdaFunctionConfigurations": [
{
"Id": "Lambda",
"LambdaFunctionArn": "arn:aws:lambda:us-east-2:1234:function:Function",
"Events": [
"s3:ObjectRemoved:*"
]
}
],
"QueueConfigurations": [
{
"Id": "Queue",
"QueueArn": "arn:aws:sqs:us-east-2:1234:Queue",
"Events": [
"s3:ObjectCreated:*"
]
}
],
"TopicConfigurations": [
{
"Id": "Topic",
"TopicArn": "arn:aws:sns:us-east-2:1234:Topic",
"Events": [
"s3:ObjectRestore:*"
]
}
]
}
}
Get Current Account
Get the current AWS account | key: getCurrentAccount
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {},
"Account": "123456789012",
"Arn": "arn:aws:iam::123456789012:user/Alice",
"UserId": "ABCDEFGHIJKLMNOP:ABCDEFGHIJKLMNOP"
}
}
Get Object
Get the contents of an object | key: getObject
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
{
"data": {
"type": "Buffer",
"data": [
69,
120,
97,
109,
112,
108,
101,
32,
70,
105,
108,
101,
32,
67,
111,
110,
116,
101,
110,
116,
115
]
},
"contentType": "application/octet"
}
Get Object Attributes
Retrieves all the metadata from an object without returning the object itself | key: getObjectAttributes
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Attributes | The object attributes to return in the response. Unspecified attributes are not returned. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Version ID | The version ID for the object whose metadata you want to retrieve. | AMn71WZYnWqbvfy0unBOdtaBC.DRiN_r |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "0AJN29JBC3D5BNB6",
"extendedRequestId": "sVW4/xKq7DkMI8kgvbJUNWbzzZ9H6GKqyVocDm3uE4y7dZ6GmZcFrIC9MPGDjSNXMMn8CtLO8Vy0SxOcNOwl2A==",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"LastModified": "2024-03-08T22:20:41.000Z",
"VersionId": "0Ec_RdbYOEQ1Un2HllBJbGG758RS3UuZ",
"ObjectSize": 515400
}
}
Get Object Lock Configuration
Gets the Object Lock configuration for a bucket | key: getObjectLockConfiguration
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "J58R459KF4NH",
"extendedRequestId": "YLfHsBUyeXU06tYjF7ZLX7f7JhBL1FFZhA/UZKUr4WNTy0OHDOjYN=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"ObjectLockConfiguration": {
"ObjectLockEnabled": "Enabled",
"Rule": {
"DefaultRetention": {
"Mode": "GOVERNANCE",
"Years": 2
}
}
}
}
}
Get Object Retention
Retrieves an object's retention settings | key: getObjectRetention
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Version ID | The version ID for the object whose retention settings you want to retrieve. | AMn71WZYnWqbvfy0unBOdtaBC.DRiN_r |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "88W3KJSMC9E",
"extendedRequestId": "aJ3Rpb+v2F6Fqy47J6fWoPPCqe+LC8UX8vo5x3KK/YhN/=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"Retention": {
"Mode": "COMPLIANCE",
"RetainUntilDate": "2024-08-25T20:00:00.000Z"
}
}
}
Head Bucket
Determine if a bucket exists and if you have permission to access it | key: headBucket
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "A6R8PTRGRVGVB123",
"extendedRequestId": "O1lqC0pMNa1+juScFrJbqgtJDQgkqvkcWDvLPfmcZBQNbxe+Bl4JE0WeIuswg/123456==",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Head Object
Retrieve metadata from an object without returning the object itself | key: headObject
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "2GNCNQ9QYJF91H2H3",
"extendedRequestId": "20td2yhMFyFEFYm7Wh+P+qr8DDva152du5KA+JFU7ZRuHWLFZZxdLCOVfnMF41K2BYQ/12345=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"AcceptRanges": "bytes",
"LastModified": "2021-08-25T20:00:00.000Z",
"ContentLength": 65338,
"ETag": "\"266b7131485849fcefe583dcce654321\"",
"ContentType": "image/jpeg",
"ServerSideEncryption": "AES256",
"Metadata": {}
}
}
List Buckets
List all buckets in an AWS account | key: listBuckets
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": [
{
"Name": "bucket-1",
"CreationDate": "2024-03-08T23:30:22.000Z"
}
]
}
List Multipart Uploads
Lists in-progress multipart uploads in a bucket | key: listMultipartUploads
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "MSB2RAFETTBCQ123",
"extendedRequestId": "Ax6cjVx4lugZGOI+yo3dApqbvrtLD3U",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"Bucket": "some-bucket",
"IsTruncated": false,
"KeyMarker": "",
"MaxUploads": 1000,
"NextKeyMarker": "file.txt",
"NextUploadIdMarker": "itQ2Dw8eMZ01dGiwRIj2dwDqpx",
"UploadIdMarker": "",
"Uploads": [
{
"UploadId": "hbZQmDNtym9xtdh8XwgT7Ys..FkRWJfV0MUgmNWg",
"Key": "new_file.txt",
"Initiated": "2024-01-25T16:06:31.000Z",
"StorageClass": "STANDARD",
"Owner": {
"ID": "0edc4b00d"
},
"Initiator": {
"ID": "0edc4b00d"
}
}
]
}
}
List Objects
List Objects in a Bucket | key: listObjects
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Continuation Token | Pagination token returned by a previous request to retrieve the next page of results. | lslTXFcbLQKkb0vP9Kgh5hy0Y0OnC7Z9ZPHPwPmMnxSk3eiDRMkct7D8E |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Include Metadata | When true, returns full object metadata and pagination information instead of just object keys. | false |
| Max Keys | Maximum number of objects to return (1-1000). Defaults to 1000 if not specified. | 1000 |
| Prefix | List only objects prefixed with this string. For example, if you only want files in a directory called 'unprocessed', you can enter 'unprocessed/'. If this is left blank, all files in the selected bucket will be listed. | path/to/files/ |
{
"data": [
"Example Item 1",
"Example Item 2",
"Example Item 3"
]
}
List Parts
List parts of a multipart upload | key: listParts
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Upload ID | The unique identifier for the multipart upload, returned by 'Create Multipart Upload' action. | xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "3Z9CNHKT01WVE123",
"extendedRequestId": "AYcUJyiexeUBBf5Uynsj4m1PojM18tHSxlyKMWzjM+123456=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"Bucket": "bucket-name",
"Initiator": {
"ID": "0edc4b00d1bfae1ebe33617c5cfe04e17b6f1fb9c5c2c55796123456"
},
"IsTruncated": false,
"Key": "image.jpg",
"MaxParts": 1000,
"NextPartNumberMarker": "1",
"Owner": {
"ID": "0edc4b00d1bfae1ebe33617c5cfe04e17b6f1fb9c5c2c55796123456"
},
"PartNumberMarker": "0",
"Parts": [
{
"PartNumber": 1,
"LastModified": "2024-03-11T23:47:51.000Z",
"ETag": "\"266b7131485849fcefe583dcce071234\"",
"Size": 65338
}
],
"StorageClass": "STANDARD",
"UploadId": "iHtFwRT6d6IAPwGTlT6tO1iBApulQGCA2sG7yn_BzUKItrnLrWykCbDheQBJrb1MUGHgGfihOY07XfnCeU2CWCZM0kD6VbyC46MJ4123456-"
}
}
Put Bucket Notification Configuration
Replace an existing bucket notification configuration with a new one | key: putBucketNotificationConfiguration
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| EventBridge Configuration | EventBridge configuration for bucket event notifications. For more information, see Using EventBridge with S3. | |
| Lambda Function Configurations | List of Lambda function configurations for bucket event notifications. For more information, see S3 Event Notifications. | |
| Queue Configurations | List of SQS queue configurations for bucket event notifications. For more information, see S3 Event Notifications. | |
| Topic Configurations | List of SNS topic configurations for bucket event notifications. For more information, see S3 Event Notifications. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "3G6FNXP71KGVQ",
"extendedRequestId": "epeRYyT9tl3QOMTMck4AG+NqmGa5fRKv5nME7gRl8KMxfnCAKWZzKbWVKp4ED7RaZIGvVcS=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Put Object
Write an object to S3 | key: putObject
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| ACL Permissions | Canned ACL permissions to apply to the object. For more information, see S3 Canned ACLs. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| File Contents | The contents to write to the object. Accepts text strings or binary data (images, PDFs, etc.) from previous steps. | My File Contents |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Object Tags | Key-value pairs to tag the object for filtering and organization. For more information, see S3 Object Tagging. | Environment, Production |
File Contents can be a reference to a binary file from a previous step.
For example, if you have an HTTP Get action that pulls down a .png image, you can reference its step name to write the .png to S3.
Or, File Contents can be simple text, like 'Hello World'.
{
"data": {
"ETag": "Example Tag",
"VersionId": "Example Version Id"
}
}
Put Object Lock Configuration
Places an Object Lock configuration on the specified bucket | key: putObjectLockConfiguration
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Default Retention Days | Number of days for the default retention period. Mutually exclusive with Default Retention Years. | 90 |
| Default Retention Mode | Object Lock retention mode for new objects. Must be used with either Default Retention Days or Years. For more information, see S3 Object Lock. | |
| Default Retention Years | Number of years for the default retention period. Mutually exclusive with Default Retention Days. | 7 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "HRTN",
"extendedRequestId": "n2j6gnXOgOKm+PomoHrLsbOhatc7LMw1Su",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Put Object Retention
Places an Object Retention configuration on an object | key: putObjectRetention
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Retain Until Date | The date and time when Object Retention expires. Required when using Retention Mode. Must be in ISO 8601 format. | 2025-12-31T23:59:59.000Z |
| Retention Mode | Retention mode for the specified object. Required when Retain Until Date is set. | |
| Version ID | The version ID of the object to apply retention configuration to. Required when versioning is enabled. | AMn71WZYnWqbvfy0unBOdtaBC.DRiN_r |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "9GKTJZDRMJCGMNY6",
"extendedRequestId": "NKjiPDGEYKYtH7sHPWKSVpy9y9NtjbXzeJ7whq75y62jiH9JLuZOpMLCBiYyc+/hOlnOTCaTpWo=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Subscribe to SNS Topic
Subscribe to an Amazon SNS Topic for S3 Event Notifications | key: subscribeToTopic
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Webhook Endpoint | The HTTPS endpoint URL that will receive S3 event notifications. | https://hooks.example.com/trigger/SW5zdGFuY2VGbG93Q29uZmlnOjhiNGY0ZTRkLWIyODMtNDE4Yy04YmZhLTg1NGI11234567890== |
| SNS Topic ARN | The Amazon Resource Name (ARN) of the SNS topic. For more information, see SNS ARN Format. | arn:aws:sns:us-east-1:123456789012:S3EventNotifications |
{
"data": {
"SubscriptionArn": "arn:aws:sns:us-east-2:123456789012:MyExampleTopic:00000000-00000000-00000000-00000000"
}
}
Unsubscribe from a SNS Topic
Unsubscribe from an Amazon SNS Topic for S3 Event Notifications | key: unsubscribeFromTopic
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Subscription ARN | The Amazon Resource Name (ARN) of the SNS topic subscription. | arn:aws:sns:us-east-2:123456789012:MyTopic:a1b2c3d4-e5f6-7890-a1b2-c3d4e5f67890 |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "059f8a07-f312-5e3b-9b7c-d46e66ee8a58",
"extendedRequestId": null,
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Update SNS Topic Policy For S3 Event Notification
Update an Amazon SNS Topic Policy to grant S3 permission to publish | key: updateTopicPolicy
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Bucket Owner Account ID | The 12-digit AWS Account ID of the bucket owner. Find this in the AWS Console account settings or use the 'Get Current Account' action. | 123456789012 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| SNS Topic ARN | The Amazon Resource Name (ARN) of the SNS topic. For more information, see SNS ARN Format. | arn:aws:sns:us-east-1:123456789012:S3EventNotifications |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "b81eb768-e79a-52a1-9be8-e90175212345",
"extendedRequestId": null,
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
}
}
}
Upload Part
Upload a chunk of a multipart file upload | key: uploadPart
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| File Chunk | The binary data chunk to upload as part of a multipart upload. Reference output from a previous step. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Part Number | The part number for this chunk in the multipart upload sequence (1-10,000). | 1 |
| Upload ID | The unique identifier for the multipart upload, returned by 'Create Multipart Upload' action. | xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg |
{
"data": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "3Z9FSV3QYRYCK123",
"extendedRequestId": "nhNCxtYGnVN+nxfdPaCPgAc23cJw2rphbIU1Z5ZUEmUDXIvF+Ra3eUXv2MNdOoWTIKXEym12345=",
"cfId": null,
"attempts": 1,
"totalRetryDelay": 0
},
"ServerSideEncryption": "AES256",
"ETag": "\"266b7131485849fcefe583dcce071234\"",
"part": {
"ETag": "\"266b7131485849fcefe583dcce071234\"",
"PartNumber": 1
}
}
}
Upload Stream - Close Stream
Close an upload stream | key: closeUploadStream
| Input | Notes | Example |
|---|---|---|
| Upload Stream ID | The ID of the upload stream to write to. Generate this with the 'Create Stream' action. |
Upload Stream - Create Stream
Create an upload stream to S3 | key: createUploadStream
| Input | Notes | Example |
|---|---|---|
| Connection | The AWS S3 connection to use for authentication. Access keys provide programmatic access to AWS resources. Learn more. | |
| ACL Permissions | Canned ACL permissions to apply to the object. For more information, see S3 Canned ACLs. | |
| AWS Region | AWS provides services in multiple regions, like us-west-2 or eu-west-1. | us-east-1 |
| Bucket Name | An Amazon S3 'bucket' is a container where files are stored. You can create a bucket from within the AWS console. Bucket names contain only letters, numbers, and dashes. | my-s3-bucket-abc123 |
| Dynamic Access Key ID | Use this input to authenticate with AWS if you are using a dynamically-generated access key. Otherwise, use the connection to enter a static access key ID. | |
| Dynamic Secret Access Key | Use this input to authenticate with AWS if you are using a dynamically-generated secret access key. Otherwise, use the connection to enter a static secret access key. | |
| Dynamic Session Token | Use this input to authenticate with AWS if you are using a OPTIONAL dynamically-generated session token. | |
| Object Key | An object in S3 is a file that is saved in a 'bucket'. This represents the object's key (file path). Do not include a leading /. | path/to/file.txt |
| Object Tags | Key-value pairs to tag the object for filtering and organization. For more information, see S3 Object Tagging. | Environment, Production |
{
"data": "711B632B-C025-4E26-9E34-525822E3C0ED"
}
Upload Stream - Write Data
Write to an upload stream | key: writeUploadStream
| Input | Notes | Example |
|---|---|---|
| File Contents | The contents to write to the object. Accepts text strings or binary data (images, PDFs, etc.) from previous steps. | My File Contents |
| Upload Stream ID | The ID of the upload stream to write to. Generate this with the 'Create Stream' action. |
Changelog
2025-12-05
- Added New and Updated Files polling trigger to detect file changes in S3 buckets on a configured schedule
2025-07-11
Added External ID optional input to Assume Role connection for enhanced security when assuming cross-account IAM roles