Skip to main content

Amazon S3

ToolJet can connect to Amazon S3 buckets and perform various operation on them.

Connection

To add a new S3 source, go to the Datasources manager on the left sidebar of the app editor and click on Add datasource button. Select AWS S3 from the modal that pops up.

ToolJet requires the following to connect to your AWS S3:

  • Region
  • Access key
  • Secret key

It is recommended to create a new IAM user for the database so that you can control the access levels of ToolJet.

aws s3 modal

Click on Test connection button to verify if the credentials are correct and that the database is accessible to ToolJet server. Click on Save button to save the data source.

Querying AWS S3

Click on + button of the query manager at the bottom panel of the editor and select the data source added in the previous step as the data source. Select the operation that you want to perform and click Save to save the query.

aws s3 query

Click on the run button to run the query.

NOTE: Query should be saved before running.

tip

Query results can be transformed using transformations. Read our transformations documentation to see how: link

Query operations

You can create query for AWS S3 data source to perform several actions such as:

  1. Read object
  2. Upload object
  3. List buckets
  4. List objects in a bucket
  5. Signed url for download
  6. Signed url for upload

Read object

You can read an object in a bucket by using this operation. It requires two parameters - Bucket name and Key.

aws s3 read object

Upload object

You can use this operation to upload objects(files) to your S3 bucket. It requires four parameters:

  1. Bucket: Specify the bucket name
  2. Key: Key of the object/file
  3. Content type: Specify file type such as text, image etc.
  4. Upload data: File/object that is to be uploaded.
aws s3 upload

List buckets

This operation will list all the buckets in your S3. This does not require any parameter.

aws s3 bucket

List objects in a bucket

This operation will fetch the list of all the files in your bucket. It requires two parameters:

  1. Bucket: Bucket name (mandatory)
  2. Prefix: To limit the response to keys that begin with the specified prefix (optional)
aws s3 list object

Signed url for download

The object owner can optionally share objects with others by creating a presigned URL, using their own security credentials, to grant time-limited permission to download the objects. For creating a presigned URL, the required parameters are:

  1. Bucket: name of the bucket for uploading the file
  2. Key: an object key
  3. Expires in: an expiration time of URL
aws s3 signed download

Signed url for upload

The presigned URLs are useful if you want your user/customer to be able to upload a specific object to your bucket, but you don't require them to have AWS security credentials or permissions. For creating a presigned URL, the required parameters are:

  1. Bucket: name of the bucket for uploading the file
  2. Key: an object key
  3. Expires in: an expiration time of URL
  4. Content type: the content type such as text, image etc.
aws s3 signed upload
info

We built an app to view and upload files to AWS S3 buckets. Check out the complete tutorial here.