For the complete documentation index, see llms.txt. This page is also available as Markdown.

ReadFile

Reads a file through SFTP connection.

Task version: 3.1.0

Required Frends version: 5.5+

Required .NET version: 6.0

Compatible Agents: Crossplatform

Task Parameters

Name
Description

Path : String

Full path of the target file to be read.

Default: / Example: /destination

FileEncoding : FileEncoding

Encoding for the read content.

By selecting 'Other' you can use any encoding.

Possible values:

  • UTF8: Encoding for the read content.

By selecting 'Other' you can use any encoding.

  • ANSI: Encoding for the read content.

By selecting 'Other' you can use any encoding.

  • ASCII: Encoding for the read content.

By selecting 'Other' you can use any encoding.

  • WINDOWS1252: Encoding for the read content.

By selecting 'Other' you can use any encoding.

  • Unicode: Encoding for the read content.

By selecting 'Other' you can use any encoding.

  • Other: Other enables users to add other encoding options as string.

Default: ANSI Example: FileEncoding.ANSI

EnableBom : Boolean

Additional option for UTF-8 encoding to enable bom.

Default: False Example: true

EncodingInString : String

File encoding to be used.

Encoding don't support any unicode encoding. It only support the code page encodings.

A partial list of possible encodings: https://en.wikipedia.org/wiki/Windows_code_page#List.

Default: - Example: iso-8859-1

Name
Description

ConnectionTimeout : Int32

The lenght of time, in seconds, until the connection times out.

You can use value -1 to indicate that the connection does not time out.

Default value is 60 seconds.

Default: 60 Example: 60

Address : String

SFTP host address

Default: - Example: localhost

Port : Int32

Port number to use in the connection to the server.

Default: 22 Example: 22

Authentication : AuthenticationType

Selection for authentication type

Possible values:

  • UsernamePassword: Authentication type which uses username and password.

  • UsernamePrivateKeyFile: Authentication type which uses username and private key file

  • UsernamePrivateKeyString: Authentication type which uses username and private key as a string.

  • UsernamePasswordPrivateKeyFile: Authentication type which uses username, password and private key file.

  • UsernamePasswordPrivateKeyString: Authentication type which uses username, password and private key as a string.

Default: - Example: AuthenticationType.UsernamePassword

Username : String

Username to use for authentication to the server. Note that the file endpoint only supports

username for remote shares and the username must be in the format DOMAIN\Username.

Default: - Example: foo

🗝Password : String

Password to use in the authentication to the server.

Default: - Example: pass

PrivateKeyFile : String

Full path to private key file. Supported private key formats: OpenSSH and ssh.com.

PuTTY keys can be converted with puttygen.exe application.

1. Load your key file into puttygen.exe

2. Conversion > Export OpenSSH key (not the "force new file format" option)

Default: - Example: C:\path\to\private\key

🗝PrivateKeyString : String

Private key as a string, supported private key formats: OpenSSH and ssh.com.

PuTTY keys can be converted with puttygen.exe application.

1. Load your key file into puttygen.exe

2. Conversion > Export OpenSSH key (not the "force new file format" option)

Default: - Example: -----BEGIN RSA PRIVATE KEY----- Fqxq2jbSKyb0a+oW96Tjoif3Kcb5zZ0FiQyiHgQozLXrecjdUwjWuedkDoZMxwG5 bxpOnxZ/88tDzYCtCPcYCPRF8BNueUsZO8/tztTra+4NgVd/omXHG5bqb7iMB4dc ... OX7Q/wO4lqOlFhLtRnSL0cfuhRmt59pM75Zd+euX5tv9jmCj+AQT/kiBoMhNrDGk N2gTujnH7HCr/afSBeL3xnYcEmeCQTxTPZofBjPC+TPd9g7MntSGBeU/Fstv0jbg -----END RSA PRIVATE KEY-----

🗝PrivateKeyPassphrase : String

Passphrase for the private key file.

Default: - Example: passphrase

ServerFingerPrint : String

Fingerprint of the SFTP server. When using "Username-Password"

authentication it is recommended to use server fingerprint in

order to be sure of the server you are connecting.

Default: - Example: MD5: '41:76:EA:65:62:6E:D3:68:DC:41:9A:F2:F2:20:69:9D' SHA256: 'FBQn5eyoxpAl33Ly0gyScCGAqZeMVsfY7qss3KOM/hY='

HostKeyAlgorithm : HostKeyAlgorithms

Host key algorithm to use when connecting to server.

Default value is Any which doesn't force the task to use

specific algorithm.

Possible values:

  • Any: The algorithm is negotiated with the server.

The task will use ed25519 as default.

  • RSA: Force the ssh-rsa host key algorithm.

  • Ed25519: Force the ssh-ed25519 host key algorithm.

  • nistp256: Force the ecdsa-sha2-nistp256 host key algorithm.

  • nistp384: Force the ecdsa-sha2-nistp384 host key algorithm.

  • nistp521: Force the ecdsa-sha2-nistp521 host key algorithm.

Default: Any Example: HostKeyAlgorithms.RSA

UseKeyboardInteractiveAuthentication : Boolean

Enable if the server uses keyboard-interactive authentication method.

Default: False Example: false

PromptAndResponse : PromptResponse[]

Responses for the server prompts when using Keyboard Interactive authentication method.

Default: - Example: -

BufferSize : UInt32

Integer value of used buffer size as KB.

Default value is 32 KB.

Default: 32 Example: 32

Name
Description

ContentType : ContentType

Determines if the content of the file is returned as string or byte array.

Possible values:

  • Binary: Determines if the content of the file is returned as string or byte array.

  • Text: Determines if the content of the file is returned as string or byte array.

Default: Text Example: ContentType.Text

Task Result

Name
Description

BinaryContent : Byte[]

Content of the file as a byte array. Example: [1, 2, 3]

TextContent : String

Content of the file in string format. Example: This is a test file

Path : String

Full name of the file. Example: c:\source\Test.txt

SizeInMegaBytes : Double

Size of the read file. Example: 0

LastWriteTime : DateTime

Timestamp of when the file was last modified. Example: 06/14/2022 09:45:28

Task Changelog

Changelog for Task Frends.SFTP.ReadFile.

[3.1.0] - 2026-02-05

Added

  • Added support for binary files

[3.0.0] - 2026-01-27

Changed

Breaking changes!

  • Updated dependency SSH.NET to the newest version 2025.1.0.

  • Drop DSS support

[2.4.0] - 2026-01-13

Fixed

  • Operation timeout is now using the Connection.ConnectionTimeout parameter.

[2.3.0] - 2025-01-10

Fixed

  • Fixed issue with ConnectionInfoBuilder having static properties for connection and input parameters which lead to Task not being thread safe.

[2.2.0] - 2024-08-19

Updated

  • Updated Renci.SshNet library to version 2024.1.0.

[2.1.0] - 2023-12-22

Updated

  • [Breaking] Updated dependency SSH.NET to the newest version 2023.0.0.

Changed

  • Changed connection info builder to create the connection info as it's done in DownloadFiles.

  • [Breaking] Changed PrivateKeyFilePassphrase parameter to PrivateKeyPassphrase and enabled it when PrivateKeyString was used.

[2.0.1] - 2022-12-01

Updated

  • Updated dependency Microsoft.Extensions.DependencyInjection to the newest version.

[2.0.0] - 2022-11-09

Added

  • Added keyboard authentication method

  • [Breaking] Added parameter for keyboard authentication

  • Added more tests e.g. Serverfingerprint tests

  • Added System.Text.CodePages NuGet to the project

  • Added ConnectionInfoBuilder

  • Added HostKeyAlgorithm enum

[1.0.2] - 2022-06-23

Changed

  • Changed the main method to read from a file.

  • Updated tests

[1.0.1] - 2022-06-20

Changed

  • SSH.NET version upgrade from 2020.0.1 to 2020.0.2

[1.0.0] - 2022-03-25

Added

  • Initial implementation

Last updated

Was this helpful?