Create or update reseller privilege settings

This function creates or modifies an Access Control List (ACL).

Note:

For each acl-* parameter, any value adds that privilege to the ACL list and no value removes that privilege from the ACL list.

Warning:

We strongly recommend that WHM users create and edit ACLs and ACL privileges through WHM's Edit Reseller Nameservers and Privileges interface ( WHM >> Home >> Resellers >> Edit Reseller Nameservers and Privileges ).

SecurityBasicAuth
Request
query Parameters
reseller
required
string <username>

The reseller's username.

Example: reseller=username
acl-acct-summary
integer

Whether to allow the reseller to view an account summary.

Value: 1
Example: acl-acct-summary=1
acl-add-pkg
integer

Whether to allow the reseller to add and remove hosting plans (packages).

Value: 1
Example: acl-add-pkg=1
acl-add-pkg-ip
integer

Whether to allow the reseller to create packages with a dedicated IP address.

Value: 1
Example: acl-add-pkg-ip=1
acl-add-pkg-shell
integer

Whether to allow the reseller to create packages with shell access.

Value: 1
Example: acl-add-pkg-shell=1
acl-all
integer

Whether to grant the reseller all ACL privileges.

Warning:

A value of 1 grants root-level privileges to the reseller.

Value: 1
Example: acl-all=1
acl-allow-addoncreate
integer

Whether to allow the reseller to create packages with addon domains.

Value: 1
Example: acl-allow-addoncreate=1
acl-allow-parkedcreate
integer

Whether to allow the reseller to create packages with parked domains (aliases).

Value: 1
Example: acl-allow-parkedcreate=1
acl-allow-unlimited-bw-pkgs
integer

Whether to allow the reseller to create packages with unlimited bandwidth.

Value: 1
Example: acl-allow-unlimited-bw-pkgs=1
acl-allow-unlimited-disk-pkgs
integer

Whether to allow the reseller to create packages with unlimited disk space.

Value: 1
Example: acl-allow-unlimited-disk-pkgs=1
acl-allow-unlimited-pkgs
integer

Whether to allow the reseller to create packages with unlimited features.

Value: 1
Example: acl-allow-unlimited-pkgs=1
acl-basic-system-info
integer

Whether to allow the reseller to retrieve basic system information.

Value: 1
Example: acl-basic-system-info=1
acl-basic-whm-functions
integer

Whether to allow the reseller to access basic cPanel & WHM options.

Value: 1
Example: acl-basic-whm-functions=1
acl-clustering
integer

Whether to allow the reseller to use DNS clusters.

Value: 1
Example: acl-clustering=1
acl-cors-proxy-get
integer

Whether to allow the reseller to perform Cross-Origin Resource Sharing (CORS) HTTP requests.

Value: 1
Example: acl-cors-proxy-get=1
acl-cpanel-api
integer

Whether to allow the reseller to execute cPanel API 1, cPanel API 2 and UAPI functions via WHM.

Value: 1
Example: acl-cpanel-api=1
acl-cpanel-integration
integer

Whether to allow the reseller to manage how their server and its services connect to other servers and services.

Value: 1
Example: acl-cpanel-integration=1
acl-create-acct
integer

Whether to allow the reseller to create accounts.

Value: 1
Example: acl-create-acct=1
acl-create-dns
integer

Whether to allow the reseller to add DNS zones.

Value: 1
Example: acl-create-dns=1
acl-create-user-session
integer

Whether to allow the reseller to create a temporary session user for a specified service.

Note:

This privilege allows an API token user to bypass any restrictions that you set on the API token. For more information, read our Manage API Tokens documentation.

Value: 1
Example: acl-create-user-session=1
acl-demo-setup
integer

Whether to allow the reseller to enable demo mode for accounts.

Value: 1
Example: acl-demo-setup=1
acl-digest-auth
integer

Whether to allow the reseller to manage Digest Authentication support.

Value: 1
Example: acl-digest-auth=1
acl-disallow-shell
integer

Whether to allow the reseller to create accounts with shell access.

Value: 1
Example: acl-disallow-shell=1
acl-edit-account
integer

Whether to allow the reseller to edit accounts.

Value: 1
Example: acl-edit-account=1
acl-edit-dns
integer

Whether to allow the reseller to edit DNS zones.

Value: 1
Example: acl-edit-dns=1
acl-edit-mx
integer

Whether to allow the reseller to edit MX entries.

Value: 1
Example: acl-edit-mx=1
acl-edit-pkg
integer

Whether to allow the reseller to edit hosting plans (packages).

Value: 1
Example: acl-edit-pkg=1
acl-generate-email-config
integer

Whether to allow the reseller to generate a mobile configuration profile for an email account.

Value: 1
Example: acl-generate-email-config=1
acl-kill-acct
integer

Whether to allow the reseller to terminate accounts.

Value: 1
Example: acl-kill-acct=1
acl-kill-dns
integer

Whether to allow the reseller to remove DNS zones.

Value: 1
Example: acl-kill-dns=1
acl-limit-bandwidth
integer

Whether to allow the reseller to modify bandwidth limits (quotas).

Warning:

If you do not use resource limits, a value of 1 allows resellers to circumvent package limits for disk space.

Value: 1
Example: acl-limit-bandwidth=1
acl-list-accts
integer

Whether to allow the reseller to view the list of accounts.

Value: 1
Example: acl-list-accts=1
acl-list-pkgs
integer

Whether to allow the reseller to view existing hosting plans (packages).

Value: 1
Example: acl-list-pkgs=1
acl-locale-edit
integer

Whether to allow the reseller to create and modify locales on the server.

Value: 1
Example: acl-locale-edit=1
acl-mailcheck
integer

Whether to allow the reseller to troubleshoot mail delivery.

Value: 1
Example: acl-mailcheck=1
acl-manage-api-tokens
integer

Whether to allow the reseller to manage API tokens.

Note:

This privilege allows an API token user to bypass any restrictions that you set on the API token. For more information, read our Manage API Tokens documentation.

Value: 1
Example: acl-manage-api-tokens=1
acl-manage-dns-records
integer

Whether to allow the reseller to manage DNS records.

Value: 1
Example: acl-manage-dns-records=1
acl-manage-oidc
integer

Whether to allow the reseller to manage external authentication for their accounts.

Value: 1
Example: acl-manage-oidc=1
acl-manage-styles
integer

Whether to allow the reseller to manage their server's cPanel styles.

Value: 1
Example: acl-manage-styles=1
acl-mysql-info
integer

Whether to allow the reseller to retrieve MySQL® database and user data.

Value: 1
Example: acl-mysql-info=1
acl-nameserver-config
integer

Whether to allow the reseller to manage nameservers.

Value: 1
Example: acl-nameserver-config=1
acl-news
integer

Whether to allow the reseller to modify the server's news.

Value: 1
Example: acl-news=1
acl-park-dns
integer

Whether to allow the reseller to park DNS zones.

Value: 1
Example: acl-park-dns=1
acl-passwd
integer

Whether to allow the reseller to change passwords.

Note:

This privilege allows an API token user to change account passwords and log in with a new password. For more information, read our Manage API Tokens documentation.

Value: 1
Example: acl-passwd=1
acl-quota
integer

Whether to allow the reseller to modify quotas.

Warning:

If you do not use resource limits, a value of 1 allows resellers to circumvent package limits for disk space.

Value: 1
Example: acl-quota=1
acl-rearrange-accts
integer

Whether to allow the reseller to rearrange accounts.

Value: 1
Example: acl-rearrange-accts=1
acl-resftp
integer

Whether to allow the reseller to resync FTP passwords.

Value: 1
Example: acl-resftp=1
acl-restart
integer

Whether to allow the reseller to restart services.

Value: 1
Example: acl-restart=1
acl-show-bandwidth
integer

Whether to allow the reseller to view account bandwidth usage.

Value: 1
Example: acl-show-bandwidth=1
acl-ssl
integer

Whether to allow the reseller to perform SSL site management.

Value: 1
Example: acl-ssl=1
acl-ssl-buy
integer

Whether to allow the reseller to purchase SSL certificates.

Value: 1
Example: acl-ssl-buy=1
acl-ssl-gencrt
integer

Whether to allow the reseller to generate SSL certificates.

Value: 1
Example: acl-ssl-gencrt=1
acl-ssl-info
integer

Whether to allow the reseller to view their server's SSL information.

Value: 1
Example: acl-ssl-info=1
acl-stats
integer

Whether to allow the reseller to view server information.

Value: 1
Example: acl-stats=1
acl-status
integer

Whether to allow the reseller to view the server's status.

Value: 1
Example: acl-status=1
acl-suspend-acct
integer

Whether to allow the reseller to suspend or unsuspend accounts.

Value: 1
Example: acl-suspend-acct=1
acl-thirdparty
integer

Whether to allow the reseller to manage third-party services.

Value: 1
Example: acl-thirdparty=1
acl-track-email
integer

Whether to allow the reseller to view reports about email message delivery attempts from their account.

Value: 1
Example: acl-track-email=1
acl-upgrade-account
integer

Whether to allow the reseller to upgrade or downgrade accounts.

Value: 1
Example: acl-upgrade-account=1
acl-viewglobalpackages
integer

Whether to allow the reseller to use all global packages. For more information, read our reseller packages documentation.

Value: 1
Example: acl-viewglobalpackages=1
acllist
string

The ACL to assign to the reseller.

Warning:

Functions should either use this parameter, or a combination of the acl-* parameters below. Do not include both in a single function.

Example: acllist=my_acl_list
Responses
200

HTTP Request was successful.

Response Schema: application/json
object
object
get/setacls
Request samples
whmapi1 --output=jsonpretty setacls reseller='username' acl-acct-summary=1 acl-basic-system-info=1 acl-basic-whm-functions=1 acl-cors-proxy-get=1 acl-cpanel-api=1 acl-cpanel-integration=1 acl-create-user-session=1 acl-digest-auth=1 acl-generate-email-config=1 acl-list-pkgs=1 acl-manage-api-tokens=1 acl-manage-dns-records=1 acl-manage-oidc=1 acl-manage-styles=1 acl-mysql-info=1 acl-ns-config=1 acl-public-contact=1 acl-ssl-info=1 acl-track-email=1
Response samples
application/json
{
  • "data": {
    • "acl": [
      • "all"
      ]
    },
  • "metadata": {
    • "command": "setacls",
    • "reason": "OK",
    • "result": 1,
    • "version": 1
    }
}