Problèmes d’API

Les problèmes d’API sont les principaux cas que vous pouvez rencontrer lorsque vous travaillez avec des noms de domaine. Chaque fois qu’un domaine est affiché dans l’espace client / d’administration ou qu’une action est demandée sur un nom de domaine particulier, un appel API est effectué.

Chaque cas d’erreur est différent et dépend d’une situation particulière.

Par exemple :

  • Un enregistrement de domaine peut échouer car une donnée fournie par le client ne respecte pas la syntaxe attendue
  • Un changement de serveur de noms peut échouer car les serveurs de noms fournis par le client sont erronés
  • Un bug dans le module fait échouer l’API et un débogage plus approfondi est nécessaire pour comprendre ce qui est demandé par l’application au module et ce que le module a demandé via l’API
 

Exemple

Prenons l’exemple suivant :
Un nom de domaine est déjà enregistré et le client souhaite mettre à jour les informations whois. Pour le contact administratif, il a saisi plusieurs caractères non supportés dans le champ « Adresse 2 » :

Gestion WHOIS nom de domaine

Une fois soumis, un message d’erreur s’affiche pour l’utilisateur :

Message d'erreur

D’accord, mais que faire ? Comment comprendre le problème de votre côté pour aider le client ?

Ouvrez les logs des modules depuis Outils > Process Logs > Modules Activity Logs et recherchez « ModifyWhois » ou le nom de domaine et « Netim » comme nom de module. Nous avons trouvé les lignes suivantes :

Activité des logs du module

La première entrée en partant du bas indique que WISECP a appelé la fonction ModifyWhois. Dans le détail de l’entrée, il y a beaucoup d’informations mais dans notre cas, l’information importante est :

"administrative": {
"Name": "John Doe",
"FirstName": "John",
"LastName": "Doe",
"Company": "",
"Address": "wrong string syntax &e"'(-e_ca)=}$^u*$",
"AddressLine1": "wrong string syntax &e"'(-e_ca)=}$^u*$",
"AddressLine2": null,
"ZipCode": "59160",
"State": "Nord",
"City": "Lille",
"Country": "FR",
"Phone": "123456789",
"Fax": "",
"EMail": "dev-cms@netim.com",
"FaxCountryCode": "",
"PhoneCountryCode": "33"
},

Nous pouvons constater que « Address 2 » a été rempli avec « wrong string syntax &e »‘(-e_ca)=}$^u*$ » 

La réponse affiche également le résultat de la fonction comme suit :

"Response" et "processed"

Bien ! Il s’agit de la bonne fonction. Trouvons maintenant l’appel d’API qui a échoué. Comme l’entrée de la fonction est le premier événement, nous examinons les entrées précédentes. L’entrée précédente avec le nom d’action « ModifyWhois **** (contactCreateObj administrative) » indique que le module a essayé de créer un nouveau contact via l’API avec la fonction SOAP contactcreateObj.

Mais la réponse a été la suivante :

E13 : Address : Some characters are not accepted (accents, symbols, ...)

Bingo : nous avons constaté que le problème s’est produit parce que le client a demandé une mise à jour des informations du contact administratif du nom de domaine avec une adresse contenant des caractères non pris en charge.