AWS S3 Custom icon

AWS S3 Custom

Sends data to AWS S3

Actions5

Overview

This node allows uploading files to an AWS S3-compatible storage service. It supports specifying the provider, region, access credentials, and custom endpoints, making it flexible for various S3-compatible services beyond AWS itself.

Typical use cases include:

  • Automating backups by uploading generated reports or logs.
  • Storing user-uploaded content from web applications.
  • Archiving data files in cloud storage for later retrieval.
  • Integrating with other workflows that produce binary or text file data.

For example, you can upload a CSV report generated in a previous workflow step directly to a specified S3 bucket, optionally tagging the file for easier management.

Properties

Name Meaning
Provider The cloud storage provider. Default is "aws". Can be customized for other S3-compatible providers.
Region The geographical region of the storage bucket. Options include many AWS regions like "US East (N. Virginia) - us-east-1", "Europe (Frankfurt) - eu-central-1", etc.
Access Key ID Required access key identifier for authentication with the storage service.
Secret Access Key Required secret key for authentication. This is a password-type field to keep it secure.
Custom Endpoint Optional custom endpoint URL for connecting to non-AWS S3-compatible services or specific endpoints.
Bucket Name The name of the target S3 bucket where the file will be uploaded.
File Name The name to assign to the uploaded file in the bucket. If uploading binary data, this can default to the original binary filename if left empty.
Binary Data Boolean flag indicating whether the file content should come from a binary input field (true) or from plain text content (false).
File Content Text content of the file to upload when not using binary data.
Input Binary Field The name of the binary property in the input data containing the file to upload. Defaults to "data". Only relevant if Binary Data is true.
Additional Fields A collection of optional extra headers and settings such as ACL permissions, storage class, encryption options, legal hold, grants, and more. These affect how the file is stored and accessed in the bucket.
Tags Optional key-value pairs to tag the uploaded file with metadata tags. Useful for categorization and filtering within the storage system.

Output

The node outputs JSON objects indicating success for each uploaded file. Each output item corresponds to one input item processed.

  • The JSON output contains at least { "success": true } on successful upload.
  • When uploading binary data, the node reads the binary stream and uploads it directly.
  • No binary output is produced by this node; it only confirms upload success.

Dependencies

  • Requires valid access credentials (access key ID and secret access key) for the chosen S3-compatible provider.
  • Supports specifying a custom endpoint for compatibility with non-AWS S3 services.
  • Uses internal helper functions to handle streaming binary data and interacting with the S3 API.
  • No additional external dependencies are required beyond standard AWS S3 API compatibility.

Troubleshooting

  • Authentication errors: Ensure the access key ID and secret access key are correct and have sufficient permissions to upload to the specified bucket.
  • Bucket not found or access denied: Verify the bucket name exists in the specified region and that your credentials allow write access.
  • File name issues: When uploading binary data, if the file name is not set, the node uses the binary data's original filename. Make sure the binary input has a valid filename.
  • Large file uploads: The node streams binary data in chunks (up to 5MB per chunk). Extremely large files may require checking network stability.
  • Invalid region or endpoint: Confirm the region matches the bucket location and the custom endpoint (if used) is correct and reachable.
  • Tagging or additional fields errors: Invalid or unsupported header values in additional fields or tags may cause upload failures. Use supported values and formats.

If an error occurs during upload, the node throws an operation error with details from the underlying AWS SDK or HTTP response.

Links and References

Discussion