Return whether server role is enabled

This function checks whether a specific server role is currently enabled for the server.

For more information about server roles, read our How to Use Server Profiles documentation.

query Parameters

The role to check. The role must be one of the following case-sensitive values:

  • CalendarContact - Allows users to access CalDAV and CardDAV services and features.

  • DNS - Allows users to create and edit Domain Name System (DNS) zone files. This role doesn’t convert your server to a cPanel DNSOnly™ server.

  • FileStorage - Allows users to access cPanel’s File Manager and Git™ Version Control features. When a profile disables this role, you can’t enable the Shell Access setting when you create a new cPanel account.

  • FTP - Allows users to manage their account’s files with an FTP client.

  • MailLocal - Allows the control of local mail delivery and related features.

  • MailReceive - Allows users to receive mail from external sources.

  • MailRelay - Allows the server’s Message Transfer Agent (MTA) to forward mail from one remote host to another.

  • MailSend - Allows users to send mail and control the features necessary for sending mail.

  • MySQL - Allows users to create and manage MySQL® or MariaDB databases.

  • MySQLClient - This role checks whether the MySQL/MariaDB client access exists locally or remotely. You cannot directly enable or disable this role. The system enables or disables this role depending on the MySQL configuration.

  • Postgres - Allows users to create and manage PostgreSQL databases if cPanel & WHM manages the server’s PostgreSQL.

  • PostgresClient - This role checks whether the PostgreSQL client access exists locally.

  • SpamFilter - Allows users to use Apache SpamAssassin™ to identify, sort, and delete unsolicited mail.

  • WebDisk - Allows users to manage their account’s files with a WebDAV client.

  • Webmail - Allows users to access webmail services and features.

  • WebServer - Allows users to create and manage websites for their domains.

Enum: "CalendarContact" "DNS" "FileStorage" "FTP" "MailLocal" "MailReceive" "MailRelay" "MailSend" "MySQL" "MySQLClient" "Postgres" "PostgresClient" "SpamFilter" "WebDisk" "Webmail" "WebServer"
Example: role=FTP

HTTP Request was successful.

Response Schema: application/json
Request samples
whmapi1 --output=jsonpretty \
  is_role_enabled \
Response samples
  • "data": {
    • "enabled": 1
  • "metadata": {
    • "command": "is_role_enabled",
    • "reason": "OK",
    • "result": 1,
    • "version": 1