Ancienne API 2.0 d’OC Transpo
Modifications des données en format GTFS
Notre flux de données actuel, API 2.0, demeurera accessible et nous continuerons de le maintenir, mais il sera éventuellement remplacé par le nouveau flux de données ouvert d’OC Transpo, GTFS Realtime.
Pour commencer
Afin d’accéder au flux de données en temps réel d’arrivée du prochain autobus d’OC Transpo, vous devez avoir une clé d’interface de programmation d’applications (API). Inscrivez-vous et vous recevrez instantanément une clé d’API en remplissant le formulaire d’inscription pour obtenir une clé d’API.
Ouverture de session du développeur
Lorsque vous aurez fourni votre nom et vos coordonnées, nous vous enverrons un courriel comprenant un lien pour activer votre compte. Vous devez suivre les directives pour activer votre compte, ouvrir une session et générer un nouveau numéro d’identité d’application en cliquant sur la section des applications du tableau de bord.
Pour des raisons de sécurité, nous vous demandons de fournir votre numéro d’identité d’application et votre clé d’API dans chacune de vos demandes. Assurez-vous de faire vos requêtes en utilisant HTTPS.
Méthodes
- GetRouteSummaryForStop : Permet d’extraire les circuits pour un numéro d’arrêt donné.
- GetNextTripsForStop : Permet d’extraire les trois prochains trajets sur le circuit pour un numéro d’arrêt donné.
- GetNextTripsForStopAllRoutes : Permet d’extraire les trois prochains trajets sur tous les circuits pour un numéro d’arrêt donné.
- GTFS : Permet d’extraire les dossiers voulus de chacune des sections du GTFS.
Codes d’erreur
Code d’erreur | Erreur | Méthodes |
---|---|---|
1 |
Touche API invalide |
All |
2 |
Incapable d’interroger la source de données |
|
10 |
Numéro d’arrêt invalide |
GetRouteSummaryForStop GetNextTripsForStop GetNextTripsForStopAllRoutes |
11 |
Numéro de circuit invalide |
|
12 |
L’arrêt ne dessert pas ce circuit pour le moment |
GetNextTripsForStop GetNextTripsForStopAllRoutes |
13 | Aucun circuit à cet arrêt en tout temps |
Type de véhicules
Tous les autobus d’OC Transpo et l’O-Train sont entièrement accessibles.
Code | Description |
---|---|
4 ou 40 | Autobus de 40 pieds |
6 ou 60 | Autobus de 60 pieds |
4 et 6 | Les trajets peuvent se faire avec des autobus de 60 ou de 40 pieds |
DD | Autobus à deux étages |
B | Supports pour bicyclettes |
DEH | Hybride diésel et électrique |
IN | INVIRO (type d’autobus) |
ON | ORION (type d’autobus) |
Descriptions de méthode
1) GetRouteSummaryForStop
Permet d’extraire les circuits pour un numéro d’arrêt donné.
Base URL
https://api.octranspo1.com/v2.0/GetRouteSummaryForStop
Requête
https://api.octranspo1.com/v2.0/GetRouteSummaryForStop?appID={appID}&apiKey={apiKey}&stopNo={stopNo}&format={format}
Paramètres
-
Paramètre Requis Description appID Oui Généré dans le portail de développement après l’inscription. apiKey Oui Généré dans le portail de développement après l’inscription. stopNo Oui Numéro d’arrêt à 4 chiffres affiché dans les arrêts d’autobus. Télécharger une liste complète des arrêts ici. format Non Format des données retournées. JSON ou XML. Par défaut : JSON. Réponse
Descriptions des champs
Nom du champ Type de valeur Description StopNo chaîne Numéro d’arrêt d’autobus à 4 chiffres. StopDescription chaîne Description de l’arrêt. Error chaîne Codes d’erreur. Consulter la section des codes d’erreur pour des détails. Route - RouteNo chaîne Numéro alphanumérique du circuit. Route - DirectionID interger Identifiant de la direction du circuit. Route - Direction chaîne Description de la direction du circuit. Route - RouteHeading chaîne Direction du circuit. Format de réponse
XML
Chargement en cours...
JSON
{ GetRouteSummaryForStopResult: { StopNo: "chaîne", Error: "chaîne", StopDescription: "chaîne", Routes: { Route: [ { RouteNo: "chaîne", RouteHeading: "chaîne", Direction: "chaîne", DirectionID: interger }, { RouteNo: "chaîne", RouteHeading: "chaîne", Direction: "chaîne", DirectionID: chaîne } ] } } }
Exemple de réponse
XML
JSON
2) GetNextTripsForStop
Permet d’extraire les trois prochains trajets sur le circuit pour un numéro d’arrêt donné.
Base URL
https://api.octranspo1.com/v2.0/GetNextTripsForStop
Requête
https://api.octranspo1.com/v2.0/GetNextTripsForStop?appID={appID}&apiKey={apiKey}&stopNo={stopNo}&routeNo={routeNo}&format={format}
Paramètres
-
Paramètre Requis Description appID Oui Généré dans le portail de développement après l’inscription. apiKey Oui Généré dans le portail de développement après l’inscription. stopNo Oui Numéro d’arrêt à 4 chiffres affiché dans les arrêts d’autobus. Télécharger une liste complète des arrêts ici. routeNo Oui Numéro du circuit d’autobus. format Non Format des données retournées. JSON ou XML. Par défaut : JSON. Réponse
Descriptions des champs
Field Name Value Type Description StopNo chaîne Numéro d’arrêt d’autobus à 4 chiffres. StopLabel chaîne Description de l’arrêt. Error chaîne Codes d’erreur. Consulter la section des codes d’erreur pour des détails.
RouteDirection - RouteNo chaîne Numéro alphanumérique du circuit. RouteDirection - RouteLabel chaîne Direction du circuit. RouteDirection - Direction chaîne Description de la direction du circuit. RouteDirection - Error chaîne Codes d’erreur. Consulter la section des codes d’erreur pour des détails.
RouteDirection - RequestProcessingTime chaîne Temps de traitement de la requête de l’API. Trip - Longitude chaîne Longitude. Trip - Latitude chaîne Latitude. Trip - GPSSpeed chaîne Cette valeur a été enlevée de l’API; une chaîne vide sera retournée. Trip - TripDestination chaîne Direction du trajet. Trip - TripStartTime chaîne Heure prévue de départ du trajet. Trip - AdjustedScheduleTime chaîne Temps estimé avant l’arrivée du trajet à l’arrêt. Trip - AdjustmentAge chaîne Temps depuis le rajustement de l’heure d’arrivée et de départ prévue en minutes et en fractions de minutes. Plus le chiffre est élevé, moins la valeur AdjustedScheduleTime est fiable. Si cette valeur est négative, c’est que AdjustedScheduleTime contient l’heure prévue. Trip - LastTripOfSchedule booléen Dernier trajet de la journée. Trip - BusType chaîne Type de véhicule. Consulter la section du type d’autobus pour des détails. Format de réponse
XML
JSON
Exemple de réponse
XML
JSON
3) GetNextTripsForStopAllRoutes
Permet d’extraire les trois prochains trajets sur le circuit pour un numéro d’arrêt donné.
Base URL
https://api.octranspo1.com/v2.0/GetNextTripsForStopAllRoutes
Requête
https://api.octranspo1.com/v2.0/GetNextTripsForStopAllRoutes?appID={appID}&apiKey={apiKey}&stopNo={stopNo}&format={format}
Paramètres
-
Paramètre Requis Description appID Oui Généré dans le portail de développement après l’inscription. apiKey Oui Généré dans le portail de développement après l’inscription. stopNo Oui Numéro d’arrêt à 4 chiffres affiché dans les arrêts d’autobus. Télécharger une liste complète des arrêts ici. format Non Format of the returned data. JSON or XML. Default: JSON. Réponse
Field Descriptions
Field Name Value Type Description StopNo chaîne Numéro d’arrêt d’autobus à 4 chiffres. StopDescription chaîne Description de l’arrêt. Error chaîne Codes d’erreur. Consulter la section des codes d’erreur pour des détails. Route - RouteNo chaîne Numéro alphanumérique du circuit. Route - RouteHeading chaîne Direction du circuit. Route - DirectionID interger Identifiant de la direction du circuit. Route - Direction chaîne Description de la direction du circuit. Trip - Longitude chaîne Longitude. Trip - Latitude chaîne Latitude. Trip - GPSSpeed chaîne Cette valeur a été enlevée de l’API; une chaîne vide sera retournée. Trip - TripDestination chaîne Direction du trajet. Trip - TripStartTime chaîne Heure prévue de départ du trajet. Trip - AdjustedScheduleTime chaîne Temps estimé avant l’arrivée du trajet à l’arrêt. Trip - AdjustmentAge chaîne Temps depuis le rajustement de l’heure d’arrivée et de départ prévue en minutes et en fractions de minutes. Plus le chiffre est élevé, moins la valeur AdjustedScheduleTime est fiable. Si cette valeur est négative, c’est que AdjustedScheduleTime contient l’heure prévue. Trip - LastTripOfSchedule booléen Dernier trajet de la journée. Trip - BusType chaîne Type de véhicule. Consulter la section du type d’autobus pour des détails. Format de réponse
XML
JSON
Exemple de réponse
XML
JSON
4) GTFS
Permet d’extraire les dossiers voulus de chacune des sections du GTFS.
Base URL
https://api.octranspo1.com/v2.0/Gtfs
Requête
https://api.octranspo1.com/v2.0/Gtfs?appID={appID}&apiKey={apiKey}&table={table}&id={id}&column={column}&value={value}&order_by={order_by}&direction={direction}&limit={limit}&format={format}
Paramètres
-
Paramètre Requis Description appID Oui Généré dans le portail de développement après l’inscription. apiKey Oui Généré dans le portail de développement après l’inscription. table Oui Le tableau à interroger (liste de tableaux ci-dessous). id Non Une rangée particulière du tableau par la valeur id. column Non Une colonne particulière du tableau. L’utilisation d’une colonne exige l’utilisation du paramètre de valeur (liste de colonnes ci-dessous). value Non* Une valeur précise dans une colonne. *Requis si la colonne est précisée. order_by Non Préciser une colonne pour le tri. direction Non Préciser la direction du tri des résultats. Ascendant ou descendant. Ascendant par défaut. limit Non Préciser un nombre maximum de résultats.
Format.
format Non Format des données retournées. JSON ou XML. Par défaut : JSON. Requête du GTFS : Tableaux et colonnes
Tableau | Colonnes | JSON |
---|---|---|
agency |
|
{ "Query": { "table": "agency", "direction": "ASC", "column": "id", "value": "1", "format": "json" }, "Gtfs": [ { "id": "1", "agency_name": "OC Transpo-a", "agency_url": "http:\/\/www.octranspo.com", "agency_timezone": "America\/Montreal", "agency_lang": "en" } ] } |
calendar |
|
{ "Query": { "table": "calendar", "direction": "ASC", "column": "id", "value": "1", "format": "json" }, "Gtfs": [ { "id": "1", "service_id": "JUN26-JUNDA13-Weekday-01", "monday": "1", "tuesday": "1", "wednesday": "1", "thursday": "1", "friday": "1", "saturday": "0", "sunday": "0", "start_date": "20130626", "end_date": "20130627" } ] } |
calendar_dates |
|
{ "Query": { "table": "calendar_dates", "direction": "ASC", "column": "id", "value": "1", "format": "json" }, "Gtfs": [ { "id": "1", "service_id": "JUN13-JUNDA13-Weekday-99", "date": "20130701", "exception_type": "2" } ] } |
routes |
|
{ "Query": { "table": "routes", "direction": "ASC", "column": "id", "value": "1", "format": "json" }, "Gtfs": [ { "id": "1", "route_id": "1-146", "route_short_name": "1", "route_long_name": "", "route_desc": "", "route_type": "3" } ] } |
stops |
|
{ "Query": { "table": "stops", "direction": "ASC", "column": "stop_id", "value": "AA010", "format": "json" }, "Gtfs": [ { "id": "1", "stop_id": "AA010", "stop_code": "8767", "stop_name": "SUSSEX \/ CHUTE RIDEAU FALLS", "stop_desc": "", "stop_lat": "45.4399", "stop_lon": "-75.6958", "stop_street": "", "stop_city": "", "stop_region": "", "stop_postcode": "", "stop_country": "", "zone_id": "" } ] } |
REMARQUE : Le tableau stops exige de préciser le stop_id, le stop_code ou les valeurs id. |
||
stop_times |
|
{ "Query": { "table": "stop_times", "direction": "ASC", "column": "stop_id", "value": "AA010", "format": "json" }, "Gtfs": [ { "id": "133436", "trip_id": "27212870-CADA13-CADA13-Sunday-71", "arrival_time": "08:29:00", "departure_time": "08:29:00", "stop_id": "AA010", "stop_sequence": "20", "pickup_type": "0", "drop_off_type": "0" } ] } |
REMARQUE : Le tableaustop_times exige de préciser le trip_id, le stop_id ou les valeurs id. |
||
trips |
|
{ "Query": { "table": "trips", "direction": "ASC", "column": "route_id", "value": "135-147", "format": "json" }, "Gtfs": [ { "id": "1", "route_id": "135-147", "service_id": "CADA13-CADA13-Sunday-71", "trip_id": "27210104-CADA13-CADA13-Sunday-71", "trip_headsign": "Esprit", "block_id": "3406628" } ] } |
REMARQUE : Le tableau trips exige de préciser le route_id ou les valeurs id. |
Description en format XML
Chargement en cours...