1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
| //l'API vous permet de faire 100 calls / sec
//pour afficher les dates en rapport avec votre fuseau
date_default_timezone_set("Europe/Paris");
//paramètres URL
// $numero_suivi : string (Requis) Exemple: EP111111110FR (Identifiant de l'objet recherché de 11 à 15 caractères alphanumériques)
//ne pas tester le code de test suivant : LU680211095FR leur json est buggué ! (message vue dans le tchat d'aide Laposte : "L'API suivi V2 utilisant les numéros de suivis de la SandBox, connait un dysfonctionnement. Ce service est indisponible pour le moment (numéros de suivis de la SandBox) et n'impacte pas le numéro de production.")
$numero_suivi = 'LZ712917377US';
//$lang : string (Optionnel et semble être buggué car ne fonctionne pas)
//default : frFR, enum : ["frFR", "deDE", "enGB", "esES", "itIT", "nl_NL"]
//doc confuse : parfois frFR est mentionné, parfois fr_FR
$lang = 'fr_FR';
$ch = curl_init('https://api.laposte.fr/suivi/v2/idships/'. $numero_suivi . ($lang == '' ? '' : '?lang='. $lang));
//header
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Accept: application/json',
//'X-Forwarded-For: 123.123.123.123', optionnel
'X-Okapi-Key: votre clé sandbox ou de production'
]);
//on met le résultat dans une variable pour ne pas l'afficher ici
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//on ne vérifi pas le SSL
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
//on vérifi si l'éxecution est OK
$data = curl_exec($ch);
if($data === false){
echo "Erreur cURL : ". curl_error($ch);
}else{
//affichage des données de suivi
$donnees = json_decode($data, true);
//pour tester avec le code LU680211095FR (rajout de l'accolade manquante)
//$donnees = json_decode($data.'}', true);
//si ya une erreur avec le code ou autre
if($donnees['returnCode'] !== 200){
echo "Erreur : ". $donnees['returnMessage'];
}else{
//aucune erreur, on affiche le suivi
var_dump($donnees);
}
//debug
echo "<pre>". $data ."</pre>";
}
// Fermeture de la session cURL
curl_close($ch); |
Partager