N8N Tools - S3 Enhanced icon

N8N Tools - S3 Enhanced

Enhanced S3 operations with presigned URLs, multipart upload, and advanced features

Overview

This node provides enhanced operations for managing and interacting with S3-compatible storage buckets and objects. It supports a wide range of bucket and object management tasks such as creating, deleting, listing buckets and objects, uploading and downloading files, managing access control lists (ACLs), bucket policies, CORS configurations, lifecycle rules, tagging, multipart uploads, versioning, logging, notifications, replication, encryption, website hosting, metrics, analytics, inventory, request payment settings, acceleration, and more.

The specific operation "Get Bucket Request Payment" retrieves the request payment configuration of a specified S3 bucket, indicating who is responsible for paying for requests and data transfer costs.

Common scenarios where this node is beneficial:

  • Automating S3 bucket and object management workflows.
  • Integrating S3 storage operations into larger automation pipelines.
  • Managing bucket policies, permissions, and configurations programmatically.
  • Generating presigned URLs for secure temporary access to objects.
  • Handling large file uploads via multipart upload.
  • Retrieving detailed metadata and configurations of buckets and objects.

Practical example:

  • Use the "Get Bucket Request Payment" operation to check if the bucket owner or the requester pays for access requests, which can be important for cost management in shared environments.

Properties

Name Meaning
Bucket Name Name of the S3 bucket to operate on.

For this operation ("Get Bucket Request Payment"), only the "Bucket Name" property is required.

Output

The output JSON object for the "Get Bucket Request Payment" operation includes:

  • bucket: The name of the bucket queried.
  • payer: Indicates who pays for requests and data transfer. Typical values are "Requester" or "BucketOwner".
  • operation: The operation performed, here it will be "getBucketRequestPayment".
  • timestamp: ISO string timestamp when the operation was executed.
  • success: Boolean indicating if the operation succeeded (true).

Example output JSON snippet:

{
  "bucket": "my-bucket-name",
  "payer": "BucketOwner",
  "operation": "getBucketRequestPayment",
  "timestamp": "2024-06-01T12:00:00.000Z",
  "success": true
}

Dependencies

  • Requires an S3-compatible storage service endpoint.
  • Requires credentials with appropriate permissions to access the bucket's request payment configuration.
  • Uses AWS SDK for JavaScript v3 under the hood.
  • Requires n8n credentials configured with access key ID, secret access key, region, and optionally session token and endpoint URL.

Troubleshooting

  • Common issues:

    • Invalid or missing credentials: Ensure that the API key and secret are correct and have sufficient permissions.
    • Network connectivity problems: Verify the endpoint URL and network access.
    • Access denied errors: Check IAM policies and bucket permissions.
    • Bucket not found: Confirm the bucket name is correct and exists in the target region.
  • Error messages and resolutions:

    • "Access denied. Check your credentials and permissions." — Verify IAM roles and policies allow reading bucket request payment configuration.
    • "Cannot connect to endpoint. Check your endpoint URL and network connection." — Validate the endpoint URL and network/firewall settings.
    • "S3 operation failed: <error message>" — General catch-all error; inspect the detailed message for specifics.

Links and References

Discussion