Commander un certificat client

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

Cette page décrit les produits dont le nom de groupe est client_certificate (consulter le Glossaire – Identificateurs de produits).

Appelez ce point de terminaison pour envoyer une commande de certificat client en utilisant client_premium_sha2,, client_email_security_plus, client_authentication_plus ou client_digital_signature_plus_sha2 pour 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
}

Paramètres de demande

Nom Obligatoire/facultatif Type Description
certificate Obligatoire object Détails du certificat
.. common_name Obligatoire string Nom à protéger
.. emails Obligatoire array Adresses électroniques à placer sur le certificat
.. signature_hash Obligatoire string Algorithme de hachage utilisé pour signer le certificat.
Valeurs autorisées : sha256
.. organization_units Facultatif array Service de votre organisation associé au certificat
.. csr Facultatif string Demande de signature de certificat (Certificate Signing Request, CSR)
auto_renew Facultatif int Nombre de fois selon lequel le certificat doit être automatiquement renouvelé
renewal_of_order_id Facultatif int Si la commande est un renouvellement, saisir l’ID de la commande précédente.
skip_approval Facultatif bool Spécifier si la commande peut immédiatement être envoyée pour validation et émise une fois finalisée sans passer par l’étape d’approbation.
Valeur par défaut : false
organization Obligatoire object Organisation à associer à la commande
.. id Obligatoire int ID de l’organisation
container Facultatif object Si besoin, spécifier le conteneur sous lequel la commande doit être passée.
.. id Facultatif int ID du conteneur
validity_years Obligatoire int Nombre d’années pendant lesquelles le certificat est valide
Peut être remplacé par custom_expiration_date.
Valeurs autorisées : 1, 2
custom_expiration_date Facultatif string Date d’expiration personnalisée du certificat La date ne doit pas être ultérieure de 825 jours.
Remplace validity_years
Format : yyyy-MM-dd
custom_fields Facultatif* object Champs personnalisés en fonction du compte
*Le caractère obligatoire ou facultatif de ces champs dépend des paramètres de champ personnalisé définis.
.. metadata_id Obligatoire int ID de champ personnalisé
.. value Obligatoire string Valeur du champ personnalisé
Le type de validation des données dépend des paramètres de champ personnalisé que vous avez définis.
payment_method Facultatif string Indique le mode de paiement à utiliser
Valeurs autorisées : balance, card, profile
Valeur par défaut : balance

Paramètres de réponse

Nom Type Description
id int ID de la commande
organization object Conteneur destiné aux nouveaux détails de l’organisation
Retourné seulement si une nouvelle organisation a été créée avec la commande.
.. id int ID de la nouvelle organisation
requests array Contient les informations relatives à la demande.
.. id int ID de la demande
.. status string Statut de la demande
Valeurs possibles : pending, submitted, approved, rejected
certificate_id int ID du certificat
Renvoyé si le statut de la demande est approved.