Journal SNCF et OpenData : API disponibles

Posté par . Licence CC by-sa
Tags :
33
25
fév.
2016

Comme je n'ai pas vu passer l'info ici, je poste la nouvelle. Désolé s'il y a doublon.

La SNCF a mis à disposition des API permettant d'obtenir des informations fort intéressantes telles que :

  • calcul d'itinéraire en train de gare à gare
  • recherche d'horaires planifiés de gare en gare
  • recherche automatique de noms de gare
  • grille horaire de ligne.

Il est également possible, pour ceux qui habitent en Ile de France d'utiliser une API permettant d'obtenir les horaires en temps réel (celle qui m'intéresse le plus). Enfin une API permet de "jouer avec les données de transport public en France et à l'international" (on pourrait y trouver des infos intéressantes pour faire des statistiques).

Attention cependant, ces API ne sont pas utilisables en "libre service" : il faut s'enregistrer et il y a des limites (ce qui est compréhensible quelque part). A première vue elles paraissent raisonnables pour un particulier qui lirait ces infos via une application quelconque (par exemple, le nombre d'appels est limité à 20 appels/minutes pour l'API des horaires en temps réel, et chose curieuse, il faut envoyer un mail pour obtenir es identifiants d'utilisation pour cette API).

Alors certes ce n'est pas 100% parfait (je pense notamment à cette inscription par mail assez étrange), mais c'est une très bonne chose. J'espère que ce n'est qu'un début et que la SNCF continuera dans cette voie (On râle quand ça ne va pas, mais il faut dire également que c'est bien lorsqu'on voit des choses positives).

Plus d'infos sur ://data.sncf.com/api

  • # vu dans précédent nourjal

    Posté par (page perso) . Évalué à 5.

    Cela apparaissait dans les commentaires de ton précédent journal : https://linuxfr.org/users/totof2000/journaux/hs-enfin-presque-sncf-transilien-fr-du-gros-n-importe-quoi#comment-1637564

    http://monrer.com est basé sur https://ressources.data.sncf.com/explore/dataset/api-temps-reel-transilien/ comme décrit sur http://x0r.fr/blog/55 (très intéressant le système de cache).

    chose curieuse, il faut envoyer un mail pour obtenir es identifiants d'utilisation pour cette API).

    pourquoi étrange ? Pour poster sur LinuxFr.org, tu as bien une inscription aussi, non ? Ainsi que pour bénéficier de l'API OAuth2 où tu dois enregistrer ton application, ce que certains ont fait avec succès
    Cela permet de tracer les utilisations et appliquer au besoin des limitations (authentification préalable à l'appel d'API, throttling comme tu l'indiques avec la limitation à 20 appels/minute…).

    Espérons que l'officialisation de ces API permettra le foisonnement d'applications (libres) plus pratiques que ce que propose la SNCF ;-) (un couplage avec la RATP serait bien pratique aussite, notamment pour évaluer les itinéraires de secours et voir directement l'ampleur des incidents, car parfois c'est tout de même en cascade, Murphy n'étant souvent pas très loin).

    • [^] # Re: vu dans précédent nourjal

      Posté par . Évalué à 1.

      C'est vraiment dommage que la RATP ne libère pas ses données - horaires en temps réel. La plupart des autres villes le font (Rennes, Toulouse de souvenir…)
      Des projets comme celui-ci pourraient être plus précis : https://github.com/ibaaj/paris-dashboard

      • [^] # Re: vu dans précédent nourjal

        Posté par (page perso) . Évalué à 2.

        C'est vraiment dommage que la RATP ne libère pas ses données - horaires en temps réel.

        Quand on voit la ponctualité du RER (pannes de signalisation etc. incluses), on peut comprendre :-)

    • [^] # Re: vu dans précédent nourjal

      Posté par . Évalué à 3.

      pourquoi étrange ? Pour poster sur LinuxFr.org, tu as bien une inscription aussi, non ?

      Je n'ai jamais envoyé de mail pour m'inscrire sur linuxfr.

      va voir sur https://ressources.data.sncf.com/explore/dataset/api-temps-reel-transilien/

      Cela permet de tracer les utilisations et appliquer au besoin des limitations (authentification préalable à l'appel d'API, throttling comme tu l'indiques avec la limitation à 20 appels/minute…).

      Mais pourquoi envoyer un mail pour s'inscrire ?

      Espérons que l'officialisation de ces API permettra le foisonnement d'applications (libres) plus pratiques que ce que propose la SNCF ;-)

      J'espère aussi ;)

      (un couplage avec la RATP serait bien pratique aussite, notamment pour évaluer les itinéraires de secours et voir directement l'ampleur des incidents, car parfois c'est tout de même en cascade, Murphy n'étant souvent pas très loin).

      +1

      • [^] # Re: vu dans précédent nourjal

        Posté par (page perso) . Évalué à 2.

        Je n'ai jamais envoyé de mail pour m'inscrire sur linuxfr.

        bah, autre méthode (plus classique) sur LinuxFr.org : tu remplis un formulaire, tu confirmes son existence en cliquant sur le lien reçu avec un secret partagé… avec sympa, tu peux gérer ton inscription à des ML via envoi de mail ou formulaire (qui envoie en fait un mail :D). On va dire qu'à la sncf, ils ne savent pas faire de formulaires et préfèrent exposer des mails persos pro (une ML ou une BàL partagée dédiée aurait déjà été un peu mieux…), c'est un choix :-)

    • [^] # Re: vu dans précédent nourjal

      Posté par . Évalué à 2.

      Cela apparaissait dans les commentaires de ton précédent journal : https://linuxfr.org/users/totof2000/journaux/hs-enfin-presque-sncf-transilien-fr-du-gros-n-importe-quoi#comment-1637564

      Mémoire de poisson rouge : je ne me rappelais plus. ee me suis quand même demandé si ça n'avait pas été indiqué dans les commentaires du journal, puis finalement je me suis dit qu'un journal dédié pourrait intéresser ceux qui n'ont pas suivi la discussion.

      • [^] # Re: vu dans précédent nourjal

        Posté par (page perso) . Évalué à 2.

        puis finalement je me suis dit qu'un journal dédié pourrait intéresser ceux qui n'ont pas suivi la discussion

        ah mais, c'est très bien ;-)
        je ne suis pas sûr qu'à l'époque ils avaient déjà mis leurs API en avant sur le même site que l'opendata ;-)

        Reste maintenant à avoir la complétude :

        • j'ai déjà la chance d'avoir le RER C et la ligne L avec les horaires en opendata
        • ajouter la ligne N ce serait pas mal
        • ajouter le tram T2 et le bus 171 de la RATP

        proposer d'avoir tous les itinéraires possibles en voyant les incidents en cours sur chacun et cela sera du rêve.
        Bon, sinon, à chacun de faire comme genma< http://genma.free.fr/?Ma-page-de-raccourcis-d-horaires-de-bus-train mais bon, je n'ai jamais réussi à trouver l'après-midi pour le mettre en place (ça va se finir comme cela pour autant, je le sens…).

        Peut-être que transilien compte faire de l'orchestration et proposer ce genre de services (étant commun entre RATP et SNCF…), mais bon j'ai comme un doute :/ Ils ne seraient pas très loin d'être en mesure de proposer le service dans mon cas, resterait à l'étendre au reste des grandes villes françaises ayant cette diversité et ce maillage de transports.

  • # API SNCF temps-réel et API navitia.io basées sur le logiciel open source Navitia

    Posté par . Évalué à 10.

    L'API SNCF (ensemble des trains SNCF en temps réel) et l'API navitia.io (1200 réseaux de transport public du monde entier) sont toutes les deux basées sur le logiciel open source Navitia : https://github.com/CanalTP/ développé par Kisio Digital (anciennement Canal TP, car on a changé de nom récemment)
    Sur l'API navitia.io il y a un Forum GoogleGroup et un Freenode IRC, channel #navitia pour échanger avec l'équipe Navitia, les contributeurs et réutilisateurs

  • # enfin

    Posté par . Évalué à -2. Dernière modification le 26/02/16 à 14:36.

    Enfin c'est pas trop tôt. Je leur avait demandé sur Twitter il y a 4 ou 5 ans s'ils avaient une API, je ne voulais rien de plus qu'une grille horaire. Ils m'avaient, en gros, envoyé me faire voir.

  • # Open Data ?

    Posté par . Évalué à 2.

    Je suis allé sur la page https://data.sncf.com/api/fr/cgu

    Certes dans le titre de la page, la SNCF écris en gros "open data" il n'en demeure pas moins que la licence pour accéder aux données, dont la dernière version date de novembre 2015, précise (je cite):La SNCF est titulaire de tous les droits de propriété, y compris intellectuelle portant sur l’API, les Bases de données, Informations et Documentation. Seule SNCF peut en définir contractuellement les conditions d’utilisation. SNCF conserve l'entière propriété des titres et droits de propriété quels qu'ils soient y attachés.
    Aucun titre ou droit de propriété attaché à l’API, aux Données, Bases de Données, Documentation ou Informations n'est transféré à l’Utilisateur

    C'est peut être ouvert dans le sens ou les données sont "accessibles" mais en tous cas on me semble bien loin d'une vraie licence de type "open source" ou libre ou en tous cas d'une vraie licence "ouverte".

    Ce n'est donc pas demain que le site OSM Tchou Tchou (railradar.fr) va pouvoir refonctionner :-(

    • [^] # Re: Open Data ?

      Posté par (page perso) . Évalué à 3.

      Plutôt https://data.sncf.com/licence « LICENCE SNCF OPEN DATA », qui décrit les droits accordés sur les données et les limitations, comme « un volume d’Extraction de 20 (vingt) requêtes par minute et par terminal connecté ».

      On peut aussi citer https://data.sncf.com/legal_informations : « A l’exception de sites diffusant notamment des informations et/ou contenus ayant un caractère illégal et/ou notamment à caractère politique, religieux, pornographique un Utilisateur peut créer un lien hypertexte sur un site vers le Site.  »

  • # Cool...

    Posté par (page perso) . Évalué à 1.

    Si ça peut aider à développer des services et applis tièrces pour avoir les horaires de train… Parce que qu'en ce moment, le site du transilien c'est une méga-catastrophe.

  • # L'API SNCF et openData

    Posté par . Évalué à 2.

    Bonjour,
    je me permet de fournir un peu de contexte que j'ai pu récupéré à droite à gauche (aux meet-ups open Transport chez Mozilla en particulier https://air.mozilla.org/search/?q=Open+Transport) pour éclairer les ceusses qui se posent des questions. On est bien d'accord, malgré le discours affiché "openData", la SNCF en mettant à disposition une API, reste très "prudente" :-).

    Cette API a été mise en place essentiellement pour fournir 2 nouveaux types de données : le temps réel et les données TGV.

    Pour ce qui est du temps réel, la SNCF reste frileuse sur l'utilisation qui peut en être faite si la donnée est fournie de manière globale: les problématiques de taux de retard sont assez crispantes pour tout le monde. L'API leur semble une bonne solution, dès lors qu'elle présente des services voyageur tirant parti du temps réel et ne permet pas de tirer des conclusions simplistes sur l'exploitation des trains…
    A ce sujet, la doc sur le site https://data.sncf.com/api/fr/documentation n'est pas à jour, mais si vous allez sur http://doc.navitia.io (le moteur sous l'API SNCF est navitia), vous verrez que 2 services de l'API sont dédiés aux retards et suppressions de train
    - "/disruptions" qui permet de récupérer l'ensemble des perturbations en cours
    - "/traffic_reports" qui permet d'avoir l'état du trafic
    - sans compter que tous les autres services tirent parti du temps réel: le calcul d'itinéraire (qui permet d'obtenir des itinéraires adaptés, utilisant les retards et annulation), les tableaux de départ…

    Pour ce qui est du TGV, la SNCF a déjà ouvert (avec de vrais licences) toutes ses données locales:
    - Transilien (https://ressources.data.sncf.com/explore/dataset/sncf-transilien-gtfs/)
    - et TER (https://ressources.data.sncf.com/explore/dataset/sncf-ter-gtfs/).
    Mais pour le moment, elle ne souhaitait pas fournir les horaires de circulation des TGV (et je ne trollerai pas là-dessus, c'est trop facile :-) )

    Et enfin, j'ai lu aussi un commentaire concernant l'ouverture de données RATP et Transilien de façon homogène. Ça existe, c'est le STIF qui le fait : https://opendata.stif.info/explore/dataset/offre-horaires-tc-gtfs-idf/
    Par contre, il n'y a pas de temps réel. Pour ça, pour le moment, il faut continuer à scrapper http://wap.ratp.fr ;-)

    Si vous avez un doute, sur le site http://www.navitia.io, vous pouvez trouvez tous les jeux de données transport en opendata existant aujourd'hui. Ces jeux de données sont dispos via https://api.navitia.io ou en téléchargement via cet unique endPoint: https://navitia.opendatasoft.com/explore. L'équipe Navitia vous a même préparé un jeu de données "France complète" qui peut être intéressant https://navitia.opendatasoft.com/explore/dataset/merged/

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.