Downloads Downloads

yaml
type: "io.kestra.plugin.aws.s3.Downloads"

Downloads multiple files from a S3 bucket.

Examples

yaml
id: "downloads"
type: "io.kestra.plugin.aws.s3.Downloads"
accessKeyId: "<access-key>"
secretKeyId: "<secret-key>"
region: "eu-central-1"
bucket: "my-bucket"
prefix: "sub-dir"

Properties

action

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: βœ”οΈ
  • Possible Values:
    • MOVE
    • DELETE
    • NONE

The action to perform on the retrieved files. If using 'NONE' make sure to handle the files inside your flow to avoid infinite triggering.

bucket

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: βœ”οΈ

The S3 bucket where to download the file.

accessKeyId

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

Access Key Id in order to connect to AWS.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

compatibilityMode

  • Type: boolean
  • Dynamic: ❌
  • Required: ❌
  • Default: false

This property will use the AWS S3 DefaultAsyncClient instead of the S3CrtAsyncClient, which maximizes compatibility with S3-compatible services but restricts uploads and downloads to 2GB.

delimiter

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

A delimiter is a character you use to group keys.

encodingType

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The EncodingType property for this object.

endpointOverride

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The endpoint with which the SDK should communicate.

This property should normally not be used except for local development.

expectedBucketOwner

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The account ID of the expected bucket owner.

If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

filter

  • Type: string
  • Dynamic: ❌
  • Required: ❌
  • Default: BOTH
  • Possible Values:
    • FILES
    • DIRECTORY
    • BOTH

The type of objects to filter: files, directory, or both.

marker

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

Marker is where you want Amazon S3 to start listing from.

Amazon S3 starts listing after this specified key. Marker can be any key in the bucket.

maxKeys

  • Type: integer
  • Dynamic: βœ”οΈ
  • Required: ❌
  • Default: 1000

Sets the maximum number of keys returned in the response.

By default, the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.

moveTo

The destination bucket and key for MOVE action.

prefix

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

Limits the response to keys that begin with the specified prefix.

regexp

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

A regexp to filter on full key.

ex: regExp: .* to match all files regExp: .*2020-01-0.\\.csv to match files between 01 and 09 of january ending with .csv

region

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

AWS region with which the SDK should communicate.

requestPayer

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

Sets the value of the RequestPayer property for this object.

secretKeyId

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

Secret Key Id in order to connect to AWS.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

sessionToken

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

AWS session token, retrieved from an AWS token service, used for authenticating that this user has received temporary permissions to access a given resource.

If no connection is defined, we will use the DefaultCredentialsProvider to fetch the value.

stsEndpointOverride

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The AWS STS endpoint with which the SDKClient should communicate.

stsRoleArn

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

AWS STS Role.

The Amazon Resource Name (ARN) of the role to assume. If set the task will use the StsAssumeRoleCredentialsProvider. Otherwise, the StaticCredentialsProvider will be used with the provided Access Key Id and Secret Key.

stsRoleExternalId

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

AWS STS External Id.

A unique identifier that might be required when you assume a role in another account. This property is only used when an stsRoleArn is defined.

stsRoleSessionDuration

  • Type: string
  • Dynamic: ❌
  • Required: ❌
  • Default: 900.000000000
  • Format: duration

AWS STS Session duration.

The duration of the role session (default: 15 minutes, i.e., PT15M). This property is only used when an stsRoleArn is defined.

stsRoleSessionName

  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

AWS STS Session name. This property is only used when an stsRoleArn is defined.

Outputs

objects

  • Type: array
  • SubType: S3Object
  • Dynamic: ❓
  • Required: ❌

The list of S3 objects.

Definitions

io.kestra.plugin.aws.s3.models.S3Object

Properties

etag
  • Type: string
  • Dynamic: ❓
  • Required: ❓
key
  • Type: string
  • Dynamic: ❓
  • Required: ❓
lastModified
  • Type: string
  • Dynamic: ❓
  • Required: ❓
  • Format: date-time
owner
  • Type: Owner
  • Dynamic: ❓
  • Required: ❓
size
  • Type: integer
  • Dynamic: ❓
  • Required: ❓
uri
  • Type: string
  • Dynamic: ❓
  • Required: ❓
  • Format: uri

io.kestra.plugin.aws.s3.models.Owner

Properties

displayName
  • Type: string
  • Dynamic: ❓
  • Required: ❓
id
  • Type: string
  • Dynamic: ❓
  • Required: ❓

io.kestra.plugin.aws.s3.Copy-CopyObject

Properties

bucket
  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The bucket name

key
  • Type: string
  • Dynamic: βœ”οΈ
  • Required: ❌

The bucket key

Was this page helpful?