Appelez l'API du service
Pour exécuter une action sur cronorg.com, vous envoyez simplement une requête HTTP à l'adresse https://cronorg.com/api/v1 suivie du nom de l'action et d'une série de paramètres :
https://cronorg.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 subscription
ou availability
, 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.
IMPORTANT : Cochez l'option API REST dans votre profil utilisateur pour autoriser les appels à l'API avec votre compte.
Si vous ne cochez pas cette option, le service retourne l'erreur HTTP/1.1 403 Forbidden
.
Essayez d'entrer https://cronorg.com/api/v1/subscription?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
, HTTP/1.1 403 Forbidden
ou HTTP/1.1 500 Internal Error
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 cronorg.com.
$ curl -D - -X GET "https://cronorg.com/api/v1/subscription?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 le fichier sendhttp.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://cronorg.com/api/v1/action où action désigne la fonction demandée telle que subscription.
$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.
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://cronorg.com/api/v1/subscription et un tableau contenant votre code d'identification et votre mot de passe :
$ php -a
php > require_once 'sendhttp.php';
php > $r=sendget('https://cronorg.com/api/v1/subscription', array('login' => 'abcdef', 'password' => 'ABCDEF'));
php > echo $r[0] == 200 ? $r[2] : 'HTTP ERROR ' . $r[0];
{"status":"success","data":{"subscription":"2023-12-31"}}
php > quit
Commentaires
Pour ajouter un commentaire, cliquez ici.