# Back up cPanel account via FTP

This function creates a full backup to the remote server via File Transfer Protocol (FTP). The system creates a file in the backup-MM.DD.YYYY_HH-mm-ss.tar.gz filename format.

Endpoint: GET /Backup/fullbackup_to_ftp
Version: 11.136.0.13
Security: BasicAuth

## Query parameters:

  - `host` (string, required)
    The remote server's hostname or IP address.
    Example: "example.com"

  - `password` (string, required)
    The remote server account's password.
    Example: "luggage123456"

  - `username` (string, required)
    The remote server account's username.
    Example: "username"

  - `directory` (string)
    The directory on the remote server that will store the backup.

Note:

* This value defaults to the remote server account's default login directory.
* Enter the directory relative to the FTP user's login directory. For example, enter /public_ftp not /home/username/public_ftp.
    Example: "/public_ftp"

  - `email` (string)
    The email address to receive a confirmation email when the backup completes.

Note:

 The system does not provide confirmation if you do not pass this parameter.
    Example: "username@example.com"

  - `homedir` (string)
    How to manage the home directory in the backup.

* include — Include the home directory in the backup.
* skip — Omit the home directory from the backup.
    Enum: "include", "skip"

  - `port` (integer)
    The port number to use during the transfer.
    Example: 21

  - `variant` (string)
    Whether to use the active or passive FTP variant to connect to
the remote server. For more information about FTP variants, read our How
to Enable FTP Passive Mode documentation.
* active — The FTP server responds to the connection attempt and returns a connection request from a different port to the FTP client.
* passive — The FTP client initiates connection attempts.
    Enum: "active", "passive"

## Response 200 fields (application/json):

  - `apiversion` (integer)
    The version of the API.
    Example: 3

  - `func` (string)
    The name of the method called.
    Example: "fullbackup_to_ftp"

  - `module` (string)
    The name of the module called.
    Example: "Backup"

  - `result` (object)

  - `result.data` (object)

  - `result.data.pid` (string)
    The backup's process identifier.
    Example: "2857"

  - `result.errors` (array,null)
    List of errors if the API failed.

  - `result.messages` (array,null)
    List of messages generated by the API.

  - `result.metadata` (object)

  - `result.status` (integer)
    * 1 — Success.
* 0 — Failed. Check the errors field for more details.
    Enum: 0, 1

  - `result.warnings` (array,null)
    List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running a API.


