Skip to content

North America Schedule Feeds January 29#1250

Merged
ianktc merged 13 commits intomainfrom
import/na-schedule-feeds
Feb 2, 2026
Merged

North America Schedule Feeds January 29#1250
ianktc merged 13 commits intomainfrom
import/na-schedule-feeds

Conversation

@ianktc
Copy link
Contributor Author

ianktc commented Feb 2, 2026

Feed Submission Checklist

Thanks 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

6 Feed Updates
5 New Feeds

  • Valid Direct Download URL: Does the URL produce a zip file and is it valid gtfs? [1] If realtime, is it a protobuf? [2]

All schedule feeds and all are valid GTFS (see validation reports)

  • Official Status: Is the feed official? Check contact email, direct download URL, website etc. [1] or [2]

Official:

us-boston-boston-express-gtfs-3033
us-california-humboldt-county-gtfs-19
us-columbia-county-gtfs-3037
us-florida-breeze-transit-gtfs-2260
us-hope-college-hope-college-ev-gtfs-3039
us-new-jersey-patco-speedline-gtfs-3035
us-pennsylvania-king-of-prussia-gtfs-3036
us-maryland-cecil-transit-gtfs-3034
us-virginia-virginia-railway-express-vre-gtfs-478

Unknown:

us-washington-everett-transit-gtfs-3038

  • Service Status: Is the status active? Check feed_info file for service window. [1] or [2]

Active:

us-boston-boston-express-gtfs-3033
us-california-humboldt-county-gtfs-19
us-columbia-county-gtfs-3037
us-florida-breeze-transit-gtfs-2260
us-hope-college-hope-college-ev-gtfs-3039
us-new-jersey-patco-speedline-gtfs-3035
us-pennsylvania-king-of-prussia-gtfs-3036
us-washington-everett-transit-gtfs-3038
us-virginia-virginia-railway-express-vre-gtfs-478

Inactive:

us-maryland-cecil-transit-gtfs-3034

  • Authentication: Is there any authentication required? [1] or [2] Enum values are described [1] and [2] (they are the same)

No authentication required for these feeds

Is Your Feed New?

  • MDB Stable ID: Correct stable id in the file name? Does it match the mdb_source_id field? [1] or [2]. And stable id in the “latest url” field? [1]
  • Sequential Ordering: Does the stable id increment from latest stable id? Do they increase in sequential order? Refer to this spreadsheet for the latest mdb stable id.

Success in Integration Test

Is Your Feed an Update?

  • Official Status: If unofficial, do not deprecate and redirect the old feed, but import this new feed as unofficial so both feeds are available in the database
  • Deprecate and Redirect: If official, deprecate and redirect the old feed to this updated feed. [1] or [2]

Is it a Realtime Feed?

  • Reference: Does it have a reference to the schedule feed? [2]

No realtime feeds in this import

Pre-existing Feed Existence [internal]

  • Perform a check on the mobility database website to check for pre-existing unpublished (wip) feeds from other sources
  • Sometimes the "old" feed is not included in the feed submission form, perform a check for fuzzy matches on Provider and Direct Download URL. In the case of probable matches, check with the validator for entity count, agency and feed info matches as well.

Other Considerations [internal]

Sometimes you will encounter two active schedule feeds. There are some possible reasons this may occur:

  • Flex: Flex feeds are sometimes produced separately from schedule feeds. Import the flex feed as a brand new feed instead of a redirect of the schedule feed. [definition]
  • Reference Schedule Feed: One schedule feed may be used as the schedule, while the other is used as a reference to the realtime feed. Look for feeds produced by Passio (or other vehicle tracking software). [example]

@ianktc ianktc requested a review from jcpitre February 2, 2026 15:16
},
"urls": {
"direct_download": "https://rapid.nationalrtap.org/GTFSFileManagement/UserUploadFiles/11782/GTFS.zip",
"latest": "https://storage.googleapis.com/storage/v1/b/mdb-latest/o/us-boston-boston-express-gtfs-3033.zip?alt=media",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we have a latest url when it's immediately or shortly replaced?
It does not hurt to have it there, It's legacy stuff.

@ianktc ianktc merged commit 04944d9 into main Feb 2, 2026
10 checks passed
@ianktc ianktc deleted the import/na-schedule-feeds branch February 2, 2026 19:10
@ianktc ianktc self-assigned this Feb 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants