SFTP
You can configure SFTP as a source or a target. The parameters are described in the following tables:
For message headers, see SFTP Message Headers.
SFTP Source Parameters
The following table describes the parameters for configuring SFTP as a source.
Field | Description |
---|---|
Checkpoint Store Configuration | |
Checkpoint Queue |
The name of the Last Value Queue (LVQ) (spool size 0) to be used for checkpointing. The queue must exist on the same event broker and Message VPN as the target queue. The SFTP Micro-Integration stores the current progress of file processing in a checkpoint store backed by the specified LVQ. If the LVQ is deleted (administratively) or a message from the LVQ is deleted or consumed by another consumer, the SFTPMicro-Integration will not be able to resume from the last checkpoint. In addition, the LVQ should not be shared by multiple SFTPMicro-Integrations. |
Auto Create Checkpoint Queue |
Select this option to automatically create the LVQ if it does not exist. |
SFTP Server Configuration | |
SFTP Server URI |
The source SFTP server URI and start directory path. Required format: For example: |
Username |
The username to use to log in to the SFTP server. |
Password |
The password to use to log in to the SFTP server, if you are using password authentication. If you don't set a password, you must upload a private key file. |
Private Key File |
The private key file to use for private key verification. |
Private Key Passphrase |
The private key file passphrase to use for private key verification. |
Known Hosts File |
The Known Hosts file for the SFTP server to use for host key verification. |
File Format |
The format of the files coming from the SFTP server:
|
Additional Properties |
(Optional) Any additional configuration related to SFTP. Click Add Context if you need to specify additional context properties. For more information, see Additional Source Parameters for SFTP |
Delimited File Configuration Properties
Field | Description |
---|---|
Event Delimiter |
The events in the files are separated by this character. For example: |
Field Delimiter |
The fields within the events are separated by this character. For example: |
JSON File Configuration Properties
Field | Description |
---|---|
JSON Path Filter Expression |
The JSON path expression to extract, split, or filter the data from the JSON file. The default value of |
XML File Configuration Properties
Field | Description |
---|---|
XPath Filter Expression |
The XPath expression to extract, split, or filter the data from the XML file. The default value of For example, for an <employees> <employee> <name>John</name> <age>30</age> </employee> <employee> <name>Smith</name> <age>40</age> </employee> </employees> |
Additional Source Parameters for SFTP
The following table lists the additional source-specific parameters for SFTP. For more information, see the Apache Camel SFTP Component documentation.

Configuration Option | Valid Values | Description |
---|---|---|
|
|
Indicates whether to use passive mode connections. The default ( |
|
|
Indicates whether to use strict host key checking. The default ( |
|
A comma-separated list of ciphers to use, listed in order of preference. Possible cipher names are defined by JCraft Java Secure Channel (JSch). Some examples include: aes128-ctr, aes128-cbc, 3des-ctr, 3des-cbc, blowfish-cbc, aes192-cbc, and aes256-cbc. |
|
|
A comma-separated list of key exchange protocols to use, listed in order of preference. Possible cipher names are defined by JCraft JSch. Some examples include: diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, diffie-hellman-group-exchange-sha256, ecdh-sha2-nistp256, ecdh-sha2-nistp384, and ecdh-sha2-nistp521. |
|
|
A comma-separated list of accepted public key algorithms. Some examples include: ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, and ecdsa-sha2-nistp521. |
|
|
A comma-separated list of algorithms supported for the server host key. Some examples include: ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, and ecdsa-sha2-nistp521. |
|
|
|
The time in milliseconds to wait for a connection to be established. |
|
|
The socket timeout, in milliseconds. |
|
|
The maximum number of times to retry to establish an initial connection to the remote FTP server. Use 0 to disable this behavior. |
|
|
The delay in milliseconds to wait before retrying the connection. |
|
|
The maximum number of keep-alive messages to send without receiving any messages back from the server. If this threshold is reached while keep-alive messages are being sent, the connection is closed. |
|
|
The interval (in milliseconds) between keep-alive messages. If zero is specified, no keep-alive messages are sent. |
|
|
The file transfer mode, either binary or ASCII. The default ( |
|
A valid charset value. |
The character encoding of the file contents, for example |
|
|
If |
|
|
If |
|
Any |
An expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move files into a .done subdirectory: To move files into a .processed subdirectory and rename them: To move files into a .processed subdirectory and rename file with current timestamp: |
|
Any |
Expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move failed files into an .error subdirectory: To move failed files into an .error subdirectory and rename file: To move failed files into an .error subdirectory and rename them with the current timestamp: |
|
A File Language expression. |
Built-in sort using File Language. Supports nested sorts: for example, you can sort by filename and then by modified date. Sort by filename: Sort by file modified time: |
|
|
If the specified location is a directory, the connector looks for files in all the subdirectories as well. |
|
|
The maximum depth to traverse when recursively processing a directory. |
|
|
The minimum depth to start processing when recursively processing a directory. Using |
|
Any |
Ant-style filter exclusion. If both |
|
Any |
Ant-style filter inclusion. Multiple inclusions may be specified in comma-delimited format. |
|
|
Indicates whether the |
|
A valid regular expression |
Excludes files where the filename matches the regex pattern (matching is case in-sensitive). |
|
A valid regular expression |
Includes files where the filename matches the regex pattern (matching is case-insensitive). |
|
A file extension |
Is used to include files matching file extension name (case-insensitive). For example to include |
|
A file extension |
Is used to exclude files matching file extension name (case-insensitive). For example to exclude |
|
Any |
The source SFTP server URI and the directory path. |
|
Any |
The amount of time that must elapse before the next poll. |
|
Any |
The amount of time that must elapse before the first poll starts. |
|
Enum values: |
The time unit for the |
|
|
Indicates whether to stop processing the current file if an exception is encountered. When this option is set to When this option is set to |
|
Enum values: |
Logging levels control how much information is saved to the log file. During troubleshooting, it may be useful to raise the logging level to increase the amount of information the logs receive from the FTP server. |
|
|
The maximum size, in bytes, of the files to be consumed. This option helps to prevent Out Of Memory (OOM) errors on systems with a small amount of available memory. |
SFTP Target Parameters
The following table describes the parameters for configuring SFTP as a target.
Configuration Option | Description |
---|---|
Checkpoint Store Configuration | |
Checkpoint Queue |
The name of the Last Value Queue (LVQ) (spool size 0) to be used for checkpointing. The queue must exist on the same event broker and Message VPN as the target queue. The Micro-Integration for SFTP stores the current progress of file processing in a checkpoint store backed by the specified LVQ. If the LVQ is deleted (administratively) or a message from the LVQ is deleted or consumed by another consumer, the Micro-Integration for SFTP will not be able to resume from the last checkpoint. In addition, the LVQ should not be shared by multiple instances of the Micro-Integration for SFTP. |
Auto Create Checkpoint Queue |
Select this option to automatically create the LVQ if it does not exist. |
SFTP Server Configuration | |
SFTP Server URI |
The target SFTP server URI and start directory path. Required format: For example: |
Username |
The username to use to log in to the SFTP server. |
Password |
The password to use to log in to the SFTP server, if you are using password authentication. If you don't set a password, you must upload a private key file. |
Private Key File |
The private key file to use for private key verification. |
Private Key Passphrase |
The private key file passphrase to use for private key verification. |
Known Hosts File |
The Known Hosts file for the SFTP server to use for host key verification. |
Write Mode |
The action to take if a file with the same name already exists:
|
Maximum File Size |
The maximum size of the file in bytes. If the value is 0, then there is no limit. |
Maximum Number of Events |
The maximum number of events to be written to a file, after which a new file is created. If the value is 0, then there is no limit. |
Additional Properties |
(Optional) Any additional configuration related to SFTP. Click Add Context if you need to specify additional context properties. For more information, see Additional Target Parameters for SFTP. |
Additional Target Parameters for SFTP
The following table lists the additional target-specific parameters for SFTP. For more information, see the Apache Camel SFTP Component documentation.

Configuration Option | Valid Values | Description |
---|---|---|
|
|
Indicates whether to use passive mode connections. The default ( |
|
|
Indicates whether to use strict host key checking. The default ( |
|
A comma-separated list of ciphers to use, listed in order of preference. Possible cipher names are defined by JCraft Java Secure Channel (JSch). Some examples include aes128-ctr, aes128-cbc, 3des-ctr, 3des-cbc, blowfish-cbc, aes192-cbc, and aes256-cbc. |
|
|
A comma-separated list of key exchange protocols to use, listed in order of preference. Possible cipher names are defined by JCraft JSch. Some examples include: diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, diffie-hellman-group-exchange-sha256, ecdh-sha2-nistp256, ecdh-sha2-nistp384, and ecdh-sha2-nistp521. |
|
|
A comma-separated list of accepted public key algorithms. Some examples include ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, and ecdsa-sha2-nistp521. |
|
|
A comma-separated list of algorithms supported for the server host key. Some examples include: ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, and ecdsa-sha2-nistp521. |
|
|
|
The time in milliseconds to wait for a connection to be established. |
|
|
The socket timeout, in milliseconds. |
|
|
The maximum number of times to retry to establish an initial connection to the remote FTP server. Use 0 to disable this behavior. |
|
|
The delay in milliseconds to wait before retrying the connection. |
|
|
The maximum number of keep-alive messages to send without receiving any messages back from the server. If this threshold is reached while keep-alive messages are being sent, the connection is closed. |
|
|
The interval (in milliseconds) between keep-alive messages. If zero is specified, no keep-alive messages are sent. |
|
|
The file transfer mode, either binary or ASCII. The default ( |
|
A valid charset value. |
The character encoding of the file contents, for example |
|
|
The action to take if a file with the same name already exists:
|
|
Any valid filename. |
The filename to write to. It can include the leading file path. For example: sub1/sub2/employee.csv If the filename is not set, a randomly generated UUID is used, in which case each event is written to a unique file. The fileName can be specified using a Camel Simple Language expression, for example: fileName: "backup/$#{date:now:yyyyMMdd}/test.txt" |
|
Unix |
The permissions (mode) to set on the file. |
|
Unix |
The permissions (mode) to set on the directory. |
|
|
Indicates whether to prevent duplicate events from being written to the target file. Duplicate events are identified based on the value of the |
|
|
Indicates whether to check for duplicates only on redelivery. The default (true) is to check for duplicates for redelivered events only. If Use this option only when |
|
Any valid header name |
The user property or header name to be used for uniquely identifying events. Use this option only when |
|
|
The size of the in-memory cache used to store event unique identifiers. Use this option only when |
|
|
The maximum number of events to be written to a file. If the value is 0, then there is no limit. |
|
|
The maximum size of the file in bytes. If the value is 0, then there is no limit. |
|
Any valid string |
The string to be prepended to the event. |
|
Any valid string |
The string to be appended to the event. |
|
Any valid string |
The string to be prepended to the file (for example, a header line). This is done only once when the file is created. |
|
Any valid string |
The string to be prepended to the first event. |
|
Enum values: |
Logging levels control how much information is saved to the log file. During troubleshooting, it may be useful to raise the logging level to increase the amount of information the logs receive from the FTP server. |