N8N Tools - S3 Enhanced
Actions66
- Generate Presigned URL
- Generate Presigned POST
- Create Bucket
- Delete Bucket
- List Buckets
- Upload Object
- Download Object
- Delete Object
- List Objects
- Copy Object
- Get Object ACL
- Put Object ACL
- Get Bucket ACL
- Put Bucket ACL
- Get Bucket CORS
- Put Bucket CORS
- Delete Bucket CORS
- Get Bucket Lifecycle
- Put Bucket Lifecycle
- Delete Bucket Lifecycle
- Get Bucket Policy
- Put Bucket Policy
- Delete Bucket Policy
- Get Object Tagging
- Put Object Tagging
- Delete Object Tagging
- Get Bucket Tagging
- Put Bucket Tagging
- Delete Bucket Tagging
- Create Multipart Upload
- Upload Part
- Complete Multipart Upload
- Abort Multipart Upload
- List Parts
- List Multipart Uploads
- Get Bucket Versioning
- Put Bucket Versioning
- Get Bucket Logging
- Put Bucket Logging
- Get Bucket Notification
- Put Bucket Notification
- Get Bucket Replication
- Put Bucket Replication
- Delete Bucket Replication
- Get Bucket Encryption
- Put Bucket Encryption
- Delete Bucket Encryption
- Get Bucket Website
- Put Bucket Website
- Delete Bucket Website
- Get Bucket Metrics
- Put Bucket Metrics
- Delete Bucket Metrics
- Get Bucket Analytics
- Put Bucket Analytics
- Delete Bucket Analytics
- Get Bucket Inventory
- Put Bucket Inventory
- Delete Bucket Inventory
- Get Bucket Request Payment
- Put Bucket Request Payment
- Get Bucket Accelerate
- Put Bucket Accelerate
- Head Object
- Restore Object
- Select Object Content
Overview
The node "N8N Tools - S3 Enhanced" provides a comprehensive set of operations to interact with S3-compatible object storage services. It supports bucket management, object manipulation, access control, lifecycle policies, tagging, multipart uploads, presigned URLs, and advanced features like analytics, inventory, and replication configurations.
This node is beneficial in scenarios where users need to automate complex workflows involving S3 buckets and objects, such as:
- Creating or deleting buckets programmatically.
- Uploading, downloading, copying, or deleting objects.
- Managing bucket policies, ACLs, CORS, lifecycle rules, and tags.
- Generating presigned URLs or POST forms for secure temporary access.
- Handling large files via multipart upload.
- Configuring advanced bucket features like analytics, metrics, encryption, notifications, and versioning.
Practical example:
A user can automate the process of uploading files to an S3 bucket, generate a presigned URL for sharing the file securely without exposing credentials, and then update the object's tags and ACLs for access control — all within a single workflow using this node.
Properties
| Name | Meaning |
|---|---|
| Bucket Name | Name of the S3 bucket to operate on. |
| Configuration ID | Identifier for specific configurations like metrics, analytics, or inventory settings. |
Note: The above properties are relevant for the "Delete Bucket Analytics" operation and other related configuration operations.
For the full node, many more properties exist depending on the selected operation, including but not limited to:
- Object Key: Path/key of the object inside the bucket.
- HTTP Method: For presigned URL generation (GET, PUT, HEAD).
- Expires In (seconds): Expiration time for presigned URLs or posts.
- File Data: Content to upload (binary/base64).
- Search Pattern: Regex to filter listed objects.
- ACL: Access control list options (e.g., private, public-read).
- Tags: JSON key-value pairs for tagging buckets or objects.
- Multipart Upload Parameters: Upload ID, part number, part data, parts array.
- Versioning Status: Enable or suspend bucket versioning.
- Various JSON configurations: For CORS, lifecycle, policy, notification, replication, encryption, website, metrics, analytics, inventory, restore requests, and select object content.
Output
The node outputs JSON objects containing the results of the executed operation. Each output item includes:
- Operation-specific response data, e.g., confirmation flags (
deleted: true), configuration details, metadata, URLs, or lists of buckets/objects. - Common fields added by the node:
operation: The name of the performed operation.timestamp: ISO string timestamp when the operation was executed.success: Boolean indicating if the operation succeeded.
If an error occurs and "Continue On Fail" is enabled, the output will contain an error message and success: false.
Binary data:
For download operations, the node encodes object data as base64 strings in the data field within the JSON output. No direct binary output is emitted; instead, the base64 encoding allows safe transfer within JSON.
Dependencies
- Requires an S3-compatible API key credential with access key ID and secret access key, optionally with session token, region, endpoint, and path style configuration.
- Uses AWS SDK clients internally to communicate with the S3 service.
- Node expects proper network connectivity to the configured S3 endpoint.
- No additional external dependencies beyond the AWS SDK and n8n core modules.
Troubleshooting
Common Issues
Invalid Credentials:
Errors like "Invalid Access Key ID" or "Invalid Secret Access Key" indicate incorrect or missing API keys. Verify credentials and permissions.Access Denied:
Indicates insufficient permissions for the requested operation. Check IAM policies or bucket policies.Connection Errors:
Messages about inability to connect to the endpoint suggest network issues or incorrect endpoint URLs.JSON Parsing Errors:
Many operations require JSON input for configurations (e.g., lifecycle rules, policies). Invalid JSON format will cause errors. Ensure JSON inputs are well-formed.Unsupported HTTP Methods:
When generating presigned URLs, only GET, PUT, and HEAD methods are supported.
Error Messages
"S3 operation failed: <message>"
Generic failure message wrapping underlying AWS SDK errors."Invalid <configuration> JSON format"
Thrown when JSON input parameters cannot be parsed."Unsupported method: <method>"
When an unsupported HTTP method is used for presigned URL generation.
Resolution Tips
- Double-check all required parameters are provided and correctly formatted.
- Validate JSON inputs with external tools before pasting.
- Confirm that the API key has necessary permissions for the chosen operation.
- Use the node's credential test feature to verify connection and credentials.
Links and References
- AWS S3 Documentation – Official Amazon S3 documentation for concepts and API references.
- AWS SDK for JavaScript v3 – Documentation for the SDK used internally.
- Presigned URLs – How to use presigned URLs for secure temporary access.
- Multipart Upload Overview – Guide on multipart uploads for large files.
Summary for Resource: Default, Operation: Delete Bucket Analytics
What it does
Deletes an existing analytics configuration from a specified S3 bucket using the provided configuration ID.
Input Properties
| Name | Meaning |
|---|---|
| Bucket Name | Name of the S3 bucket to delete analytics configuration from. |
| Configuration ID | Identifier of the analytics configuration to delete. |
Output
Returns a JSON object confirming deletion with fields:
bucket: The bucket name.configurationId: The deleted configuration ID.message: Confirmation message ("Bucket analytics deleted successfully").operation: The operation name (deleteBucketAnalytics).timestamp: Execution time.success:trueif successful.
Dependencies
Requires valid S3 credentials with permission to delete analytics configurations on the target bucket.
Troubleshooting
- Ensure the bucket exists and the configuration ID is correct.
- Verify permissions allow deleting analytics configurations.
- Handle JSON parsing errors if configuration ID is malformed.
If you need summaries for other operations or resources, please specify.