Download Download

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

Download a file from an S3 bucket.

Examples

yaml
id: aws_s3_download
namespace: company.team

tasks:
  - id: download
    type: io.kestra.plugin.aws.s3.Download
    accessKeyId: "<access-key>"
    secretKeyId: "<secret-key>"
    region: "eu-central-1"
    bucket: "my-bucket"
    key: "path/to/file"

Properties

bucket

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

The S3 bucket name.

key

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

The key of a file to download.

accessKeyId

  • Type: string
  • Dynamic: ✔️
  • Required:

Access Key Id in order to connect to AWS.

If no credentials are defined, we will use the default credentials provider chain to fetch credentials.

compatibilityMode

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

If set to true, the task will use the AWS S3 DefaultAsyncClient instead of the S3CrtAsyncClient, which better integrates with S3-compatible services but restricts uploads and downloads to 2GB.

endpointOverride

  • Type: string
  • Dynamic: ✔️
  • Required:

The endpoint with which the SDK should communicate.

This property allows you to use a different S3 compatible storage backend.

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 credentials are defined, we will use the default credentials provider chain to fetch credentials.

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 credentials are defined, we will use the default credentials provider chain to fetch credentials.

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. If no credentials are defined, we will use the default credentials provider chain to fetch credentials.

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.

versionId

  • Type: string
  • Dynamic: ✔️
  • Required:

The specific version of the object.

Outputs

contentLength

  • Type: integer
  • Required:

The size of the body in bytes.

contentType

  • Type: string
  • Required:

A standard MIME type describing the format of the object data.

metadata

  • Type: object
  • SubType: string
  • Required:

A map of metadata to store with the object in S3.

uri

  • Type: string
  • Required:
  • Format: uri

versionId

  • Type: string
  • Required:

The version of the object.

Was this page helpful?