Konrado.AIdocs
IntegrationsServer Integrations

cPanel API

Connect cPanel and WHM to Konrado.AI over HTTPS with a dedicated WHM API Token

cPanel API
Server integration
Native cPanel and WHM context without a server agent

Use cPanel API when Konrado.AI should read hosting context directly from WHM and you do not want to install the Konrado.AI server agent.

Install method
HTTPS API
No SSH access or server-side installation is required.
Credential type
WHM API Token
Use a dedicated token, not the WHM account password.
Access model
Read-only tools
Designed for support diagnostics, not panel changes.
Estimated time
5 minutes
After the WHM API is reachable over HTTPS.

cPanel API and cPanel with the server agent are separate integrations. Adding cPanel API does not change or replace an existing cpanel agent installation.

Version Compatibility

Compatibility levelcPanel & WHM version
Tested end to end by Konrado.AI11.134.0.52
Supported110 or later, through the latest supported production release
Not supported108 and earlier, and development-only EDGE builds

The minimum supported version is cPanel & WHM 110. cPanel documents the WHM API Token interface as valid from version 110 through the latest release, and version 110 remains in Extended Lifecycle Support through January 1, 2027. Konrado.AI uses WHM API 1 together with proxied UAPI calls, so the presence of API Token authentication alone on an older server is not enough to guarantee every support tool.

There is no fixed maximum version. Use a cPanel-supported LTS, STABLE, RELEASE, or CURRENT build and run Test Connection after panel upgrades. Older releases may accept the token and return some data, but Konrado.AI does not claim full compatibility with them.

See cPanel's WHM API Token version range and product version lifecycle.

What It Can Do

Konrado.AI detects whether the WHM API Token has root or reseller scope. Every lookup is bound to the cPanel account and domain matched from the ticket or billing context.

ToolSupport context it can read
AccountPlan, limits, usage, ownership, and domains for the matched cPanel account
WebsiteDocument root, main/addon/parked/subdomain relationships, DNS records, and safe SSL metadata
MailMailboxes, forwarders, autoresponders, filters, and up to 24 hours of recent delivery events
DatabasesMySQL databases, database users, and server information visible to the matched account
FilesA bounded document-root listing, FTP accounts, and available cPanel backups
ServercPanel version, hostname, load, disks, services, and installed components; available only with root-equivalent token scope

A reseller token can inspect only accounts that the reseller is allowed to access. Root-equivalent scope can inspect all cPanel accounts and enables the server-level tool.

What It Cannot Do

Not supportedWhy this matters
Create, suspend, terminate, upgrade, or modify cPanel accountsThe integration provides context for support replies only
Change DNS, SSL, mailboxes, forwarders, databases, files, FTP accounts, backups, or servicesKonrado.AI uses read operations and does not apply customer-impacting changes
Read mailbox message contents, passwords, private keys, or the stored API TokenCredentials and private message content are not support context
Access accounts outside the WHM user's reseller scopeWHM permissions remain authoritative
Provide server-agent-only plugin signalsCSF, CloudLinux/LVE, JetBackup, and Imunify context requires the cPanel server agent
Connect to a private or untrusted endpointThe WHM hostname must resolve to a public IP address and use a trusted HTTPS certificate

Security Model

Security model

Create a dedicated WHM API Token for Konrado.AI. Do not enter the WHM account password. The token is write-only in Konrado.AI responses: after it is saved, the dashboard and API do not return its value.

The connection enforces the following safeguards:

  • Only https:// WHM URLs are accepted.
  • The hostname must resolve to public IP addresses; private, loopback, link-local, carrier-grade NAT, and multicast ranges are rejected.
  • Standard TLS certificate verification applies.
  • API responses are checked for WHM errors, bounded before they are passed to the AI, and stripped of sensitive values.
  • The integration exposes predefined read-only tools and cannot run arbitrary WHM API functions.

If you restrict the token by source IP, allow the Konrado.AI static IP addresses. When removing the integration, revoke its WHM API Token as well.

Ticket Examples

Example ticket questions
  • "Which cPanel account owns example.com, and is it over disk or bandwidth limits?"
  • "Is this an addon domain, parked domain, subdomain, or alias, and what document root does it use?"
  • "Do the DNS zone or installed SSL details explain why the customer's website is unavailable?"
  • "Do recent cPanel delivery events show why mail for this domain is failing?"
  • "Which databases, FTP accounts, backups, and files are visible for this website?"
  • "Is the WHM server under load, disk, or service pressure?"

Prerequisites

  • Access to Konrado.AI Integrations.
  • A public WHM hostname with HTTPS and a certificate trusted by standard clients.
  • Inbound access from the Konrado.AI static IP addresses to the WHM HTTPS port, normally 2087.
  • A WHM root or reseller account that can create a dedicated API Token.
  • A connected ticketing or billing integration that can associate the ticket with a domain or service.

Create a WHM API Token

  1. Sign in to WHM as the root or reseller account Konrado.AI should use.
  2. Open Development > Manage API Tokens.
  3. Click Generate Token and enter a recognizable name such as konrado-ai.
  4. Choose an expiration policy that matches your credential-rotation process.
  5. In Whitelisted IPs, enter the Konrado.AI static IP addresses. Leave the field empty only when the token must be accepted from any address.
WHM Generate API Token form with a dedicated Konrado.AI token name and restricted privileges

In Privileges, deselect permissions that the integration does not need. Allow the following read and proxy privileges:

#WHM privilegeAPI value
1Account Summaryacct-summary
2Basic System Informationbasic-system-info
3Basic WHM Functionsbasic-whm-functions
4Perform cPanel API and UAPI functions through the WHM APIcpanel-api
5Manage DNS Recordsmanage-dns-records
6MySQL Informationmysql-info
7SSL Informationssl-info
8Track Emailtrack-email
9List Accountslist-accts
10View Server Statusstatus
11View Server Informationstats

Do not enable account creation, termination, suspension, password changes, service restarts, Manage API Tokens, or Create User Session. Those permissions are not required and can bypass the token's intended restrictions.

The server-level cPanel tool requires root-equivalent scope. In WHM this may require All Features (all), which grants the token complete root access even though Konrado.AI calls only read operations. Prefer reseller scope unless server-wide health is essential, and protect any root-equivalent token with IP restrictions and regular rotation.

Click Save. WHM displays the generated token only once. Copy it immediately and store it in a password manager, then confirm that you saved it.

WHM API Tokens list showing the newly created dedicated token without revealing its value

Never reveal the WHM API Token in documentation, tickets, or screenshots. If the one-time value is lost, revoke the token and create a replacement instead of sharing the WHM account password.

cPanel documents token creation in Manage API Tokens in WHM and authentication in API Tokens in WHM.

Connect cPanel API

In Konrado.AI, open Integrations > Applications and click Add Integration. Choose cPanel API, not the legacy cPanel option marked Quick install.

Add Integration dialog with cPanel API selected as an API credentials integration

Enter the connection details:

FieldWhat to enter
Integration NameA descriptive name such as cPanel EU or Production WHM
WHM URLThe public WHM URL, for example https://panel.example.com:2087
UsernameThe root or reseller account that created the API Token
API TokenThe dedicated token generated in WHM

If the URL does not include a port, Konrado.AI uses port 2087. Do not use a cPanel user URL on port 2083, and do not include credentials, query parameters, or a fragment in the URL.

cPanel API connection form with name, WHM URL, username, and a masked API Token

Click Test Connection. A successful test confirms the token, detects its WHM scope, and reads the cPanel version. Click Save to add the integration.

Verify the Connection

The Applications table should show cPanel API, the WHM hostname, a Connected status, and the detected cPanel version.

Applications table showing a connected cPanel API integration and its cPanel version

When editing the integration later, leave API Token empty to keep the stored token. Re-enter the token when changing the WHM URL or username, or when rotating the credential.

Troubleshooting

IssueWhat to check
cPanel WHM URL must use HTTPSUse a complete public https:// WHM URL; plain HTTP and cPanel port 2083 are not supported
TLS verification failedInstall a valid certificate for the WHM hostname and include the complete certificate chain
Host resolves to a private addressUse a public DNS name that resolves only to public addresses; private and split-horizon targets are rejected
cPanel rejected the configured WHM API tokenConfirm the username created the token, the token was copied completely, and it has not expired or been revoked
This cPanel token cannot read that capabilityReview the token ACLs and the reseller's account scope
Connection times out or is unavailableConfirm WHM and port 2087 are publicly reachable and allow the Konrado.AI static IP addresses
Server health is unavailableServer-wide load, disk, service, and component context requires root-equivalent token scope
Wrong domain or account is selectedConfirm the ticketing or billing integration maps the ticket to the correct service and domain

Remove

Delete the cPanel API integration in Konrado.AI, then revoke its dedicated token in WHM > Development > Manage API Tokens. No server-agent uninstall command is needed.

On this page