Use this endpoint to request a duplicate certificate for an order.
End of 2-year public SSL/TLS certificates
The Services API no longer issues public SSL/TLS certificates with a validity period greater than 397 days.
When you duplicate a certificate that has a validity greater than 397 days, the validity period of the duplicated certificate is shortened to 397 days or to the time that remains on the order, whichever is sooner. To use the remaining validity included with the original certificate order, request new duplicate certificates during the order's final 397-day period.
To learn more about this change, see End of 2-year DV, OV, EV Public SSL/TLS Certificates.
curl -X POST \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/duplicate' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"certificate": {
"common_name": "example.com",
"dns_names": [
"sub.example.com"
],
"csr": "<csr>",
"server_platform": {
"id": 45
},
"signature_hash": "sha256"
}
}'
import requests
url = "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/duplicate"
payload = "{\n \"certificate\": {\n \"common_name\": \"example.com\",\n \"dns_names\": [\n \"sub.example.com\"\n ],\n \"csr\": \"<csr>\",\n \"server_platform\": {\n \"id\": 45\n },\n \"signature_hash\": \"sha256\"\n }\n}"
headers = {
'X-DC-DEVKEY': "{{api_key}}",
'Content-Type': "application/json"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/duplicate"
payload := strings.NewReader("{\n \"certificate\": {\n \"common_name\": \"example.com\",\n \"dns_names\": [\n \"sub.example.com\"\n ],\n \"csr\": \"<csr>\",\n \"server_platform\": {\n \"id\": 45\n },\n \"signature_hash\": \"sha256\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-DC-DEVKEY", "{{api_key}}")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var request = require("request");
var options = { method: 'POST',
url: 'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/duplicate',
headers:
{ 'Content-Type': 'application/json',
'X-DC-DEVKEY': '{{api_key}}' },
body:
{ certificate:
{ common_name: 'example.com',
dns_names: [ 'sub.example.com' ],
csr: '<csr>',
server_platform: { id: 45 },
signature_hash: 'sha256' } },
json: true };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
{
"id": 112233,
"requests": [
{
"id": 332211
}
]
}
{
"id": 1234567,
"certificate_id": 987654321,
"certificate_chain": [
{
"subject_common_name": "www.digicert.com",
"pem": "<pem_encoded_certificate>"
},
{
"subject_common_name": "DigiCert SHA2 Extended Validation Server CA",
"pem": "<pem_encoded_certificate>"
},
{
"subject_common_name": "DigiCert High Assurance EV Root CA",
"pem": "<pem_encoded_certificate>"
}
]
}
Name | Req/Opt | Type | Description |
---|---|---|---|
certificate | required | object | Details about the certificate. |
.. common_name | required | string | Domain to be secured. |
.. dns_names | optional | array | Additional domains to be secured. |
.. csr | required | string |
Certificate signing request (CSR). See Glossary – CSR requirements |
.. server_platform | optional | object |
Server platform type. Required for code signing certificate orders. Default: -1 (other)
|
.. .. id | required | int |
Server platform ID. See Glossary – Server platforms |
.. signature_hash | required | string | Hash algorithm used to signing the certificate. |
.. ca_cert_id | optional | string |
ID of the intermediate certificate authority (ICA) certificate to select as the issuing certificate. To get the ca_cert_id value for an ICA, use the Product list endpoint.Account administrators can customize the default and allowed ICAs for each product at the container or user role level. If you do not provide a value for this parameter, we issue the certificate using the default ICA. If you provide the ca_cert_id value for an ICA that is not allowed, the request returns an error*. To see the custom ICA settings for each product, use the Product limits endpoint.*This parameter is ignored if the option for ICA selection is not enabled for your account. For more information, see ICA certificate chain option. |
Name | Type | Description |
---|---|---|
id | int | Order ID. |
requests | array | List of requests. |
.. id | int | Request ID. |
certificate_id | int | ID of the issued duplicate certificate. |
certificate_chain | array | Certificate chain list. |
.. subject_common_name | string | Common name on the certificate. |
.. pem | string | PEM encoded certificate. |