cPanel API 2 Functions - SSL::gencrt

Warning:

The cPanel API 2 system is deprecated. We strongly recommend that you use UAPI instead of cPanel API 2.


Description

This function generates a self-signed certificate.

Warning:

We strongly recommend that you use the following UAPI function instead of this function:


Note:

Use the SSL::listcrts function to retrieve the new certificate's information.


Important:

In cPanel & WHM version 84 and later, when you disable the Calendars and Contacts, Receive Mail, Web Disk, Webmail, and Web Server roles, the system disables this function.


Examples


WHM API (JSON)

https://hostname.example.com:2087/cpsess###########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=SSL&cpanel_jsonapi_func=gencrt&city="Houston"&company="cPanel"&companydivision="Documentation"&country="US"&email="user@example.com"&host="example.com"&state="TX"
Note:

For more information, read our Calls from the WHM API documentation.


LiveAPI PHP Class

$cpanel = new CPANEL(); // Connect to cPanel - only do this once.

// Generate a self-signed certificate for example.com.
$generate_new_certificate = $cpanel->api2(
    'SSL', 'gencrt',
    array(
        'city'            => 'Houston',
        'company          => 'cPanel',
        'companydivision' => 'Documentation',
        'country'         => 'US',
        'email'           => 'user@example.com',
        'host'            => 'example.com',
        'state'           => 'TX',
    )
);
Note:

For more information, read our Guide to the LiveAPI System.


LiveAPI Perl Module

my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.

# Generate a self-signed certificate for example.com.
my $generate_new_certificate = $cpliveapi->api2(
    'SSL', 'gencrt',
    {
        'city'            => 'Houston',
        'company          => 'cPanel',
        'companydivision' => 'Documentation',
        'country'         => 'US',
        'email'           => 'user@example.com',
        'host'            => 'example.com',
        'state'           => 'TX',
    }
);
Note:

For more information, read our Guide to the LiveAPI System.


cPanel Tag System (deprecated)

Warnings:
  • In cPanel & WHM version 11.30 and later, cPanel tags are deprecated . We strongly recommend that you only use the LiveAPI system to call the cPanel APIs. Examples are only present in order to help developers move from the old cPanel tag system to our LiveAPI .
  • cPanel API 2 calls that use cPanel tags vary in code syntax and in their output.
  • For more information, read our Deprecated cPanel Tag Usage documentation.

Command Line

cpapi2 --user=username SSL gencrt city=Houston company=cPanel companydivision=Documentation country=US email=username%40example.com host=example.com state=TX
Notes:
  • You must URI-encode values.
  • username represents your account-level username.
  • You must include the --user=username option.
  • For more information and additional output options, read our Guide to cPanel API 2 documentation or run the cpapi2 --help command.
  • If you run CloudLinux™, you must use the full path of the cpapi2 command:
    /usr/local/cpanel/bin/cpapi2

Output (JSON)

{
  "cpanelresult": {
    "apiversion": 2,
    "func": "gencrt",
    "data": [
      {
        "output": "Certificate generated!",
        "result": 1
      }
    ],
    "event": {
      "result": 1
    },
    "module": "SSL"
  }
}
Note:

Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.


Parameters

Parameter Type Description Possible values Example
city string

Required

The certificate owner's city.

The name of the city in which the certificate owner resides. Houston
company string

Required

The certificate owner's company name.

The name of the certificate owner's company. cPanel
companydivision string

The certificate owner's division or department within the company.

This parameter defaults to an empty string.

The name of the certificate owner's division or department. Documentation
country string

Required

The certificate owner's country.

The country's two-letter abbreviation. US
email string

The certificate owner's email address.

This parameter defaults to an empty string.

A valid email address. user@example.com
host string

Required

The certificate's hostname.

A valid domain or subdomain name.

example.com
state string

Required

The certificate owner's state.

The state's two-letter abbreviation. TX

Returns

Return Type Description Possible values Example
output string

A message of success or a reason for failure.

  • Certificate generated!
  • A string that describes the error.
This is an error message.
result Boolean

Whether the function succeeded.

  • 1 — The function succeeded.
  • 0 — The function failed.
1