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

  1. Authorization
  2. Product list
  3. Add SSL order
  4. Reissue an existent SSL order
  5. Validate CSR
  6. Get domain validation options
  7. Change validation method
  8. Order status
  9. Get SSL product price
  10. Get balance
  11. My orders
  12. SSL certificates list
  13. Order extra domains
  14. Get SSL product details
  15. 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
  • success=true

9. Get SSL Product Price

https://api.cyberssl.com/v1/get_ssl_product_price

Request 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