Заказать сертификат клиента

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

На этой странице содержится описание продуктов с названием группы client_certificate (см. Словарь – Идентификаторы продуктов).

Используйте эту конечную точку для отправки заявки на клиентский сертификат, используя client_premium_sha2, client_email_security_plus, client_authentication_plusили client_digital_signature_plus_sha2 в качестве 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
}

Параметры запроса

Имя Обязательный/Необязательный Тип Описание
certificate обязательный object Подробные сведения о сертификате.
.. common_name обязательный string Защищаемое имя.
.. emails обязательный array Адреса электронной почты, указываемые в сертификате.
.. signature_hash обязательный string Алгоритм хэширования, используемый для подписывания сертификата.
Допустимые значения: sha256
.. organization_units необязательный array Отдел в вашей организации, связанный с сертификатом.
.. csr необязательный string Запрос на подпись сертификата (CSR).
auto_renew необязательный int Количество автоматических продлений сертификата.
renewal_of_order_id необязательный int Если заказ является заказом на продление, введите идентификатор предыдущего заказа.
skip_approval необязательный bool Укажите, следует ли пропустить этап утверждения заказа, немедленно предоставить его для подтверждения действительности и выпустить после завершения процедуры проверки.
По умолчанию: false
organization обязательный object Организация для привязки к заказу.
.. id обязательный int Идентификатор организации.
container необязательный object При необходимости укажите контейнер, в которым следует разместить заказ.
.. id необязательный int Идентификатор контейнера.
validity_years обязательный int Срок действия сертификата в годах.
Может быть заменен на custom_expiration_date.
Допустимые значения: 1, 2
custom_expiration_date необязательный string Настраиваемая дата окончания срока действия сертификата. Срок не должен превышать 825 дней.
Отменяет validity_years
Формат: yyyy-MM-dd
custom_fields необязательный* object Настраиваемые поля для определенной учетной записи.
*Являются ли данные поля обязательными, зависит от настроек пользовательских полей.
.. metadata_id обязательный int Идентификатор настраиваемого поля.
.. value обязательный string Значение для настраиваемого поля.
Тип подтверждения действительности данных зависит от настроек пользовательских полей.
payment_method необязательный string Укажите используемый способ оплаты.
Допустимые значения: balance, card, profile
По умолчанию: balance

Параметры ответного сообщения

Имя Тип Описание
id int Идентификатор заказа.
organization object Контейнер для новых сведений об организации.
Возвращается только в том случае, если вместе с заказом была создана новая организация.
.. id int Идентификатор новой организации.
requests array Содержит информацию о запросе.
.. id int Идентификатор запроса.
.. status string Статус запроса.
Допустимые значения: pending, submitted, approved, rejected
certificate_id int Идентификатор сертификата.
Указывается в ответе, если статус запроса approved.