# cPanel API 2 Functions - AddonDomain::listaddondomains

Warning:
The cPanel API 2 system is deprecated. We **strongly** recommend that you use [UAPI](https://api.docs.cpanel.net/cpanel/introduction) instead of cPanel API 2.

## Description

This function lists an account's addon domains.

Warning:
We **strongly** recommend that you use the following [UAPI](/cpanel/introduction/) function
instead of this function:

- [`DomainInfo::list_domains`](/openapi/cpanel/operation/list_domains/) — This function lists the cPanel account's domains.


## Examples

WHM API (JSON)


```undefined syntaxhighlighter-pre
https://hostname.example.com:2087/cpsess###########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=AddonDomain&cpanel_jsonapi_func=listaddondomains&regex=username_example.com&return_https_redirect_status=1
```

Note:
For more information, read our [Calls from the WHM API](/whm/use-whm-api-to-call-cpanel-api-and-uapi) documentation.

LiveAPI PHP Class


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

// List the account's addon domains.
$list_addons = $cpanel->api2(
    'AddonDomain', 'listaddondomains',
    array(
        'regex'           => 'rutabaga',
        'return_https_redirect_status' => '1',
    )
);
```

Note:
For more information, read our [Guide to the LiveAPI System](/guides/guide-to-the-liveapi-system/#guide-to-the-liveapi-system).

LiveAPI Perl Module


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

# List the account's addon domains.
my $list_addons = $cpliveapi->api2(
    'AddonDomain', 'listaddondomains',
    {
        'regex'           => 'rutabaga',
        'return_https_redirect_status' => '1',
    }
);
```

Note:
For more information, read our [Guide to the LiveAPI System](/guides/guide-to-the-liveapi-system/#guide-to-the-liveapi-system).

cPanel Tag System (deprecated)

Warnings:
- cPanel tags are **deprecated**. We **strongly** recommend that you **only** use the [LiveAPI](/guides/guide-to-the-liveapi-system) 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](/guides/guide-to-the-liveapi-system).
- 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](/cpanel-api-2/cpanel-api-2-deprecate-cpanel-tag-usage/) documentation.


Command Line


```undefined syntaxhighlighter-pre
cpapi2 --user=username AddonDomain listaddondomains regex=rutabega return_https_redirect_status=1
```

div
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](/cpanel-api-2/) documentation or run the `cpapi2 --help` command.
- If you run CloudLinux™, you **must** use the full path of the `cpapi2` command:

```undefined syntaxhighlighter-pre
/usr/local/cpanel/bin/cpapi2
```


br
Output (JSON)


```undefined syntaxhighlighter-pre
{
    "cpanelresult": {
        "apiversion": 2,
        "func": "listaddondomains",
        "data": [{
                "domain": "addondomain.com",
                "dir": "http://www.example.com/addondomain/home/dir",
                "reldir": "home:addondomain/home/dir",
                "basedir": "addondomain/home/dir",
                "status": "1",
                "is_https_redirecting": "0",
                "can_https_redirect": "0",
                "all_aliases_valid": "0",
                "domainkey": "username_example.com",
                "subdomain": "username",
                "rootdomain": "example.com",
                "fullsubdomain": "username.example.com",
                "web_subdomain_aliases": "1"
            },
            {
                "domain": "secondaddon.com",
                "dir": "http://www.example.com/seconduser/dir/path",
                "reldir": "home:seconduser/dir/path",
                "basedir": "seconduser/dir/path",
                "status": "1",
                "is_https_redirecting": "0",
                "can_https_redirect": "0",
                "all_aliases_valid": "0",
                "domainkey": "seconduser_example.com",
                "subdomain": "seconduser",
                "rootdomain": "example.com",
                "fullsubdomain": "seconduser.example.com",
                "web_subdomain_aliases": "1"
            }
        ],
        "event": {
            "result": 1
        },
        "module": "AddonDomain"
    }
}
```

Note:
Use cPanel's *[API Shell](https://docs.cpanel.net/cpanel/advanced/api-shell-for-cpanel)* interface (*cPanel >> Home >> Advanced >> API Shell*) to directly test cPanel API calls.

## Parameters

table
thead
tr
th
strong
Parameter
th
strong
Type
th
strong
Description
th
strong
Possible values
th
strong
Example
tbody
tr
td
code
regex
td
em
string
td
p
A 
a
Perl Compatible Regular Expression (PCRE)
 that filters the results by the domain key.
p
If you do 
strong
not
 enter a value for this parameter, the function returns 
strong
all
 addon domains that exist on the server.
td
p
A valid PCRE.
td
code
rutabaga
tr
td
code
return_https_redirect_status
td
em
Boolean
td
p
Whether to return the secure redirect status of the addon domains.
p
This parameter defaults to 
code
0
.
td
ul
li
code
1
 — Return status.
li
code
0
 — Do 
strong
not
 return status.
td
code
1
## Returns

table
thead
tr
th
strong
Return
th
strong
Type
th
strong
Description
th
strong
Possible values
th
strong
Example
tbody
tr
td
code
domain
td
em
string
td
The addon domain's name.
td
A valid domain name.
td
code
addondomain.com
tr
td
code
dir
td
em
string
td
The absolute path to the addon domain's document root.
td
A valid absolute file path.
td
p
code
http://www.example.com/addondomain/home/dir
tr
td
code
reldir
td
em
string
td
The path to the addon domain's document root, relative to the cPanel account's home directory.
td
A valid file path.
td
code
home:addondomain/home/dir
tr
td
code
basedir
td
em
string
td
The relative path to the addon domain's document root.
td
A valid relative file path.
td
code
addondomain/home/dir
tr
td
code
status
td
em
Boolean
td
Whether the addon domain is redirected.
td
ul
li
code
1
 — The addon domain is redirected.
li
code
0
 — The addon domain is 
strong
not
 redirected.
td
code
1
tr
td
code
is_https_redirecting
td
em
Boolean
td
p
Whether the domain redirects to 
code
https
.
p
div
Important:
br
p
This return only appears if you set the 
code
return_https_redirects_status
 parameter to 
code
1
.
td
ul
li
code
1
 — Redirects.
li
code
0
 — Does 
strong
not
 redirect.
td
code
0
tr
td
code
can_https_redirect
td
em
Boolean
td
span
Whether a valid SSL certificate or AutoSSL runs on the domain
.

p
This return only appears if you set the 
code
return_https_redirects_status
 parameter to 
code
1
.
td
ul
li
code
1
 — A valid SSL certificate exists or AutoSSL runs.
li
code
0
 — A valid SSL certificate does 
strong
not
 exist, and AutoSSL does not run.
td
code
0
tr
td
code
all_aliases_valid
td
em
Boolean
td
p
Whether a valid SSL certificate exists on the domain's aliases.
p
This return only appears if you set the 
code
return_https_redirects_status
 parameter to 
code
1
.
td
ul
li
code
1
 — A valid SSL certificate exists on the aliases.
li
code
0
 — A valid SSL certificate does 
strong
not
 exist on the aliases.
td
code
0
tr
td
code
domainkey
td
em
string
td
The addon domain's username and main domain.
td
A username, the underscore character (
code
_
), and the account's main domain.
td
code
username_example.com
tr
td
code
subdomain
td
em
string
td
p
The addon domain's username.
p
This return's value is also the addon domain's FTP username. 
td
A valid username.
td
code
username
tr
td
code
rootdomain
td
em
string
td
The main domain.
td
A valid domain name.
td
code
example.com
tr
td
code
fullsubdomain
td
em
string
td
The addon domain's username and subdomain.
td
A username, a dot (
code
.
), and the account's main domain.
td
code
username.example.com
tr
td
code
reason
td
em
string
td
p
A reason for failure.
p
This function 
strong
only
 returns a 
code
reason
 value if an error occurrs. 
td
A string that describes the error.
td
code
This is an error message.
tr
td
code
web_subdomain_aliases
td
em
Boolean
td
div
p
The type of subdomain alias.
td
ul
li
code
1
 — 
code
www
 subdomain
li
code
0
 — 
code
mail
 subdomain
td
code
1
tr
td
code
result
td
em
Boolean
td
p
Whether the function succeeded.
td
ul
li
code
1
 — The function succeeded.
li
code
0
 — The function failed.
td
code
1