DigiCert ONE

DigiCert® ONE è una piattaforma PKI moderna che fornisce basi scalabili per un utilizzo PKI rapido e flessibile. Le API DigiCert ONE forniscono una potente interfaccia per la gestione dei certificati e dei dispositivi, a personalizzazione e l’automatizzazione dei flussi di lavoro e l’integrazione di DigiCert ONE con gli strumenti di gestione PKI esistenti.

DigiCert ONE include delle API per la gestione delle attività trovate in queste console:

Per iniziare

Prima di poter usare le API DigiCert ONE, serve:

  • Account DigiCert ONE
  • Chiave API DigiCert ONE
  • Capacità per fare richieste REST API

Crea una chiave API

Per creare una nuova chiave API:

  1. Accedi al tuo account DigiCert ONE.
  2. Naviga fino alla console Account manager.
  3. Dal menu a sinistra, selezionare Accedi > Token API.
  4. Seleziona Crea token API.
  5. Compila il modulo per creare la chiave.

Ciascuna chiave API viene visualizza una sola volta. Non vi sono modi per recuperare una chiave API persa. Se mai perdessi una chiave API, revocala e generane una nuova.

Autenticazione

Le API DigiCert ONE utilizzano l’autenticazione basata su intestazione. Ciascuna richiesta include l’intestazione HTTP personalizzata x‑api‑key. Usa la tua chiave API come valore per questa intestazione quando invii le tue richieste.

Ad esempio, ecco una richiesta per l’endpoint per la creazione di un nuovo dispositivo:

cURL
curl -X POST \
  'https://one.digicert.com/iot/api/v1/device' \
  -H 'x-api-key: {{api_key}}' \
  -H 'Content-Type: application/json' \
  -d '{
    "division_id": {{division_id}},
    "device_identifier": "MyDevice",
    "device_profile_id": {{device_profile_id}}
  }'
Python
import requests

url = "https://stage.one.digicert.com/iot/api/v1/device"

payload = "{\n  \"division_id\": {{division_id}},\n  \"device_identifier\": \"MyDevice\",\n  \"device_profile_id\": {{device_profile_id}}\n}"
headers = {
  'x-api-key': {{api_key}},
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
Go
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://stage.one.digicert.com/iot/api/v1/device"
  method := "POST"

  payload := strings.NewReader("{\n  \"division_id\": {{division_id}},\n  \"device_identifier\": \"MyDevice\",\n  \"device_profile_id\": {{device_profile_id}}\n}")

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
  }
  req.Header.Add("x-api-key", {{api_key}})
  req.Header.Add("Content-Type", "application/json")

  res, err := client.Do(req)
  defer res.Body.Close()
  body, err := ioutil.ReadAll(res.Body)

  fmt.Println(string(body))
}
NodeJS
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://stage.one.digicert.com/iot/api/v1/device',
  'headers': {
    'x-api-key': {{api_key}},
    'Content-Type': 'application/json'
  },
  body: "{\n  \"division_id\": {{division_id}},\n  \"device_identifier\": \"MyDevice\",\n  \"device_profile_id\": {{device_profile_id}}\n}"

};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});

URL base

Usa questo URL base per realizzare le richieste API DigiCert ONE:

generic
https://one.digicert.com

Stringhe di query URL

Alcuni endpoint utilizzano le stringhe di query URL per filtrare i risultati. Per aggiugere delle stringhe di query all’URL di endpoint, usa ?. Per aggiungere altre stringhe di query, usa &.

Questo esempio utilizza la stringa di query division_id per filtrare i risultati nella divisione specificata:

generic
https://one.digicert.com/iot/api/v1/device/{{device_identifier}}?division_id={{division_id}}

Richieste

Tutte le richieste vengono inviate tramite gli URL RESTful usando le funzioni REST, fra cui l’autenticazione basata su intestazione e i tipi di richiesta JSON.

La codifica della serie di caratteri dei dati per le richieste è UTF-8. Una richiesta ben formulata utilizza la porta 443 e specifica le intestazioni HTTP agente utente e lunghezza contenuto.

Metodi

Le API DigiCert ONE utilizzano metodi HTTP standard, fra cui:

  • GET
  • POST
  • PUT
  • DELETE

Corpo

Se non diversamente indicato, la maggior parte delle richieste richiede il passaggio di dati formattati JSON o XML. I valori supportati per l’intestazione Content-Type includono:

  • application/json

Risposte

Le risposte sono formate da intestazioni e un corpo. La formattazione del corpo della risposta dipende dal tipo di contenuto specificato nella richiesta.

Per ulteriori informazioni sui singoli codici di risposta dell’intestazione HTTP, consulta Glossario – Intestazioni.