---
title: FTP
slug: ftp
image: https://make-cxp-documentation.ams3.cdn.digitaloceanspaces.com/apps-center-icons/PREVIEW_DEFAULT.png
docTags: 
createdAt: 2025-02-03T13:28:13.883Z
---

|   | With the FTP app in Make, you can manage files in selected folders.  |
| - | -------------------------------------------------------------------- |

# Requirements

To use the FTP app in Make, you must have an FTP server or FTP hosting.

# Connect FTP and Make&#x20;

To create the connection:

::::WorkflowBlock
:::WorkflowBlockItem
Log in to your Make account, add an FTP module to your scenario, and click **Create a connection**.
:::

:::WorkflowBlockItem
Optional: In the ​​**Connection name​​** field, enter a name for the connection.
:::

:::WorkflowBlockItem
Enter information for the following fields:

| **Field**                            | **Description**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Host**                             | Enter the FTP server hostname. E.g. `myftp123.server.com`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| **Port**                             | Enter the FTP server port number. E.g. `21`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| **User name**                        | Enter your FTP account user name.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Password**                         | Enter your FTP account password.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **Use a secure connection (TLS)**    | Select if you want to use a secure connection:<br />- **No** - The connection will not be secure.<br />- **Explicit encryption or implicity encryption** - FTPS connection. The connection will be secured using SSL.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| **Reject unauthorized certificates** | If this option is enabled, the FTP server certificate is verified. If the verification fails, the connection will not be created. To pass the verification, the certificate must meet one of the following criteria:<br />- be signed by a Root [Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority)<br />- be signed by an Intermediate Certificate Authority (see e.g. [How certificate chains work](https://knowledge.digicert.com/solution/SO16297.html) for further explanation). In this case all the Intermediate Certificates should be installed on the FTP server.<br />- be a Self-Signed Certificate supplied in the **Self-signed certificate** field<br />If this option is disabled, the FTP server certificate is not verified. We strongly advise against disabling the option as it renders the connection insecure and poses a serious security risk. |
| **Self-signed certificate**          | Click the **Extract** button to open the upload dialog.<br />Upload the certificate to use the TLS with your self-signed certificate. Make does not retain or store any data (files, passwords) you provide. File and password are only used to extract the certificate.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
:::

:::WorkflowBlockItem
Click **Save**.
:::

:::WorkflowBlockItem
If prompted, authenticate your account and confirm access.
:::
::::

You've successfully created the connection and can now use the FTP app in your scenarios. If you want to make changes to your connection in the future, follow the steps [here](docId\:SO88FM6pkT0G-adKDDfzZ).

# FTP modules

## Triggers

:::ExpandableHeading
### Watch files

Triggers when a new file is added to a folder being watched.

| **Field**                                    | **Description**                                                                                                                                                                                                                                                                                                                                                                    |
| -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Connection**                               | Establish a connection to the FTP account.                                                                                                                                                                                                                                                                                                                                         |
| **Maximum number of returned files**         | Set the maximum number of results that Make will work with during one cycle. If the value is set too high, the connection may be interrupted on the side of the given third-party service (timeout). Make has no influence on this. We recommend that you set a lower value and either define a higher value for the maximum number of cycles or run the scenario more frequently. |
| **Manage data within the shared connection** | Select **Yes** or **No**.                                                                                                                                                                                                                                                                                                                                                          |
:::

## Actions

:::ExpandableHeading
### Change permissions

Changes permission settings of a file or folder.

| **Field**                         | **Description**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Connection**                    | Establish a connection to the FTP account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Change permission settings of** | Select whether you want to change permissions of the file or the folder.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| **File path**                     | Enter the folder or file path.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| **Permissions**                   | Set the desired file/folder permissions. Use the chmod parameters. E.g. `777` or `-rwxrwxrwx`<br />:inlineImage[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/eSroosD0RYP_nUO1LekVV_uuid-f9704526-9b6e-3f76-89ab-f44cc96744af.png" alt="61d5b20b41688.png" caption="61d5b20b41688.png" size="80" width="397" height="555"}<br />You can find more details on the [chmod Man Page](https://ss64.com/bash/chmod.html).<br />:inlineImage[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/_sYut_p2xRMGRxiDTd9_O_uuid-4b904ef4-ac59-30c0-4aa5-7b77bb8754a6.png" alt="61d5b20c4892b.png" caption="61d5b20c4892b.png" size="50" width="256" height="130"} |
:::

:::ExpandableHeading
### Create a folder

Creates a new folder.

Make sure you have sufficient permissions to create a folder and/or the directory protection is disabled.

| **Field**           | **Description**                                       |
| ------------------- | ----------------------------------------------------- |
| **Connection**      | Establish a connection to the FTP account.            |
| **Folder path**     | Select the FTP folder you want to create a folder at. |
| **New folder name** | Enter the name for the new folder.                    |
:::

:::ExpandableHeading
### Delete a file

Permanently removes a file from a selected folder.

| **Field**      | **Description**                                                      |
| -------------- | -------------------------------------------------------------------- |
| **Connection** | Establish a connection to the FTP account.                           |
| **Folder**     | Select the FTP folder you want to delete a file from.                |
| **File name**  | Enter the filename (including file name extension). E.g. `image.png` |
:::

:::ExpandableHeading
### Delete a folder

Deletes a folder.

Make sure you have sufficient permissions to delete a folder and/or the directory protection is disabled.

| **Field**      | **Description**                            |
| -------------- | ------------------------------------------ |
| **Connection** | Establish a connection to the FTP account. |
| **Folder**     | Select the FTP folder you want to delete.  |
:::

:::ExpandableHeading
### Get a file

Retrieves a file from the FTP server which can be further processed, e.g. attached to the email message.

| **Field**      | **Description**                                  |
| -------------- | ------------------------------------------------ |
| **Connection** | Establish a connection to the FTP account.       |
| **File path**  | Enter the path of the file you want to retrieve. |
:::

:::ExpandableHeading
### List of files/folders in a folder

Gets a list of files/folders in a folder.

| **Field**                            | **Description**                                                                                                                                           |
| ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Connection**                       | Establish a connection to the FTP account.                                                                                                                |
| **Folder**                           | Select the FTP folder you want to search in.                                                                                                              |
| **Show**                             | Select whether you want to retrieve information about files or folders, or both.                                                                          |
| **Search**                           | Enter the search term to filter returned files/folders by. If no search term is entered all files and folders from the specified folder will be returned. |
| **Maximum number of returned files** | Set the maximum number of retrieved files by this module.                                                                                                 |
:::

:::ExpandableHeading
### Move a file or folder

Moves a file or folder to a different location.

| Field             | Description                                                                                                                                |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| **Connection**    | Establish a connection to the FTP account.                                                                                                 |
| **Old file path** | Enter the path you want to move the file from. For example `/folder1/test.txt`                                                             |
| **New file path** | Enter the path you want to move the file to. For example `/folder2/test.txt`. (The target file name can differ from the source file name.) |
:::

:::ExpandableHeading
### Upload a file

Uploads a file to a selected folder.

| **Field**                              | **Description**                                                                                                                                             |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Connection**                         | Establish a connection to the FTP account.                                                                                                                  |
| **Folder**                             | Select the FTP folder you want to upload the file to.                                                                                                       |
| **Source file**                        | Select (or map) the file you want to upload to the FTP server.                                                                                              |
| **Append to an already existing file** | If this option is enabled and the file already exists on the FTP server, its content will be appended. If not, the content of the file will be overwritten. |
| **Create folders if don't exist**      | If this option is enabled and the folder you have entered to the **Folder** field does not exist on the FTP server, the module will create the folder.      |


:::

# Troubleshooting the FTP app

If you are experiencing issues with the **FTP** app either during the connection creation or during a module's operation, try to use one of the popular FTP clients (e.g. [WinSCP](https://winscp.net/eng/download.php)) and try to perform the same action (e.g. create a connection, list files in a folder, etc.) with the FTP client. If you are experiencing the same issues also with the FTP client, the reason might be a misconfiguration of the FTP server.

Please note that there are two FTP modes: **active** and **passive.** As the Make **FTP** app requests the **passive** mode, the **FTP server must support the passive mode** in order an FTP session can be successfully established during the following four steps:

1. The Make server sends the `PASV` command to the FTP server on **port 21** (or **990** if Use a secure connection (TLS): "Implicit encryption" option has been chosen in the connection setup). **This port must be open on the FTP server's firewall.**
2. The FTP server should send `227: Entering Passive Mode (h1,h2,h3,h4,p1,p2)` in response. The response specifies:

   **The IP address** the Make server should connect to. When the FTP server is behind an NAT, the FTP server needs to provide its external IP address. It is common that the FTP server is not configured properly and provides its internal IP address instead, which cannot be connected to the Make server.

   **A random, high-numbered (ephemeral) port** (p1, p2) that the Make servcer can connect to. This port must be open on the FTP server's firewall.
3. The Make server initiates a connection to the IP address and port specified in the response.
4. The FTP server responds with an `ACK`. The FTP session has now been established.

# Templates

You can look for FTP templates in [Make's template gallery](https://www.make.com/en/templates), where you'll find thousands of pre-created scenarios.

# FTP resources

- [FTP connection modes](https://winscp.net/eng/docs/ftp_modes)
- [Active and passive FTP](https://documentation.meraki.com/MX/NAT_and_Port_Forwarding/Active_and_Passive_FTP_Overview_and_Configuration#section_3)

