
File system Downloads
CertifiedDownload multiple files from FTP
File system Downloads
Download multiple files from FTP
Lists matching files then downloads them to internal storage. Respects maxFiles (default 25) and optional post-download action (MOVE/DELETE). Defaults: port 21, passive mode on, remote IP verification on, paths relative to user home.
type: io.kestra.plugin.fs.ftp.DownloadsExamples
Download a list of files and move them to an archive folder
id: fs_ftp_downloads
namespace: company.team
tasks:
- id: downloads
type: io.kestra.plugin.fs.ftp.Downloads
host: localhost
port: 21
username: foo
password: "{{ secret('FTP_PASSWORD') }}"
from: "/in/"
interval: PT10S
action: MOVE
moveDirectory: "/archive/"
Properties
from *Requiredstring
Directory URI to list
host *Requiredstring
Remote host
action string
MOVEDELETENONEAction on downloaded files
enableSshRsa1 booleanstring
falseEnable the RSA/SHA1 algorithm (disabled by default)
maxFiles integerstring
25Maximum files to retrieve
moveDirectory string
Destination directory when action is MOVE
options Non-dynamic
{
"connectionTimeout": "PT30S",
"dataTimeout": "PT30S",
"socketTimeout": "PT30S",
"controlKeepAliveTimeout": "PT30S",
"controlKeepAliveReplyTimeout": "PT30S"
}FTP client options
io.kestra.plugin.fs.ftp.FtpInterface-Options
PT30SControl connection timeout
Maximum time to open the control channel. Default 30s.
PT30SKeep-alive reply timeout
How long to wait for keep-alive responses before failing. Default 30s.
PT30SControl keep-alive interval
Sends keep-alive commands during long transfers. Default 30s.
PT30SData channel timeout
Maximum time to open the data socket. Default 30s.
PT30SSocket read timeout
Timeout for socket reads and writes once connected. Default 30s.
passiveMode booleanstring
trueUse 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 string
Password
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
port string
21Remote port
proxyHost string
FTP proxy hostname
proxyPort string
FTP proxy port
proxyType string
DIRECTHTTPSOCKSFTP proxy type
recursive booleanstring
falseList files recursively
regExp string
Regexp filter on full path
remoteIpVerification booleanstring
trueVerify data channel IP
Ensures the responding server IP matches the control connection to prevent spoofed data channels.
rootDir booleanstring
trueTreat path as user home root
If true (default), remote paths are resolved relative to the authenticated user's home directory.
username string
Username
Outputs
files array
Metadata of downloaded files
io.kestra.plugin.fs.vfs.models.File
date-timeFOLDERFILEFILE_OR_FOLDERIMAGINARYurifalsedate-timeoutputFiles object
The downloaded files as a map of from/to URIs