diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..723ef36 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8bf3b6e --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 Pierre Grimaud + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README-EN.md b/README-EN.md new file mode 100644 index 0000000..746d0e2 --- /dev/null +++ b/README-EN.md @@ -0,0 +1,507 @@ +# Horaires RATP API + +## Introduction + +This API gives you real time schedules for any given RER (train), Metro, Tramway, Bus or Noctilien stop in real time on the RATP network. + +## REST + + API Server : https://api-ratp.pierre-grimaud.fr/v3 + +This API is RESTful. Data are exposed as URIs which can be retrieved with HTTP clients (such as web browsers). + +## Source code + +Source code of this API is available here : [ratp-api-rest](https://github.com/pgrimaud/ratp-api-rest). + +This project uses the package [horaires-ratp-sdk](https://github.com/pgrimaud/horaires-ratp-sdk) which consume the official RATP API. + +## Traductions + +Ce README est aussi disponible en [français](https://github.com/pgrimaud/horaires-ratp-api/README.md). + +## Documentation + +API documentation is available here : + + https://api-ratp.pierre-grimaud.fr/v3/documentation + +## Examples + +Some examples are available here : + +- [Lines](#lines) +- [Stations](#stations) +- [Destinations](#destinations) +- [Schedules](#schedules) +- [Traffic](#traffic) + +# Format + +Basically, the data returned are available in JSON format. It's possible to get it as XML format by adding a parameter **_format**. + +*JSON Example :* + + GET https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B?_format=json + + { + "result": { + "stations": [ + { + "slug": "porte+des+lilas", + "name": "Porte des Lilas" + }, + { + "slug": "saint+fargeau", + "name": "Saint-Fargeau" + }, + { + "slug": "pelleport", + "name": "Pelleport" + }, + { + "slug": "gambetta", + "name": "Gambetta" + } + ] + }, + "_metadata": { + "call": "GET /stations/metros/3B", + "date": "2017-03-04T02:02:32+01:00", + "version": 3 + } + } + +*XML Example:* + + GET https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B?_format=xml + + + + + + + + + + + + + + + + + + + + + + + + <_metadata> + + + 3 + + + +# Requests examples + +## Lines + +Example of request to retrieve all metro lignes [(link to documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Lines): + + https://api-ratp.pierre-grimaud.fr/v3/metros + + { + "result": { + "metros": [ + { + "code": "1", + "name": "Métro 1", + "directions": "La Defense / Chateau de Vincennes" + }, + { + "code": "2", + "name": "Métro 2", + "directions": "Porte Dauphine / Nation" + }, + { + "code": "3", + "name": "Métro 3", + "directions": "Pont de Levallois - Becon / Gallieni" + }, + { + "code": "3b", + "name": "Métro 3b", + "directions": "Gambetta / Porte des Lilas" + }, + { + "code": "4", + "name": "Métro 4", + "directions": "Mairie de Montrouge / Porte de Clignancourt" + }, + { + "code": "5", + "name": "Métro 5", + "directions": "Place d'Italie / Bobigny - Pablo Picasso" + }, + { + "code": "6", + "name": "Métro 6", + "directions": "Charles de Gaulle - Etoile / Nation" + }, + { + "code": "7", + "name": "Métro 7", + "directions": "Villejuif-L. Aragon / Mairie d'Ivry / la Courneuve - 8 Mai 1945" + }, + { + "code": "7b", + "name": "Métro 7b", + "directions": "Louis Blanc / Pre-Saint-Gervais" + }, + { + "code": "8", + "name": "Métro 8", + "directions": "Pointe du Lac / Balard" + }, + { + "code": "9", + "name": "Métro 9", + "directions": "Mairie de Montreuil / Pont de Sevres" + }, + { + "code": "10", + "name": "Métro 10", + "directions": "Gare d'Austerlitz / Boulogne - Pont de Saint Cloud" + }, + { + "code": "11", + "name": "Métro 11", + "directions": "Chatelet / Mairie des Lilas" + }, + { + "code": "12", + "name": "Métro 12", + "directions": "Front Populaire / Mairie d'Issy" + }, + { + "code": "13", + "name": "Métro 13", + "directions": "St-Denis-Universite/Les Courtilles / Chatillon - Montrouge" + }, + { + "code": "14", + "name": "Métro 14", + "directions": "Olympiades / Saint-Lazare" + }, + { + "code": "Fun", + "name": "Métro Fun", + "directions": "Funiculaire" + }, + { + "code": "Orv", + "name": "Métro Orv", + "directions": "Orly Sud / Antony-RER" + } + ] + }, + "_metadata": { + "call": "GET /lines/metros", + "date": "2017-03-04T02:13:28+01:00", + "version": 3 + } + } + +## Stations + +Example of request to retrieve all stations of the metro line 3B [(link to documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Stations): + + https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B + + { + "result": { + "stations": [ + { + "slug": "porte+des+lilas", + "name": "Porte des Lilas" + }, + { + "slug": "saint+fargeau", + "name": "Saint-Fargeau" + }, + { + "slug": "pelleport", + "name": "Pelleport" + }, + { + "slug": "gambetta", + "name": "Gambetta" + } + ] + }, + "_metadata": { + "call": "GET /stations/metros/3B", + "date": "2017-03-04T02:30:09+01:00", + "version": 3 + } + } + +## Destinations + +Example of request to retrieve all destinations of the metro line 3B [(link to documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Destinations): + + https://api-ratp.pierre-grimaud.fr/v3/destinations/metros/8 + + { + "result": { + "destinations": [ + { + "name": "Pointe du Lac", + "way": "A" + }, + { + "name": "Balard", + "way": "R" + } + ] + }, + "_metadata": { + "call": "GET /destinations/metros/8", + "date": "2017-03-04T02:36:42+01:00", + "version": 3 + } + } + +## Schedules + +Example of request to retrieve next schedules of the bus line N01 at the station République on the direction of Gare de l'est [(link to documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Schedules): + + https://api-ratp.pierre-grimaud.fr/v3/schedules/noctiliens/01/republique/R + + { + "result": { + "schedules": [ + { + "message": "4 mn", + "destination": "Gare de l'Est" + }, + { + "message": "5 mn", + "destination": "Gare de l'Est" + } + ] + }, + "_metadata": { + "call": "GET /schedules/noctiliens/01/republique/R", + "date": "2017-03-04T02:49:26+01:00", + "version": 3 + } + } + +## Traffic + +Example of request to retrieve all traffic on RATP network [(link to documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Traffic): + + https://api-ratp.pierre-grimaud.fr/v3/traffic + + { + "result": { + "metros": [ + { + "line": "1", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "2", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "4", + "slug": "normal_trav", + "title": "Travaux", + "message": "22:00, l'arrêt ne sera pas marqué à Alesia jusqu'au 05/03/17 fin de service. (travaux)" + }, + { + "line": "5", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "6", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "8", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "9", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "10", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "11", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "12", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "13", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "14", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + } + ], + "rers": [ + { + "line": "A", + "slug": "normal_trav", + "title": "Travaux", + "message": "Sam. sf Jours Fér. le trafic sera interrompu entre Nanterre-Prefecture et Cergy/ Poissy jusqu'au 04/03/17. Bus de remplacement à dispo. (travaux)" + }, + { + "line": "B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "C", + "slug": "normal_trav", + "title": "Travaux", + "message": "À partir du lundi 23 janvier 2017 à 03h00, en raison de travaux, l'arrêt n'est pas marqué à la gare Dourdan-la-Foret sur la ligne C du RER jusqu'au vendredi 21 avril 2017 fin de service. Des bus de remplacement sont mis à disposition." + }, + { + "line": "D", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "E", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + } + ], + "tramways": [ + { + "line": "1", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "2", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3A", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "5", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "6", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "8", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + } + ] + }, + "_metadata": { + "call": "GET /traffic", + "date": "2017-03-04T02:42:00+01:00", + "version": 3 + } + } + +# Feedback + +You can [create an issue](https://github.com/pgrimaud/horaires-ratp-api/issues) if needed or contact me on [Twitter](https://twitter.com/pgrimaud_). + + +# License + +Licensed under the terms of the MIT License. \ No newline at end of file diff --git a/README.md b/README.md index 65baf7f..3a04e4a 100644 --- a/README.md +++ b/README.md @@ -1,424 +1,507 @@ -# Horaires RATP API ![Powered by appengine](https://cloud.google.com/appengine/images/appengine-noborder-120x30.gif?csw=1) - -### Changelog - - v2.0.0 - 20151127 - Refonte de l'API - v2.1.0 - 20160222 - Ajout des horaires des bus - v2.1.1 - 20160404 - Clarification des variables "id" - v2.2.0 - 20160421 - Ajout d'une station d'arrivée pour le RER - v2.2.1 - 20160422 - Correctif lié à la gare d'arrivée - v2.3.0 - 20160607 - Ajout des horaires des noctiliens - v2.4.0 - 20160815 - Ajout d'un callback pour les requêtes JSONP - v2.5.0 - 20161022 - Passage en HTTPS - v2.5.1 - 20170118 - Provenance des RER - +# Horaires RATP API + ## Introduction Cette API permet à l'utilisateur de récupérer les horaires RATP (RER, Metro, Tramway, Bus et Noctilien) en temps réel à un arrêt défini. ## REST - API server : https://api-ratp.pierre-grimaud.fr/v2 + Serveur API : https://api-ratp.pierre-grimaud.fr/v3 L'API est principalement RESTful. Les données sont exposées sous la forme d'URI qui représentent des ressources et peuvent être récupérées via des clients HTTP (comme les navigateurs web). -## Limitation -**Nouveauté** : Le nombre de requêtes journalières n'est plus limité. Cependant, un cache serveur de 15 secondes a été mis en place. +## Code source + +Le code source de cette API est disponible ici : [ratp-api-rest](https://github.com/pgrimaud/ratp-api-rest). + +Ce projet utilise la librairie [horaires-ratp-sdk](https://github.com/pgrimaud/horaires-ratp-sdk) qui exploite les données de l'API RATP officielle. + +## Translations + +This README file is also available in [english](https://github.com/pgrimaud/horaires-ratp-api/README-EN.md). -## Données +## Documentation -Type de données | Description ---- | --- - [Lignes](#lignes) | Récupération des données relatives aux Rers, Métros, Tramways, Bus et Noctilien. (nom et destinations) - [Stations](#stations) | Récupération des stations d'une ligne de Rer, Métro, Tramway, Bus et Noctilien. - [Horaires](#horaires) | Récupération des horaires en temps réel d'une station de Rer, Métro, Tramway, Bus ou Noctilien. - [Trafic](#trafic) | Récupération des données de trafic sur l'ensemble du réseau ferré RATP. - - -N.B. : les ressources ``destinations`` sont indépendantes des ressources ``stations``. Par conséquent elles n'ont pas le même ``id``, même si elles partagent la valeur ``name`` ou ``slug``. - -## Format +La liste des ressources est disponible ici : -De base, les données renvoyées sont disponibles au format JSON. Mais il est possible de les récupérer au format XML en ajoutant à chaque requête le paramètre **format**. + https://api-ratp.pierre-grimaud.fr/v3/documentation +## Exemples + +Quelques exemples sont disponibles ici : + +- [Lignes](#lignes) +- [Stations](#stations) +- [Destinations](#destinations) +- [Horaires](#horaires) +- [Trafic](#trafic) + +# Format + +De base, les données renvoyées sont disponibles au format JSON. Mais il est possible de les récupérer au format XML en ajoutant à chaque requête le paramètre **_format**. *Exemple JSON :* - GET https://api-ratp.pierre-grimaud.fr/v2/metros/3B/stations?format=json - + GET https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B?_format=json + { - "response": { + "result": { "stations": [ { - "id": "118", - "name": "Gambetta", - "slug": "gambetta" + "slug": "porte+des+lilas", + "name": "Porte des Lilas" }, { - "id": "119", - "name": "Pelleport", - "slug": "pelleport" + "slug": "saint+fargeau", + "name": "Saint-Fargeau" }, { - "id": "120", - "name": "Porte des Lilas", - "slug": "porte+des+lilas" + "slug": "pelleport", + "name": "Pelleport" }, { - "id": "121", - "name": "Saint-Fargeau", - "slug": "saint+fargeau" + "slug": "gambetta", + "name": "Gambetta" } ] }, - "_meta": { - "version": "2", - "date": "2016-12-05T12:14:39+01:00", - "call": "GET /metros/3B/stations" + "_metadata": { + "call": "GET /stations/metros/3B", + "date": "2017-03-04T02:02:32+01:00", + "version": 3 } } *Exemple XML:* - GET https://api-ratp.pierre-grimaud.fr/v2/metros/3B/stations?format=xml - - - - 2 - 2016-12-05T12:15:12+01:00 - call>GET /metros/3B/stations - - - - - 118 - Gambetta - gambetta - - - 119 - Pelleport - pelleport - - - 120 - Porte des Lilas - porte+des+lilas - - - 121 - Saint-Fargeau - saint+fargeau - - - - - -*Exemple JSONP:* - - GET https://api-ratp.pierre-grimaud.fr/v2/metros/3B/stations?callback=myCallBack - - myCallBack ( - { - "response": { - "stations": [ - { - "id": "118", - "name": "Gambetta", - "slug": "gambetta" - }, - { - "id": "119", - "name": "Pelleport", - "slug": "pelleport" - }, - { - "id": "120", - "name": "Porte des Lilas", - "slug": "porte+des+lilas" - }, - { - "id": "121", - "name": "Saint-Fargeau", - "slug": "saint+fargeau" - } - ] - }, - "_meta": { - "version": "2", - "date": "2016-12-05T12:16:25+01:00", - "call": "GET /metros/3B/stations" - } - } - ) - -#Données + GET https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B?_format=xml + + + + + + + + + + + + + + + + + + + + + + + + <_metadata> + + + 3 + + + +# Exemples de requêtes ## Lignes +Exemple de requête pour récupérer toutes les lignes du métro [(lien vers la documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Lines): -Ces requêtes permettent de récupérer les données relatives aux Rers, Métros, Tramways, Bus ou Noctilien. (nom et destinations) - - https://api-ratp.pierre-grimaud.fr/v2/{TypeLigne} - -Paramètre | Valeur possible | Description ---- | --- | --- -**TypeLigne** | **rers**, **metros**, **tramways**, **bus**, **noctiliens** | Le type de transport dont vous souhaitez avoir les informations. - -*Exemple :* - - GET https://api-ratp.pierre-grimaud.fr/v2/rers - { - "response": { - "rers": [ - { - "line": "A", - "destinations": [ - { - "id_destination": "1", - "name": "St-Germain-en-Laye Poissy-Cergy", - "slug": "st+germain+en+laye+poissy+cergy" - }, - { - "id_destination": "2", - "name": "Boissy-St-Léger Marne-la-Vallée", - "slug": "boissy+st+leger+marne+la+vallee" - } - ] - }, - { - "line": "B", - "destinations": [ - { - "id_destination": "3", - "name": "Robinson Saint-Rémy-lès-Chevreuse", - "slug": "robinson+saint+remy+les+chevreuse" - }, - { - "id"_destination: "4", - "name": "Charles-de-Gaulle Mitry-Claye", - "slug": "charles+de+gaulle+mitry+claye" - } - ] - } - ] - }, - "_meta": { - "version": "2", - "date": "2015-11-24T23:36:21+01:00", - "call": "GET /rers" - } - } - -## Stations - -Ces requêtes permettent de récupérer les stations d'une ligne de Rer, Métro, Tramway, Bus ou Noctilien. - - https://api-ratp.pierre-grimaud.fr/v2/{TypeLigne}/{LigneId}/stations - -Paramètre | Valeur possible | Description ---- | --- | --- -**TypeLigne** | **rers**, **metros**, **tramways**, **bus** ou **noctiliens** | Le type de transport dont vous souhaitez avoir les informations. -**LigneId** | Valeur **line** d'une requête [lignes](#lignes) | Le nom de la ligne du type de transport spécifié. - -*Exemple :* - - GET https://api-ratp.pierre-grimaud.fr/v2/metros/3B/stations - - { - "response": { - "stations": [ + https://api-ratp.pierre-grimaud.fr/v3/metros + + { + "result": { + "metros": [ + { + "code": "1", + "name": "Métro 1", + "directions": "La Defense / Chateau de Vincennes" + }, + { + "code": "2", + "name": "Métro 2", + "directions": "Porte Dauphine / Nation" + }, + { + "code": "3", + "name": "Métro 3", + "directions": "Pont de Levallois - Becon / Gallieni" + }, { - "id_station": "118", - "name": "Gambetta", - "slug": "gambetta" + "code": "3b", + "name": "Métro 3b", + "directions": "Gambetta / Porte des Lilas" }, { - "id_station": "119", - "name": "Pelleport", - "slug": "pelleport" + "code": "4", + "name": "Métro 4", + "directions": "Mairie de Montrouge / Porte de Clignancourt" }, { - "id_station": "120", - "name": "Porte des Lilas", - "slug": "porte+des+lilas" + "code": "5", + "name": "Métro 5", + "directions": "Place d'Italie / Bobigny - Pablo Picasso" }, { - "id_station": "121", - "name": "Saint-Fargeau", - "slug": "saint+fargeau" + "code": "6", + "name": "Métro 6", + "directions": "Charles de Gaulle - Etoile / Nation" + }, + { + "code": "7", + "name": "Métro 7", + "directions": "Villejuif-L. Aragon / Mairie d'Ivry / la Courneuve - 8 Mai 1945" + }, + { + "code": "7b", + "name": "Métro 7b", + "directions": "Louis Blanc / Pre-Saint-Gervais" + }, + { + "code": "8", + "name": "Métro 8", + "directions": "Pointe du Lac / Balard" + }, + { + "code": "9", + "name": "Métro 9", + "directions": "Mairie de Montreuil / Pont de Sevres" + }, + { + "code": "10", + "name": "Métro 10", + "directions": "Gare d'Austerlitz / Boulogne - Pont de Saint Cloud" + }, + { + "code": "11", + "name": "Métro 11", + "directions": "Chatelet / Mairie des Lilas" + }, + { + "code": "12", + "name": "Métro 12", + "directions": "Front Populaire / Mairie d'Issy" + }, + { + "code": "13", + "name": "Métro 13", + "directions": "St-Denis-Universite/Les Courtilles / Chatillon - Montrouge" + }, + { + "code": "14", + "name": "Métro 14", + "directions": "Olympiades / Saint-Lazare" + }, + { + "code": "Fun", + "name": "Métro Fun", + "directions": "Funiculaire" + }, + { + "code": "Orv", + "name": "Métro Orv", + "directions": "Orly Sud / Antony-RER" } ] }, - "_meta": { - "version": "2", - "date": "2015-11-25T00:14:45+01:00", - "call": "GET /metros/3B" + "_metadata": { + "call": "GET /lines/metros", + "date": "2017-03-04T02:13:28+01:00", + "version": 3 } } + +## Stations +Exemple de requête pour récupérer toutes les stations de la ligne 3B du métro [(lien vers la documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Stations): -## Horaires - -Ces requêtes permettent de récupérer les temps d'attente des prochains trains d'une ligne de Rer, Métro, Tramway, Bus ou Noctilien en fonction de la destination et de la station. - - https://api-ratp.pierre-grimaud.fr/v2/{TypeLigne}/{LigneId}/stations/{StationId}?destination={DestinationId} - -Paramètre | Valeur possible | Description ---- | --- | --- -**TypeLigne** | **rers**, **metros**, **tramways**, **bus** ou **noctilien** | Le type de transport dont vous souhaitez avoir les informations. -**LigneId** | Valeur **line** d'une requête [lignes](#lignes). | Le nom de la ligne du type de transport spécifié. -**StationId** | Valeur **id** ou **slug** d'une requête [stations](#stations). | L'id ou l'indicatif de la station désirée. -**DestinationId** | Valeur **id** ou **slug** d'une requête [lignes](#lignes). | L'id ou l'indicatif de la destination désirée. - -*Exemple :* - - GET https://api-ratp.pierre-grimaud.fr/v2/metros/8/stations/daumesnil?destination=balard - ou - GET https://api-ratp.pierre-grimaud.fr/v2/metros/8/stations/275?destination=23 + https://api-ratp.pierre-grimaud.fr/v3/stations/metros/3B { - "response": { - "informations": { - "destination": { - "id_destination": "23", - "name": "Balard", - "slug": "balard" - }, - "line": "8", - "type": "metro", - "station": { - "id_station": "275", - "name": "Daumesnil", - "slug": "daumesnil" - } - }, - "schedules": [ + "result": { + "stations": [ { - "destination": "Balard", - "message": "5 mn" + "slug": "porte+des+lilas", + "name": "Porte des Lilas" }, { - "destination": "Balard", - "message": "14 mn" + "slug": "saint+fargeau", + "name": "Saint-Fargeau" }, { - "destination": "Balard", - "message": "24 mn" + "slug": "pelleport", + "name": "Pelleport" }, { - "destination": "Balard", - "message": "32 mn" + "slug": "gambetta", + "name": "Gambetta" } ] }, - "_meta": { - "version": "2", - "date": "2015-11-25T23:30:52+01:00", - "call": "GET /metros/8/stations/275?destination=23" + "_metadata": { + "call": "GET /stations/metros/3B", + "date": "2017-03-04T02:30:09+01:00", + "version": 3 } } + +## Destinations -#### Nouveauté v2.2 : Gare d'arrivée, uniquement pour les RER (BETA) +Exemple de requête pour récupérer toutes les destinations de la ligne 8 du métro [(lien vers la documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Destinations): - https://api-ratp.pierre-grimaud.fr/v2/{TypeLigne}/{LigneId}/stations/{StationId}?destination={DestinationId}&endingstation={EndingStationId} + https://api-ratp.pierre-grimaud.fr/v3/destinations/metros/8 + + { + "result": { + "destinations": [ + { + "name": "Pointe du Lac", + "way": "A" + }, + { + "name": "Balard", + "way": "R" + } + ] + }, + "_metadata": { + "call": "GET /destinations/metros/8", + "date": "2017-03-04T02:36:42+01:00", + "version": 3 + } + } + +## Horaires -En plus des paramètres [précédents](#horaires), il est possible de spécifier le paramètre suivant : +Exemple de requête pour récupérer les horaires des prochains bus de la ligne N01 en direction de gare de l'est à la station République [(lien vers la documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Schedules): -Paramètre | Valeur possible | Description ---- | --- | --- -**EndingStationId** | Valeur **id** ou **slug** d'une requête [stations](#stations). | L'id ou l'indicatif de la station désirée. + https://api-ratp.pierre-grimaud.fr/v3/schedules/noctiliens/01/republique/R -*Exemple :* - - GET https://api-ratp.pierre-grimaud.fr/v2/rers/B/stations/denfert+rochereau?destination=robinson+saint+remy+les+chevreuse&endingstation=arcueil+cachan - ou - GET https://api-ratp.pierre-grimaud.fr/v2/rers/B/stations/44?destination=3&endingstation=1 - { - "response": { - "informations": { - "destination": { - "id": "3", - "name": "Robinson Saint-Rémy-lès-Chevreuse", - "slug": "robinson+saint+remy+les+chevreuse" - }, - "line": "B", - "type": "rer", - "station": { - "id": "44", - "name": "Denfert Rochereau", - "slug": "denfert+rochereau" - }, - "endingstation": { - "id": "1", - "name": "Arcueil Cachan", - "slug": "arcueil+cachan" - } - }, + "result": { "schedules": [ { - "id": "SOLE", - "destination": "Robinson", - "message": "23:24", - "origin": "Aéroport Charles-de-Gaulle 1" + "message": "4 mn", + "destination": "Gare de l'Est" }, { - "id": "SOLE", - "destination": "Robinson", - "message": "23:37", - "origin": "Aéroport Charles-de-Gaulle 1" + "message": "5 mn", + "destination": "Gare de l'Est" } ] }, - "_meta": { - "version": "2", - "date": "2016-04-21T00:48:44+02:00", - "call": "GET /rers/B/stations/denfert+rochereau?destination=robinson+saint+remy+les+chevreuse&endingstation=arcueil+cachan" + "_metadata": { + "call": "GET /schedules/noctiliens/01/republique/R", + "date": "2017-03-04T02:49:26+01:00", + "version": 3 } } - + ## Trafic -Ces requêtes permettent de récupérer le trafic du réseau ferré RATP. Il est possible d'affiner la recherche en fonction du type de transport ou de la ligne. - - https://api-ratp.pierre-grimaud.fr/v2/traffic/({TypeLigne}/{LigneId}) - -Paramètre | Utilisation | Valeur possible | Description ---- | --- | --- | --- -**TypeLigne** | (optionnel, requis si **LigneId** est spécifié) | **rers**, **metros** ou **tramways**. | Le type de transport dont vous souhaitez avoir les informations. -**LigneId** | (optionnel) | Valeur **line** d'une requête [lignes](#lignes). | Le nom de la ligne du type de transport spécifié. - +Exemple de requête pour récupérer tout le trafic du réseau RATP [(lien vers la documentation)](https://api-ratp.pierre-grimaud.fr/v3/documentation#section-Traffic): -*Exemple :* - - GET https://api-ratp.pierre-grimaud.fr/v2/traffic/metros/1 - - { - "response": { + https://api-ratp.pierre-grimaud.fr/v3/traffic + + { + "result": { "metros": [ { "line": "1", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "2", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "4", "slug": "normal_trav", "title": "Travaux", - "message": "Ts les jours l'arrêt n'est pas marqué à Louvre-Rivoli jusqu'au 25/11/15. (travaux de rénovation)" + "message": "22:00, l'arrêt ne sera pas marqué à Alesia jusqu'au 05/03/17 fin de service. (travaux)" + }, + { + "line": "5", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "6", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "8", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "9", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "10", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "11", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "12", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "13", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "14", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + } + ], + "rers": [ + { + "line": "A", + "slug": "normal_trav", + "title": "Travaux", + "message": "Sam. sf Jours Fér. le trafic sera interrompu entre Nanterre-Prefecture et Cergy/ Poissy jusqu'au 04/03/17. Bus de remplacement à dispo. (travaux)" + }, + { + "line": "B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "C", + "slug": "normal_trav", + "title": "Travaux", + "message": "À partir du lundi 23 janvier 2017 à 03h00, en raison de travaux, l'arrêt n'est pas marqué à la gare Dourdan-la-Foret sur la ligne C du RER jusqu'au vendredi 21 avril 2017 fin de service. Des bus de remplacement sont mis à disposition." + }, + { + "line": "D", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "E", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + } + ], + "tramways": [ + { + "line": "1", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "2", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3A", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "3B", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "5", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "6", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "7", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." + }, + { + "line": "8", + "slug": "normal", + "title": "Trafic normal", + "message": "Trafic normal sur l'ensemble de la ligne." } ] }, - "_meta": { - "version": "2", - "date": "2015-11-25T00:42:19+01:00", - "call": "GET /traffic/metros/1" + "_metadata": { + "call": "GET /traffic", + "date": "2017-03-04T02:42:00+01:00", + "version": 3 } } + +# Feedback ---- - -## Feedback - -Pour un bug, une demande de suggestion, une nouvelle fonctionnalité, etc... [create an issue](https://github.com/pgrimaud/horaires-ratp-api/issues) ou [Twitter](https://twitter.com/pgrimaud_) +Pour un bug, une demande de suggestion, une nouvelle fonctionnalité, etc... [create an issue](https://github.com/pgrimaud/horaires-ratp-api/issues) ou contactez moi sur [Twitter](https://twitter.com/pgrimaud_) -## License +# License -Toutes les données appartiennent à la RATP et sont utilisées dans un **but strictement personnel** ou de **recherche** et non dans un but commercial. +Toutes les données appartiennent à la RATP et sont utilisées dans un **but strictement personnel** ou de **recherche** et non dans un but commercial. \ No newline at end of file