Pedir OV básico

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

Use este terminal para solicitar un certificado OV SSL básico.

Este certificado OV SSL básico más flexible hace que sea más sencillo obtener certificados OV básicos que satisfagan sus necesidades. Este certificado reemplaza los productos Standard SSL básico, SSL Multi Domain y Wildcard.

cURL
curl -X POST \
  https://www.digicert.com/services/v2/order/certificate/ssl_basic \
  -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": "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_basic"

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_basic"

	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_basic',
  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>"
    }
  ]
}

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 de firma de código 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
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.).
locale opcional string Idioma que debe usar el correo electrónico DCV.
Vea Glosario: códigos de configuración regional
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: 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.