La DigiCert Services API è una potente API che ti consente di automatizzare i tipici processi di certificato per risparmiare tempo e semplificare la gestione dei certificati. Services API utilizza convenzioni RESTful moderne ed è semplice da usare.
Usa questo URL base quando crei delle richieste API:
https://www.digicert.com/services/v2
La pagina di ciascun endpoint fornisce solo l’ultima parte dell’URL endpoint (ad es. /ordini). Quando crei delle richieste, accertati di anteporre l’URL base all’endpoint.
Alcuni endpoint utilizzano le stringhe di query URL per filtrare i risultati. Le stringhe di query URL sono anteposte all’URL endpoint usando ?, con altre stringhe di query anteposte usando &.
Questo esempio utilizza la stringa di query container_id
per filtrare i risultati nel contenitore specificato. Inoltre, utilizza la stringa di query limit
per visualizzare solo dieci risultati.
https://www.digicert.com/services/v2/user?container_id=123&limit=10
Tutte le richieste API vengono inviate tramite gli URL RESTful usando le funzioni REST, fra cui l’autenticazione basata su intestazione e i tipi di richiesta JSON/XML.
La codifica della serie di caratteri dei dati per le richieste è UTF-8. Una richiesta ben formulata utilizza la porta 443 e ha le intestazioni agente utente e lunghezza contenuto specificate.
DigiCert Services API utilizza questi metodi HTTP standard:
GET
POST
PUT
HEAD
DELETE
La maggior parte delle richieste richiede il passaggio di dati formattati JSON o XML. Se un endpoint supporta o richiede un formato diverso, sarà annotato per tale endpoint.
I valori del tipo di contenuto supportati includono:
application/json
application/xml
image/jpeg
image/png
Le risposte sono formate da intestazioni e un corpo. Il corpo è formattato in base al tipo di contenuto specificato nella richiesta.
Consulta Glossario – Intestazioni per ulteriori informazioni sui codici di risposta dell’intestazione HTTP.
curl -X POST \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"text": "This is a note"
}'
import requests
url = "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note"
payload = "{\n\t\"text\": \"This is a note\"\n}"
headers = {
'X-DC-DEVKEY': "{{api_key}}",
'Content-Type': "application/xml"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note"
payload := strings.NewReader("{\n\t\"text\": \"This is a note\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-DC-DEVKEY", "{{api_key}}")
req.Header.Add("Content-Type", "application/xml")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var request = require("request");
var options = { method: 'POST',
url: 'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note',
headers:
{ 'Content-Type': 'application/xml',
'X-DC-DEVKEY': '{{api_key}}' },
body: '{\n\t"text": "This is a note"\n}' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
{
"id": 1,
"date_created": "2018-09-26T20:29:09+00:00",
"text": "This is a note",
"user": {
"id": 125039,
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digicert.com"
}
}
curl -X GET \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}'
import requests
url = "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note"
headers = {
'X-DC-DEVKEY': "{{api_key}}",
'Content-Type': "application/xml"
}
response = requests.request("GET", url, headers=headers)
print(response.text)
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-DC-DEVKEY", "{{api_key}}")
req.Header.Add("Content-Type", "application/xml")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var request = require("request");
var options = { method: 'GET',
url: 'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note',
headers:
{ 'Content-Type': 'application/xml',
'X-DC-DEVKEY': '{{api_key}}' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
{
"notes": [
{
"id": 1,
"date_created": "2018-09-26T20:29:09+00:00",
"text": "This is a note",
"user": {
"id": 125039,
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digicert.com"
}
}
]
}
curl -X DELETE \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note/{{note_id}}' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}'
import requests
url = "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note/{{note_id}}"
headers = {
'X-DC-DEVKEY': "{{api_key}}",
'Content-Type': "application/xml"
}
response = requests.request("DELETE", url, headers=headers)
print(response.text)
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note/{{note_id}}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("X-DC-DEVKEY", "{{api_key}}")
req.Header.Add("Content-Type", "application/xml")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var request = require("request");
var options = { method: 'DELETE',
url: 'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/note/{{note_id}}',
headers:
{ 'Content-Type': 'application/xml',
'X-DC-DEVKEY': '{{api_key}}' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
// empty