cPanel API 2 Functions - AddonDomain::addaddondomain

Warning:

The cPanel API 2 system is deprecated. We strongly recommend that you use UAPI instead of cPanel API 2.

Description

This function creates an addon domain, its subdomain, and its DNS zone.

Warning:

We strongly recommend that you use UAPI instead of cPanel API 2. However, no equivalent UAPI function exists.

Important:

When you disable the Web Server role, the system disables this function.


Examples


WHM API (JSON)

https://hostname.example.com:2087/cpsess###########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=AddonDomain&cpanel_jsonapi_func=addaddondomain&dir=addondomain%2Fhome%2Fdir&newdomain=addondomain.com&subdomain=subdomain.example.com
Note:

For more information, read our Calls from the WHM API documentation.


LiveAPI PHP Class

$cpanel = new CPANEL(); // Connect to cPanel - only do this once.

// Add the "addondomain.com" addon domain.
$add_addon = $cpanel->api2(
    'AddonDomain', 'addaddondomain',
    array(
        'dir'            => 'addondomain/home/dir',
        'newdomain'      => 'addondomain.com',
        'subdomain'      => 'subdomain',
    )
);
Note:

For more information, read our Guide to the LiveAPI System.


LiveAPI Perl Module

my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.

# Add the "addondomain.com" addon domain.
my $add_addon = $cpliveapi->api2(
    'AddonDomain', 'addaddondomain',
    {
        'dir'            => 'addondomain/home/dir',
        'newdomain'      => 'addondomain.com',
        'subdomain'      => 'subdomain',
    }
);
Note:

For more information, read our Guide to the LiveAPI System.


cPanel Tag System (deprecated)

Warnings:
  • cPanel tags are deprecated . We strongly recommend that you only use the LiveAPI system to call the cPanel APIs. Examples are only present in order to help developers move from the old cPanel tag system to our LiveAPI .
  • cPanel API 2 calls that use cPanel tags vary in code syntax and in their output.
  • For more information, read our Deprecated cPanel Tag Usage documentation.

Command Line

cpapi2 --user=username AddonDomain addaddondomain dir=addondomain%2Fhome%2Fdir newdomain=addondomain.com subdomain=subdomain
Notes:
  • You must URI-encode values.
  • username represents your account-level username.
  • You must include the --user=username option.
  • For more information and additional output options, read our Guide to cPanel API 2 documentation or run the cpapi2 --help command.
  • If you run CloudLinux™, you must use the full path of the cpapi2 command:
    /usr/local/cpanel/bin/cpapi2

Output (JSON)

{
  "cpanelresult": {
    "apiversion": 2,
    "func": "addaddondomain",
    "data": [

    ],
    "event": {
      "result": 1
    },
    "module": "AddonDomain"
  }
}
Note:

Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.


Parameters

Parameter Type Description Possible values Example
dir string

The path to the addon domain's home directory.

If you do not specify a value, this parameter defaults to the user's document root.

A valid path relative to the cPanel user's home directory.

  • In WHM API calls, replace the forward slash (/) with %2F.
  • You cannot use the following directories as a document root:
    • The account's home directory itself (/)
    • Directories outside of the account's home directory (./ and ../)
    • .cpanel
    • .trash
    • etc
    • mail
    • ssl
    • tmp
    • logs
    • .cphorde
    • .spamassassin
    • .htpasswds
    • var
    • cgi-bin
    • .ssh
    • perl5
addondomain/home/dir
newdomain string

Required

The addon domain name.

A valid domain name that does not already exist.

addondomain.com
subdomain string

Required

The addon domain's subdomain name.

A valid subdomain name that does not already exist. For example, for the subdomain.example.com subdomain, specify subdomain.

The cPanel user must own the subdomain's main domain. For example, for the subdomain.example.com subdomain, the cPanel user must already own example.com.

subdomain
ftp_is_optional Boolean

Whether the system performs an FTP quota check on the cPanel account before it adds the addon domain.

This parameter defaults to 0.

  • 1 — Doesn't perform the FTP quota check.
  • 0 — Performs the FTP quota check.
1

Returns

Return Type Description Possible values Example
reason string

A message of success or a reason for failure.

  • addondomain.com was successfully parked on top of subdomain.example.com — This message indicates that the system successfully added the addon domain.
  • A string that describes the error.
This is an error message.
result Boolean

Whether the function succeeded.

  • 1 — The function succeeded.
  • 0 — The function failed.
1