# SFTP

### Overview

The **SFTP** Data Operation securely file transfers a file to a remote resource. It requires an SFTP resource. Go to [Console](../console/console) to create a resource.

### Use Cases

* Sending a report to a remote server
* Use with a periodic task to remit a collection of assets on a regular interval

### Data Operation Properties

#### Datasource

An SFTP data source with the correct username and password for the connection. To create an SFTP data source, see [Creating SFTP Credentials](../building-apps/integration-guides/creating-sftp-credentials).

#### File Asset

An [Asset Data Type](../variable-data-types/the-asset-data-type) to be sent to the remote server.

#### Host

The URL or IP of the host to connect to.

#### Port

The port on the remote server to connect to. The default for SFTP is 22. This is a number value.

#### Remote Path

Where on the remote server to place the file.

#### Remote Filename

The filename to name the file on the remote server. If none is provided, the same filename will be used.

### Results

The returned object contains information about the SFTP operation. The object contains the following properties:

* **success**- a boolean representing whether the operation was a success.
* **message**- a text message about the operation performed.
* **debug**- an object containing information about the upload experience.
  * **timing**- object containing information about the time the operation took.
  * **paths** - information about the file or files being uploaded.
  * **username** - the SFTP username that performed the operation.
  * **successMessage** - a more detailed message about the operation performed.

**Note**: If an operation fails because of an invalid path, the operation might not return.
