クライアント証明書を申請(オーダー)する

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_sha2client_certificate_id として使用して、クライアント証明書申請おd-あーを提出します。

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 オーダーが更新の場合、前のオーダーの ID を入力します。
skip_approval 任意 bool オーダーが承認ステップをスキップし、すぐに認証に提出し、完了後に発行する場合に指定します。
デフォルト:false
organization 必須 object オーダーと関連づける組織
.. id 必須 int 組織 ID.
container 任意 object 必要な場合、オーダーを入れるコンテナを指定します。
.. id 任意 int コンテナ ID
validity_years 必須 int 証明書が有効な年数。
custom_expiration_dateと入れ替えできます。
許可値:1,2
custom_expiration_date 任意 string 証明書のカスタム有効期限日日付は、未来で 825日以下でなければなりません。
validity_yearsを無視する
形式:yyyy-MM-dd
custom_fields 任意* object アカウント別カスタムフィールド
*これらのフィールドが必須かどうかは、カスタムフィールド設定によって異なります。
.. metadata_id 必須 int カスタムフィールド ID
.. value 必須 string カスタムフィールドの値
データ認証タイプは、カスタムフィールド設定によって異なります。
payment_method 任意 string 使用する支払方法を指定します。
許可値:balance,card,profile
デフォルト:balance

応答パラメータ

名前 種別 説明
id int オーダー ID
organization object 新しい組織詳細向けコンテナ
新しい組織がオーダーで作成された場合のみ、返されます。
.. id int 新しい組織の組織 ID。
requests array 申請についての情報が含まれます。
.. id int 申請 ID
.. status string 申請ステータス
可能な値:pending,submitted,approved,rejected
certificate_id int 証明書 ID
申請ステータスが approvedの場合に返されます。