Gandi.net Groups

Gandi API: safe_mode=false

Vous devez être connecté pour poster de nouveaux messages. Créer un compte.

Bonjour,

pour des outils de modification en masse de domaines, j'ai souhaité
utiliser le safe_mode=false au login. Mais ça ne passe pas quelque
soit la valeur fournie. Mon code:

    use XMLRPC::Lite;
    my $proxy = XMLRPC::Lite->proxy("https://api.gandi.net/xmlrpc/");
    my $reply = $proxy->call("login", "HRA1-GANDI", "XXXXX", "False");
    my $session = $reply->result();

Je n'obtiens que des types invalides.
could not login because: DataError: invalid type for boolean [safe:
False]
could not login because: DataError: invalid type for boolean [safe:
false]
could not login because: DataError: invalid type for boolean [safe: 0]

La doc de l'api précise pourtant bien "False" comme valeur.

Avez-vous une idée du problème dans mon code?
On Mar, 13 2007 13:43 CET, Cyril Bellot wrote:
Bonjour,

pour des outils de modification en masse de domaines, j'ai souhaité
utiliser le safe_mode=false au login. Mais ça ne passe pas quelque
soit la valeur fournie. Mon code:

    use XMLRPC::Lite;
    my $proxy = XMLRPC::Lite->proxy("https://api.gandi.net/xmlrpc/");
    my $reply = $proxy->call("login", "HRA1-GANDI", "XXXXX", "False");
    my $session = $reply->result();

Je n'obtiens que des types invalides.
could not login because: DataError: invalid type for boolean [safe:
False]
could not login because: DataError: invalid type for boolean [safe:
false]
could not login because: DataError: invalid type for boolean [safe: 0]

La doc de l'api précise pourtant bien "False" comme valeur.

Avez-vous une idée du problème dans mon code?
En effet, il faut que la valeur soit un booléen False si l'on souhaite
désactiver le safe mode. Pour construire un booléen False avec la
bibliothèque XMLRPC::Lite, on peut utiliser :
XMLRPC::Data->type('boolean')->value(0).

Exemple :
my $safe_mode = XMLRPC::Data->type('boolean')->value(0);
my $proxy = XMLRPC::Lite->proxy("https://api.gandi.net/xmlrpc/");
my $reply = $proxy->call("login", "HRA1-GANDI", "XXXXX", $safe_mode);
my $session = $reply->result();

Je vais compléter la documentation à ce sujet.
\o/ Pierrick "dek\" Prévert
 G  Gandi
Le 13 mar 2007 à 14:11 CET, Pierrick "dek\" Prévert a écrit :
En effet, il faut que la valeur soit un booléen False si l'on
souhaite
désactiver le safe mode. Pour construire un booléen False avec la
bibliothèque XMLRPC::Lite, on peut utiliser :
XMLRPC::Data->type('boolean')->value(0).
L'auth passe bien avec ça, mais je n'arrive pas plus à récupérer les
NS d'un domaine avec le code d'exemple de l'api (toujours en perl). Le
même code passait bien en environnement OTE.

En environnement OTE, les domaines interrogés avaient été créés par
XMLRPC. En environnement de prod, les domaines interrogés étaient
préexistants.
On Mar, 13 2007 17:44 CET, Cyril Bellot wrote:
L'auth passe bien avec ça, mais je n'arrive pas plus à récupérer
les
NS d'un domaine avec le code d'exemple de l'api (toujours en perl). Le
même code passait bien en environnement OTE.

En environnement OTE, les domaines interrogés avaient été créés
par
XMLRPC. En environnement de prod, les domaines interrogés étaient
préexistants.
Pouvez-vous me donner un domaine sur lequel je pourrais constater ce
comportement ?
\o/ Pierrick "dek\" Prévert
 G  Gandi
Le 14 mar 2007 à 10:59 CET, Pierrick "dek\" Prévert a écrit :
Pouvez-vous me donner un domaine sur lequel je pourrais constater ce
comportement ?
avec teaser.net par exemple. J'ai essayé plein d'autres domaines
rattachés à notre handle également.

teaser.net:
could not retrieve domain 'teaser.net' name servers list because:
DataError: not enough privileges to access domain [domain: teaser.net]
On Mar, 15 2007 13:45 CET, Cyril Bellot wrote:
avec teaser.net par exemple. J'ai essayé plein d'autres domaines
rattachés à notre handle également.

teaser.net:
could not retrieve domain 'teaser.net' name servers list because:
DataError: not enough privileges to access domain [domain: teaser.net]
En fait : HRA1-GANDI n'est ni le propriétaire ni le revendeur du
domaine teaser.net (propriétaire: F516-GANDI, revendeur: HBA1-GANDI).
L'API permet de manipuler :
* En safe mode à True, les objets dont le revendeur est le contact
loggé et dont le propriétaire est le contact vers lequel on a
effectué un su.
* En safe mode à False, les objets dont le revendeur est le contact
loggé.

La gestion des droits de l'API est sensiblement différente de celle du
web et un peu plus restrictive, étant destinée aux revendeurs.
D'après les différents retour, il apparaît que la description de la
gestion des droits n'est pas claire : on va remanier la documentation.
\o/ Pierrick "dek\" Prévert
 G  Gandi
On 2007-03-16, Pierrick "dek\" Prévert <pierrick+news@gandi.net> <Pierrick> wrote:
En fait : HRA1-GANDI n'est ni le propriétaire ni le revendeur du
domaine teaser.net (propriétaire: F516-GANDI, revendeur: HBA1-GANDI).
L'API permet de manipuler :
* En safe mode à True, les objets dont le revendeur est le contact
loggé et dont le propriétaire est le contact vers lequel on a
effectué un su.
* En safe mode à False, les objets dont le revendeur est le contact
loggé.

La gestion des droits de l'API est sensiblement différente de celle du
web et un peu plus restrictive, étant destinée aux revendeurs.
D'après les différents retour, il apparaît que la description de la
gestion des droits n'est pas claire : on va remanier la documentation.
Ok merci beaucoup.
On Mar, 16 2007 11:50 CET, Cyril Bellot wrote:
Ok merci beaucoup.
Pas de souci. N'hésitez pas à demander ou suggérer des
éclaircissements, précisions etc. Cela nous permet d'améliorer la
documentation pour que d'autres ne s'y perdent pas. Merci à vous !
\o/ Pierrick "dek\" Prévert
 G  Gandi