DigiCert® ONE es una plataforma moderna de PKI que ofrece una base escalable para implementaciones rápidas y flexibles de PKI. Las API de DigiCert ONE ofrecen una interfaz poderosa para manejar sus certificados y dispositivos, personalizar y automatizar los flujos de trabajo e integrar DigiCert ONE con sus herramientas existentes de administración de PKI.
DigiCert ONE incluye las API para administrar las actividades que se encuentran en estas consolas:
Antes de poder usar las API de DigiCert ONE, se necesita lo siguiente:
Para crear una nueva clave API:
Cada clave API solamente se muestra una vez. No hay forma de recuperar una clave API perdida. Si alguna vez pierde una clave API, debe revocarla y generar una nueva.
Las API de DigiCert ONE usan autenticación basada en encabezados. Cada solicitud incluye el encabezado HTTP personalizado x‑api‑key
. Use su propia clave API como valor para este encabezado cuando envíe sus solicitudes.
Por ejemplo, esta es una solicitud para que el terminal cree un nuevo dispositivo:
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}}
}'
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'))
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))
}
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);
});
Utilice esta URL base para construir solicitudes API de DigiCert ONE:
https://one.digicert.com
Algunas terminales utilizan cadenas de consulta de la URL para filtrar los resultados. Para anexar cadenas de consulta a la URL del terminal, use ?. Para anexar cadenas de consulta adicionales, use &.
Este ejemplo utiliza la cadena de consulta division_id
para filtrar los resultados a la división especificada.
https://one.digicert.com/iot/api/v1/device/{{device_identifier}}?division_id={{division_id}}
Todas las solicitudes se envían a través de las URL RESTful utilizando funciones REST, incluyendo la autenticación basada en encabezados y los tipos de solicitud JSON.
La codificación del conjunto de caracteres de los datos para las solicitudes es UTF-8. Una solicitud bien formada utiliza el puerto 443 y especifica los encabezados HTTP agente de usuario y longitud del contenido.
Las API DigiCert ONE usan métodos HTTP estándar, que incluyen:
GET
POST
PUT
DELETE
A menos que se indique lo contrario, la mayoría de las solicitudes analizan datos con formato JSON o XML. Los valores admitidos para el encabezado Content-Type
incluyen:
application/json
Las respuestas están formadas por encabezados y un cuerpo. El formato del cuerpo de la respuesta depende del tipo de contenido que usted especifique en la solicitud.
Para obtener más información sobre los códigos individuales de respuesta del encabezado HTTP, consulte Glosario: encabezados.