API

Interroga e recupera programmaticamente i dati visualizzati su TLD-List.

Stiamo lavorando per migliorare la nostra API

A breve sarà disponibile un'API JSON robusta e intuitiva. Questa API consentirà agli utenti aziendali di interrogare i dati del database in tempo reale di TLD-List. Praticamente tutti i dati visualizzati su questo sito saranno accessibili tramite l'API, con la possibilità di filtrarli tramite parametri definiti dall'utente.

Avvertimento: L'API è attualmente in fase di sviluppo e soggetta a funzionalità aggiunte: nuovi metodi e parametri potrebbero essere aggiunti in futuro. Qualsiasi modifica apportata rimarrà compatibile con le funzionalità esistenti.

Panoramica

L'API TLD-List v1 può essere utilizzata per recuperare i dati visualizzati su TLD-List dal suo database live.

L'API accetta HTTP POST contenenti dati JSON e risponde con dati JSON. Requisiti per tutte le richieste di metodi API:

  • Le richieste devono essere effettuate con il metodo HTTP POST.
  • Le richieste devono avere un corpo JSON contenente una coppia di chiavi API pubbliche e private valide per l'autenticazione.
  • Le richieste devono includere l'intestazione: Tipo di contenuto: application/json

I parametri vengono passati all'API come chiavi/valori nel corpo della richiesta codificata JSON.

L'URL di base per tutte le richieste API è: https://api.tld-list.com/v1

Autenticazione

L'autenticazione viene eseguita passando una chiave API pubblica e una chiave API privata nel corpo JSON inviato all'URL del metodo. Tutte le chiamate API devono includere una coppia di chiavi API valida. Le coppie di chiavi API possono essere generate nel suo account TLD-List, nella scheda API.

Visiti il sito Account > API per creare le chiavi API.

Le chiavi API vengono passate nel corpo della richiesta JSON utilizzando i parametri apiKeyPublic (la sua chiave pubblica) e apiKeyPrivate (la sua chiave privata).

Example authentication parameters

'{' 
"apiKeyPublic":"MY_PUBLIC_KEY",
"apiKeyPrivate":"MY_PRIVATE_KEY"
'}'

Risposta

Tutte le risposte API di successo avranno un codice di stato HTTP 200 SUCCESS e un corpo codificato JSON. Qualsiasi altro codice di stato HTTP nella risposta indica che la richiesta non è andata a buon fine e che si è verificato un errore.

Gli oggetti di risposta JSON restituiti dall'API avranno la seguente struttura:

ChiaveTipoDescrizione
statusstringSpecifica lo stato della richiesta. SUCCESS indica che la chiamata API ha avuto successo, FAIL indica che la richiesta è fallita.
errorsarray of objectsArray di oggetti che rappresentano gli errori che si sono verificati. Ogni oggetto errore conterrà:

codice: stringa che identifica il tipo di errore

messaggio: stringa leggibile dall'uomo che descrive l'errore

parametro: stringa o array di stringhe opzionale che indica un problema con uno o più parametri passati nella richiesta.

Se non si sono verificati errori, l'array degli errori sarà vuoto.

Per maggiori informazioni, consulti i codici di errore.
secondsnumberTempo impiegato dal server API per generare una risposta (in secondi).
datastring|array|objectUn oggetto, un array o una stringa contenente i dati richiesti.

Esempio di oggetto di risposta fallito con errori

'{' 
"errors" : [
'{'
"code" : "PARAMETER_INVALID",
"message" : "pricetypes parameter must be a non-empty array",
"parameter" : "pricetypes"
'}',
'{'
"code" : "PARAMETER_INVALID",
"message" : "includeRegistrars parameter contains invalid registrar names: foobar",
"parameter" : "includeRegistrars"
'}'
],
"seconds" : 0.001,
"status" : "FAIL"
'}'

Esempio di oggetto di risposta di successo

'{' 
"data" : [
'{'
"cheapest" : '{'
"renewal" : [
'{'
"id" : "sav",
"name" : "Sav",
"price" : "8.38"
'}'
],
'}',
"currency" : "USD",
"name" : "com",
"registrarsIncluded" : 58,
"registrarsTotal" : 58
'}'
],
"errors" : [],
"seconds" : 0.001,
"status" : "SUCCESS"
'}'

Oggetti di risposta comuni

Alcuni dei metodi API restituiscono oggetti di dati che hanno la stessa struttura. Questi oggetti di dati comuni sono descritti in dettaglio di seguito.

RegistrarPricing

Descrive i prezzi al dettaglio di una società di registrazione per un'estensione per un particolare tipo di prezzo (register, renewal, transfer), inclusi dettagli aggiuntivi come termini speciali, tariffe, tasse e promozioni.

PercorsoTipoDescrizione
idstringStringa dell'ID della società di registrazione che identifica in modo univoco la società di registrazione.
namestringNome visualizzato della società di registrazione.
pricestringIl prezzo di vendita finale della società di registrazione per l'estensione e il tipo di prezzo.

Nota: questo campo è presente solo quando l'oggetto RegistrarPricing è annidato nel contesto di un tipo di prezzo.
priceOriginalstringIl prezzo di vendita regolare della società di registrazione per l'estensione, come stringa numerica. Questo campo sarà presente solo se il prezzo è un prezzo promozionale.
pricetypestringIl tipo di prezzo dell'estensione, uno dei seguenti: register, renewal, transfer.
pricesobjectIl prezzo al dettaglio del registrar per l'estensione per tutti i tipi di prezzo.
prices[pricetype]stringIl prezzo di vendita finale del registrar per l'estensione e [pricetype], dove la chiave [pricetype] è register, renewal, transfer, restore, whoisprivacy. Esempio:

'{' 
"register": "8.73",
"renewal": "9.73",
"transfer": "9.73",
"whoisPrivacy": "0.00"
'}'
pricesOriginalobjectIl prezzo al dettaglio regolare della società di registrazione per l'estensione, per tutti i tipi di prezzo. Questo campo non sarà presente se la società di registrazione non ha promozioni attive.
pricesOriginal[pricetype]stringIl prezzo di vendita regolare del registrar per l'estensione e [pricetype], dove la chiave [pricetype] è register, renewal, transfer, restore, whoisprivacy.
promoobjectUn oggetto RegistrarPromo che rappresenta il prezzo promozionale che è stato applicato al prezzo della società di registrazione per questa estensione e questo tipo di prezzo. Se non è stata applicata alcuna promo, questo campo non sarà presente. Esempio di oggetto promo:

'{' 
"code": "MYCOUPONCODE",
"amount": "20.00",
"type": "discount-percent",
"start": "2015-06-22T00:00:00",
"end": "2025-06-22T00:00:00"
'}'
promosarray of objectsArray di oggetti RegistrarPromo che rappresentano tutte le tariffe promozionali attive offerte dalla società di registrazione per questa estensione.
termsobjectUna collezione di oggetti che rappresentano i termini speciali che si applicano alla tariffazione della società di registrazione. Se non si applicano termini speciali, questo campo non sarà presente.
notesobjectUna raccolta di oggetti che rappresentano le note che riguardano la tariffazione della società di registrazione. Se non ci sono note di tariffazione, questo valore sarà un oggetto vuoto.
threeYearValueScorenumberUna misura numerica del valore, determinata dal prezzo e dalle funzioni gratuite, per possedere un dominio con questa estensione tramite il registrar per un periodo di 3 anni.
currencystringIl codice di valuta a tre lettere ISO 4217 dei dati di tariffazione. Questo valore è attualmente solo USD.
freeFeaturesarray of objectsUn array di oggetti che rappresentano le funzionalità gratuite che la società di registrazione offre con la proprietà del dominio.

RegistrarPromo

Descrive una promozione attiva offerta da una società di registrazione. Esempio:

'{' 
"code": "MYCOUPONCODE",
"amount": "20.00",
"type": "discount-percent",
"start": "2015-06-22T00:00:00",
"end": "2025-06-22T00:00:00"
'}'
PercorsoTipoDescrizione
promo.codestringIl codice promozionale che il cliente deve inserire al momento del checkout per ricevere la promozione scontata.
promo.amountstringL'importo numerico del prezzo promozionale. A seconda del tipo di promo, potrebbe trattarsi del prezzo scontato(prezzo), dell'importo sottratto al prezzo normale(sconto) o dell'importo percentuale sottratto al prezzo normale(sconto-percentuale).
promo.typestringUna stringa che rappresenta il tipo di prezzo promozionale. Sarà uno dei seguenti valori:

prezzo - significa che il campo importo della promo è il nuovo prezzo scontato
sconto - significa che il campo importo della promo è stato sottratto dal prezzo regolare per ottenere il prezzo applicato
sconto-percentuale - significa che il campo importo della promo è una percentuale e la percentuale è stata sottratta dal prezzo regolare per ottenere il prezzo applicato.
promo.startstringData ISO 8601 (fuso orario UTC) di quando è iniziata la promo. Non sarà presente se non c'è una data di inizio specifica. Esempio: 2015-06-22T00:00:00
promo.endstringData ISO 8601 (fuso orario UTC) di quando terminerà la promo. Non sarà presente se non c'è una data finale specifica. Esempio: 2025-06-22T00:00:00
promo.pricetypearray of stringsIl tipo o i tipi di prezzo a cui si applica la promo: register, renewal, transfer.

Codici di errore

In caso di fallimento della richiesta, l'oggetto di risposta JSON può contenere uno o più oggetti di errore che descrivono cosa è andato storto. Di seguito è riportato un elenco non esaustivo di codici di errore identificativi che possono essere impostati nel campo codice dell'oggetto error.

CodiceDescrizione
502Il server API è temporaneamente non disponibile.
RATE_LIMITEDIl numero di richieste API del cliente ha superato il massimo consentito.
INVALID_METHODIl metodo API richiesto non esiste.
SYSTEMSi è verificato un errore di sistema sconosciuto.
RESPONSE_TIMEOUTIl server API si è bloccato durante la generazione di una risposta.
PARAMETER_REQUIREDUn parametro richiesto per il metodo chiamato non è stato fornito dal cliente.
ACCOUNT_INACTIVEL'account del cliente non è più attivo e per l'accesso all'API è necessario rinnovare l'abbonamento.
NO_ACCESSIl livello dell'account del cliente non garantisce l'accesso all'API. Per l'accesso all'API è necessario un aggiornamento dell'account.
AUTH_INVALIDAutenticazione fallita: le chiavi API fornite sono inattive o non valide.
CLIENT_IPS_EXCEEDEDÈ stato superato il numero massimo di IP unici del cliente autorizzati ad accedere all'API per la coppia di chiavi API fornita.
REQUEST_ENDED_BY_CLIENTLa richiesta è stata terminata dal cliente prima che potesse essere generata una risposta.

Limiti

L'utilizzo dell'API è soggetto a determinati limiti per evitare abusi. Questi limiti di utilizzo sono indicati di seguito e sono soggetti a modifiche senza preavviso.

TipoDescrizione
Chiavi API per account3
Limite del tasso100 richieste massime per 15 minuti
Indirizzi IP del cliente per chiave API5 indirizzi IP unici del cliente per chiave per 1440 minuti

Metodi di estensione

get

Restituisce le estensioni e i dati relativi ai prezzi e ai dettagli ad esse associati. Questo metodo è simile al recupero dei dati visualizzati su una o più pagine di dettagli del TLD, ad eccezione dei dati della "Storia del prezzo più conveniente", che non vengono restituiti da questo metodo.

Endpoint API: https://api.tld-list.com/v1/extension/get

Tempo di risposta: ~12 seconds for all extensions, ~6 seconds < 2000 extensions, ~2 seconds < 100 extensions

Parametri della richiesta

ChiaveTipoRichiestoDescrizione
extensionsarray of stringsNoSpecifica quali estensioni recuperare. Non includa un punto precedente.
includeFieldsarray of stringsNoSpecifica alcuni dati da restituire in base al nome della chiave.
excludeFieldsarray of stringsNoSpecifica i dati di cetain da escludere in base al nome della chiave.
includeRegistrarsarray of stringsNoGli ID stringa delle società di registrazione attive da includere nei risultati.
excludeRegistrarsarray of stringsNoLa stringa degli ID delle società di registrazione attive da escludere nei risultati.
omitExtensionsWithoutRegistrarsbooleanNoQuando è vero, le estensioni senza registrar vengono omesse.

Oggetto della risposta

PercorsoTipoDescrizione
dataarray of objectsArray di nomi di estensioni.
data[].namestringNome Unicode dell'estensione del dominio.
data[].averageobjectOggetto contenente il prezzo medio dell'estensione.
data[].medianobjectOggetto contenente il prezzo mediano dell'estensione.
data[].registrarsarray of objectsArray di oggetti RegistrarPricing.
data[].registrarsIncludedintegerConteggio delle società di registrazione incluse.
data[].registrarsTotalintegerTotale dei registrar attivi che vendono l'estensione.
data[].dnssecSupportedbooleanSe DNSSEC è supportato.
data[].whoisPrivacySupportedbooleanSe WHOIS Privacy è supportato.
data[].typestringIl tipo di TLD.

Esempio di richiesta/risposta

curl -X POST https://api.tld-list.com/v1/extension/get -H 'Content-Type: application/json' -d '{"extensions": ["com"], "apiKeyPublic":"MY_PUBLIC_KEY","apiKeyPrivate":"MY_PRIVATE_KEY"}'

'{' "data" : [...], "errors" : [], "seconds" : 0.068, "status" : "SUCCESS" '}' 

getNames

Restituisce tutti i nomi delle estensioni.

Endpoint API: https://api.tld-list.com/v1/extension/getNames

Tempo di risposta: ~1 second

Parametri della richiesta

ChiaveTipoRichiestoDescrizione
omitExtensionsWithoutRegistrarsbooleanNoQuando è vero, le estensioni senza registrar vengono omesse.
wantPunycodebooleanNoCodifica tutte le estensioni IDN come punycode.

Oggetto della risposta

PercorsoTipoDescrizione
dataarray of stringsArray di nomi di estensioni.

Esempio di richiesta/risposta

curl -X POST https://api.tld-list.com/v1/extension/getNames -H 'Content-Type: application/json' -d '{"apiKeyPublic":"MY_PUBLIC_KEY","apiKeyPrivate":"MY_PRIVATE_KEY"}'

'{' "data" : ["com", "net", "org", ...], "errors" : [], "seconds" : 0.697, "status" : "SUCCESS" '}' 

getCheapestRegistrar

Restituisce i registrar/provider più economici, i loro prezzi, il prezzo mediano e il prezzo medio per estensione di dominio.

Endpoint API: https://api.tld-list.com/v1/extension/getCheapestRegistrar

Tempo di risposta: ~8 seconds for all extensions, ~4 seconds < 2000 extensions, ~1 second < 100 extensions

Parametri della richiesta

ChiaveTipoRichiestoDescrizione
pricetypesarray of stringsNoSpecifica i tipi di prezzi da recuperare.
extensionsarray of stringsNoSpecifica quali estensioni recuperare.
includeRegistrarsarray of stringsNoGli ID delle società di registrazione da includere.
excludeRegistrarsarray of stringsNoGli ID delle società di registrazione da escludere.
omitExtensionsWithoutRegistrarsbooleanNoQuando è vero, le estensioni senza registrar vengono omesse.

Oggetto della risposta

PercorsoTipoDescrizione
dataarray of objectsArray di oggetti, ognuno rappresenta un'estensione di dominio.
data[].namestringNome Unicode dell'estensione del dominio.
data[].currencystringIl codice di valuta ISO 4217.
data[].averageobjectOggetto contenente il prezzo medio.
data[].medianobjectOggetto contenente il prezzo mediano.
data[].cheapestobjectLe società di registrazione più economiche.

Esempio di richiesta/risposta

curl -X POST https://api.tld-list.com/v1/extension/getCheapestRegistrar -H 'Content-Type: application/json' -d '{"apiKeyPublic":"MY_PUBLIC_KEY","apiKeyPrivate":"MY_PRIVATE_KEY", "extensions": ["com"]}'

'{' "data" : [...], "errors" : [], "seconds" : 0.126, "status" : "SUCCESS" '}' 

Metodi di registrazione

getIds

Restituisce tutti gli ID della società di registrazione, ognuno dei quali identifica in modo univoco una società di registrazione attivamente quotata su TLD-List.

Endpoint API: https://api.tld-list.com/v1/registrar/getIds

Tempo di risposta: < 1 second

Parametri della richiesta

Nessuno

Oggetto della risposta

PercorsoTipoDescrizione
dataarray of stringsArray di stringhe di ID della società di registrazione.

Esempio di richiesta/risposta

curl -X POST https://api.tld-list.com/v1/registrar/getIds -H 'Content-Type: application/json' -d '{"apiKeyPublic":"MY_PUBLIC_KEY","apiKeyPrivate":"MY_PRIVATE_KEY"}'

'{' "data" : ["101domain", "123reg", "above.com", ..., "webnames.ca"], "errors" : [], "seconds" : 0.001, "status" : "SUCCESS" '}' 

Unisciti alla lista d'attesa

Newsletter TLD-List

Iscriviti alla newsletter via email per ricevere aggiornamenti su nuove funzionalità, notizie del sito e correzioni di bug.