# File Transfer Protocol (FTP)

The **File Transfer Protocol** component allows you to upload, download, list, delete, or rename files on remote servers securely and efficiently.

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FXVgvWwF6q2LymlvQD0dn%2Fimage.png?alt=media&#x26;token=ad995b33-7fa8-4557-8150-5d4bbfc3f503" alt="File Transfer Protocol component in the Fastn flow editor"><figcaption></figcaption></figure>

### **How to Configure?**

* **Select Connection Type**\
  Choose the connection mode based on your use case: **FTP**, **FTPS**, or **SFTP**.

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FoQPBnyDuJ5bDFPGKbbQg%2Fimage.png?alt=media&#x26;token=9f9ddda0-556b-4241-9157-584992028b46" alt="Connection type selection dropdown with FTP, FTPS, and SFTP options"><figcaption></figcaption></figure>

* **Connect or Create Account**
  * You can **connect an existing FTP/FTPS/SFTP account** if already configured.
  * Or, enable the **Manual** toggle to create your own credentials.

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FAvAZyIFW2Mch2kz3cBvk%2Fimage.png?alt=media&#x26;token=7f65ec8d-9a0e-473b-b32f-8322d8f4b1a4" alt="FTP account connection panel with option to connect existing or create manual credentials"><figcaption></figcaption></figure>

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FOIoWj2ln5hDYpheZqEKQ%2Fimage.png?alt=media&#x26;token=4a559bcb-4897-45f1-aded-b1902c9ebb82" alt="Manual credentials form for creating a new FTP connection"><figcaption></figcaption></figure>

* **Select Operation**\
  Choose what you want the component to do:
  * **Upload** a file to the remote server
  * **Download** a file from the remote server
  * **List** files in a directory
  * **Delete** a file from the server
  * **Rename** a file
* **Set File Path**\
  Specify the target **path** for the file or directory where the operation should be performed.

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FovLYX7IyOAnOxUUjS2qn%2Fimage.png?alt=media&#x26;token=9fc36bb4-9e3d-4eaf-a393-00f514eca49d" alt="FTP operation selection and file path configuration fields"><figcaption></figcaption></figure>

* **Run the Flow**\
  Save and run the flow. The selected file operation will execute automatically.

<figure><img src="https://1255842839-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3iSr2Tx8FvvuoLPncziH%2Fuploads%2FpLNtg7HoG8Xu5NMFXaH6%2Fimage.png?alt=media&#x26;token=a0d4938a-8fc0-4395-872a-3b9938c9b159" alt="Flow execution results after running the FTP file operation"><figcaption></figcaption></figure>

### **How It Helps?**

* Transfer files securely across systems using **FTP**, **FTPS**, or **SFTP**.
* Perform multiple operations like **upload, download, or list** files in one flow.
* Enable **manual credentials** for flexible setup when predefined accounts aren’t available.
* Works seamlessly in **tenant-based environments**, each tenant’s FTP account is isolated and managed securely.
* Solves the limitation where FTP connections cannot list files directly by adding a **List operation** for better file visibility.
