Skip to main content
Version: 4.2.5

FTP(S) writer

Writes a file to an FTP server and allows renaming etc of file. If source is not specified, the file is uploaded from the data stream.

Impact on Adapterflow data stream: No

Remark

Note that directory paths on server side may be case sensitive.

In parameters

Activity 

NameTypeDescription
EnabledBoolValueSpecifies whether the activity is to be enabled or not. Only enabled activities are validated and executed.
DescriptionStringValueDescription of the activity.
NameStringValueName of the activity. The name has to be unique in the workflow. The name is used as identifier of the activity in activity binding.

Connection

NameTypeDescription
ServerActivityComplexValue of StringValueName or IP address of server to connect to.
Bindable.
PortIntegerValuePort to be used for connection. Default: 21
Bindable.
UserStringValueUser name to be used to log on to the account on the FTP server.
Bindable.
PasswordPasswordValuePassword to be used to log on to the account on the FTP server.
Bindable.

Connection - advanced

NameTypeDescription
Passive FTP modeBoolValueSpecifies whether passive FTP mode is to be used. True means it will be used (Default).
Bindable.
Connection timeoutIntegerValueA connection time period (in milliseconds) that applies to:
  • Socket timeout. How long the client will try to establish socket connection to server.
  • Listen timeout. How long the listening socket will be open in active mode.
  • Transfer timeout. How long the client is to wait for data connection from remote side to be accepted.
Default: 60000
Bindable.
List methodFtpListMethodThe list command sent to the server. If the server supports MLSD, this option is recommended. Default: MLSD
Bindable.
List entry formatListEntryFormatSpecifies interpretation of list entries received from server.
Bindable.
Server directory separatorStringValueCharacter used by server to separate directories. Default: /
Bindable.
RetriesIntegerValueNumber of times the activity will retry to issue a failed command before an error occurs. Default: 0
Bindable.
Time between retriesIntegerValueTime in seconds to wait between each retry. Default: 0
Bindable.
TraceBoolValueEnables/disables tracing of sent and received FTP commands to a file. True means tracing is enabled. Default: False
Bindable.
Trace fileActivityComplexValue of FilePathValueThe file where traced commands are to be saved.
Bindable.
Ignore error codesStringValueSpecifies error codes (not specified by the FTP protocol) that may be returned from the FTP server when listing files and there are no files to return. The specified error codes will be ignored when returned. Fill in codes to be ignored as comma separated list.
Example: 500, 503, 550
Bindable.
List is case sensitiveBoolValueSpecifies whether file lists are handled as case sensitive. True means lists will be case sensitive.
Bindable
Remote code pageCodePageIDValueSpecifies the code page/charset to be used by the remote server. If not specified, 20127 (US-ASCII) is used.
Bindable.
Buffer sizeIntegerValueSpecifies the buffer size when sending data to the server. The value is specified in bytes. Default: 262144
Bindable.
Account info (ACCT)StringValueSpecifies account info to be sent using ACCT command.
Bindable.
Speed limitIntegerValueSpecifies the maximum number of bytes per second that may be sent to the server. A value of 0 (zero) means unlimited. Default: 0
Bindable.
Use IPv6BoolValueSpecifies if IPv6 should be used for communication with the server. Default: False
Bindable.
Use FEATBoolValueSpecifies if FEAT Command should be used for determining which features are implemented by the server. Default: True
Bindable.
Virtual host nameStringValueSpecifies the name of the host to send using the HOST command.
Bindable.

Connection - SSL

NameTypeDescription
Encrypt data channelBoolValueSpecifies whether encryption of data channel is to be enabled. True means encryption is enabled. Default: False.
Bindable.
Use SSLBoolValueSpecifies whether SSL  is to be enabled. True means SSL is enabled. Default: False
Bindable.
Auth commandFtpAuthorizationCommandAuthorization command to be sent to server to request an explicit SSL session. Options are:
  • Auto (default)
  • TLS
  • SSL
  • TLSC
  • TLSP
Bindable.
VersionsSSLTLSVersionsValueSSL/TLS version to be used. More than one option can be selected. Default is TLS 1.3, TLS 1.2. For more information, see General information about SSL and TLS.
Bindable.
SSL modeSSLModeSpecifies whether explicit or implicit SSL mode is to be used. Default: Implicit
Bindable.
CertificateCertificateValueThe client certificate that the server may request. Use browser button to select certificate.
To list all available stores, you may need to start the Adapterflow Wizard with elevated privileges. When the Adapterflow is executed, the service must have the appropriate privileges to access the certificate. For more information, see Troubleshooting.
Bindable.
Use SSL Session ResumptionBoolValueSpecifies if SSL Session Resumption should be used. Default: False
Bindable.

Connection - SSL Certificate validation

NameTypeDescription
Trusted storageCertStoreValueThe certificate storage containing trusted certificates for validation of server certificate, located in Windows system certificate storages. Use browser to select trusted storage.
To list all available stores, you may need to start the Adapterflow Wizard with elevated privileges. When the Adapterflow is executed, the service must have the appropriate privileges to access the certificate. For more information, Troubleshooting.
Bindable.
Host roleFTPSHostRoleThe role of the remote host. The Host role is validated when the remote host sends its certificate to the client for validation. Options are:
  • None (default)
  • Client
  • Server
  • Both
Bindable.
EnableBoolValueEnables/disables validation of remote servers certificate. Disabling validation implies that all received certificates will be accepted without any validation. Default: True
Bindable.
OptionsServerCertificateValidationOptionsValueSpecifies the validation errors to be ignored. Options are:
  • Ignore date. Accept certificate that is not yet valid or expired.
  • Ignore CA. Accept certificate if Certificate Authority Root is not known.
  • Ignore signature. Accept certificate if signature cannot be verified.
  • Ignore name. Accept certificate if name (CN) does not match the host name.
  • Accept self signed. Accept certificate if self signed.
Bindable.
Use system storagesBoolValueSpecifies whether Windows system storages will be used during validation. If set to True, Windows system stores will be used when searching for CA and root certificates and when checking if certificate is trusted of blocked. If set to False you have to specify a trusted store through the Trusted storage property. It is possible to specify an additional trusted store besides the stores in the Windows system storages that are considered trusted. Note that it is likely that validation will be slower when using system stores. Default: True
Bindable.

Server side

NameTypeDescription
Create temporary fileBoolValueSpecifies whether the file is to be uploaded to a temporary file and then renamed when the upload is complete. True means a temporary file will be created. Default: False
Bindable.
Note: If there is an existing file with the same name as the temporary file, the activity will fail.
Temporary server directoryActivityComplexValue of FTPSDirectoryPathValueTemporary directory where the file is to be initially uploaded.
Note: The directory path may be case sensitive.
Bindable.
Temporary extensionActivityComplexValue of StringValueTemporary extension to be initially given to the file. if left empty, the file will keep its original extension.
Bindable.
File size checkBoolValueSpecifies whether the size of the uploaded file is to be compared to the source file when upload is complete. 
Bindable.

Standard

NameTypeDescription
Source file nameActivityComplexValue of FilePathValueName and full path of file to be uploaded (source file). If left empty, data stream is uploaded.
Bindable.
Destination directoryActivityComplexValue of FTPSDirectoryPathValueDirectory where the file is to be uploaded.
Note: The directory path may be case sensitive.
Bindable.
Destination file nameActivityComplexValue of StringValueName that the uploaded file is to get. If left empty, the file will keep its original name.
Bindable.
Transfer typeFtpTransferModeSpecifies how data is to be transferred. The options are:
  • ASCII
  • Binary (default)
Bindable.
Store typeFTPSStoreModeSpecifies what to do if a file with the same name already exists. Options are:
  • Overwrite. Overwrite existing files. An explicit delete is performed before the new file is transferred.
  • Append. Append to existing files. Note: See Remark below
  • Skip. Skip transfer if file exists.
  • None (default). No action. FTP server type decides whether existing file with same name will be overwritten.

Bindable
Note 1: The Store type options refer to the Destination file, and not the temporary file (if such is being used).
Note 2: Under very special circumstances, when Overwrite or Append is used in combination with Create temporary file, there might be a slight risk of losing the original file on the server.

Remark

If Store type is set to 'Append' and the value of Retries is greater than, 0 the first attempt to upload the file will be made using the APPE ftp command. If this attempt fails, any subsequent retry-attempts for this operation will send a REST command followed by the STOR command to the server to attempt to resume the append operation from the original end of the file, ignoring any data that was appended in the failed attempt. This requires that the FTP-server supports the REST command in conjunction with the STOR command.

Out parameters

NameTypeDescription
Local filepath OutFilePathValueThe full path to the file on the client.
Local filename OutFilePathValueThe name of the file on the client (no directory path).
Server filepath OutFilePathValueThe full path to the file on the server.
Sever filename OutFilePathValueThe name of the file on the server (no directory path).

See Also

FTP(S) reader