Skip to content

AWS S3

This module allows performing operations with Amazon S3 using the official AWS SDK (@aws-sdk/client-s3). It supports the main operations: list buckets, list objects with prefix and pagination, download objects (as text or base64), upload objects (text, JSON, binary), delete objects, get metadata information without downloading (HEAD), copy objects between buckets and generate temporary pre-signed URLs for download.

Authentication is done via Access Key ID and Secret Access Key stored in the credentials. The operation is determined by the operation field or by the node name.

ParameterTypeRequiredDescription
credentials_idcredentialsYesAWS S3 account
operationselectYesOperation: listBuckets, listObjects, getObject, putObject, deleteObject, headObject, copyObject, getPresignedUrl
buckettextConditionalS3 bucket name
keytextConditionalObject key/path (e.g.: folder/file.pdf)
prefixtextNoPrefix to filter objects (e.g.: folder/)
maxKeysnumberNoMaximum objects to list (1-1000, default: 100)
returnAsBase64booleanNoReturn content as Base64 (for binaries)
bodyKeytextNoField in input data with the content to upload (default: fileContent)
contentTypeselectNoMIME type: application/json, application/pdf, image/jpeg, text/csv, etc.
isBase64booleanNoIndicate if the content is Base64 encoded
sourceKeytextConditionalSource object key (for copying)
destinationKeytextConditionalDestination key (for copying)
destinationBuckettextNoDestination bucket (empty = same bucket)
expiresInselectNoPre-signed URL expiration: 300 (5min) to 604800 (7 days), default: 3600
outputKeytextNoKey where to store the result

Service type: aws_s3. Stored in the servicecredentials table.

Configuration fields:

  • accessKeyId: AWS Access Key ID
  • secretAccessKey: AWS Secret Access Key
  • region: AWS Region (default: us-east-1)
{
"nextModule": "siguiente_modulo",
"data": {
"objects": [
{
"key": "documentos/factura.pdf",
"size": 125432,
"lastModified": "2025-01-15T10:30:00.000Z",
"etag": "\"abc123\"",
"storageClass": "STANDARD"
}
],
"folders": ["documentos/", "imagenes/"],
"isTruncated": false
},
"_meta_": {
"operation": "listObjects",
"bucket": "mi-bucket",
"service": "aws_s3"
}
}
{
"credentials_id": 1,
"operation": "listObjects",
"bucket": "mi-bucket",
"prefix": "documentos/",
"maxKeys": 100
}
  • The default delimiter is ”/” to separate objects into virtual folders
  • Download returns UTF-8 text by default; enable returnAsBase64 for binary files
  • Pre-signed URLs allow sharing temporary access to private objects
  • Object copying can be done between different buckets
  • Content to upload can come from the field specified in bodyKey or directly from config.body
  • The continueOnError parameter allows the workflow to continue even if the operation fails
  • Object listing supports pagination with nextContinuationToken
  • Manage S3 - Simplified file management in S3
  • S3 Compatible - S3-compatible storage (Linode, DigitalOcean, MinIO, etc.)