API DNS v.1.3

Transcription

API DNS v.1.3
NAMEBAY API
Appendice v1
Gestion Dns
Documentation technique
CONTENTS
1 PRÉSENTATION....................................................... 3
2 COMMANDES ........................................................... 5
2.1
2.1.1
2.1.2
2.1.3
2.2
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
Syntaxe et description des chaînes XML des commandes................... 5
Syntaxe de l’envoi d’une commande API et sa réponse .............................................................. 5
Description détaillée des balises ................................................................................................ 6
Exemple d’envoi de commande et sa réponse : commande « Contact_check » ......................... 7
Liste des commandes (HTTP Post) .................................................... 7
Zone_create .............................................................................................................................. 7
zone_ttl_update ........................................................................................................................ 8
zone_delete ............................................................................................................................... 9
zone_get.................................................................................................................................. 10
record_add .............................................................................................................................. 12
record_update ......................................................................................................................... 13
record_delete .......................................................................................................................... 14
3 RÉCAPITULATIF CODES ERREUR ........................... 15
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
2
1 PRÉSENTATION
Cet ensemble de commandes de l'API est dédié à la gestion des zones DNS des revendeurs en utilisant
l'infrastructure DNS Namebay.
Il permet aux revendeurs de gérer les zones correspondant à leurs noms de domaine enregistrés.
Notez que l'accès à cette fonction nécessite soit le service de gestion DNS avancée par domaine ou l'accès par
revendeur à la gestion des zones par l'API.
Veuillez contacter Namebay pour plus d'explications sur ces fonctions.
NB: Les valeurs de chaque zone DNS sont automatiquement actualisées après chaque mise à jour de zone et /
ou d'enregistrement.
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
3
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
4
2 COMMANDES
Chaque instruction xml est constituée:
■ de l’authentification de l’utilisateur Namebay (contactID et mot de passe à renseigner)
■ du nom de la commande (ou de l’action à effectuer) ;
■ des paramètres nécessaires au bon déroulement de l’opération ;
Toutes les commandes sont synchrones.
2.1 Syntaxe et description des chaînes XML des commandes
2.1.1
Syntaxe de l’envoi d’une commande API et sa réponse
Envoi de la commande
<api>
</api>
<authentication>
<login>…</login>
<password>…</password>
</authentication>
<command>
<CommandName>
<Paramètres entrants>…</Paramètres entrants>
[…]
</ CommandName>
</command>
Réponse à la commande
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="’…’">
<msg>…</msg>
</result>
</response>
<resData>
< CommandName >
<Output>…</Output>
[…]
</ CommandName >
</resData>
</api>
Code source d’une page html qui post vers notre API: (UTF8 and text/xml)
<html>
<head>
<title>API POST</title>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
5
</head>
<body>
<form action="https://api.namebay.com/api.aspx" method="post" enctype="text/xml" acceptcharset="UTF-8">
<textarea name="request" rows="10" cols="50" />
<input type="submit" name="b" value="Executer">
</form>
</body>
</html>
Les commandes post doivent être envoyées en utilisant le paramètre « request ».
2.1.2
Description détaillée des balises
Envoi de la commande
<api> : déclaration API.
<authentication> : déclaration de l’authentification de l’utilisateur API.
<login>’votre login’</login> : login saisi par l’utilisateur.
<password>’votre mot de passe’ </password> : mot de passe saisi par l’utilisateur.
</authentication> : fin d’authentification .
<command> : description de la commande.
<’nom de la commande’ > : nom de la commande API.
<’nom du paramètre entrant’>’valeur du paramètre’</’nom du paramètre entrant’ >
Nom du paramètre entrant suivi de sa valeur, saisie par l’utilisateur. Il y a autant de balises que de paramètres.
Leur valeur est encapsulée entre la balise de début et celle de fin du nom du paramètre.
</’nom de la commande’> : fin de commande.
</command>: fin de description de la commande .
</api>: fin de requête api.
Réponse du système NAMEBAY
<?xml version="1.0" encoding="utf-8"?> XML déclaration
<api> : déclaration API.
<response> : déclaration de la réponse.
<trID> : ‘numéro de la transaction’</trID> : numéro de la transaction api chez Namebay, lequel
correspond à la commande passée.
<result code="’code de la réponse’"><msg>’message’</msg> </result>: balise de résultat
contenant le code retour en attribut. Cette balise encapsule celle contenant la valeur du message du
code retour.
</response> : fin de déclaration de la réponse.
<resData> : déclaration des données en retour.
<’nom de la commande’> : nom de la commande API passée.
<’nom du paramètre sortant’>’valeur du paramètre’ </’nom du paramètre sortant’>
Nom du paramètre sortant et sa valeur. Il y a autant de balises que de paramètres. Leur valeur est encapsulée
entre la balise de début et celle de fin du nom du paramètre.
</’nom de la commande’> : fin de la commande.
</resData> : fin de déclaration des valeurs retournées.
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
6
</api>
2.1.3
Exemple d’envoi de commande et sa réponse : commande « Contact_check »
Request
<api>
<authentication>
<login>MonLogin</login>
<password>MonMotDePasse</password>
</authentication>
<command>
<contact_check>
<contact_id>MonID</contact_id>
</contact_check>
</command>
</api>
<!-- début de requête API -->
<!-- authentification de l’utilisateur API -->
<!-- Identifiant de l’utilisateur-->
<!-- Mot de passe de l’utilisateur -->
<!-- fin de l’authentification -->
<!-- début de la description de la commande -->
<!-- nom de la commande -->
<!-- nom et valeur du paramètre entrant -->
<!-- fin de la commande -->
<!-- fin de la description de la commande -->
<!-- fin de requête API -->
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>NBAY-API-508279318082006050401</trID>
<result code="200">
<msg>command completed successfully</msg>
</result>
</response>
<resData>
<contact_chkData>
<contact_id available="1">MonID</contact_id>
</contact_chkData>
</resData>
</api>
<!-- déclaration XML -->
<!-- début de requête API -->
<!-- début de la réponse -->
<!-- numéro de la transaction API-->
<!-- début de la description du résultat :
numéro du code retour dans l’attribut de la
balise-->
<!-- message de la réponse -->
<!-- fin du résultat -->
<!-- fin de la réponse -->
<!-- données renvoyées -->
<!-- nom de la commande -->
<!-- paramètre sortant -->
<!-- fin d’envoi des paramètres sortants -->
<!-- fin du renvoi des données -->
<!-- fin de requête API -->
2.2 Liste des commandes (HTTP Post)
2.2.1 Zone_create
Crée une zone pour un nom de domaine déjà enregistré.
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
7
Paramètres entrants
Description
Le nom de domaine enregistré
pour lequel vous voulez créer une
zone
name
Type
String (min 5, max 255)
Obligatoire
Oui
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
<zone_create>
<name>mondomaine.extension</name>
</zone_create>
</command>
</api>
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
2.2.2
zone_ttl_update
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
name
Le nom de domaine enregistré
pour lequel vous voulez mettre à
jour le TTL de la Zone
String (min 5, max 255)
Oui
ttl
TTL de la Zone
Int (min 0, max
2147483647)
Oui
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
8
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
<zone_ttl_update>
<name>mondomaine.extension</name>
< ttl >…</ ttl >
</zone_ttl_update>
</command>
</api>
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
2.2.3
zone_delete
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
name
Le nom de domaine enregistré
pour lequel vous voulez
supprimer la zone
String (min 5, max 255)
Oui
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
9
<zone_delete>
<name>mondomaine.extension</name>
</zone_delete>
</command>
</api>
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
2.2.4
zone_get
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
name
Le nom de domaine enregistré
pour lequel vous voulez récupérer
la zone
String (min 5, max 255)
Oui
Paramètres sortants
Description
[zone] name
Nom de la zone
[zone] ttl
TTL de la zone
[zone] soaPrimaryNs
NS Primaire du SOA
[zone] soaRespPerson
Email de la personne responsible du SOA
[zone] soaRefresh
Intervalle de raffraichissement du SOA
[zone] soaRetry
Intervalle de Relance du SOA
[zone] soaExpire
Temps d’Expiration du SOA
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
10
Paramètres sortants
Description
[zone] soaMinimum
TTL minimum du SOA
[zone] [records] [record] id
Numéro de l’enregistrement
[zone] [records] [record] host
Hôte de l’enregistrement
[zone] [records] [record] type
Type de l’enregistrement
[zone] [records] [record] weight
Poids de l’enregistrement
[zone] [records] [record] data
Données de l’enregistrement
Commande
[…]
<command>
<zone_get>
<name>mondomaine.extension</name>
</zone_get>
</command>
</api>
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
<resData>
<zone>
<name>...</name>
<ttl>…</ttl>
<soaPrimaryNs>…</soaPrimaryNs>
<soaRespPerson>...</soaRespPerson>
<soaRefresh>…</soaRefresh>
<soaRetry>…</soaRetry>
<soaExpire>…</soaExpire>
<soaMinimum>…</soaMinimum>
<records>
<record>
<id>...</id><host>...</host> <type>…</type> <weight>…</weight><data>…</data>
</record>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
11
<record>
<id>...</id><host>...</host> <type>…</type> <weight>…</weight><data>…</data>
</record>
<record>
<id>...</id><host>...</host> <type>…</type> <weight>…</weight><data>…</data>
</record>
</records>
</zone>
</resData>
</api>
2.2.5
record_add
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
zoneName
Le nom de domaine enregistré
pour lequel vous voulez ajouter
un enregistrement
String (min 5, max 255)
Oui
host
Hôte de l’enregistrement
String (min 1, max 200)
Oui
type
Type de l’enregistrement
A, CNAME, MX, TXT,
AAAA, NS, NAPTR, SRV
Oui
weight
Poids de l’enregistrement
int
Non
data
Données de l’enregistrement
String (max 4096)
Oui
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
<record_add>
<zoneName> mondomaine.extension </zoneName>
<type>…</type> <host>...</host><data>…</data><weight>…</weight>
</ record_add >
</command>
</api>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
12
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
2.2.6
record_update
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
String (min 5, max 255)
Oui
int
Oui
Le nom de domaine enregistré
pour lequel vous voulez mettre à
jour un enregistrement
Numéro de l’enregistrement que
vous voulez mettre à jour
zoneName
id
host
Nouvel hôte de l’enregistrement
String (min 1, max 200)
Oui
type
Nouveau type de l’enregistrement
A, CNAME, MX, TXT,
AAAA, NS, NAPTR, SRV
Oui
int
Non
String (max 4096)
Oui
Nouveau poids de
l’enregistrement
Nouvelles données de
l’enregistrement
weight
data
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
<record_update>
<zoneName>mondomaine.extension</zoneNname>
<id>...</id>
<type>…</type>
<host>...</host>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
13
<data>…</data>
<weight>…</weight>
</ record_update >
</command>
</api>
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
2.2.7
record_delete
Paramètres entrants
Description
Type
Obligatoire
API login
Identifiant de l’utilisateur
String (min 3, max 10)
Oui
API password
Mot de passe de l’utilisateur
String (min 5, max 15)
Oui
String (min 5, max 255)
Oui
int
Oui
Le nom de domaine enregistré
pour lequel vous voulez
supprimer un enregistrement
Numéro de l’enregistrement que
vous voulez supprimer
zoneName
id
Paramètres sortants
Description
Le message d’erreur standard et son code
Veuillez vous referrer au chapitre Description détaillée des balises
Commande
[…]
<command>
<record_delete>
<name>mondomaine.extension</name>
<id>…</id>
</record_delete >
</command>
</api>
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
14
Réponse
<?xml version="1.0" encoding="utf-8"?>
<api>
<response>
<trID>…</trID>
<result code="…">
<msg>…</msg>
</result>
</response>
</api>
3 RÉCAPITULATIF CODES ERREUR
Code
200
502
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
Description
Commande exécutée avec succès
Echec d’autorisation
Requête invalide
Le nom de la zone ne doit pas être vide
Zone non trouvée
La zone est inactive
Enregistrement malformé (type inconnu)
Enregistrement non rajouté à la zone
Erreur inattendue
La zone existe déjà
Domaine et Objet de Zone non trouvé
Domaine non trouvé
Object non trouvé
Contacts non trouvé pour l’objet
Vous n’êtes ni contact Registrant, ni contact Technique, ni contact Administratif pour
ce domaine
Vous n’avez pas la gestion DNS avancée active pour ce domaine
Le NS primaire n’est pas chez Namebay
L’enregistrement d’appartient pas à la zone
L’enregistrement n’est pas valide pour la zone
L’enregistrement est obligatoire pour la zone
L’enregistrement SOA est invalide
Le TTL est invalide
Serveur injoignable
Tous les droits de copie, de diffusion de ce document sont la propriété exclusive de la société SAM NAMEBAY
Namebay SAM - 27 Boulevard des Moulins 98000 Monaco – Phone : +377 97 70 61 64 – eMail : [email protected]
15