Order client certificate

POST
https://www.digicert.com/services/v2/order/certificate/{{client_certificate_id}}

This page describes products with the client_certificate group name (see Glossary – Product identifiers).

Use this endpoint to submit a client certificate request order using client_premium_sha2, client_email_security_plus, client_authentication_plus or client_digital_signature_plus_sha2 as the client_certificate_id.

cURL
curl -X POST \
  'https://www.digicert.com/services/v2/order/certificate/{{client_certificate_id}}' \
  -H 'Content-Type: application/json' \
  -H 'X-DC-DEVKEY: {{api_key}}' \
  -d '{
  "certificate": {
    "common_name": "Lock Cole",
    "emails": [
      "locke.cole@example.com"
    ],
    "signature_hash": "sha256",
    "organization_units": [
      "Accounting"
    ],
    "csr": "<csr>"
  },
  "skip_approval": true,
  "organization": {
    "id": 112233
  },
  "container": {
    "id": 445566
  },
  "validity_years": 1,
  "payment_method": "balance"
}'
Python
import requests

url = "https://www.digicert.com/services/v2/order/certificate/{{client_certificate_id}}"

payload = "{\n  \"certificate\": {\n    \"common_name\": \"Lock Cole\",\n    \"emails\": [\n      \"locke.cole@example.com\"\n    ],\n    \"signature_hash\": \"sha256\",\n    \"organization_units\": [\n      \"Accounting\"\n    ],\n    \"csr\": \"<csr>\"\n  },\n  \"skip_approval\": true,\n  \"organization\": {\n    \"id\": 112233\n  },\n  \"container\": {\n    \"id\": 445566\n  },\n  \"validity_years\": 1,\n  \"payment_method\": \"balance\"\n}"
headers = {
    'X-DC-DEVKEY': "{{api_key}}",
    'Content-Type': "application/json"
    }

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
Go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "https://www.digicert.com/services/v2/order/certificate/{{client_certificate_id}}"

	payload := strings.NewReader("{\n  \"certificate\": {\n    \"common_name\": \"Lock Cole\",\n    \"emails\": [\n      \"locke.cole@example.com\"\n    ],\n    \"signature_hash\": \"sha256\",\n    \"organization_units\": [\n      \"Accounting\"\n    ],\n    \"csr\": \"<csr>\"\n  },\n  \"skip_approval\": true,\n  \"organization\": {\n    \"id\": 112233\n  },\n  \"container\": {\n    \"id\": 445566\n  },\n  \"validity_years\": 1,\n  \"payment_method\": \"balance\"\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))

}
NodeJS
var request = require("request");

var options = { method: 'POST',
  url: 'https://www.digicert.com/services/v2/order/certificate/{{client_certificate_id}}',
  headers: 
   { 'Content-Type': 'application/json',
     'X-DC-DEVKEY': '{{api_key}}' },
  body: 
   { certificate: 
      { common_name: 'Lock Cole',
        emails: [ 'locke.cole@example.com' ],
        signature_hash: 'sha256',
        organization_units: [ 'Accounting' ],
        csr: '<csr>' },
     skip_approval: true,
     organization: { id: 112233 },
     container: { id: 445566 },
     validity_years: 1,
     payment_method: 'balance' },
  json: true };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
201 Created (one-step approval)
{
    "id": 112233,
    "requests": [
        {
            "id": 113,
            "status": "pending"
        }
    ]
}
201 Created (two-step approval)
{
    "id": 112233,
    "requests": [
        {
            "id": 113,
            "status": "submitted"
        }
    ]
}
201 Created (auto approval)
{
    "id": 112233,
    "requests": [
        {
            "id": 113,
            "status": "approved"
        }
    ],
    "certificate_id": 113
}

Request parameters

Name Req/Opt Type Description
certificate required object Certificate details.
.. common_name required string Name to be secured.
.. emails required array Emails to be placed on the certificate.
.. signature_hash required string Hash algorithm used to signing the certificate.
Allowed values: sha256
.. organization_units optional array Department in your organization associated with the certificate.
.. csr optional string Certificate signing request (CSR).
auto_renew optional int Number of times the certificate should renew automatically.
renewal_of_order_id optional int If order is a renewal, enter the previous order's ID.
skip_approval optional bool Specify if the order should skip the approval step and be immediately submitted for validation and issued when complete.
Default: false
organization required object Organization to associate with the order.
.. id required int Organization ID.
container optional object If needed, specify the container the order should be placed under.
.. id optional int Container ID.
validity_years required int Number of years the certificate is valid.
Can be replaced by custom_expiration_date.
Allowed values: 1, 2
custom_expiration_date optional string Custom expiration date for the certificate. Date must be less than 825 days in the future.
Overrides validity_years
Format: yyyy-MM-dd
custom_fields optional* object Account-specific custom fields.
*Whether or not these fields are required depends on your custom field settings.
.. metadata_id required int Custom field ID.
.. value required string Value for the custom field.
Data validation type depends on your custom field settings.
payment_method optional string Specify the payment method to use.
Allowed values: balance, card, profile
Default: balance

Response parameters

Name Type Description
id int Order ID.
requests array Contains information about the request.
.. id int Request ID.
.. status string Request status.
Possible values: pending, submitted, approved, rejected
certificate_id int Certificate ID.
Returned if request status is approved.