> ## Documentation Index
> Fetch the complete documentation index at: https://www.integrate.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ETL: Salesforce to SFTP Workflow

> Build an API-managed Salesforce-to-SFTP workflow in Integrate.io ETL using the REST API to programmatically run, monitor, and parameterize the pipeline.

Use Integrate.io's low-code data pipelines to export Salesforce data to an SFTP server securely, either on a schedule or via API.

## Prerequisites

* **Integrate.io** account with permissions to create connections, pipelines, and API keys
* **Salesforce** user with API access (a dedicated Integration User is recommended)
* **SFTP** server reachable from Integrate.io egress IPs, with SSH public key authentication (recommended) and optional PGP public key for file encryption
* Optional: Secrets vault/manager for credential rotation

## Creating Secure Connections

### Salesforce Connection

<Frame>
  <img src="https://mintcdn.com/integrateio/4oOZarv_QD7vASrL/images/creating-packages/creating-an-api-managed-salesforce-to-sftp-workflow/image-1.webp?fit=max&auto=format&n=4oOZarv_QD7vASrL&q=85&s=9f8d6b2b64f7207915e0df0450110482" alt="Salesforce connection setup in Integrate.io" width="1200" height="723" data-path="images/creating-packages/creating-an-api-managed-salesforce-to-sftp-workflow/image-1.webp" />
</Frame>

<Steps>
  <Step>
    Click the **Connections icon (lightning bolt)** on the top-left menu.
  </Step>

  <Step>
    Click **"New Connection," then choose "Salesforce"**.
  </Step>

  <Step>
    Select the Salesforce environment (production or sandbox) and click **authorize**.
  </Step>

  <Step>
    Sign in with your Salesforce account in the login window.

    <Note>For sandbox users: append a dot and sandbox name to your username. Example: **[danielle@ilovemycompany.com.test](mailto:danielle@ilovemycompany.com.test)**</Note>
  </Step>

  <Step>
    Click **Allow** to grant Integrate.io ETL access to Salesforce.
  </Step>

  <Step>
    Name the connection and click **Create Salesforce Connection**.
  </Step>
</Steps>

### SFTP Connection

<Frame>
  <img src="https://mintcdn.com/integrateio/4oOZarv_QD7vASrL/images/creating-packages/creating-an-api-managed-salesforce-to-sftp-workflow/image-2.webp?fit=max&auto=format&n=4oOZarv_QD7vASrL&q=85&s=1067d2e363dd6f963869e456a9e23ad5" alt="SFTP connection setup in Integrate.io" width="1200" height="713" data-path="images/creating-packages/creating-an-api-managed-salesforce-to-sftp-workflow/image-2.webp" />
</Frame>

<Steps>
  <Step>
    Click the **Connections icon (lightning bolt)** on the top-left menu.
  </Step>

  <Step>
    Click **New connection** and choose **Secure File Transfer Protocol (SFTP)**.
  </Step>

  <Step>
    In the SFTP connection window, enter:

    * **Access type**: Direct connection, SSH tunnel, or reverse SSH tunnel
    * **Hostname**: The SFTP server hostname
    * **Authentication Method**: Password or public key
    * **User Name**: SFTP server username
    * **Password**: Connection password (cannot contain @)
    * **Port**: TCP port of the SFTP server
  </Step>

  <Step>
    Click **Test connection** to verify credentials.
  </Step>

  <Step>
    Click **Create SFTP connection**.
  </Step>
</Steps>
