Create hosting plan

This function creates a hosting plan (package).

Note:

The Access Control Lists restricts some of this function's parameters, which limit the features that WHM users can access.

Authorizations:
query Parameters
name
required
string

The new hosting plan's name.

Note:

  • You cannot use the name extensions for a hosting plan.
  • You cannot modify hosting plan names after creation. Do not include details that may change over time, such as price.
Example: name=package1
_PACKAGE_EXTENSIONS
string

A space-separated list of the hosting plan's package extensions.

If you do not provide a value, the hosting plan will not include package extensions.

Note:

  • We strongly recommend that you manage package extensions through WHM API 1's addpkgext and delpkgext functions.
  • You can include the extension's variables in your function call, in key=value format. Consult the extension's documentation for a list of possible variables.
  • Extension names and variables are case-sensitive.
Example: _PACKAGE_EXTENSIONS='extension1 extension2 extension3'
integer or string Nullable
Default: 1048576

The hosting plan's maximum bandwidth use, in megabytes (MB).

  • 0, unlimited, or null — The hosting plan allows unlimited bandwidth.

Note:

The 0, unlimited, and null values are only available to users that possess the corresponding unlimited ACL permission.

Example: bwlimit=1048576
cgi
integer
Default: 1

Whether CGI access is enabled for the account.

  • 1 — Enabled.
  • 0 — Disabled.

Note:

When a server profile disables the Web Server role, this parameter defaults to 0. On these servers, you cannot enable CGI access.

Enum: 1 0
Example: cgi=1
cpmod
string

The hosting plan's cPanel theme.

This parameter defaults to the server's default cPanel theme.

Example: cpmod=jupiter
digestauth
integer
Default: 0

Whether to enable Digest Authentication for accounts on the hosting plan.

  • 1 — Enable.
  • 0 — Disable.
Enum: 1 0
Example: digestauth=1
featurelist
string
Default: "default"

The hosting plan's feature list.

If you do not use this parameter, the function assigns the default feature list to the account.

Example: featurelist=feature_list
frontpage
integer
Deprecated
Default: 0

Whether Microsoft® FrontPage® Extensions are enabled for the account.

  • 1 — Enabled.
  • 0 — Disabled.

Note:

cPanel & WHM ignores all FrontPage settings and parameters.

Enum: 1 0
Example: frontpage=0
hasshell
integer
Default: 0

Whether the hosting plan allows shell access.

  • 1 — The hosting plan allows shell access.
  • 0 — The hosting plan does not allows shell access.
Enum: 1 0
Example: hasshell=1
ip
string
Default: "n"

Whether the account has a dedicated IP address.

  • y — The account possesses a dedicated IP address.
  • n — The account does not possess a dedicated IP address.
Enum: "y" "n"
Example: ip=n
language
string <ISO-3166-1 (alpha-2)>

The hosting plan's default locale, in its two-letter ISO-3166 code format.

This parameter defaults to the server's default locale.

Example: language=en
integer or string
Default: "unlimited"

The percentage of failed or deferred email messages that the hosting plan allows users to send per hour before outgoing mail is rate-limited.

  • 0 or unlimited — The hosting plan allows users ot send an unlimited number of failed or deferred messages.
Example: MAX_DEFER_FAIL_PERCENTAGE=unlimited
integer or string
Default: "unlimited"

The maximum number of emails that the hosting plan allows users to send in one hour.

  • 0 or unlimited — The hosting plan allows users to send an unlimited number of emails.
Example: MAX_EMAIL_PER_HOUR=unlimited
integer or string Nullable
Default: 1024

The hosting plan's maximum email account quota size, in megabytes (MB).

  • 0, unlimited, or null — The hosting plan allows unlimited email account quota.

Note:

The 0, unlimited, and null values are only available to users that possess the corresponding unlimited ACL permission.

Example: max_emailacct_quota=1024
integer or string Nullable
Default: 0

The hosting plan's maximum number of addon domains.

  • unlimited or null — The hosting plan allows unlimited addon domains.
Example: maxaddon=unlimited
integer or string Nullable
Default: "unlimited"

The hosting plan's maximum number of FTP accounts.

  • unlimited, or null — The hosting plan allows unlimited FTP accounts.
Example: maxftp=unlimited
integer or string Nullable
Default: "unlimited"

The hosting plan's maximum number of mailing lists.

  • unlimited, or null — The hosting plan allows unlimited mailing lists.
Example: maxlst=unlimited
integer or string Nullable
Default: 0

The hosting plan's maximum number of parked domains (aliases).

  • unlimited or null — The hosting plan allows unlimited parked domains.
Example: maxpark=unlimited
integer or string Nullable
Default: "unlimited"

The hosting plan's maximum number of email accounts.

  • unlimited, or null — The hosting plan allows unlimited email accounts.
Example: maxpop=unlimited
integer or string Nullable
Default: "unlimited"

The hosting plan's maximum number of each available type of SQL database.

For example, if you set this value to 5 and the system administrator allows MySQL® and PostgreSQL® databases, users can create up to five MySQL databases and up to five PostgreSQL databases.

  • unlimited, or null — The hosting allows unlimited databases.
Example: maxsql=unlimited
integer or string Nullable
Default: "unlimited"

The hosting plan's maximum number of subdomains.

  • unlimited, or null — The hosting plan allows unlimited subdomains.
Example: maxsub=unlimited
integer or string Nullable
Default: 10240

The hosting plan's disk space quota, in megabytes (MB).

  • 0, unlimited, or null — The hosting plan allows unlimited disk space.

Note:

The 0, unlimited, and null values are only available to users that possess the corresponding unlimited ACL permission.

Example: quota=10240

Responses

Response Schema: application/json
object
object

Request samples

whmapi1 --output=jsonpretty \
  addpkg \
  name='package1'

Response samples

Content type
application/json
{
  • "data": {
    • "pkg": "package1"
    },
  • "metadata": {
    • "command": "addpkg",
    • "reason": "OK",
    • "result": 1,
    • "version": 1
    }
}