FTP API Configuration
Request
POST https://api.fivetran.com/v1/connections
{
"group_id": "group_id",
"service": "ftp",
"trust_certificates": true,
"trust_fingerprints": true,
"run_setup_tests": true,
"paused": false,
"pause_after_trial": false,
"sync_frequency": 1440,
"data_delay_sensitivity": "NORMAL",
"data_delay_threshold": 0,
"daily_sync_time": "14:00",
"schedule_type": "auto",
"connect_card_config": {
"redirect_uri": "https://your.site/path",
"hide_setup_guide": true
},
"proxy_agent_id": "proxy_agent_id",
"private_link_id": "private_link_id",
"networking_method": "Directly",
"hybrid_deployment_agent_id": "hybrid_deployment_agent_id",
"config": {
"prefix": "folder_path",
"pattern": "file_pattern",
"is_secure": true,
"json_delivery_mode": "Packed | Unpacked",
"skip_after": 0,
"empty_header": true,
"use_pgp_encryption_options": true,
"skip_before": 0,
"password": "password",
"signer_public_key": "<signer-public-key-used>",
"delimiter": "string",
"file_type": "csv | log | json | jsonl | infer | tsv | avro | parquet | xml | spreadsheet | unstructured",
"host": "ftp.company.com",
"on_error": "fail | skip",
"archive_pattern": "regex_pattern",
"pgp_secret_key": "<secret-key-used>",
"append_file_option": "upsert_file | append_file | upsert_file_with_primary_keys",
"escape_char": "string",
"line_separator": "string",
"null_sequence": "string",
"port": 21,
"compression": "bz2 | gz | gzip | zip | tar | tar_bz2 | tar_gz | uncompressed | infer",
"user": "user_name",
"pgp_pass_phrase": "<pass-phrase-used>",
"schema": "schema_name",
"table": "table_name"
}
}
Config parameters
Name | Description |
---|---|
prefix | All files and folders under this folder path will be searched for files to sync. |
pattern | All files in your search path matching this regular expression will be synced. |
is_secure | Whether the server supports FTPS. |
json_delivery_mode | Control how your JSON data is delivered into your destination |
skip_after | We will skip over the number of lines specified at the end so as to not introduce aberrant data into your destination. |
empty_header | Optional. If your CSV generating software doesn't provide header line for the documents, Fivetran can generate the generic column names and sync data rows with them. |
use_pgp_encryption_options | Set to true if files are encrypted using PGP in the S3 bucket. Default value: false . |
skip_before | We will skip over the number of lines specified before syncing data. |
password | FTP password. |
signer_public_key | The contents of the signer's public key file. Must be populated if use_pgp_encryption_options is set to true and PGP encrypted files are signed. |
delimiter | You can specify your the delimiter that your CSVs use here. Fivetran generally tries to infer the delimiter, but in some cases this is impossible. |
file_type | If your files are saved with improper extensions, you can force them to by synced as the selected file type. |
host | FTP host address. |
on_error | If you know that your files contain some errors, you can choose to have poorly formatted lines skipped. We recommend leaving the value as fail unless you are certain that you have undesirable, malformed data. |
archive_pattern | Files inside of compressed archives with filenames matching this regular expression will be synced. |
pgp_secret_key | The contents of your PGP secret key file. Must be populated if use_pgp_encryption_options is set to true . |
append_file_option | If you know that the source completely over-writes the same file with new data, you can append the changes instead of upserting based on filename and line number. |
escape_char | If your CSV generator follows non-standard rules for escaping quotation marks, you can set the escape character here. |
line_separator | You can specify the custom line separator for your CSV files. The line separator is used in files to separate one row from the next. |
null_sequence | If your CSVs use a special value indicating null, you can specify it here. |
port | FTP port. |
compression | The secrets that should be passed to the function at runtime. |
user | FTP user. |
pgp_pass_phrase | The PGP passphrase used to create the key. Must be populated if use_pgp_encryption_options is set to true . |
schema | Destination schema name. Schema name is permanent and cannot be changed after connection creation |
table | Destination table. Table is permanent and cannot be changed after connection creation |
Authorization
There are two ways to authorize this connector type:
By specifying the values for the
user
,password
,host
andport
parameters in the request.POST https://api.fivetran.com/v1/connections
{ "service": "ftp", "group_id": "group_id", "config": { "user": "user_name", "password": "password", "host": "ftp.company.com", "port": 21 } }
By using the Connect Card or the Fivetran dashboard.