Pedido de OV/EV SSL

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

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

Use este terminal para enviar un pedido de solicitud de certificado OV/EV usando ssl_plus, ssl_multi_domain, ssl_wildcard, ssl_ev_plus, ssl_ev_multi_domain, o ssl_cloud_wildcard como el ssl_certificate_id.

cURL
curl -X POST \
  'https://www.digicert.com/services/v2/order/certificate/{{ssl_certificate_id}}' \
  -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>",
        "server_platform": {
            "id": 45
        },
        "signature_hash": "sha256",
        "organization_units": [
            "Accounting department"
        ]
    },
    "validity_years": 2,
    "comments": "Message for the approver",
    "disable_renewal_notifications": true,
    "locale": "en",
    "payment_method": "balance",
    "skip_approval": true,
    "organization": {
        "id": 123456
    },
    "custom_fields": [
        {
            "metadata_id": 11,
            "value": "Invoice #00001"
        }
    ]
}'
Python
import requests

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

payload = "{\n    \"certificate\": {\n        \"common_name\": \"example.com\",\n        \"dns_names\": [\n            \"sub.example.com\",\n            \"app.example.com\"\n        ],\n        \"csr\": \"<csr>\",\n        \"server_platform\": {\n            \"id\": 45\n        },\n        \"signature_hash\": \"sha256\",\n        \"organization_units\": [\n            \"Accounting department\"\n        ]\n    },\n    \"validity_years\": 2,\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    \"custom_fields\": [\n        {\n            \"metadata_id\": 11,\n            \"value\": \"Invoice #00001\"\n        }\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/{{ssl_certificate_id}}"

	payload := strings.NewReader("{\n    \"certificate\": {\n        \"common_name\": \"example.com\",\n        \"dns_names\": [\n            \"sub.example.com\",\n            \"app.example.com\"\n        ],\n        \"csr\": \"<csr>\",\n        \"server_platform\": {\n            \"id\": 45\n        },\n        \"signature_hash\": \"sha256\",\n        \"organization_units\": [\n            \"Accounting department\"\n        ]\n    },\n    \"validity_years\": 2,\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    \"custom_fields\": [\n        {\n            \"metadata_id\": 11,\n            \"value\": \"Invoice #00001\"\n        }\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/{{ssl_certificate_id}}',
  headers: 
   { 'Content-Type': 'application/json',
     'X-DC-DEVKEY': '{{api_key}}' },
  body: 
   { certificate: 
      { common_name: 'example.com',
        dns_names: [ 'sub.example.com', 'app.example.com' ],
        csr: '<csr>',
        server_platform: { id: 45 },
        signature_hash: 'sha256',
        organization_units: [ 'Accounting department' ] },
     validity_years: 2,
     comments: 'Message for the approver',
     disable_renewal_notifications: true,
     locale: 'en',
     payment_method: 'balance',
     skip_approval: true,
     organization: { id: 123456 },
     custom_fields: [ { metadata_id: 11, value: 'Invoice #00001' } ] },
  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

Para obtener información sobre los valores permitidos para los campos del certificado, vea Certificados con confianza pública: entradas de datos que violan los estándares de la industria.

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 SSL/TLS solo son compatibles con SHA-256.
.. 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.
.. contacts obligatorio array Lista de los contactos de la organización para el pedido.
Nota:
  • Para los pedidos OV, puede omitir esta matriz a fin de usar el contacto predeterminado para la organización indicada.
  • Para los pedidos EV, debe incluir un contacto ev_approver. Para tener posibles aprobadores EV, consulte Lista de aprobadores.
.. .. contact_type obligatorio string Tipo de contacto para agregar al pedido.
Valores permitidos: organization_contact, technical_contact, ev_approver
.. .. user_id obligatorio* int Identificación del usuario o contacto que ya existe para la cuenta.
* Puede omitirla si agregará un nuevo contacto.
.. .. first_name opcional string Nombre del nuevo contacto.
Nota: Obligatorio cuando omite user_id. Si no omite user_id, la información del usuario indicada se actualizará con el nuevo valor.
.. .. last_name opcional string Apellido del nuevo contacto.
Nota: Obligatorio cuando omite user_id. Si no omite user_id, la información del usuario indicada se actualizará con el nuevo valor.
.. .. job_title opcional string Cargo del nuevo contacto.
Nota: Obligatorio cuando omite user_id. Si no omite user_id, la información del usuario indicada se actualizará con el nuevo valor.
.. .. telephone opcional string Número de teléfono del nuevo contacto.
Nota: Obligatorio cuando omite user_id. Si no omite user_id, la información del usuario indicada se actualizará con el nuevo valor.
.. .. email opcional string Dirección de correo electrónico del nuevo contacto.
Nota: Obligatorio cuando omite user_id. Si no omite user_id, la información del usuario indicada se actualizará con el nuevo valor.
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.