
File system Uploads
CertifiedUpload multiple files to FTPS
File system Uploads
Upload multiple files to FTPS
Uploads each provided file over FTPS to the target directory. Defaults: port 990, EXPLICIT mode, PROT P data channel, passive mode on, remote IP verification on, paths relative to user home. insecureTrustAllCertificates skips SSL checks for testing.
type: io.kestra.plugin.fs.ftps.UploadsExamples
id: fs_ftps_uploads
namespace: company.team
inputs:
- id: file1
type: FILE
- id: file2
type: FILE
tasks:
- id: uploads
type: io.kestra.plugin.fs.ftps.Uploads
host: localhost
port: 990
username: foo
password: "{{ secret('FTPS_PASSWORD') }}"
from:
- "{{ inputs.file1 }}"
- "{{ inputs.file2 }}"
to: "/upload/dir2"
Properties
from *Requiredstringobject
Files to upload (kestra:// URIs)
Kestra internal storage URIs; accepts a single URI string, a list of URIs, a map of destination filenames to URIs (to preserve original filenames), or a URI pointing to a file that contains URIs.
Pebble expression referencing an Internal Storage URI e.g. {{ outputs.mytask.uri }}.
io.kestra.plugin.fs.vfs.List
Enable the RSA/SHA1 algorithm (disabled by default)
Directory URI to list
Remote host
Maximum files to retrieve
Password
Reference (ref) of the pluginDefaults to apply to this task.
List files recursively
Regexp filter on full path
NONELAST_MODIFIED_ASCLAST_MODIFIED_DESCNAME_ASCNAME_DESCSort order applied to the list before maxFiles truncation
NONE (default) preserves the order in which the server returns files. LAST_MODIFIED_ASC/LAST_MODIFIED_DESC sort by last modified date, oldest/newest first. NAME_ASC/NAME_DESC sort alphabetically by file name.
Username
host *Requiredstring
Remote host
to *Requiredstring
Destination directory
dataChannelProtectionLevel string
PCSEPData channel protection level
PROT command value (P, C, etc.). Default P (encrypted).
enableSshRsa1 booleanstring
falseEnable the RSA/SHA1 algorithm (disabled by default)
insecureTrustAllCertificates booleanstring
Trust all certificates
Skip server certificate validation. Insecure: this disables protection against man-in-the-middle attacks and must not be enabled in production. Use only for testing against self-signed or untrusted certificates.
maxFiles integerstring
25Maximum files to upload
mode string
EXPLICITIMPLICITEXPLICITSelect FTPS mode
Choose implicit or explicit FTPS. Default EXPLICIT.
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.
overwrite booleanstring
trueOverwrite existing files
If false, fails when the destination already exists.
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
990Remote port
proxyHost string
FTP proxy hostname
proxyPort string
FTP proxy port
proxyType string
DIRECTHTTPSOCKSFTP proxy type
regExp string
Regexp filter on full path
Only source URIs fully matching this regex are uploaded. Example: .*\.sql$.
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
The fully-qualified URIs that point to the uploaded files on remote