# Valid FTP commands

## Valid FTP commands

Valid FTP commands for the SFTP connector are summarised in the following sections:

* [File retrieval](#file-retrieval)
* [File operations](#file-operations)
* [Information & metadata](#information-and-metadata)

### File retrieval &#x20;

<table><thead><tr><th width="215.41015625">FTP command</th><th>Summary</th></tr></thead><tbody><tr><td><a href="valid-ftp-commands/get_and_move-ftp-command">get_and_move</a></td><td>Retrieve a file, load its content into the process flow as a payload, then move the file to another directory on the remote server. If multiple files are retrieved, multiple payloads are generated (one payload per file).</td></tr><tr><td><a href="valid-ftp-commands/pluck-ftp-command">pluck</a></td><td>Retrieve file(s), load content into the process flow as payload(s) and then delete file(s) from the remote server. If multiple files are retrieved, multiple payloads are generated (one payload per file).</td></tr></tbody></table>

### File operations

<table><thead><tr><th width="215.41015625">FTP command</th><th>Summary</th></tr></thead><tbody><tr><td><a href="valid-ftp-commands/append-ftp-command">append</a></td><td>Add content from target file(s) to the end of source file(s).</td></tr><tr><td><a href="valid-ftp-commands/copy-ftp-command">copy</a></td><td>Copy file(s) from one directory to another directory on the remote server (so the file exists in both directories).</td></tr><tr><td><a href="valid-ftp-commands/rename-ftp-command">rename</a></td><td>Rename file(s). This operation can be combined with moving the files. </td></tr><tr><td><a href="valid-ftp-commands/delete-ftp-command">delete</a></td><td>Remove file(s).</td></tr><tr><td>put_non_empty</td><td>Upload file(s) only if it has content (i.e. avoid uploading empty files).</td></tr></tbody></table>

### Information & metadata

<table><thead><tr><th width="215.41015625">FTP command</th><th>Summary</th></tr></thead><tbody><tr><td><a href="valid-ftp-commands/list-ftp-command">list</a></td><td>List files in a directory on the remote server. Information is loaded into the process flow as a single payload. </td></tr><tr><td>size</td><td>Get file sizes from a directory on the remote server. Information is loaded into the process flow as a single payload. </td></tr><tr><td>modified</td><td>Get the last modified date/time (UTC format) from a directory on the remote server. Information is loaded into the process flow as a single payload. </td></tr><tr><td>mime</td><td>Get/detect MIME type of file(s). A boolean value is returned for each file.</td></tr><tr><td>exists</td><td>Check if a file exists.</td></tr></tbody></table>
