API

Interrogez et récupérez par programmation les données affichées sur TLD-List.

Nous travaillons à l'amélioration de notre API

Une API JSON robuste et intuitive sera bientôt disponible. Cette API permettra aux utilisateurs professionnels d'interroger les données de la base de données en temps réel de TLD-List. Pratiquement toutes les données affichées sur ce site seront accessibles via l'API, avec la possibilité de les filtrer grâce à des paramètres définis par l'utilisateur.

Avertissement: L'API est actuellement en cours de développement et peut faire l'objet d'ajouts de fonctionnalités : de nouvelles méthodes et de nouveaux paramètres peuvent être ajoutés à l'avenir. Toutes les modifications apportées resteront compatibles avec les fonctionnalités existantes.

Vue d'ensemble

L'API TLD-List v1 peut être utilisée pour récupérer les données affichées sur TLD-List à partir de sa base de données en direct.

L'API accepte les POST HTTP contenant des données JSON et répond avec des données JSON. Exigences pour toutes les demandes de méthodes API :

  • Les demandes doivent être effectuées à l'aide de la méthode HTTP POST.
  • Les demandes doivent avoir un corps JSON contenant une paire de clés API publiques et privées valides pour l'authentification.
  • Les demandes doivent inclure l'en-tête : Content-Type : application/json

Les paramètres sont transmis à l'API sous forme de clés/valeurs dans le corps de la demande codée en JSON.

L'URL de base pour toutes les demandes d'API est la suivante :
https://api.tld-list.com/v1

Authentification

L'authentification s'effectue en transmettant une clé d'API publique et une clé d'API privée dans le corps JSON envoyé à l'URL de la méthode. Tous les appels API doivent inclure une paire de clés API valide. Les paires de clés API peuvent être générées dans votre compte TLD-List sous l'onglet API.

Visitez Compte > API pour créer des clés API.

Les clés d'API sont transmises dans le corps de la requête JSON à l'aide des paramètres apiKeyPublic (votre clé publique) et apiKeyPrivate (votre clé privée).

Example authentication parameters

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

Réponse

Toutes les réponses API réussies auront un code d'état HTTP 200 SUCCESS et un corps encodé JSON. Tout autre code d'état HTTP dans la réponse indique que la demande a échoué et qu'une erreur s'est produite.

Les objets de réponse JSON renvoyés par l'API auront la structure suivante :

CléTypeDescription
statusstringIndique l'état de la demande. SUCCESS indique que l'appel à l'API a abouti, FAIL indique que la demande a échoué.
errorsarray of objectsTableau d'objets représentant les erreurs qui se sont produites. Chaque objet d'erreur contient

code: chaîne de caractères identifiant le type d'erreur

message: chaîne lisible par l'homme décrivant l'erreur

parameter: chaîne facultative ou tableau de chaînes indiquant un problème avec un ou plusieurs paramètres passés dans la demande.

Si aucune erreur ne s'est produite, le tableau d'erreurs sera vide.

Voir Codes d'erreur pour plus d'informations.
secondsnumberTemps nécessaire au serveur de l'API pour générer une réponse (en secondes).
datastring|array|objectUn objet, un tableau ou une chaîne contenant les données demandées.

Exemple d'objet de réponse ayant échoué avec des erreurs

'{' 
"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"
'}'

Exemple d'objet de réponse réussie

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

Objets de réponse communs

Certaines méthodes de l'API renvoient des objets de données ayant la même structure. Ces objets de données communs sont décrits en détail ci-dessous.

RegistrarPricing

Décrit le prix de détail d'un bureau d'enregistrement pour une extension pour un type de prix particulier (register, renewal, transfer), y compris des détails supplémentaires tels que des conditions spéciales, des frais, des taxes et des promotions.

Chemin d'accèsTypeDescription
idstringChaîne d'identification du bureau d'enregistrement qui identifie de manière unique le bureau d'enregistrement.
namestringNom d'affichage du bureau d'enregistrement.
pricestringPrix de détail final du bureau d'enregistrement pour l'extension et le type de prix.

Remarque : ce champ n'est présent que lorsque l'objet RegistrarPricing est imbriqué dans le contexte d'un type de prix (par exemple, dans la réponse de getCheapestRegistrars).
priceOriginalstringLe prix de détail normal du bureau d'enregistrement pour l'extension sous la forme d'une chaîne numérique. Ce champ ne sera présent que si le prix est un prix promotionnel.

Remarque : ce champ n'est présent que lorsque l'objet RegistrarPricing est imbriqué dans le contexte d'un type de prix (par exemple, dans la réponse de getCheapestRegistrars).
pricetypestringLe type de tarification de l'extension, l'un des suivants : register, renewal, transfer.

Remarque : ce champ n'est présent que lorsque l'objet RegistrarPricing est imbriqué dans le contexte d'un type de prix (par exemple, dans la réponse de getCheapestRegistrars).
pricesobjectPrix de détail du bureau d'enregistrement pour l'extension pour tous les types de prix.

RegistrarPromo

Décrit une promotion active proposée par un bureau d'enregistrement.

Chemin d'accèsTypeDescription
promo.codestringLe code promo que le client doit saisir au moment du paiement pour bénéficier de la promotion à prix réduit.
promo.amountstringMontant numérique du prix promotionnel. Selon le type de promotion, il peut s'agir du prix réduit, du montant soustrait du prix normal ou du pourcentage soustrait du prix normal.

Codes d'erreur

En cas d'échec de la demande, l'objet de réponse JSON peut contenir un ou plusieurs objets d'erreur qui décrivent ce qui n'a pas fonctionné.

CodeDescription
502Le serveur API est temporairement indisponible.
RATE_LIMITEDLe nombre de requêtes API du client a dépassé le maximum autorisé.
INVALID_METHODLa méthode API demandée n'existe pas.
SYSTEMUne erreur système inconnue s'est produite.
RESPONSE_TIMEOUTLe serveur API a dépassé le temps imparti lors de la génération d'une réponse.
PARAMETER_REQUIREDUn paramètre requis pour la méthode appelée n'a pas été fourni par le client.
ACCOUNT_INACTIVELe compte du client n'est plus actif et un renouvellement de l'abonnement est nécessaire pour l'accès à l'API.
NO_ACCESSLe niveau de compte du client ne lui permet pas d'accéder à l'API. Une mise à niveau du compte est nécessaire pour l'accès à l'API.
AUTH_INVALIDÉchec de l'authentification : les clés API fournies sont inactives ou invalides.
CLIENT_IPS_EXCEEDEDLe nombre maximum d'adresses IP de clients autorisés à accéder à l'API pour la paire de clés API fournie a été dépassé.
REQUEST_ENDED_BY_CLIENTLa demande a été interrompue par le client avant qu'une réponse n'ait pu être générée.

Limites

L'utilisation de l'API est soumise à certaines limites afin d'éviter les abus. Ces limites d'utilisation sont indiquées ci-dessous et peuvent être modifiées sans préavis.

TypeDescription
Clés API par compte3
Limite du taux100 Nombre maximal de demandes par 15 minutes
Adresses IP des clients par clé API5 adresses IP uniques du client par clé par 1440 minutes

Pour plus d'informations sur l'API ou si vous avez des questions, consultez notre documentation complète ou contactez notre équipe d'assistance.

Méthodes d'extension

get

Renvoie les extensions et les données tarifaires et détaillées qui leur sont associées. Cette méthode s'apparente à la récupération des données affichées sur une ou plusieurs pages détaillées du TLD (par exemple, .com), à l'exception des données relatives à l'historique du prix le plus bas, qui ne sont pas renvoyées par cette méthode (voir la méthode getAggregateHistory pour les données historiques).

Point de terminaison de l'API: https://api.tld-list.com/v1/extension/get

Temps de réponse: ~12 seconds for all extensions, ~6 seconds < 2000 extensions, ~2 seconds < 100 extensions

Paramètres de la demande

CléTypeExigéeDescription
extensionsarray of stringsNonSpécifie les extensions à récupérer.

Objet de la réponse

Chemin d'accèsTypeDescription
dataarray of objectsTableau de noms d'extensions.

Exemple de demande/réponse

curl -X POST https://api.tld-list.com/v1/extension/get

getNames

Renvoie tous les noms d'extension.

Point de terminaison de l'API: https://api.tld-list.com/v1/extension/getNames

Temps de réponse: ~1 second

Paramètres de la demande

CléTypeExigéeDescription
omitExtensionsWithoutRegistrarsbooleanNonLorsque cette option est activée, les extensions sont omises.

Objet de la réponse

Chemin d'accèsTypeDescription
dataarray of stringsTableau de noms d'extensions.

Exemple de demande/réponse

curl -X POST https://api.tld-list.com/v1/extension/getNames

getCheapestRegistrar

Renvoie les bureaux d'enregistrement les moins chers par extension de domaine.

Point de terminaison de l'API: https://api.tld-list.com/v1/extension/getCheapestRegistrar

Temps de réponse: ~8 seconds for all extensions, ~4 seconds < 2000 extensions, ~1 second < 100 extensions

Paramètres de la demande

CléTypeExigéeDescription
pricetypesarray of stringsNonSpécifie les types de prix à récupérer.

Objet de la réponse

Chemin d'accèsTypeDescription
dataarray of objectsTableau d'objets représentant les extensions.

Exemple de demande/réponse

curl -X POST https://api.tld-list.com/v1/extension/getCheapestRegistrar

Méthodes du registre

getIds

Renvoie tous les identifiants des bureaux d'enregistrement, chacun d'entre eux identifiant de manière unique un bureau d'enregistrement activement répertorié sur TLD-List.

Point de terminaison de l'API: https://api.tld-list.com/v1/registrar/getIds

Temps de réponse: < 1 second

Paramètres de la demande

Aucun

Objet de la réponse

Chemin d'accèsTypeDescription
dataarray of stringsTableau de chaînes d'ID de bureaux d'enregistrement.

Exemple de demande/réponse

curl -X POST https://api.tld-list.com/v1/registrar/getIds

Rejoindre la liste d'attente

Newsletter TLD-List

Inscrivez-vous à la newsletter par e-mail pour recevoir des mises à jour sur les nouvelles fonctionnalités, les actualités du site et les corrections de bugs.