Add a backup destination

This function adds a backup destination.

SecurityBasicAuth
Request
query Parameters
application_key
required
string

The application key's name.

Note:

This parameter is only valid for the Backblaze backup type.

Example: application_key=A123b45CD678e9
application_key_id
required
string

The application key ID that authenticates the Backblaze B2 account.

Note:

This parameter is only valid for the Backblaze backup type.

Example: application_key_id=12a345B678c9
authtype
required
string

The authorization type.

  • password
  • key

Note:

This parameter is only valid for the following backup types:

  • SFTP
  • Rsync
Enum: "password" "key"
Example: authtype=password
aws_access_key_id
required
string

The Amazon S3™ Access Key ID.

Note:

This parameter is only valid for the following backup types:

  • AmazonS3
  • S3Compatible
Example: aws_access_key_id=AKIAYLWMPOZZJCERC28Q
bucket
required
string

The Amazon S3™ bucket.

Note:

This parameter is only valid for the following backup types:

  • AmazonS3
  • S3Compatible
Example: bucket=ChockFullOfNuts
bucket_id
required
string

The bucket's ID string.

Note:

This parameter is only valid for the Backblaze backup type.

Example: bucket_id=a12b34cd5678e9f
bucket_name
required
string

The bucket's name.

Note:

This parameter is only valid for the Backblaze backup type.

Example: bucket_name=ChockFullOfNuts
client_id
required
string

The Google Drive client ID.

Note:

This parameter is only valid for the GoogleDrive backup type.

Example: client_id=aBcdeFgHIjK123
client_secret
required
string

The Google Drive client secret.

Note:

This parameter is only valid for the GoogleDrive backup type.

Example: client_secret=aBcde123FgHIjK456
disabled
required
integer

Whether to disable the backup destination.

  • 1 — Disable the backup destination.
  • 0 — Enable the backup destination.
Enum: 0 1
Example: disabled=0
host
required
string <hostname>

The remote server's hostname.

Note:

This parameter is only valid for the following backup types:

  • Custom
  • FTP
  • SFTP
  • Rsync
  • WebDAV
  • S3Compatible
Example: host=backups.example.com
name
required
string

The backup destination's name.

Example: name=destination_name
password
required
string

The remote server account's password or secret access key.

Note:

This parameter is only valid for the following backup types:

  • AmazonS3
  • Custom
  • FTP
  • SFTP
  • Rsync
  • WebDAV
  • S3Compatible
Example: password=123456luggage
script
required
string

The absolute file path to the user-supplied transport solution script.

Note:

This parameter is only valid for the Custom backup type.

Example: script=/home/backups/beammeupscotty.pl
type
required
string

The type of backup destination.

  • Custom
  • FTP
  • Local
  • SFTP
  • WebDAV
  • AmazonS3
  • Rsync
  • GoogleDrive
  • S3Compatible
  • Backblaze

Note:

This value determines which parameters you can use with the function.

Warning:

Use any of these encrypted connections to transfer system backup files:

  • Amazon S3™
  • Backblaze
  • GoogleDrive
  • Rsync
  • S3 Compatible
  • SFTP
  • WebDAV with SSL enabled
Enum: "Custom" "FTP" "Local" "SFTP" "WebDAV" "AmazonS3" "Rsync" "GoogleDrive" "S3Compatible" "Backblaze"
Example: type=Local
username
required
string <username>

The remote server account's username.

Note:

This parameter is only valid for the following backup types:

  • Custom
  • FTP
  • SFTP
  • Rsync
  • WebDAV
Example: username=username
folder
string
Default: ""

The path to the backups directory on the remote server.

Note:

This parameter is only valid for the following backup types:

  • AmazonS3
  • GoogleDrive
  • S3Compatible
Example: folder=subfolder
mount
integer
Default: 0

Whether the path is mounted.

  • 1 — The path is mounted.
  • 0 — The path is not mounted.

Note:

This parameter is only valid for the Local backup type.

Enum: 0 1
Example: mount=1
no_mount_fail
integer
Default: 0

Whether to fail the backup attempt if the mount fails.

  • 1 — Fail the backup attempt.
  • 0 — Do not fail the backup attempt.

Note:

This parameter is only valid for the Local backup type.

Enum: 0 1
Example: no_mount_fail=1
only_used_for_logs
integer
Default: 0

Whether to use this transport only for logs.

  • 1 — This destination will be skipped for regular backups.
  • 0 — Both log and regular backups will be uploaded.

This setting defaults to 0. The only time log files get their own backup is via scripts/remote_log_transfer

Enum: 0 1
Example: only_used_for_logs=1
passive
integer
Default: 0

Whether to use passive FTP.

  • 1 — Use passive FTP.
  • 0 — Use active FTP.

Note:

This parameter is only valid for the FTP backup type.

Enum: 0 1
Example: passive=1
passphrase
string
Default: null

The private key file's passphrase, if the authtype parameter is the key value.

Note:

This parameter is only valid for the following backup types:

  • SFTP
  • Rsync
Example: passphrase=123456luggage
path
string
Default: null

The path to the backups directory on the remote server.

  • This parameter is required for the Local backup type.
  • If you do not use this parameter, the system will not set a value.

Note:

This parameter is only valid for the following backup types:

  • Backblaze
  • Custom
  • Local
  • FTP
  • SFTP
  • Rsync
  • WebDAV
Example: path=backups
port
integer [ 1 .. 65535 ]

The TCP port to use.

Note:

  • This parameter defaults to the standard port used by the queried backup type parameter.
  • This parameter is only valid for the following backup types:
    • FTP
    • SFTP
    • Rsync
    • WebDAV
Example: port=21
privatekey
string
Default: null

The file path to the private key file, if the authtype parameter is the key value.

Note:

This parameter is only valid for the following backup types:

  • SFTP
  • Rsync
Example: privatekey=/home/backups/key
ssl
integer
Default: 0

Whether to use SSL.

  • 1 — Use SSL.
  • 0 — Do not use SSL.

Note:

This parameter is only valid for the WebDAV backup type.

Enum: 0 1
Example: ssl=1
timeout
integer

The session timeout, measured in seconds.

Note:

  • This parameter is not valid for the Local backup type parameter.
  • The default value depends on the type parameter's value.
Example: timeout=30
upload_system_backup
integer
Default: 0

Whether to upload system backups.

  • 1 — Upload system backups.
  • 0 — Do not upload system backups.
Enum: 0 1
Example: upload_system_backup=1
Responses
200

HTTP Request was successful.

Response Schema: application/json
object
object
get/backup_destination_add
Request samples
whmapi1 --output=jsonpretty \
  backup_destination_add \
  name='destination_name' \
  type='Local' \
  disabled='0' \
  bucket='ChockFullOfNuts' \
  aws_access_key_id='AKIAYLWMPOZZJCERC28Q' \
  password='123456luggage' \
  application_key='A123b45CD678e9' \
  application_key_id='12a345B678c9' \
  bucket_id='a12b34cd5678e9f' \
  bucket_name='ChockFullOfNuts' \
  script='/home/backups/beammeupscotty.pl' \
  host='backups.example.com' \
  username='username' \
  client_id='aBcdeFgHIjK123' \
  client_secret='aBcde123FgHIjK456' \
  authtype='password'
Response samples
application/json
{
  • "data": {
    • "id": "PhAxIoLSdIkCI40q9vWS4BYy"
    },
  • "metadata": {
    • "command": "backup_destination_add",
    • "reason": "OK",
    • "result": 1,
    • "version": 1
    }
}