Retour en haut

L'API « cachée » de Colissimo

posté le mardi 22 février 2011 à 17:23:13 par delphiki :: Web

Mise à jour du 13 octobre 2011 : le script est de nouveau fonctionnel ! C'est par ici que ça se passe : Du nouveau pour l'API Colissimo



Mise à jour du 25 février 2011 : la Poste m'a contacté sur Twitter (ici et ) pour m'indiquer que l'API était réservé à la Poste et ses partenaires, et aussi pour me dire que celle-ci fonctionnait toujours, mais que mon IP avait dû être bloquée pour activité anormale. ;-)

Vous pouvez donc toujours l'utiliser, mais sans en abuser, et à bon escient.
P.S.: Je me décharge totalement de l'utilisation que vous en ferez.


Mise à jour du 24 février 2011 : La Poste n'aura pas mis longtemps à réagir, l'accès à l'API vient d'être coupé, on obtient désormais un joli The requested page has been removed.

On peut sans doute s'attendre à une mise à jour prochaine de leur application mobile, vu que du coup, ils l'ont fait planter comme il faut :

application_laposte.png



Mise à jour du 23 février 2011 : J'ai créé une petite lib PHP pour se servir de l'API plus simplement.
Celle-ci est disponible sur GitHub.


Un ami est venu me voir récemment pour me poser une question par rapport à l'API Twitter.

Il cherchait aussi un moyen de récupérer les résultat d'une recherche de suivi Colissimo, mais ne trouvant pas d'API et les résultats étant sous forme d'images et non de textes (la poste ne doit pas connaître la notion d'accessibilité), il voulait se diriger vers un système OCR, ce qui aurait été un peu casse-tête et pas garanti à 100%.

Cependant, il existe une application Android faite par la poste remplissant le même rôle que le site web.
Ni une, ni deux, un petit TCP dump en utilisant l'application nous dévoile des choses intéressantes !

En effet, on peut notamment observer ce genre de choses :

GET /outilsuivi/web/suiviInterMetiers.php?key=d112dc5c716d443af02b13bf708f73985e7ee943&method=xml&code=8L12345678912 HTTP/1.1
User-Agent: Dalvik/1.4.0 (Linux; U; Android 2.3.2; Desire HD Build/FRG83D)
Host: www.laposte.fr


Après quelques tests, on peut donc se rendre compte des possibilités offertes par cette découverte.

URL à appeler : http://www.laposte.fr/outilsuivi/web/suiviInterMetiers.php
Paramètres GET :

NomValeur(s)
keyd112dc5c716d443af02b13bf708f73985e7ee943
(cette valeur semble toujours fonctionner à l'heure où j'écris ces lignes)
method
  • aucune (le résultat sera une image)
  • xml
  • json
codeLe code de suivi de colis

Par exemple, avec l'URL extraite du dump TCP, on obtient le XML suivant :

<response>
  <status>
    <![CDATA[1]]>
  </status>
  <code>
    <![CDATA[8L84527382672]]>
  </code>
  <client>
    <![CDATA[Particulier]]>
  </client>
  <date>
    <![CDATA[07/02/2011]]>
  </date>
  <message>
    <![CDATA[Votre colis a été remis au gardien]]>
  </message>
  <gamme>
    <![CDATA[4]]>
  </gamme>
  <base_label>
    <![CDATA[Coliposte]]>
  </base_label>
  <link>
    <![CDATA[http://www.coliposte.net/particulier/suivi_particulier.jsp?colispart=8L84527382672]]>
  </link>
  <error>
  </error>
</response>

Version JSON :

{
  "status":true,
  "code":"8L84527382672",
  "client":"Particulier",
  "date":"07\/02\/2011",
  "message":"Votre colis a \u00e9t\u00e9 remis au gardien",
  "gamme":"4",
  "base_label":"Coliposte",
  "link":"http:\/\/www.coliposte.net\/particulier\/suivi_particulier.jsp?colispart=8L84527382672",
  "error":null
}

Ou sous forme d'image :

http://www.laposte.fr/outilsuivi/web/suiviInterMetiers.php?key=d112dc5c716d443af02b13bf708f73985e7ee943&code=8L84527382672


A vous désormais de vous servir de ces maigres informations comme bon vous semble. ;-)tr


Commentaires :

# Nesquik69, le mardi 22 février 2011 à 17:27:51

Intéressante découverte, ça pourra peut-être servir un jour !

D'ailleurs, je ne comprends pas pourquoi Colissimo ne souhaite pas dévoiler cette API, ça pourrait être bien utile à pas mal de développeurs.

 
# L'ami en question, le mardi 22 février 2011 à 20:25:46

En fait, LaPoste ne diffuse pas d'API digne de ce nom ou de système à vocation à être utiliser de manière automatique (genre script PHP ou autre) pour une raison simple (en plus du fait que c'est des incapables notoire) :
ils sont sensés rembourser sur demande tous colis livrés sous plus de 2 jours ouvrés. Donc pour des entreprises qui ne veulent pas payer un service pro à LaPoste (service qui apparemment donnerait accès à un logiciel de suivi des colis), le gain sur les rembourssements des colis livré en retard n'est pas négligeable. Si LaPoste donnait gratuitement de tel outil accessible au plus grand nombre et au vu de leur capacité à livré dans les temps, autant qu'ils se tirent une balle dans le pied directement.
Je vais utiliser ce système demain pour une centaine de colis pour un de nos clients, on verra si la clé tient le coup :)

 
# Tsorr, le mercredi 23 février 2011 à 09:38:36

Les sites comme priceminister ont déjà un accès a cette API. C'est juste que normalement c'est payant et le fonctionnement ou la clé pour l'appli android risque de changé assez vite si elle est dévoilé comme ici.

 
# delphiki, le mercredi 23 février 2011 à 12:13:58

@Tsorr, quand la clé changera, il suffira de refaire un dump TCP pour récupérer la nouvelle. ;)

 
# Neuro, le jeudi 24 février 2011 à 10:35:12

Est-ce que si je l'intègre à un de mes programmes, je risque quelque chose - sur le plan judiciaire par exemple?

Parce que on utilise quand même une clé (privée ??)

Quelqu'un a des billes la dessus ?

 
# delphiki, le jeudi 24 février 2011 à 11:13:47

La clé n'est pas vraiment privée, vu que n'importe qui (s'y connaissant un peu, je te l'accorde), peut la trouver, vu qu'elle est diffusée en clair.

Quant à la dimension juridique, je t'avoue ne pas savoir ce qu'il en est.

Comme je l'ai dit, à vous d'utiliser ces info comme bon vous semble, je ne peux pas prendre de décision à votre place. ;-)

 
# nah0y, le jeudi 24 février 2011 à 12:48:30

Bonjour, merci pour l'article :)

Une petite question le dumptcp utilisé est fait à partir d'un device android comme précisé ici : http://source.android.com/porting/tcpdump.html (qui demande apparemment le root) ou par un autre moyen ?

Merci !

 
# delphiki, le jeudi 24 février 2011 à 14:54:53

J'ai effectué le dump tcp grâce à une application qui nécessite en effet d'être "rooté", il s'agit de Shark for Root (native) :)

 
# nah0y, le jeudi 24 février 2011 à 17:24:21

Merci !

 
# bob l'éponge, le vendredi 18 mars 2011 à 16:26:35

l'api marche très bien si on met : key=null

 
# delphiki, le lundi 21 mars 2011 à 10:38:40

Merci, je n'avais pas testé comme ça ;-)

 
# michel, le lundi 18 avril 2011 à 11:10:37

Bonjour à tous. Ca ne semble plus fonctionner ou je me trompe ?

 
# Stéphane, le dimanche 2 octobre 2011 à 11:43:09

Bonjour à tous, parfait cet API pour mon petit site de vente ! ;)
Par hasard, auriez-vous trouvé le moyen de récupérer l'ensemble des suivis, et pas seulement le dernier ?
Parfois, le facteur s'est présenté, mais un autre statut est venu par dessus après, m'empêchant de savoir que le facteur s'était présenté... ;)

Merci pour votre aide !

 
# slax, le mardi 10 janvier 2012 à 23:42:18

http://m.laposte.fr/index.php?cx_stat=1355_661917&xmys_l=2&ssid=5hcgtu9c6ti5tsfrqncapnbnt0&xmys_p=93

regarder ici

Ah les fausses applications pour iphone ;)

 
# Roch, le mercredi 20 juin 2012 à 15:43:40

@Tsorr les gros sites comme Priceminister utilisent l'API d'un logisticien qui renvoi récupère les status de la poste pour les transformer en code inovert.

 
# LOL, le lundi 11 août 2014 à 22:15:37

LOL.
Je déterre...
C'est vraiment des merdes ...
ils ont juste changé la clé ...
6b252eb30d3afb15c47cf3fccee3dc17352dc2d6

 
# miklk, le jeudi 10 septembre 2015 à 13:35:00

Bonjour,

La clé à été changée :

http://www.laposte.fr/outilsuivi/web/suiviInterMetiers.php?code=xxxxxxxx&key=6b252eb30d3afb15c47cf3fccee3dc17352dc2d6&method=xml

 
# hedii, le dimanche 14 février 2016 à 17:41:06

Salut,

Si jamais, j'ai créé un package avec lequel il n'y a pas besoin de clés : https://github.com/hedii/colissimo-api

 
# Juliette, le jeudi 5 mai 2016 à 14:08:48

Franchement, super info ! Merci a tous, c'est super de pouvoir utiliser cette API La Poste

 
Ajouter un commentaire