WHM API.
https://api.docs.cpanel.net/_mock/specifications/whm.openapi/
https://{host}:{port}/json-api/
Request
You can call cPanel API and UAPI functions through the WHM API.
This method is useful, for example, when you develop plugins for WHM users, particularly resellers, but need to access cPanel functions. You can make these calls from within either the WHM or cPanel interfaces.
Important:
We recommend that you use the WHM API 1 uapi_cpanel function. The uapi_cpanel function is a more flexible way to call cPanel API functions from WHM. For example, you can use the uapi_cpanel function with the WHM API 1 batch function.
Before calling a cPanel API function via this method, read its documentation. The cPanel API function may require other parameters not listed in this document.
The UAPI function name.
Important:
Function names are case-sensitive.
The UAPI module name.
Important:
Module names are case-sensitive.
The cPanel username for the account through which to call the function.
Make certain that you specify the username in lowercase characters only. cPanel & WHM automatically converts usernames to lowercase when you create a cPanel account. For this reason, if you supply a username that includes some or all capital letters, the call will fail.
The cPanel API version to use.
1— Use cPanel API 1.2— Use cPanel API 2.3— Use UAPI.
The function's input parameters and their values. You can add any additional parameters supported by the underlying cPanel API function.
Example: domain=example.com
Note:
- Separate multiple
parameter=valuepairs with the ampersand character (&). - You must URI-encode these values.
- Mock server
https://api.docs.cpanel.net/_mock/specifications/whm.openapi/cpanel
- A server running WHM.
https://whm-server.tld:2087/json-api/cpanel
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
-u <username>:<password> \
'https://api.docs.cpanel.net/_mock/specifications/whm.openapi/cpanel?cpanel_jsonapi_func=listpopswithdisk&cpanel_jsonapi_module=Email&cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=3&Variable+Names+and+Values=string'{ "data": null, "metadata": { "command": "cpanel", "reason": "OK", "result": 1, "version": 1 } }
The name of the function to call on the remote server.
The name of the parameter for the function.
Note:
You must enter the same number of parameter_name and parameter_value parameters.
The value of the parameter for the function.
Note:
You must enter the same number of parameter_name and parameter_value parameters.
- Mock server
https://api.docs.cpanel.net/_mock/specifications/whm.openapi/execute_remote_whmapi1_with_password
- A server running WHM.
https://whm-server.tld:2087/json-api/execute_remote_whmapi1_with_password
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
-u <username>:<password> \
'https://api.docs.cpanel.net/_mock/specifications/whm.openapi/execute_remote_whmapi1_with_password?function=passwd&host=host.example.com¶meter_name=user¶meter_value=username2&password=luggage12345&username=username&tls_verification=on'{ "data": { "app": [ … ], "key-name*": "system" }, "metadata": { "command": "execute_remote_whmapi1_with_password", "reason": "OK", "result": 1, "version": 1 } }
The UAPI function to call.
Note:
You must include the UAPI function's required parameters. You can also include its optional parameters.
For example, to call the UAPI get_stats function with its required display parameter and the bandwidthusage and diskusage values:
display=bandwidthusage|diskusage
- Mock server
https://api.docs.cpanel.net/_mock/specifications/whm.openapi/uapi_cpanel
- A server running WHM.
https://whm-server.tld:2087/json-api/uapi_cpanel
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
-u <username>:<password> \
'https://api.docs.cpanel.net/_mock/specifications/whm.openapi/uapi_cpanel?cpanel.function=get_stats&cpanel.module=StatsBar&cpanel.user=username'{ "data": { "uapi": { … } }, "metadata": { "command": "uapi_cpanel", "reason": "OK", "result": 1, "version": 1 } }