Pedir Private SSL

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

Esta página describe los productos con el nombre de grupo private_ssl_certificate (vea Glosario: identificadores de productos).

Use este terminal para enviar un pedido de solicitud de certificado privado usando private_ssl_plus,, private_ssl_wildcard, o private_ssl_multi_domain como el private_ssl_certificate_id.

cURL
curl -X POST \
  'https://www.digicert.com/services/v2/order/certificate/{{private_ssl_certificate_id}}' \
  -H 'Content-Type: application/json' \
  -H 'X-DC-DEVKEY: {{api_key}}' \
  -d '{
    "certificate": {
        "common_name": "192.168.1.195",
        "dns_names": [
        	"192.168.1.196",
        	"192.168.1.197"
        ],
        "csr": "<csr>",
        "server_platform": {
            "id": 45
        },
        "signature_hash": "sha256",
        "ca_cert_id": "10A101A05684",
        "organization_units": [
            "Accounting department"
        ]
    },
    "validity_years": 1,
    "comments": "Message for the approver",
    "disable_renewal_notifications": true,
    "locale": "en",
    "payment_method": "balance",
    "skip_approval": true,
    "organization": {
        "id": 123456
    }
}'
Python
import requests

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

payload = "{\n    \"certificate\": {\n        \"common_name\": \"192.168.1.195\",\n        \"dns_names\": [\n        \t\"192.168.1.196\",\n        \t\"192.168.1.197\"\n        ],\n        \"csr\": \"<csr>\",\n        \"server_platform\": {\n            \"id\": 45\n        },\n        \"signature_hash\": \"sha256\",\n        \"ca_cert_id\": \"10A101A05684\",\n        \"organization_units\": [\n            \"Accounting department\"\n        ]\n    },\n    \"validity_years\": 1,\n    \"comments\": \"Message for the approver\",\n    \"disable_renewal_notifications\": true,\n    \"locale\": \"en\",\n    \"payment_method\": \"balance\",\n    \"skip_approval\": true,\n    \"organization\": {\n        \"id\": 123456\n    }\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/{{private_ssl_certificate_id}}"

	payload := strings.NewReader("{\n    \"certificate\": {\n        \"common_name\": \"192.168.1.195\",\n        \"dns_names\": [\n        \t\"192.168.1.196\",\n        \t\"192.168.1.197\"\n        ],\n        \"csr\": \"<csr>\",\n        \"server_platform\": {\n            \"id\": 45\n        },\n        \"signature_hash\": \"sha256\",\n        \"ca_cert_id\": \"10A101A05684\",\n        \"organization_units\": [\n            \"Accounting department\"\n        ]\n    },\n    \"validity_years\": 1,\n    \"comments\": \"Message for the approver\",\n    \"disable_renewal_notifications\": true,\n    \"locale\": \"en\",\n    \"payment_method\": \"balance\",\n    \"skip_approval\": true,\n    \"organization\": {\n        \"id\": 123456\n    }\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/{{private_ssl_certificate_id}}',
  headers: 
   { 'Content-Type': 'application/json',
     'X-DC-DEVKEY': '{{api_key}}' },
  body: 
   { certificate: 
      { common_name: '192.168.1.195',
        dns_names: [ '192.168.1.196', '192.168.1.197' ],
        csr: '<csr>',
        server_platform: { id: 45 },
        signature_hash: 'sha256',
        ca_cert_id: '10A101A05684',
        organization_units: [ 'Accounting department' ] },
     validity_years: 1,
     comments: 'Message for the approver',
     disable_renewal_notifications: true,
     locale: 'en',
     payment_method: 'balance',
     skip_approval: true,
     organization: { id: 123456 } },
  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>"
    }
  ]
}

Parámetros de la solicitud

Use el terminal Lista de productos y localice la matriz allowed_ca_certs a fin de detectar posibles valores ca_cert_id.

Nombre Solicitud/opción Tipo Descripción
certificate obligatorio object Detalles del certificado.
.. common_name obligatorio string Dominio que se protegerá.
.. dns_names opcional array Dominios adicionales que se protegerán.
Puede generar costos adicionales. (Vea Mejores prácticas: obtener ambas versiones de un dominio de forma gratuita.)
.. csr obligatorio string Solicitud de firma del certificado (CSR).
.. signature_hash obligatorio string Algoritmo de cifrado usado para firmar el certificado.
Los certificados de firma de código solo son compatibles con SHA-256.
.. ca_cert_id opcional* string Id. de certificado CA que debe firmar el certificado.
*Obligatorio si se configuran varios certificados CA.
.. organization_units opcional array Departamento de su organización para el que se solicita el certificado.
.. server_platform opcional object Tipo de plataforma del servidor.
Predeterminado: -1 (otro)
.. .. id obligatorio int Id. de plataforma del servidor.
Vea Glosario: plataformas de servidores
.. profile_option opcional string Si usa perfiles personalizados del certificado, especifique el nombre del perfil.
renewed_thumbprint opcional string Si el pedido es una renovación, ingrese la huella digital SHA-1 del certificado primario del pedido anterior.
validity_years obligatorio int La cantidad de años durante los que el certificado es válido.
Puede reemplazarse por validity_days o custom_expiration_date.
Valores permitidos: 1, 2
validity_days opcional int Cantidad de días en los que el certificado es válido después de su emisión.
Anula validity_years
custom_expiration_date opcional string Fecha de vencimiento personalizada para un certificado. La fecha debe ser menor que 825 días en el futuro.
Anula validity_days y validity_years
Formato: yyyy-MM-dd
comments opcional string Comentarios sobre el pedido para el aprobador.
auto_renew opcional int Especifique si el certificado debe renovarse automáticamente.
Predeterminado: 0
Valores permitidos: 0 (deshabilitada), 1 (habilitada)
custom_renewal_message opcional string Mensaje personalizado que debe incluirse en las notificaciones de renovación.
disable_renewal_notifications opcional bool Especifique si los correos electrónicos de notificación de renovación deben deshabilitarse.
Predeterminado: false
additional_emails opcional array Direcciones de correo electrónico adicionales en que se recibirán los correos electrónicos de notificaciones de certificados (por ejemplo, emisión del certificado, certificados duplicados, renovaciones de certificados, etc.).
renewal_of_order_id opcional int Si el pedido es una renovación, ingrese la Id. del pedido anterior.
payment_method opcional string Especifique el método de pago que se debe usar.
Valores permitidos: balance, card, profile
Predeterminado: balance
dcv_method opcional string Método DCV que se debe usar al verificar el control del dominio.
Vea Glosario: método DCV
skip_approval  opcional bool Especifique si el pedido debe omitir el paso de aprobación y si debe enviarse de inmediato para su validación y emisión cuando se haya completado.
Predeterminado: false
disable_ct opcional bool Especifique si el registro CT para el certificado debe deshabilitarse.
El registro CT específico del pedido debe habilitarse o esto se ignorará. Vea Permitir que los usuarios mantengan los certificados fuera de los registros CT.
Predeterminado: false
organization obligatorio object Contenedor para los detalles de la organización.
.. id obligatorio int Id. de la organización para vincularlo con el pedido.
O bien, puede aprobar un objeto de organización para agregar una nueva organización al enviar un pedido. Vea Crear organización para conocer los requisitos de estructura del objeto.
container opcional object Si fuera necesario, especifique el contenedor en el que se debe colocar el pedido.
.. id obligatorio int Id. de contenedor.
custom_fields opcional* array Campos personalizados específicos de una cuenta.
*El hecho de que estos campos sean o no obligatorios depende de su configuración de los campos personalizados.
.. metadata_id obligatorio int Id. de campo personalizado.
.. value obligatorio string Valor para el campo personalizado.
El tipo de validación de datos depende de su configuración de los campos personalizados.

Parámetros de la respuesta

Nombre Tipo Descripción
id int Id. del pedido.
organization object Contenedor para la información de una nueva organización.
Solo se devolverá si se creó una nueva organización con el pedido.
.. id int Id. de organización de la nueva organización.
requests array Contiene información sobre la solicitud.
.. id int Id. de la solicitud.
.. status string Estado de la solicitud.
Posibles valores: pending, submitted, approved, rejected
certificate_id int Id. de certificado.
Se devuelve si el estado de la solicitud es approved.