
SMB (Server Message Block) Downloads
CertifiedDownload multiple files over SMB
SMB (Server Message Block) Downloads
Download multiple files over SMB
Lists matching files then downloads them to internal storage. Respects maxFiles (default 25) and optional post-download action (MOVE/DELETE). Default port 445.
type: io.kestra.plugin.fs.smb.DownloadsExamples
Download files from my_share and move them to an archive_share
id: fs_smb_downloads
namespace: company.team
tasks:
- id: downloads
type: io.kestra.plugin.fs.smb.Downloads
host: localhost
port: "445"
username: foo
password: "{{ secret('SMB_PASSWORD') }}"
from: "/my_share/"
action: MOVE
moveDirectory: "/archive_share/"
Installation
Our standard Docker images already include this plugin. If you use a -slim image or another setup, install it with the following command:
kestractl plugins get io.kestra.plugin:plugin-fs --compatible-for $KESTRA_VERSION For kestractl, use your Kestra version with --compatible-for, or specify an exact plugin version.
For Kestra CLI, replace LATEST with a specific version or version range to pin the plugin version.
Properties
from *string
Directory URI to list
host *string
Remote host
action string
MOVEDELETENONEAction on downloaded files
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150maxFiles integerstring
25Maximum files to retrieve
moveDirectory string
Destination directory when action is MOVE
When recursive is true, the relative path from the from directory is preserved under moveDirectory.
password string
Password
port string
445Remote port
recursive booleanstring
falseList files recursively
regExp string
Regexp filter on full path
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
Keys are paths relative to from (the file name for files directly under from, or subfolder paths for recursive downloads).