-
Notifications
You must be signed in to change notification settings - Fork 69
Chrono Saeiv API Exo Realtime Feed Update #1227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR updates Exo realtime GTFS feeds to reflect current API endpoints, marking old feeds as deprecated and redirecting them to new sources. The update addresses agency consolidation (Roussillon and Richelain combined into Le Richelain et Roussillon) and migrates feeds from legacy endpoints to the Chrono Saeiv API portal and opendata.exo.quebec service.
Changes:
- Deprecated 33 existing Exo realtime feed sources across multiple transit agencies
- Added 30 new realtime feed sources with updated URLs pointing to Chrono Saeiv API or opendata.exo.quebec endpoints
- Consolidated Roussillon and Le Richelain feeds into a single Le Richelain et Roussillon feed
Reviewed changes
Copilot reviewed 69 out of 69 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| Multiple deprecated feed files (*-1XXX.json) | Added "deprecated" status and redirect metadata to old feed sources |
| Multiple new feed files (*-2XXX.json and *-3XXX.json) | Created new feed sources using updated API endpoints (Chrono Saeiv or opendata.exo.quebec) |
| Richelain et Roussillon feed files (*-30{21,22,23}.json) | New consolidated feeds for merged transit agencies |
Comments suppressed due to low confidence (2)
catalogs/sources/gtfs/realtime/ca-quebec-exo-chambly-richelieu-carignan-gtfs-rt-vp-1365.json:3
- Missing "status": "deprecated" field. All other deprecated feeds in this PR include this status field, but this file only adds the redirect without marking the feed as deprecated.
{
"mdb_source_id": 1365,
"data_type": "gtfs-rt",
catalogs/sources/gtfs/realtime/ca-quebec-exo-chambly-richelieu-carignan-gtfs-rt-tu-1363.json:3
- Missing "status": "deprecated" field. All other deprecated feeds in this PR include this status field, but this file only adds the redirect without marking the feed as deprecated.
{
"mdb_source_id": 1363,
"data_type": "gtfs-rt",
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "redirect": [ | ||
| { | ||
| "id": "3020", | ||
| "comment": " " |
Copilot
AI
Jan 14, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Empty comment field in redirect object. Consider providing a meaningful description explaining why this feed was deprecated or redirecting, or remove the field entirely if no comment is needed.
Feed Submission ChecklistThanks for contributing to the MobilityDatabase! This is a comprehensive checklist detailing the things to consider before submitting a feed to the database. The schema links in this checklist will follow the convention of [1] for schedule feed schema and [2] for realtime feeds. You will find the schema definitions for schedule and realtime feeds are often the same, but both references are always included for completeness. If you have any questions, reach out to @ianktc. General Checks
All feeds are official and authenticated with a url parameter: token Is Your Feed New?No new feeds (all updates)
Is Your Feed an Update?All are feed updates. The redirects are the same as the previous redirect.
Is it a Realtime Feed?
Pre-existing Feed Existence [internal]
Other Considerations [internal]These do not apply. Sometimes you will encounter two active schedule feeds. There are some possible reasons this may occur:
|
Addresses issue #1165
Because the Chrono Saeiv portal does not provide the agency keys themselves, I referenced the Exo Open Data website directly to find the agency keys where possible. I also referenced the pre-existing stale Exo realtime feeds in the MobilityDatabase to try and find agency keys where possible.
Two Important Observations:
Two feeds Roussillon (agency key: citrous) and Richelain (agency key: citlr) were combined into one: Le Richelain et Roussillon (agency key: lrrs)
The realtime feeds for Haut Saint Laurent (agency key: cithsl) seems to no longer be maintained.