Introduction to FTP

Introduction

File Transfer Protocol (FTP) is a way to communicate data. Many clients use FTP to transfer data to Aimbase, such as registrations, products, dealers, and more.

Security

All FTP sites are created using Explicit SSL FTPS to offer more security during the data transfer.  Explicit secure FTP communication occurs on the same port as non-secure communication; so, no additional policies are required for corporate firewalls. 

User Isolation

All FTP sites are created with user isolation to restrict FTP client access to their respective site folder(s).  By default, all sites are created with folders for Archive files, Error files, and a config.json file to store site settings. 

Example of an FTP site:

Folders 

Archive 

All successful files are compressed and moved into the Archive folder.  The data in the files moved to the Archive folder only include the row data that was successfully loaded into Aimbase staging.   

Error 

Any errored files or rows that have data validation issues are stripped out of the file and saved into a new file in the Error folder.  This allows the client administrator to pull the error file, make corrections to the rows that have validation issues, and then re-submit for processing.   

NOTE: that file names need to be unique when submitting to Aimbase.  Any files that match to existing files in the Archive folder are considered duplicates and ignored. 

Notifications 

In each client site is a configuration file that allows setting contact preferences for file imports.  The notification details the success and/or failure of the file and each row in the file.  Any errors in the import file will be listed in the body of the email and also saved to the Error folder.   

NOTE: the only setting that is safe to edit is “NotificationEmails”.  The others are used by the system and any edits to these can impact the FTP service. 

Endpoint 

The FTP endpoint is: ftps://ftp.aimbase.com.  

Authentication 

The username and password will be provided by Rollick.  

File Format 

All data files sent via FTP should be Quoted Comma Separated Value (CSV) files.  All fields should be treated as text columns and quoted.  No fields should contain a quote character within the data. Commas and single quotes are allowed within fields.   

File Extension 

All files need to have a file extension of “.csv”.  The system is case sensitive; so, all extensions need to be lowercase. 

File Termination 

Every file has to have a trailing “end record” marker designated by an “E” action column value. This is used by the system to ensure that a complete file has been received. 


Sample Commands

1. List the files in the FTP root directory

curl -v --list-only --user username:password ftps://ftp.aimbase.com

2. Upload a local file "helloworld.txt" to the FTP root directory

curl -T helloworld.txt --user username:password ftps://ftp.aimbase.com

3. Delete the "helloworld.txt" file from the FTP root directory

curl --user username:password ftps://ftp.aimbase.com/helloworld.txt -Q "DELE helloworld.txt"