Package Information
Available Nodes
Documentation
N8N Tools - S3 Enhanced
Enhanced S3 operations node for N8N with advanced features including presigned URLs, multipart upload, and comprehensive bucket management.
⭐ Key Features
- 🔗 Presigned URLs - Generate temporary URLs for secure access without credentials
- 📦 Multipart Upload - Handle large files with resumable uploads
- 🗂️ Advanced Listing - Enhanced object and version listing with filtering
- 🔐 Access Control - Comprehensive ACL and policy management
- 🌐 Universal Compatibility - Works with AWS S3, MinIO, Wasabi, DigitalOcean Spaces, iDrive e2, and more
🚀 Quick Start
Installation
npm install n8n-nodes-n8ntools-s3-enhanced
Configuration
Create S3 Compatible Credentials:
- Endpoint: Your S3-compatible endpoint (leave empty for AWS)
- Region: Your region (e.g., us-east-1)
- Access Key ID: Your access key
- Secret Access Key: Your secret key
- Force Path Style: Enable for MinIO and some providers
- Use SSL: Enable for secure connections
Add the S3 Enhanced node to your workflow
Select your operation and configure parameters
📋 Available Operations
🔗 URL & Access Operations
- Generate Presigned URL - Create temporary access URLs
- Generate Presigned POST - Create secure upload forms
📦 Bucket Operations
- Create Bucket - Create new S3 buckets
- Delete Bucket - Remove existing buckets
- List Buckets - List all available buckets
- Head Bucket - Check bucket existence
- Get Bucket Location - Get bucket region
📄 Object Operations
- Upload Object - Upload files to buckets
- Download Object - Download files from buckets
- Delete Object - Remove single objects
- Delete Multiple Objects - Batch delete operations
- Copy Object - Copy objects within/between buckets
- Head Object - Get object metadata only
📋 Listing Operations
- List Objects - Enhanced object listing with filtering
- List Object Versions - List all object versions
🔄 Multipart Upload Operations
- Create Multipart Upload - Initialize large file uploads
- Upload Part - Upload individual parts
- Complete Multipart Upload - Finalize uploads
- Abort Multipart Upload - Cancel incomplete uploads
- List Multipart Uploads - List ongoing uploads
💡 Usage Examples
Generate Presigned URL for File Access
Perfect for giving temporary access to files stored in your bucket:
// Configuration
Operation: "Generate Presigned URL"
Bucket: "my-documents"
Key: "reports/monthly-report.pdf"
Method: "GET"
Expires In: 3600 // 1 hour
// Output
{
"bucket": "my-documents",
"key": "reports/monthly-report.pdf",
"method": "GET",
"presignedUrl": "https://my-bucket.s3.amazonaws.com/reports/monthly-report.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&...",
"expiresIn": 3600,
"expiresAt": "2024-01-15T15:30:00.000Z"
}
Upload File with Metadata
Upload files with custom metadata and access controls:
// Configuration
Operation: "Upload Object"
Bucket: "media-storage"
Key: "images/photo.jpg"
File Data: "{{$binary.data.data}}" // Binary data
Content Type: "image/jpeg"
Advanced Options:
- ACL: "public-read"
- Storage Class: "STANDARD_IA"
- Metadata: {"author": "John Doe", "project": "Website"}
List Objects with Filtering
Find specific files using prefix and delimiter filtering:
// Configuration
Operation: "List Objects"
Bucket: "document-archive"
Prefix: "2024/invoices/"
Delimiter: "/"
Max Keys: 100
// Output
{
"bucket": "document-archive",
"contents": [
{
"Key": "2024/invoices/invoice-001.pdf",
"Size": 245760,
"LastModified": "2024-01-15T10:30:00.000Z"
}
],
"keyCount": 25
}
Multipart Upload for Large Files
Handle large file uploads with resume capability:
// Step 1: Create Multipart Upload
Operation: "Create Multipart Upload"
Bucket: "video-storage"
Key: "videos/large-video.mp4"
Content Type: "video/mp4"
// Step 2: Upload Parts (repeat for each part)
Operation: "Upload Part"
Upload ID: "{{$json.uploadId}}"
Part Number: 1
Part Data: "{{$binary.chunk1.data}}"
// Step 3: Complete Upload
Operation: "Complete Multipart Upload"
Upload ID: "{{$json.uploadId}}"
Parts: '{"Parts":[{"ETag":"etag1","PartNumber":1},{"ETag":"etag2","PartNumber":2}]}'
🌐 Provider Compatibility
AWS S3
Endpoint: (leave empty)
Region: us-east-1
Force Path Style: false
MinIO
Endpoint: http://minio.example.com:9000
Region: us-east-1
Force Path Style: true
Wasabi
Endpoint: https://s3.wasabisys.com
Region: us-east-1
Force Path Style: false
DigitalOcean Spaces
Endpoint: https://fra1.digitaloceanspaces.com
Region: fra1
Force Path Style: false
iDrive e2
Endpoint: https://endpoint.idrivee2.com
Region: us-east-1
Force Path Style: false
⚙️ Advanced Options
Most operations support advanced options:
- Version ID - Work with specific object versions
- Storage Class - Set storage tier (STANDARD, IA, GLACIER, etc.)
- Server Side Encryption - Enable encryption (AES256, KMS)
- Metadata - Add custom object metadata
- ACL - Set access control permissions
- Content Disposition - Control download behavior
- Cache Control - Set caching headers
🔧 Error Handling
The node supports N8N's built-in error handling:
- Continue on Fail: Process remaining items even if some fail
- Detailed Error Messages: Clear descriptions of what went wrong
- Retry Logic: Built-in retry for transient failures
📊 Performance Tips
- Batch Operations: Use "Delete Multiple Objects" instead of individual deletes
- Multipart Upload: Use for files larger than 100MB
- Proper Filtering: Use prefix and delimiter for efficient listing
- Presigned URLs: Reduce server load by letting clients access S3 directly
🆘 Troubleshooting
Common Issues
403 Forbidden Errors
- Check your Access Key ID and Secret Access Key
- Verify bucket permissions and policies
- Ensure correct region configuration
Endpoint Connection Errors
- Verify endpoint URL format
- Check Force Path Style setting for non-AWS providers
- Confirm SSL/TLS settings match your provider
Presigned URL Not Working
- Check expiration time hasn't passed
- Verify URL encoding is preserved
- Ensure client respects HTTP method (GET/PUT/HEAD)
Debug Tips
- Test Connection: Use the credential test feature
- Start Simple: Begin with List Buckets to verify connectivity
- Check Logs: Review N8N execution logs for detailed errors
- Provider Docs: Consult your S3 provider's documentation
📈 Changelog
v1.0.0
- Initial release
- Complete S3 operations implementation
- Universal provider compatibility
- Presigned URL support
- Multipart upload support
📄 License
MIT License - see LICENSE file for details
🆘 Support
- Documentation: https://docs.n8ntools.io/nodes/s3-enhanced
- Issues: https://github.com/n8ntools/n8n-nodes/issues
- Discord: https://discord.gg/n8ntools
- Email: support@n8ntools.io
N8N Tools - Enhancing your automation workflows with powerful, reliable nodes.