Заказать сертификат Secure Site EV

POST
https://www.digicert.com/services/v2/order/certificate/ssl_ev_securesite_flex

Используйте эту конечную точку для запроса сертификата Secure Site EV SSL.

Этот более гибкий сертификат Secure Site EV SSL упрощает процесс получения сертификата Secure Site EV, соответствующего вашим требованиям. Данный сертификат заменяет продукты Secure Site EV SSL и Secure Site EV Multi-Domain.

cURL
curl -X POST \
  https://www.digicert.com/services/v2/order/certificate/ssl_ev_securesite_flex \
  -H 'Content-Type: application/json' \
  -H 'X-DC-DEVKEY: {{api_key}}' \
  -d '{
    "certificate": {
        "common_name": "example.com",
        "dns_names": [
            "sub.example.com",
            "app.example.com"
        ],
        "csr": "<csr>",
        "signature_hash": "sha256",
        "organization_units": [
            "Shared Services"
        ],
        "server_platform": {
            "id": 2
        }
    },
    "comments": "Certificate for app server.",
    "container": {
        "id": 334455
    },
    "auto_renew": 1,
    "custom_renewal_message": "Keep this renewed.",
    "organization": {
        "id": 123456,
        "contacts": [
            {
                "contact_type": "ev_approver",
                "user_id": 565622
            },
            {
                "contact_type": "organization_contact",
                "user_id": 565611
            },
            {
                "contact_type": "technical_contact",
                "first_name": "Jill",
                "last_name": "Valentine",
                "job_title": "STAR Member",
                "telephone": "8017019600",
                "email": "jill.valentine@digicert.com"
            }
        ]
    },
    "validity_years": 2,
    "payment_method": "balance"
}'
Python
import requests

url = "https://www.digicert.com/services/v2/order/certificate/ssl_ev_securesite_flex"

payload = "{\n    \"certificate\": {\n        \"common_name\": \"example.com\",\n    \"dns_names\": [\n      \"example2.com\",\n      \"example3.com\"\n    ],\n        \"csr\": \"<csr>\",\n        \"signature_hash\": \"sha256\",\n        \"organization_units\": [\n            \"Shared Services\"\n        ],\n        \"server_platform\": {\n            \"id\": 45\n        }\n    },\n    \"comments\": \"Certificate for app server.\",\n    \"container\": {\n        \"id\": 334455\n    },\n    \"auto_renew\": 1,\n    \"custom_renewal_message\": \"Keep this renewed.\",\n     \"organization\": {\n        \"id\": 123456,\n        \"contacts\": [\n            {\n                \"contact_type\": \"organization_contact\",\n                \"user_id\": 565611\n            },\n            {\n                \"contact_type\": \"technical_contact\",\n                \"user_id\": 565615\n            },\n            {\n                \"contact_type\": \"ev_approver\",\n                \"first_name\": \"Jill\",\n                \"last_name\": \"Valentine\",\n                \"job_title\": \"STAR Member\",\n                \"telephone\": \"8017019600\",\n                \"email\": \"jill.valentine@digicert.com\"\n            }\n        ]\n    },\n    \"validity_years\": 2,\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/ssl_ev_securesite_flex"

	payload := strings.NewReader("{\n    \"certificate\": {\n        \"common_name\": \"example.com\",\n    \"dns_names\": [\n      \"example2.com\",\n      \"example3.com\"\n    ],\n        \"csr\": \"<csr>\",\n        \"signature_hash\": \"sha256\",\n        \"organization_units\": [\n            \"Shared Services\"\n        ],\n        \"server_platform\": {\n            \"id\": 45\n        }\n    },\n    \"comments\": \"Certificate for app server.\",\n    \"container\": {\n        \"id\": 334455\n    },\n    \"auto_renew\": 1,\n    \"custom_renewal_message\": \"Keep this renewed.\",\n     \"organization\": {\n        \"id\": 123456,\n        \"contacts\": [\n            {\n                \"contact_type\": \"organization_contact\",\n                \"user_id\": 565611\n            },\n            {\n                \"contact_type\": \"technical_contact\",\n                \"user_id\": 565615\n            },\n            {\n                \"contact_type\": \"ev_approver\",\n                \"first_name\": \"Jill\",\n                \"last_name\": \"Valentine\",\n                \"job_title\": \"STAR Member\",\n                \"telephone\": \"8017019600\",\n                \"email\": \"jill.valentine@digicert.com\"\n            }\n        ]\n    },\n    \"validity_years\": 2,\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/ssl_ev_securesite_flex',
  headers: 
   { 'Content-Type': 'application/json',
     'X-DC-DEVKEY': '{{api_key}}' },
  body: 
   { certificate: 
      { common_name: 'example.com',
        dns_names: [ 'example2.com', 'example3.com' ],
        csr: '<csr>',
        signature_hash: 'sha256',
        organization_units: [ 'Shared Services' ],
        server_platform: { id: 45 } },
     comments: 'Certificate for app server.',
     container: { id: 334455 },
     auto_renew: 1,
     custom_renewal_message: 'Keep this renewed.',
     organization: 
      { id: 123456,
        contacts: 
         [ { contact_type: 'organization_contact', user_id: 565611 },
           { contact_type: 'technical_contact', user_id: 565615 },
           { contact_type: 'ev_approver',
             first_name: 'Jill',
             last_name: 'Valentine',
             job_title: 'STAR Member',
             telephone: '8017019600',
             email: 'jill.valentine@digicert.com' } ] },
     validity_years: 2,
     payment_method: 'balance' },
  json: true };

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

  console.log(body);
});
201 (one-step)
{
  "id": 112233,
  "requests": [
    {
      "id": 113,
      "status": "pending"
    }
  ]
}
201 (two-step)
{
  "id": 112233,
  "requests": [
    {
      "id": 113,
      "status": "submitted"
    }
  ]
}
201 (auto)
{
  "id": 112233,
  "requests": [
    {
      "id": 113,
      "status": "approved"
    }
  ],
  "certificate_id": 113
}
201 (skip)
{
  "id": 112233,
  "certificate_id": 113
}
201 (immediate)
{
  "id": 112233,
  "certificate_id": 113,
  "certificate_chain": [
    {
      "subject_common_name": "example.com",
      "pem": "<pem_certificate>"
    },
    {
      "subject_common_name": "DigiCert SHA2 Secure Server CA",
      "pem": "<pem_certificate>"
    },
    {
      "subject_common_name": "DigiCert Global Root CA",
      "pem": "<pem_certificate>"
    }
  ]
}

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

Для ознакомления с информацией о допустимых значениях для полей сертификата см. Публичные доверенные сертификаты – Элементы данных, нарушающие отраслевые стандарты.

Имя Обязательный/Необязательный Тип Описание
certificate обязательный object Подробные сведения о сертификате.
.. common_name обязательный string Защищаемый домен.
.. dns_names необязательный array Дополнительные защищаемые домены.
Может привести к дополнительным расходам. (См. раздел Установившаяся практика — Получение обеих версий домена бесплатно.)
.. csr обязательный string Запрос на подпись сертификата (CSR).
.. signature_hash обязательный string Алгоритм хэширования, используемый для подписывания сертификата.
Поддержка только сертификатов для подписывания кода SHA-256.
.. organization_units необязательный array Отдел в вашей организации, для которого предназначен сертификат.
.. server_platform необязательный object Тип серверной платформы.
По умолчанию: -1 (прочее)
.. .. id обязательный int Идентификатор серверной платформы.
См. Словарь — Серверные платформы
.. profile_option необязательный string При использовании настраиваемых профилей сертификатов укажите имя профиля.
renewed_thumbprint необязательный string Если заказ является заказом на продление, введите отпечаток SHA-1 первичного сертификата по предыдущему заказу.
validity_years обязательный int Срок действия сертификата в годах.
Может быть заменен на validity_days или custom_expiration_date.
Допустимые значения: 1, 2
custom_expiration_date необязательный string Настраиваемая дата окончания срока действия сертификата. Срок не должен превышать 825 дней.
Отменяет validity_days и validity_years
Формат: yyyy-MM-dd
comments необязательный string Комментарии о заказе для утверждающего лица.
auto_renew необязательный int Укажите, следует ли автоматически продлевать срок действия сертификата.
По умолчанию: 0
Допустимые значения: 0 (отключена), 1 (включена)
custom_renewal_message необязательный string Настраиваемое сообщение, включаемое в уведомления о продлении.
disable_renewal_notifications необязательный bool Укажите, следует ли отключить электронную почту с уведомлениями о продлении.
По умолчанию: false
additional_emails необязательный array Дополнительные адреса электронной почты, предназначенные для получения уведомлений (например, о выпуске сертификата, дублировании сертификата, продлениях срока действия сертификата и т.д.).
locale необязательный string Языковые настройки, используемые в электронной почте DCV.
См. Словарь — Коды региональной настройки
renewal_of_order_id необязательный int Если заказ является заказом на продление, введите идентификатор предыдущего заказа.
payment_method необязательный string Укажите используемый способ оплаты.
Допустимые значения: balance, card, profile
По умолчанию: balance
dcv_method необязательный string Используемый метод DCV для подтверждения полномочий управления доменом.
См. Словарь — Методы DCV
skip_approval необязательный bool Укажите, следует ли пропустить этап утверждения заказа, немедленно предоставить его для подтверждения действительности и выпустить после завершения процедуры проверки.
По умолчанию: false
disable_ct необязательный bool Укажите, следует ли отключить ведение журналов CT для сертификата.
Ведение журналов CT для конкретного заказа должно быть включено, иначе настройка будет проигнорирована. См. Разрешить пользователям не регистрировать сертификаты в журналах CT.
По умолчанию: false
organization обязательный object Контейнер для подробных сведений об организации.
.. id обязательный int Идентификатор организации для привязки к заказу.
Кроме того, вы можете передать объект организации, чтобы добавить новую организацию при отправке заказа. См. Создать организацию для ознакомления с требованиями, предъявляемыми к структуре объекта.
.. contacts обязательный array Перечень контактных лиц в организации, связанных с заказом.
Примечание. Вы должны включить контактное лицо ev_approver. Информация о потенциальных утверждающих лицах EV содержится в разделе Список утверждающих лиц.
.. .. contact_type обязательный string Тип контакта, добавляемого к заказу.
Допустимые значения: organization_contact, technical_contact, ev_approver
.. .. user_id обязательный* int Идентификатор существующего пользователя или контактного лица для учетной записи.
* Можно опустить, если добавляется новое контактное лицо.
.. .. first_name необязательный string Имя нового контактного лица.
Примечание. Требуется, если не указывается user_id. Если user_id указывается, информация об указанном пользователе будет обновляться с использованием нового значения.
.. .. last_name необязательный string Фамилия нового контактного лица.
Примечание. Требуется, если не указывается user_id. Если user_id указывается, информация об указанном пользователе будет обновляться с использованием нового значения.
.. .. job_title необязательный string Название должности нового контактного лица.
Примечание. Требуется, если не указывается user_id. Если user_id указывается, информация об указанном пользователе будет обновляться с использованием нового значения.
.. .. telephone необязательный string Номер телефона нового контактного лица.
Примечание. Требуется, если не указывается user_id. Если user_id указывается, информация об указанном пользователе будет обновляться с использованием нового значения.
.. .. email необязательный string Адрес электронной почты нового контактного лица.
Примечание. Требуется, если не указывается user_id. Если user_id указывается, информация об указанном пользователе будет обновляться с использованием нового значения.
container необязательный object При необходимости укажите контейнер, в которым следует разместить заказ.
.. id обязательный int Идентификатор контейнера.
custom_fields необязательный* array Настраиваемые поля для определенной учетной записи.
* Являются ли данные поля обязательными, зависит от настроек пользовательских полей.
.. metadata_id обязательный int Идентификатор настраиваемого поля.
.. value обязательный string Значение для настраиваемого поля.
Тип подтверждения действительности данных зависит от настроек пользовательских полей.

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

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