- Home
- Help & Knowledgebase
Home
- Documentation Home
FAQ
- What is an SSL Certificate?
- How to activate an SSL order?
- How to install an SSL certificate?
- What is CSR?
- How to generate a CSR code
- How to reissue an SSL order?
Documentation
- API Methods
- WHMCS Module
CyberSSL API Documentation
Our API is designed to have predictable, resource-oriented URLs and to use HTTP requests.
Note
For an error response, 'error_code' and 'error_message' variables are returned.
All API responses are JSON encoded.
You can find the php class and code examples at: https://github.com/cyberssl
Contents
- Authorization
- Product list
- Add SSL order
- Reissue an existent SSL order
- Validate CSR
- Get domain validation options
- Change validation method
- Order status
- Get SSL product price
- Get balance
- My orders
- SSL certificates list
- Order extra domains
- Get SSL product details
- Revalidate
Test API: https://api.cyberssl.com/sandbox/v1/ Live API: https://api.cyberssl.com/v1/ Auth Key: https://www.cyberssl.com/profile_settings
1. Authorization
https://api.cyberssl.com/v1/auth Request method: GET
Request parameters:
- apikey - Your API key from profile settings page (required)
Response:
- token - Unique token for current api session
- success=true
2. Product List
https://api.cyberssl.com/v1/list_products Request method: GET
Request parameters:
- token - Your unique token (required)
Response:
- ssl_products - list of of SSL products
- success=true
3. Add SSL Order
https://api.cyberssl.com/v1/ add_ssl_order Request method: POST
Request parameters:
- token - Your unique token (required)
- product_id - ssl product id (required)
- order_type - 'new' or 'renew' (required)
- period - in years (required)
- dv_method - method - 'http', 'https', 'dns' . For email validation method use 'email:' followed by email list separated by commas for every domain, example: 'email:hostmaster@domain1.com,hostmaster@domain2.com' (required)
- addon_domains - additional domains field, example: 'domain1.com,domain2.com,*.domain3.com' - used for a Multi-domain certificate - (not required)
- admin_firstname (required)
- admin_lastname (required)
- admin_phone (required)
- admin_title(required)
- admin_email(required)
- tech_firstname - same as admin_firstname if not provided
- tech_lastname - same as admin_firstname if not provided
- tech_phone - same as admin_firstname if not provided
- tech_title - same as admin_firstname if not provided
- tech_email - same as admin_firstname if not provided
- csr - your csr code (required if not 'csr_*' fields are used)
- csr_city - city field for csr generation (required if 'csr' field is not provided)
- csr_state - state field for csr generation (required if 'csr' field is not provided)
- csr_country - country field for csr generation (required if 'csr' field is not provided)
- csr_domain - common name field (your primary domain) for csr generation(required if 'csr' field is not provided)
- csr_organization - organization field for csr generation (required if 'csr' field is not provided)
- csr_department - (not required)
- csr_email - (not required)
- org_name - full organization name (required for Business Verification Certificate)
- org_division - organization division (required for Business Verification Certificate)
- org_addressline - organization address (required for Business Verification Certificate)
- org_city - organization city (required for Business Verification Certificate)
- org_country - organization country (required for Business Verification Certificate)
- org_phone - organization phone (required for Business Verification Certificate)
- org_postalcode - organization postalcode (required for Business Verification Certificate)
- org_region - organization region (required for Business Verification Certificate)
Response:
- order_id - unique order id
- csr_code - returned only if csr is generated automatically by CyberSSL api
- private_key - returned only if csr is generated automatically by CyberSSL api
- dv_options - provided only if http/https/dns dv_method
Example of response:Array ( [http] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => http://test.com/F50E098C713586FE9A.txt ) ) [https] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => https://test.com/F50E098C713586FE9A.txt ) ) [dns] => Array ( [test.com] => Array ( [record] => F50E098C713586FE9A363B33BACDD249.test.com. CNAME b056c5e3252182a844b80e1eb5de04736c09c9d9.comodoca.com. ) ) }
- success=true
4. Reissue An Existent SSL order
https://api.cyberssl.com/v1/reissue_ssl_order Request method: POST
Request parameters:
- token - Your unique token (required)
- order_id - Your unique order_id (required)
- dv_method - method - 'http', 'https', 'dns'. For email validation method use 'email:' followed by email list separated by commas for every domain, example: 'email:hostmaster@domain1.com,hostmaster@domain2.com' (required)
- addon_domains - additional domains field, example: 'domain1.com,domain2.com,*.domain3.com' - used for a Multi-domain certificate - (not required)
- csr - your csr code (required if no 'csr_*' fields are used)
- csr_city - city field for csr generation (required if 'csr' field is not provided)
- csr_state - state field for csr generation (required if 'csr' field is not provided)
- csr_country - country field for csr generation (required if 'csr' field is not provided)
- csr_domain - common name field (your primary domain) for csr generation(required if 'csr' field is not provided)
- csr_organization - organization field for csr generation (required if 'csr' field is not provided)
- csr_department - department field for csr generation n(required if 'csr' field is not provided)
- csr_email - email field for csr generation(required if 'csr' field is not provided)
Response:
- order_id - unique order id
- csr_code - returned only if csr is generated automatically by CyberSSL api
- private_key - returned only if csr is generated automatically by CyberSSL api
- dv_options - provided only if http/https/dns dv_method
Example of response:Array ( [http] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => http://test.com/F50E098C713586FE9A.txt ) ) [https] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => https://test.com/F50E098C713586FE9A.txt ) ) [dns] => Array ( [test.com] => Array ( [record] => F50E098C713586FE9A363B33BACDD249.test.com. CNAME b056c5e3252182a844b80e1eb5de04736c09c9d9.comodoca.com. ) ) }
- success=true
5. Validate CSR
https://api.cyberssl.com/v1/validate_csr Request method: POST
Request parameters:
- token - Your unique token (required)
- csr - Your CSR code (required)
- product_id - Your unique product_id to verify if the csr match the product, not required
- addon_domains - SAN domains string; Can be used to validate a SAN string for a specific product
Response:
- csr
Example of response:[csr] => Array ( [common_name] => test.com [organization] => test organization [department] => it dep [city] => test [state] => test [country] => BS [email] => test@test.com [san] => [type] => RSA [keysize] => 2048 [total_domains] => 1 )
- success=true
6. Get Domain Validation Options
https://api.cyberssl.com/v1/get_dv_options Request method: GET
Request parameters:
- token - Your unique token (required)
- order_id - Your unique order_id (required)
- dv_method - 'all', 'http', 'https', 'dns' or 'email' (required)
Response:
- order_id - Your unique order_id
- dv_options
Response example:[dv_options] => Array ( [http] => Array ( [mysite.com] => Array ( [filename] => 38ED81977C297795C94A10272D791CD4.txt [content] => b354ed749af42a09f09edf4b21ff516a698 [link] => http://mysite.com/38ED81977C2.txt ) ) [https] => Array ( [mysite.com] => Array ( [filename] => 38ED81977C297795C94A10272D791CD4.txt [content] => b354ed749af42a09f09edf4b21ff516a698cf0 [link] => https://mysite.com/38ED81977C297.txt ) ) [dns] => Array ( [mysite.com] => Array ( [record] => 38ED81977C297795C94A10272D791CD4.mysite.com. CNAME b354ed749af42a09f09ed.comodoca.com. ) ) [email] => Array ( [mysite.com] => Array ( [0] => test@mysite.com [1] => admin@mysite.com [2] => administrator@mysite.com [3] => hostmaster@mysite.com [4] => postmaster@mysite.com [5] => webmaster@mysite.com ) ) )
- success=true
7. Change Validation Method
https://api.cyberssl.com/v1/change_dv_method Request method: POST
Request parameters:
- token - Your unique token (required)
- order_id - Your unique order_id (required)
- domain - domain name; the primary domain will be used if not specified
- dv_method - 'http', 'https', 'dns' or 'email' . (required)
- email (required only if 'email' dv_method)
Response:
- dv_options - provided only if http/https/dns dv_method
Example of response:Array ( [http] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => http://test.com/F50E098C713586FE9A.txt ) ) [https] => Array ( [test.com] => Array ( [filename] => F50E098C713586FE9A363B33BACDD249.txt [content] => b056c5e3252182a844b80e1eb5de04736c09c9d9 [link] => https://test.com/F50E098C713586FE9A.txt ) ) [dns] => Array ( [test.com] => Array ( [record] => F50E098C713586FE9A363B33BACDD249.test.com. CNAME b056c5e3252182a844b80e1eb5de04736c09c9d9.comodoca.com. ) ) }
- success=true
8. Order Status
https://api.cyberssl.com/v1/order_status Request method: GET
Request parameters:
- token - Your unique token (required)
- order_id - Your unique order_id (required)
Response:
- valid_from - Format(YYYY-MM-DD)
- valid_till - Format(YYYY-MM-DD)
- status - 'Processing', 'Activated', 'Rejected', 'Cancelled', 'Duplicate Certificate', 'Awaiting Activation', 'Awaiting Validation' or 'Expired'
- amount - your ssl price
- primary_domain
- period - in years
- csr
- certificate
- certificate_chain
- domains_included
- software_name
- dv_method
- partner_order_id
- Contacts - array
Example:[contacts] => Array ( [admin_firstname] => John [admin_phone] => 0042321313 [admin_lastname] => Smith [admin_title] => IT manager [admin_email] => admin@john.com [tech_firstname] => John [tech_phone] => 0042321313 [tech_lastname] => Smith [tech_title] => IT manager [tech_email] => admin@john.com [org_name] => [org_division] => [org_addressline] => [org_city] => [org_country] => [org_phone] => [org_postalcode] => [org_region] => )
- order_id
- order_link - link to download/manage certificate
- success=true
9. Get SSL Product Price
https://api.cyberssl.com/v1/get_ssl_product_priceRequest method: GET
Request parameters:
- token - Your unique token (required)
- period - period in list (required)
- product_id - ssl product_id (required)
- nr_domains - domains number secured, default - 1(for SAN Certificate)
Response:
- amount - your ssl price
- success=true
10. Get Balance
https://api.cyberssl.com/v1/get_balance Request method: GET
Request parameters:
- token - Your unique token (required)
Response:
- balance - Your balance amount
- success=true
11. My Orders
https://api.cyberssl.com/v1/my_orders Request method: GET
Request parameters:
- token - Your unique token (required)
Response:
- ssl_orders - List of your ssl orders
- success=true
12. SSL Certificates List
https://api.cyberssl.com/v1/ssl_certificates Request method: GET
Response:
- ssl_products - List of ssl products
- success=true
13. Order Extra Domains
https://api.cyberssl.com/v1/order_extra_domains Request method: GET
Request parameters:
- token - Your unique token (required)
- order_id - Your unique order_id (required)
- extra_domains_nr - Number of extra domains (required)
Response:
- amount - Order Amount
- order_id
- success=true
14. Get SSL Product Details
https://api.cyberssl.com/v1/get_ssl_product_details Request method: GET
Request parameters:
- token - Your unique token (required)
- product_id - SSL product id (required)
Response:
- Product - Product details array
Example:[product] => Array ( [product_id] => 17 [name] => Sectigo PositiveSSL [type] => SSL [brand] => sectigo [price_for_3year] => 20 [price_for_2year] => 10 [price_for_1year] => 5 [validation_type] => dv [is_trial] => [is_multi_domain] => [is_wildcard] => [warranty] => 10000 [www_included] => 1 [multidomains_maximum] => 1 [multidomains_included] => 0 [unlimited_server] => 1 [organization_required] => )
- success=true
15. Revalidate Domain Ownership Method (SSL).
https://api.cyberssl.com/v1/revalidate Request method: GET
Request parameters:
- token - Your unique token (required)
- order_id - SSL Order id (required)
- domain_name - domain name to revalidate (required)
Response:
- success=true