AWS S3
Descripcion
Sección titulada «Descripcion»Este modulo permite realizar operaciones con Amazon S3 utilizando el SDK oficial de AWS (@aws-sdk/client-s3). Soporta las operaciones principales: listar buckets, listar objetos con prefijo y paginacion, descargar objetos (como texto o base64), subir objetos (texto, JSON, binarios), eliminar objetos, obtener informacion de metadata sin descargar (HEAD), copiar objetos entre buckets y generar URLs prefirmadas temporales para descarga.
La autenticacion se realiza mediante Access Key ID y Secret Access Key almacenados en las credenciales. La operacion se determina por el campo operation o por el nombre del nodo.
Configuracion
Sección titulada «Configuracion»| Parametro | Tipo | Requerido | Descripcion |
|---|---|---|---|
| credentials_id | credentials | Si | Cuenta AWS S3 |
| operation | select | Si | Operacion: listBuckets, listObjects, getObject, putObject, deleteObject, headObject, copyObject, getPresignedUrl |
| bucket | text | Condicional | Nombre del bucket de S3 |
| key | text | Condicional | Clave/ruta del objeto (ej: carpeta/archivo.pdf) |
| prefix | text | No | Prefijo para filtrar objetos (ej: carpeta/) |
| maxKeys | number | No | Maximo de objetos a listar (1-1000, default: 100) |
| returnAsBase64 | boolean | No | Retornar contenido como Base64 (para binarios) |
| bodyKey | text | No | Campo en los datos de entrada con el contenido a subir (default: fileContent) |
| contentType | select | No | Tipo MIME: application/json, application/pdf, image/jpeg, text/csv, etc. |
| isBase64 | boolean | No | Indicar si el contenido viene codificado en Base64 |
| sourceKey | text | Condicional | Clave del objeto origen (para copiar) |
| destinationKey | text | Condicional | Clave de destino (para copiar) |
| destinationBucket | text | No | Bucket destino (vacio = mismo bucket) |
| expiresIn | select | No | Expiracion de URL prefirmada: 300 (5min) a 604800 (7 dias), default: 3600 |
| outputKey | text | No | Clave donde almacenar el resultado |
Credenciales
Sección titulada «Credenciales»Tipo de servicio: aws_s3. Se almacenan en la tabla servicecredentials.
Campos de configuracion:
- accessKeyId: Access Key ID de AWS
- secretAccessKey: Secret Access Key de AWS
- region: Region de AWS (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" }}Ejemplo de Uso
Sección titulada «Ejemplo de Uso»Caso basico - Listar objetos
Sección titulada «Caso basico - Listar objetos»{ "credentials_id": 1, "operation": "listObjects", "bucket": "mi-bucket", "prefix": "documentos/", "maxKeys": 100}API Utilizada
Sección titulada «API Utilizada»- AWS S3 API via @aws-sdk/client-s3 y @aws-sdk/s3-request-presigner
- Documentacion: https://docs.aws.amazon.com/AmazonS3/latest/API/
- El delimitador por defecto es ”/” para separar objetos en carpetas virtuales
- La descarga retorna texto UTF-8 por defecto; activar returnAsBase64 para archivos binarios
- Las URLs prefirmadas permiten compartir acceso temporal a objetos privados
- La copia de objetos se puede hacer entre diferentes buckets
- El contenido a subir puede venir del campo especificado en bodyKey o directamente en config.body
- El parametro
continueOnErrorpermite que el workflow continue incluso si la operacion falla - El listado de objetos soporta paginacion con nextContinuationToken
Nodos Relacionados
Sección titulada «Nodos Relacionados»- Manage S3 - Gestion simplificada de archivos en S3
- S3 Compatible - Almacenamiento compatible con S3 (Linode, DigitalOcean, MinIO, etc.)