File system Download

File system Download

Certified

Download a file from FTP

Fetches a single remote file to internal storage. Defaults: port 21, passive mode on, remote IP verification on, paths relative to user home.

yaml
type: io.kestra.plugin.fs.ftp.Download
yaml
id: fs_ftp_download
namespace: company.team

tasks:
  - id: download
    type: io.kestra.plugin.fs.ftp.Download
    host: localhost
    port: 21
    username: foo
    password: "{{ secret('FTP_PASSWORD') }}"
    from: "/in/file.txt"
Properties

Source URI to download

Remote host

DefaultSHA_256
Possible Values
MD5SHA_1SHA_256SHA_512

Checksum algorithm to use

Defaults to SHA_256. The computed checksum is always exposed on the output as checksum. MD5 and SHA_1 are deprecated and considered weak; prefer SHA_256 or SHA_512.

Expected checksum value to compare against the downloaded file

Required when validateChecksum is true. Comparison is case-insensitive.

Defaultfalse

Enable the RSA/SHA1 algorithm (disabled by default)

Default{ "connectionTimeout": "PT30S", "dataTimeout": "PT30S", "socketTimeout": "PT30S", "controlKeepAliveTimeout": "PT30S", "controlKeepAliveReplyTimeout": "PT30S" }

FTP client options

Definitions
connectionTimeoutstring
DefaultPT30S

Control connection timeout

Maximum time to open the control channel. Default 30s.

controlKeepAliveReplyTimeoutstring
DefaultPT30S

Keep-alive reply timeout

How long to wait for keep-alive responses before failing. Default 30s.

controlKeepAliveTimeoutstring
DefaultPT30S

Control keep-alive interval

Sends keep-alive commands during long transfers. Default 30s.

dataTimeoutstring
DefaultPT30S

Data channel timeout

Maximum time to open the data socket. Default 30s.

socketTimeoutstring
DefaultPT30S

Socket read timeout

Timeout for socket reads and writes once connected. Default 30s.

Defaulttrue

Use passive data connections

Passive mode avoids most firewall and NAT issues and is enabled by default (true). Set to false to force active mode.

Password

Reference (ref) of the pluginDefaults to apply to this task.

Default21

Remote port

FTP proxy hostname

FTP proxy port

Possible Values
DIRECTHTTPSOCKS

FTP proxy type

Defaulttrue

Verify data channel IP

Ensures the responding server IP matches the control connection to prevent spoofed data channels.

Defaulttrue

Treat path as user home root

If true (default), remote paths are resolved relative to the authenticated user's home directory.

Username

Defaultfalse

Validate the downloaded file against an expected checksum

When enabled, the task fails if the computed checksum does not match checksumExpected. The downloaded file is not stored in internal storage if validation fails.

Checksum of the downloaded file

Hex-encoded digest computed with checksumAlgorithm. Populated whenever the file is downloaded successfully.

Formaturi

The fully-qualified URIs that point to source data

Formaturi

The fully-qualified URIs that point to destination path