Documentation

SFTP

Updated on

May 2, 2024

Note: This article covers the SFTP Destination setup process. It doesn’t cover the DataPrep setup for SFTP.

You can learn how to extract data from SFTP data source here.

Description

SFTP (Secure File Transfer Protocol) is a network protocol for securely accessing, transferring, and managing large files and sensitive data.

Setup guide

Follow our setup guide to connect SFTP to Improvado.

Choose an authentication method

  • Auth by Login/Password
  • Auth by Improvado Public Key
  • Auth by Private Key

Important: Make sure to provide your authentication information by following our guide.

Complete configuration

On the SFTP connection page, fill in the following fields:

  1. Enter a name for your Destination connection in the Title.
  2. Select the Authentication type from the dropdown. Learn more: Choose an authentication method.
  3. Enter the Host.
  4. Enter the Port.
  5. Enter the User Name.
  6. (Auth by Login&Password/Private Key only) Enter the Password.
  7. (Auth by Improvado Public Key/Private Key only) Upload the Private key file.
  8. Enter the Folder. {%dropdown-button name="folder"%}

{%dropdown-body name="folder"%}

A forward slash ( / ) means that you need to enter the root path.

{%dropdown-end%}

  1. Select the File format from the dropdown.
  2. Enter the File name.
  3. (Optional) Enter the Separator. {%dropdown-button name="separator"%}

{%dropdown-body name="separator"%}

The maximum length of the separator is 2 characters.

{%dropdown-end%}

  1. Select the Partition by from the dropdown. {%dropdown-button name="partition-by"%}

{%dropdown-body name="partition-by"%}

Partitioning is the way of splitting data for uploading to the file.

{%dropdown-end%}

  1. Select the necessary Use static IP option from the dropdown.

How to provide credentials to Improvado

There are three different ways to provide your credentials that you can choose depending on the type of selected authentication:

Option #1 (Auth by Login/Password)

Provide the following information:

  • Host
  • Port
  • User Name
  • Password

Option #2 (Auth by Improvado public key)

Provide the following information:

  • Host
  • Port
  • User Name

Also, you need to add an Improvado SSH public key to your SFTP server (in ```~/.ssh/authorized_keys``` file):

Note: Improvado SSH public key is displayed in UI on the right-hand side of the SFTP connection page.

Option #3 (Auth by Private key)

Provide the following information:

  • Host
  • Port
  • User Name
  • Private key
  • (If your Private key has a passphrase) Password

Upload your SSH Private key. For example, you can run the following command:

ssh-keygen -t rsa -b 4096

Additional information

Authentication type

Possible parameters:

  • SFTP auth by login/password
  • SFTP auth by Improvado public key
  • SFTP auth by private key

See the credentials options below.

Private key

Supported key format: OpenSSH. If your private key is a .ppk file, please convert it to the OpenSSH key format.

Possible SSH key algorithms:

  • RSA
  • Ed25519
  • DSS
  • ECDSA

Folder

Possible parameters:

```/{{data_source}}/{{data_table_title}}/{{report_type}}/{{filename}}/{{YYYY}}/{{MM}}/{{DD}}/{{timestamp}}```

  • ```{{data_source}}``` is a data provider, integration, connector.
  • ```{{data_table_title}}``` is an object that contains all extraction orders with the same granularity (dimensional schema).
  • ```{{filename}}``` is the same as destination table name.
  • ```{{report_type}}``` is a set of such fields as metrics, properties, dimensions, etc.
  • ```{{timestamp}}``` is the date and time when data load started

If you use ```/{{YYYY}}/{{MM}}/{{DD}}``` settings, the data will be added to folders daily. Each new record will not delete the previous one, even for data that contains no date.

File format

Possible formats:

  • csv
  • csv+gzip
  • json
  • json+gzip
  • parquet

File name

Possible parameters:

```{{filename}}-{{YYYY}}-{{MM}}-{{DD}}```

  • ```{{filename}}``` is the same as destination table name

IMPORTANT: you cannot use {{DD}} for partition by month

  • ```{{filename}}-{{YYYY}}-{{MM}}-{{DD}}``` – for partition by day
  • ```{{filename}}-{{YYYY}}-{{MM}}``` – for partition by month

Also, you can use “_” instead of “-” or do not use any symbols at all, for example:

  • ```{{filename}}_{{YYYY}}-{{MM}}-{{DD}}```
  • ```{{filename}}{{YYYY}}{{MM}}{{DD}}```

Separator

Possible delimiters that can separate data in your file:

  • comma
  • semicolon
  • tab

Partition by

Possible ways of splitting data:

  • Day
  • Month

Use static IP

Select Yes for Use static IP option if you allow Improvado to connect your database by the static IPs mentioned on the Destination connection page.

Select No if you have permitted access to your database from any IP. In this case, Improvado will connect your database using dynamic IPs not listed on the Destination connection page.

Schema information

Setup guide

Settings

No items found.

Troubleshooting

Troubleshooting guides

Check out troubleshooting guides for
SFTP
here:

Limits

Frequently asked questions

No items found.
☶ On this page
Description
Related articles
No items found.
No items found.

Questions?

Improvado team is always happy to help with any other questions you might have! Send us an email.

Contact your Customer Success Manager or raise a request in Improvado Service Desk.