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