• Support
  • cPanel & WHM Documentation
  • Developer Forums
  • Discord
    • Nothing Found
  • Support
  • cPanel & WHM Documentation
  • Developer Forums
  • Discord
    cPanel UAPI
    WHM API1
      Guide to WHM API 1
      WHM API
      Account Restoration
      Restore Account
      Restore Queue Management
      Restore Queue Reporting
      Accounts
      Account Creation
      Account Enhancements
      Account Management
      Bandwidth and Disk Quotas
      Domain Information
      Passwords
      Styles
      Suspensions
      API Development Tools
      API Execution
      API Statistics
      API Token Management
      Applications
      Session
      Authentication
      Authentication Providers
      External Authentication
      Login URL
      SSH Keys and Connections
      Two-Factor Authentication
      Backups
      Backup Destination
      Backup or Restore
      Backup Settings
      Legacy Migration
      Commerce Integration
      Market Integration
      Sitejet
      cPanel Market
      Product Management
      Provider Management
      cPanel Support Tickets
      Support Access
      Ticket Management
      Customizations
      Customizations
      Databases
      Manage MySQL Server
      MySQL Databases
      PostgreSQL Databases
      Remote MySQL Databases
      DNS
      DNS Cluster Settings
      DNS Security
      DNS Zones
      Domain Management
      Domain Management
      Resolvers
      Hosting Plans
      Feature Access
      Feature Lists
      Hosting Plan Extensions
      Hosting Plans
      Integrations
      API Authentication
      Links
        get
        Create integration link group
        get
        Create integration link
        get
        Return integration link configuration
        get
        Return integration link groups
        get
        Return integration links
        get
        Remove integration link group
        get
        Remove integration link
        get
        Update integration link token
      Scripts Hooks
      IP Address Management
      IPv4 Address Settings
      IPv6 Address Settings
      Network Address Translation
      Login Security (cPHulk)
      Management
      Reporting
      Settings
      Mail
      cPanel Account Mail Management
      Mail DNS Settings
      Mail Server Settings
      Spam Management
      Spam Protection (Greylisting)
      NGINX Manager
      NGINX Manager
      Resellers
      Account Enhancement Limit
      Account Limits
      Account Permissions
      Account Settings
      Reseller Account Management
      Security
      WHM Access
      Server Administration
      Configuration Clusters
      Configurations
      Connected Applications
      Connections
      cPanel Analytics
      License Management
      Notifications
      Plugin-Based Features
      Security
      Server Nodes
      Server Profiles
      Services
      System Information
      Updates
      SSL Certificates
      Auto-Generated Certificates
      cPanel Account Settings
      SSL Server Settings
      System Package Management
      Install or Uninstall Package
      List Package Information
      Package Manager Settings
      Transfers
      cPanel Account Transfer
      Transfer Configuration
      Transfer Monitoring
      Web Server Configuration
      EasyApache Settings
      PHP
      PHP-FPM
      Web Server Security (ModSecurity)
      Rule Settings
      Rule Vendor Settings
      Server Settings

Create integration link

This function creates an integration link in the cPanel interface.

Note:

The function creates the APP.adminconfig and APP.userconfig integration link files in the /var/cpanel/integration/links/USERNAME directory, where APP represents the application name and USERNAME represents the user for whom you create integration links.

SecurityBasicAuth
Request
query Parameters
app
required
string

The application to link.

Note:

  • If you create a link with an app value that already exists, the function will replace the existing link with the newly-created link.
  • The value you assign to the app parameter is how you identify that integration link when listing or removing integration links.
  • You may include underscore (_) characters.
Example: app=WHMCS_billing
implements
required
string

The service for which to implement authentication.

Note:

This is a string from the get_users_links function. The function typically returns one of the following values.

  • billing - This link appears in the user menu
  • customer_service - This link appears in the user menu
  • support - This link appears in the user menu
  • upgrade - This link appears in the user menu and context-sensitive areas when the user may require more of a resource
Example: implements=billing
label
required
string

The label to display in the cPanel login interface.

Example: label=WHMCS Billing
subscriber_unique_id
required
string

The subscriber's unique ID that the system will present to the URL in the autologin_token_url endpoint.

Example: subscriber_unique_id=1234
token
required
string

The token that the system will present to the URL in the autologin_token_url endpoint.

Example: token=subway
user
required
string <username>

The cPanel account name.

Example: user=username
autologin_token_url
string <json>

The URL to which the server will send the app, token, user, and subscriber_unique_id values through an HTTP POST request. The destination server will respond with a JSON-encoded object with either a redirect_url key or the retry and attempt keys.

Note:

  • You must include either the autologin_token_url parameter, the url parameter, or both.
  • If you do not set the autologin_token_url parameter, or that server does not respond or exist, then the server will redirect the user to the location in the url parameter.
  • If the response contains redirect_url, the system will redirect the user to that URL. (For example:, {"redirect_url":" http://www.whmcs.com/client_area/login/?one_time_user_token_that_expires_in_120_seconds=d41d8cd98f00 ”} will send the user to that unique URL.)
  • If the response contains retry and attempt, the system will wait for the retry value in seconds for a maximum of 60 seconds and then attempt the call again. The attempt value indicates the number of attempts that your system has tried. The system will stop after three attempts. (For example, {"retry":30, "attempt":2} represents the second attempt to connect, and the system will pause the user for 30 seconds before it tries again.)
Example: autologin_token_url=http://www.example.com/login.cgi
base64_png_image
string <base64 image>

The icon image.

Note:

If you do not specify a value, the interface uses a standard puzzle piece icon.

Example: base64_png_image=iVBORw0KGgoAAAANSUhEUgAAAJgAAADYCAYAAA AXmipNAAAACXBIWXMAAALVAAAC1QHAwm8lAAAAGXRFWHRTb2Z0d2FyZQB 3d3cuaW5rc2NhcGUub3Jnm+48GgAAAUNJREFUeJztziFKg2EABuD3+ydz qGBwiGBZ385hstoMu4DNA8w7eIuBRUyWBYvJsC6CYWCwGGSy7bN6AOFn8 DwneJI/6mTYreNBryYl8A9KktTxoJfu0W66y3mSw6Q8pD+/LJNsWv6x5Z p6NbzJ/sF7uj/3Sf3OJqPUep6P0WnbObZfk1qu02zOks0spXylk+eUvOS 4v2g7x/bbSamPSecuqZ+p5TbN6inLvbcyma3azrH9Sr1IJyejQcq6yWL0 WqbTddspAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AANr0C5EmMYv5JZrpAAAAAElFTkSuQmCC
group_id
string

The group ID in which to add the icon of the linked service.

  • files
  • databases
  • domains
  • email
  • metrics
  • security
  • software
  • advanced
  • pref

Note:

If you do not specify a value, the function automatically creates an item under the username menu in the interface header.

Enum: "files" "databases" "domains" "email" "metrics" "security" "software" "advanced" "pref"
Example: group_id=advanced
hide
integer
Default: 0

Whether the cPanel interface will display the integration link.

  • 1 - Do not display the link.
  • 0 - Display the link.
Enum: 0 1
Example: hide=1
order
string

The order in which to display the icon in the cPanel interface inside the group_id group.

Example: order=999
url
string <url>

The URL to which to send the user if the autologin_token_url location does not respond or is not present.

Note:

  • You must include either the autologin_token_url parameter, the url parameter, or both.
Example: url=http://www.example.com
Responses
200

HTTP Request was successful.

Response Schema: application/json
object
get/create_integration_link
Request samples
  • CLI
  • URL
whmapi1 --output=jsonpretty \
  create_integration_link \
  user='username' \
  app='WHMCS_billing' \
  token='subway' \
  implements='billing' \
  label='WHMCS Billing' \
  subscriber_unique_id='1234'
Response samples
  • 200
application/json
{
  • "metadata": {
    • "command": "create_integration_link",
    • "reason": "Ok",
    • "result": 1,
    • "version": 1
    }
}
©2025 WebPros International, LLC All rights reserved.Privacy PolicyTrademarks