Demander les données d’un étudiant X après s’être authentifié – getData.php

Vous avez suivi la leçon précédente, et vous avez maintenant dans votre poche un tokenun renew_token

Ce couple est attaché à un seul et unique utilisateur . Chaque utilisateur aura donc un couple token/renew_token différent

Pour l’instant nous n’avons pas ouvert à des niveaux d’API supérieurs qui permettront d’avoir des accès globaux mais il y a un couple de token/renew_token pour chaque utilisateur et evidemment codé differemment en fonction des écoles hébergées.

Vous voulez maintenant récupérer les données de l’étudiant en question à savoir son nom, prénom, email etc…en utilisant le endpoint getData.php

1 – Coder votre token pour transmission

$coding_decode=secured_encrypt($token);

Il s’agit de toujours la même fonction qui vous est fourni.

2 – Envoyez en GET la chaine codée via cURL Attention de bien utiliser l’urlencode dans le GET.

$ch = curl_init($_DOMAIN.’/api/getData.php?authtoken=’.urlencode($coding_decode)); // Initialise cURL <– here get all public formation
$authorization = “Authorization: Bearer “.$TOKENAPI; // vous utilisez toujours votre TOKENAPI perso.
curl_setopt($ch, CURLOPT_HTTPHEADER, array(‘Content-Type: application/json’ , $authorization )); // Inject the token into the header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // This will follow any redirects
$result = curl_exec($ch); // Execute the cURL statement
curl_close($ch); // Close the cURL connection
echo $result;

3 – Le systéme vous donne en retour une chaine codée

{
“id”:”w082q9BrFxNt3xeyE9kpew==”,
”prenom”:”iXRdLEpM1+Dz6s9uJNFW4Q==”,
”nom”:”mPYBpg+qg999l4a6ZZnREw==”,
”email”:”iVe5JBahp3H02Ubv+8QT9rs75xU3wg2vBIHtD8hK92A=”,
”adresse”:”R12S9vVsq8TA3K9p7W1ruw585ETS+7bDtpReTqzstzo=”,
”zipcode”:”inPEnuTJ9Khy+bfb9e7xAA==”,
”city”:”j3br6nHsATNPBQqQ8Bx4Jg==”,
”country”:”FHLfiP7F7iNkg3zOPfoBZQ==”,
”region”:”9MU1LTxMm+pezNLNMU4MPg==”,
”language”:”OuOSG8oqDh+EkQ17qA2ZaQ==”,
”entity”:”WKxM1rengJXRtAtiEi+HsQ==”,
”membre”:”78XsaNUMlxjCw37sHbCUBg==”
}

Toutes les données utiles sont dans le JSON retournée mais le JSON est cryptée.

4 – Decryptez chaque champs retourné

Vous pouvez utiliser :

openssl_decrypt($string,”AES-128-ECB” ,$salt);

Le $string est la valeur de chaque champs.

Attention de bien utilisez un json_decode avant puis parsez les données une par une.

Le $salt est votre TOKENAPI

Les données ne sont décryptables QUE par le script qui appelle. Un autre développeur avec un autre TOKENAPI aura une chaine différente pour la même école.

Cours: API – FMANAGER

1: Authentification à l’API du FMANAGER – getAuth.php

Tous les exemples seront en PHP mais vous pouvez vous connecter en utilisant n’importe quel language. Nous avons en place une REST API qui renvoie du JSON. Comment s’authentifier à l’API du FMANAGER ? Pour l’instant, seuls les utilisateurs avec un rôle “étudiant” sont autorisés à se connecter via l’API. Vous devez être munis de 3...

2: Demander les données d’un étudiant X après s’être authentifié – getData.php

Vous avez suivi la leçon précédente, et vous avez maintenant dans votre poche un token, un renew_token Ce couple est attaché à un seul et unique utilisateur . Chaque utilisateur aura donc un couple token/renew_token différent Pour l’instant nous n’avons pas ouvert à des niveaux d’API supérieurs qui permettront d’avoir des accès globaux mais il y a...

3: Renouveler le Token avec le renew_token – getRenewToken.php

Vous devez fournir à l’endpoint getRenewToken.php la clé de renouvellement à savoir renew_token que vous avez obtenu pour cet utilisateur par le passé. Vous la passez evidemment codée avec secured_encrypt() $RENEW_TOKEN = ’688886fe68feafe9e9eb1d77d1ee8c2bb94ad8306d90b00733feab3195ec9f81d88e5237803571c2084edcef1067a3e65f5b91af2984493b’; $crypt_token=secured_encrypt($RENEW_TOKEN); header(‘Content-Type: application/json’); // Specify the type of data $ch = curl_init($_DOMAIN.’/api/getRenewToken.php?renew=’.urlencode($crypt_token)); // Initialise cURL <– here get all public formation //$post...

4: Appelez une IFRAME avec le profil de l’étudiant pour permettre l’édition des données.

Pour l’instant l’API ne permet pas de modification des données “à distance” mais permet d’appeler une iframe hébergée chez nous où la gestion de droit du FMANAGER est opérationnel et elle permet à une utilisateur de pouvoir modifier des informations basiques tout seul. Un autre moyen est bien sûr de se logguer directement au back-office...