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é | Type | Description |
|---|---|---|
status | string | Indique l'état de la demande. SUCCESS indique que l'appel à l'API a abouti, FAIL indique que la demande a échoué. |
errors | array of objects | Tableau d'objets représentant les erreurs qui se sont produites. Chaque objet d'erreur contientcode: chaîne de caractères identifiant le type d'erreurmessage: chaîne lisible par l'homme décrivant l'erreurparameter: 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. |
seconds | number | Temps nécessaire au serveur de l'API pour générer une réponse (en secondes). |
data | string|array|object | Un 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ès | Type | Description |
|---|---|---|
id | string | Chaîne d'identification du bureau d'enregistrement qui identifie de manière unique le bureau d'enregistrement. |
name | string | Nom d'affichage du bureau d'enregistrement. |
price | string | Prix 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). |
priceOriginal | string | Le 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). |
pricetype | string | Le 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). |
prices | object | Prix 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ès | Type | Description |
|---|---|---|
promo.code | string | Le code promo que le client doit saisir au moment du paiement pour bénéficier de la promotion à prix réduit. |
promo.amount | string | Montant 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é.
| Code | Description |
|---|---|
| 502 | Le serveur API est temporairement indisponible. |
| RATE_LIMITED | Le nombre de requêtes API du client a dépassé le maximum autorisé. |
| INVALID_METHOD | La méthode API demandée n'existe pas. |
| SYSTEM | Une erreur système inconnue s'est produite. |
| RESPONSE_TIMEOUT | Le serveur API a dépassé le temps imparti lors de la génération d'une réponse. |
| PARAMETER_REQUIRED | Un paramètre requis pour la méthode appelée n'a pas été fourni par le client. |
| ACCOUNT_INACTIVE | Le compte du client n'est plus actif et un renouvellement de l'abonnement est nécessaire pour l'accès à l'API. |
| NO_ACCESS | Le 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_EXCEEDED | Le 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_CLIENT | La 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.
| Type | Description |
|---|---|
| Clés API par compte | 3 |
| Limite du taux | 100 Nombre maximal de demandes par 15 minutes |
| Adresses IP des clients par clé API | 5 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é | Type | Exigée | Description |
|---|---|---|---|
extensions | array of strings | Non | Spécifie les extensions à récupérer. |
Objet de la réponse
| Chemin d'accès | Type | Description |
|---|---|---|
data | array of objects | Tableau 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é | Type | Exigée | Description |
|---|---|---|---|
omitExtensionsWithoutRegistrars | boolean | Non | Lorsque cette option est activée, les extensions sont omises. |
Objet de la réponse
| Chemin d'accès | Type | Description |
|---|---|---|
data | array of strings | Tableau 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é | Type | Exigée | Description |
|---|---|---|---|
pricetypes | array of strings | Non | Spécifie les types de prix à récupérer. |
Objet de la réponse
| Chemin d'accès | Type | Description |
|---|---|---|
data | array of objects | Tableau 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ès | Type | Description |
|---|---|---|
data | array of strings | Tableau 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