Ordina EV base

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

Usa questo endpoint per richiedere un certificato SSL EV base.

Questo certificato SSL EV base più flessibile consente di ricevere più facilmente il certificato EV base per adattarsi alle tue esigenze. Questo certificato sostituisce i prodotti EV SSL e SSL EV Multi-Domain.

cURL
curl -X POST \
  https://www.digicert.com/services/v2/order/certificate/ssl_ev_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": "ev_approver",
                "user_id": 565622
            },
            {
                "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_ev_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_ev_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_ev_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>"
    }
  ]
}

Parametri richiesta

Per informazioni sui valori consentiti per i campi del certificato, consulta Certificati attendibili pubblicamente – Dati inseriti che violano gli standard di settore.

Nome Rich/Opz Tipo Descrizione
certificate obbligatorio object Dettagli certificato.
.. common_name obbligatorio string Dominio da proteggere.
.. dns_names facoltativo array Altri domini da proteggere.
Può prevedere costi aggiuntivi. (Consulta Best practice — Richiedi gratuitamente entrambe le versioni di un dominio.)
.. csr obbligatorio string Richiesta di firma certificato (CSR).
.. signature_hash obbligatorio string Algoritmo hash usato per firmare il certificato.
I certificati di firma codice supportano solo SHA-256.
.. organization_units facoltativo array Reparto dell’organizzazione a cui è rivolto il certificato.
.. server_platform facoltativo object Tipo di piattaforma server.
Predefinita: -1 (altro)
.. .. id obbligatorio int ID piattaforma server.
Consulta Glossario — Piatteforme server
.. profile_option facoltativo string Se utilizzi dei profili certificato personalizzati, specifica il nome profilo.
renewed_thumbprint facoltativo string Se un ordine prevede un rinnovo, inserisci l’identificazione personale SHA-1 del certificato primario dell’ordine precedente.
validity_years obbligatorio int Numero di anni in cui è valido il certificato.
Può essere sostituito da validity_days o custom_expiration_date.
Valori consentiti: 1, 2
custom_expiration_date facoltativo string Data di scadenza personalizzata per il certificato. La data deve essere inferiore a 825 giorni nel futuro.
Sostituisce validity_days e validity_years
Formato: yyyy-MM-dd
comments facoltativo string Commenti sull’ordine per l’approvatore.
auto_renew facoltativo int Specifica se il certificato deve rinnovarsi automaticamente.
Predefinita: 0
Valori consentiti: 0 (disabilitata), 1 (abilitata)
custom_renewal_message facoltativo string Messaggio personalizzato da includere nelle notifiche di rinnovo.
disable_renewal_notifications facoltativo bool Specifica se le e-mail di notifica rinnovo devono essere disabilitate.
Predefinita: false
additional_emails facoltativo array Altri indirizzi e-mail per ricevere e-mail di notifica certificato (ad es. emissione del certificato, certificato duplicato, rinnovi certificato, ecc.).
locale facoltativo string Lingua che l’e-mail DCV deve usare.
Consulta Glossario — Codici luogo
renewal_of_order_id facoltativo int Se un ordine prevede un rinnovo, inserisci l’ID dell’ordine precedente.
payment_method facoltativo string Specifica il metodo di pagamento da usare.
Valori consentiti: balance, card, profile
Predefinita: balance
dcv_method facoltativo string Metodo DCV da usare quando si verifica il controllo dominio.
Consulta Glossario — Metodi DCV
skip_approval facoltativo bool Specifica se l’ordine deve saltare la fase di approvazione ed essere inviato immediatamente per la convalida ed emesso se completato.
Predefinita: false
disable_ct facoltativo bool Specifica se la registrazione CT per il certificato deve essere disabilitata.
La registrazione CT specifica dell’ordine deve essere abilitata oppure verrà ignorata. Consulta Consenti sempre agli utenti di conservare i certificati fuori dai registri CT.
Predefinita: false
organization obbligatorio object Contenitore per i dettagli organizzazione.
.. id obbligatorio int ID dell’organizzazione da associare all’ordine.
In alternativa, puoi passare un oggetto organizzazione per aggiungere una nuova organizzazione quando invii un ordine. Consulta Crea organizzazione per i requisiti di struttura oggetto.
.. contacts obbligatorio array Elenco dei contatti dell'organizzazione per l’ordine.
Nota: Devi includere un contatto ev_approver. Per ricevere approvatori EV potenziali, consulta Elenca approvatori.
.. .. contact_type obbligatorio string Tipo di contatto da aggiungere all’ordine.
Valori consentiti: organization_contact, technical_contact, ev_approver
.. .. user_id obbligatorio* int ID di utente o contatto esistente per l’account.
* Può essere omesso se si aggiunge un nuovo contatto.
.. .. first_name facoltativo string Nome del nuovo contatto.
Nota: Richiesto quando si omette user_id. Se non si omette user_id, le informazioni dell’utente specificato saranno aggiornate con il nuovo valore.
.. .. last_name facoltativo string Cognome del nuovo contatto.
Nota: Richiesto quando si omette user_id. Se non si omette user_id, le informazioni dell’utente specificato saranno aggiornate con il nuovo valore.
.. .. job_title facoltativo string Qualifica del nuovo contatto.
Nota: Richiesto quando si omette user_id. Se non si omette user_id, le informazioni dell’utente specificato saranno aggiornate con il nuovo valore.
.. .. telephone facoltativo string Numero di telefono del nuovo contatto.
Nota: Richiesto quando si omette user_id. Se non si omette user_id, le informazioni dell’utente specificato saranno aggiornate con il nuovo valore.
.. .. email facoltativo string Indirizzo e-mail del nuovo contatto.
Nota: Richiesto quando si omette user_id. Se non si omette user_id, le informazioni dell’utente specificato saranno aggiornate con il nuovo valore.
container facoltativo object Se necessario, specificare il contenitore in cui deve essere posizionato l’ordine.
.. id obbligatorio int ID contenitore.
custom_fields facoltativo* array Campi personalizzati specifici dell’account.
* L’obbligatorietà di questi campi dipende dalle impostazioni dei campi personalizzati.
.. metadata_id obbligatorio int ID campo personalizzato.
.. value obbligatorio string Valore per il campo personalizzato.
Il tipo di convalida dati dipende dalle impostazioni dei campi personalizzati.

Parametri di risposta

Nome Tipo Descrizione
id int ID ordine.
organization object Contenitore per i nuovi dettagli organizzazione.
Riportato solo se è stata creata una nuova organizzazione con l’ordine.
.. id int ID organizzazione per la nuova organizzazione.
requests array Contiene le informazioni sulla richiesta.
.. id int ID richiesta
.. status string Stato richiesta.
Valori possibili: pending, submitted, approved, rejected
certificate_id int ID certificato.
Riportato se lo stato richiesta. è approved.