37

Appelez l'API du service

Pour exécuter une action sur bezillion.com, vous envoyez simplement une requête HTTP à l'adresse https://bezillion.com/api suivie du nom de l'action et d'une série de paramètres :

https://bezillion.com/api/v1/action?login=abcdef&password=ABCDEF

Vous DEVEZ utiliser une connexion HTTPS pour garantir la confidentialité de votre code d'identification et de votre mot de passe, et implicitement, des fichiers échangés avec le service. Dans le cas contraire, la requête retourne un code HTTP 301 Moved Permanently. Le certificat du serveur a été signé par Let's Encrypt.

action vaut getcredit, indexfile, searchfile, relatefile ou unindexfile, login et password sont votre code d'identification et votre mot de passe. Selon l'action, la requête est un GET, un POST ou un DELETE et plus de paramètres peuvent être nécessaires.

Votre code d'identification en 6 lettres minuscules est affiché en gras sur votre page d'accueil. Pour changer votre mot de passe, appuyez sur le bouton pour accéder à la configuration de votre compte dans la barre de menu.

Essayez d'entrer https://bezillion.com/api/v1/getcredit?login=abcdef&password=ABCDEF dans la barre d'adresse de votre navigateur en remplaçant abcdef et ABCDEF par votre code d'identification et votre mot de passe.

IMPORTANT : N'oubliez pas d'effacer l'historique du navigateur après un test d'une URL avec votre code d'identification et votre mot de passe.

API

Tous les appels à l'API retournent soit un code d'erreur HTTP tel que HTTP/1.1 400 Bad Request, HTTP/1.1 401 Unauthorized ou HTTP/1.1 500 Internal Error, le code HTTP/1.1 204 No Content si le document est vide ou si l'extraction du texte n'a rien retourné, ou le code HTTP/1.1 200 OK avec comme contenu la représentation textuelle d'une structure JSON application/json. La structure JSON contient toujours les champs status et data. status vaut success ou fail et parfois error. data vaut null ou toute autre valeur retournée par l'action demandée.

Vous pouvez tout simplement utiliser une commande comme curl pour appeler bezillion.com.

$ curl -D - -X GET "https://bezillion.com/api/v1/getcredit?login=abcdef&password=ABCDEF"

Tapez la commande suivante pour effacer l'historique du shell après un test d'une URL avec votre code d'identification et votre mot de passe :

$ history -c

Dans un programme, vous voudrez une fonction capable d'envoyer une requête HTTP à un serveur et de récupérer les données retournées. Pour exécuter les exemples en PHP, téléchargez les fichiers sendhttp.php et filemimetype.php de la librairie iZend et copiez-les dans l'espace de votre propre application.

Le fichier sendhttp.php définit les fonctions sendget, sendpost et senddelete.

Lisez la page sendhttp de la documentation sur iZend pour plus de détails techniques.

sendget
sendpost
senddelete
SYNOPSIS

sendget($url, $args, $options=false, $header=false)

sendpost($url, $args, $files=false, $base64=false, $options=false, $header=false)

senddelete($url, $args, $options=false, $header=false)

DESCRIPTION

sendget envoie une requête GET à un serveur HTTP à l'adresse spécifiée par $url avec les paramètres dans $args.

sendpost retourne le document renvoyé par l'appel du service HTTP à l'adresse $url en POST avec les arguments $args et les pièces jointes $files encodées en base64 si $base64 vaut true.

senddelete envoie une requête DELETE à un serveur HTTP à l'adresse spécifiée par $url avec les paramètres dans $args.

sendget, sendpost et senddelete acceptent une URL avec des paramètres (query string) qui doivent être échappés.

$url est une chaîne de caractères avec le format https://bezillion.com/api/v1/actionaction désigne la fonction demandée telle que getcredit.

$args est un tableau contenant la liste des valeurs des paramètres de la fonction appelée tel que array( 'login' => 'abcdef', 'password' => 'ABCDEF', ... ). NOTE : Les paramètres dans $args sont automatiquement échappés.

$files contient la liste des fichiers ajoutés en pièces jointes sous la forme d'un tableau associatif { 'docname' => {'name' => 'filename', 'type' => 'mimetype', 'tmp_name' => 'pathname'}, ... }. Ce paramètre est optionnel. Typiquement, il permet de passer un fichier transmis par une balise <input type="file" name="docname"... /> d'un formulaire HTML. Si $base64 est à true, les contenus des fichiers sont encodés en base64.

sendget, sendpost et senddelete retournent un tableau contenant le code HTTP, l'en-tête et le corps du document renvoyés par le serveur ou false en cas d'erreur.

Le fichier filemimetype.php définit la fonction file_mime_type.

Lisez la page file_mime_type de la documentation sur iZend pour plus de détails techniques.

file_mime_type
SYNOPSIS

file_mime_type($file, $encoding=true)

DESCRIPTION

file_mime_type retourne le type MIME du fichier $file; e.g. text/plain. Si $encoding vaut true, file_mime_type ajoute l'encodage utilisé pour les caractères des données, e.g. text/plain; charset=utf-8. Le type MIME et le type d'encodage sont séparés par un ; (POINT-VIRGULE) suivi d'un caractère d'espacement (ESPACE).

EXEMPLE

En supposant que vous avez placé le fichier sendhttp.php dans le répertoire courant, lancez PHP en mode interactif, chargez la fonction sendget et appelez-la avec en argument l'URL https://bezillion.com/api/v1/getcredit et un tableau contenant votre code d'identification et votre mot de passe :

$ php -a
php > require_once 'sendhttp.php';
php > $r=sendget('https://bezillion.com/api/v1/getcredit', array('login' => 'abcdef', 'password' => 'ABCDEF'));
php > echo $r[0] == 200 ? $r[2] : 'HTTP ERROR ' . $r[0];
{"status":"success","data":{"credit":10}}
php > quit
VOIR AUSSI

Vérifiez votre crédit

Commentaires

Pour ajouter un commentaire, cliquez ici.