Create WHM API token

This function creates an API token. You can use API tokens instead of a password or access hash key to execute WHM API 1 functions over HTTPS. For more information about API tokens, read our Manage API Tokens in WHM documentation.

Important:

You must call this function over an SSL connection.

SecurityBasicAuth
Request
query Parameters
token_name
required
string

The API token's name.

Note:

  • An API token name's maximum length is 50 characters, and the name may only contain alphanumeric characters, dashes (-), and underscores (_).
  • You must assign a name that does not already exist to the API token.
Example: token_name=example
acl
string

The privileges to assign to the token. If you do not use this parameter, the system assigns all of your privileges to the token.

Note:

  • You can only assign privileges that you possess to the API token.
  • To assign multiple privileges to the token, increment the parameter name. For example: acl-0, acl-1acl-2.
Examples:
acl=acl-0=create-acct acl-1=list-accts acl-2=kill-acct
acl=all
expires_at
integer
Default: 0

The API token's expiration time. If you do not use this parameter, the API token will not expire.

Important:

When an API token expires, the system does not delete it. You must manually delete expired API tokens.

Example: expires_at=1609372800
string or string or string

One or more optional remote IP or CIDR IP ranges this token may be used from. If you do not use this parameter, the system does not limit which IPs can use this token.

Note:

  • To assign multiple whitelisted IPs to the token, increment the parameter name. For example: whitelist_ip-0, whitelist_ip-1whitelist_ip-2.
Examples:
whitelist_ip=whitelist_ip-0=192.0.2.1 whitelist_ip-1=192.0.2.5 whitelist_ip-2=192.0.2.8/29 whitelist-ip-3=fc00:abcd::f whitelist-ip-4=2620:0:28a4::/48
whitelist_ip=192.0.2.8/29
Responses
200

HTTP Request was successful.

Response Schema: application/json
object
object
get/api_token_create
Request samples
whmapi1 --output=jsonpretty \
  api_token_create \
  token_name='example'
Response samples
application/json
{
  • "data": {
    • "acls": [
      • "kill-acct"
      ],
    • "create_time": 1483625276,
    • "expires_at": 1609372800,
    • "name": "example",
    • "token": "UWU28DCA23NKY76CN17MDPKM3O7EFQY8",
    • "whitelist_ips": [
      • "1.1.1.1",
      • "1.1.1.2",
      • "1.1.1.8/29",
      • "fc00:abcd:0000:0000:0000:0000:0000:000f",
      • "2620:0000:28a4:0000:0000:0000:0000:0000/48"
      ]
    },
  • "metadata": {
    • "command": "api_token_create",
    • "reason": "OK",
    • "result": 1,
    • "version": 1
    }
}