[{"data":1,"prerenderedAt":133},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fconcepts\u002Fstatic-gtfs-feed-versions":3,"_apollo:default":132,"_apollo:stationEditor":132,"_apollo:feedManagement":132,"_apollo:transferAnalyst":132},{"id":4,"title":5,"body":6,"description":122,"extension":123,"meta":124,"navigation":126,"path":127,"seo":128,"stem":129,"__hash__":130,"lastUpdated":131},"content\u002Fdocs\u002Fconcepts\u002Fstatic-gtfs-feed-versions.md","Static GTFS feed versions",{"type":7,"value":8,"toc":115},"minimark",[9,19,22,32,37,40,58,65,69,76,80,83],[10,11,12,13,18],"p",{},"Feed versions represent a specific static GTFS archive that was published at a particular point in time by a ",[14,15,17],"a",{"href":16},"\u002Fdocumentation\u002Fconcepts\u002Fsource-feeds","source feed",".",[10,20,21],{},"Transitland calculates metadata about each feed version's contents, as well as importing the GTFS entities within the feed version. Metadata includes service levels over the duration of the feed, summaries of included CSV files, and a convex hull geometry that contains all stops.",[10,23,24,25,31],{},"Each feed version is accessed and referenced using the ",[14,26,30],{"href":27,"rel":28},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSHA-1",[29],"nofollow","SHA1 checksum"," of the GTFS archive.",[33,34,36],"h2",{"id":35},"new-feed-versions","New feed versions",[10,38,39],{},"The static GTFS URL for each feed is checked approximately once per hour, and a new feed version is created any time new data is observed. New feed versions are given the SHA1 checksum value of the entire GTFS Zip archive.",[10,41,42,43,47,48,51,52,57],{},"Data is considered new if neither the SHA1 of the archive nor the SHA1 of its contents has been observed previously. The contents checksum (",[44,45,46],"code",{},"sha1_dir",") covers the ",[44,49,50],{},".txt"," files at the top level of the archive, processed in alphabetical order. Checking the file contents avoids the common situation where timestamps or other non-GTFS files inside the archive change but the GTFS data itself has not been updated. For more on this approach, see ",[14,53,56],{"href":54,"rel":55},"https:\u002F\u002Fwww.interline.io\u002Fblog\u002Fgtfs-checksum-versioning\u002F",[29],"Same data, different zip: How to identify unique GTFS feed versions"," on the Interline blog.",[59,60,61,62],"info",{},"\n  ",[10,63,64],{},"For a small number of GTFS source feeds, Transitland staff have manually throttled the fetch process to check for new feed versions less often, such as once per day. These feeds may come from servers that modify the feed contents on each request (which confuses Transitland's SHA1 checksum comparison process) or from agencies that produce very large feeds with many new feed versions per week. Users on Enterprise plans may contact Interline to request that these rate limits be increased if they happen to require more up-to-date data for one of these feeds.",[33,66,68],{"id":67},"active-feed-version","Active feed version",[10,70,71,72,75],{},"Each feed has at most one active feed version, selected as the best feed version for the current day: the most recently fetched feed version that imported successfully and whose service has started, in the feed's local time zone. A newer feed version that only contains service for dates in the future becomes active when its service starts. Feeds that are archived or unpublished have no active feed version. Active feed versions are updated every hour. Requests to other endpoints, such as map tiles, routes, and stops, use data from this feed version unless another version is specified with the ",[44,73,74],{},"feed_version_sha1"," parameter.",[33,77,79],{"id":78},"downloading-static-gtfs-feed-versions","Downloading static GTFS feed versions",[10,81,82],{},"Users may download static GTFS feed versions from the Transitland archives under the following conditions:",[84,85,86,95,103],"ol",{},[87,88,89,90,94],"li",{},"The feed's ",[14,91,93],{"href":92},"\u002Fdocumentation\u002Fconcepts\u002Fsource-feeds#feed-license-information","license metadata"," cannot explicitly disallow redistribution.",[87,96,97,98,102],{},"The user's plan must include feed downloads. Hobbyist\u002FAcademic and Enterprise plans do, as do earlier Professional plans; Explorer and Pay As You Go don't. See ",[14,99,101],{"href":100},"\u002Fplans-pricing#transitland-feed-archive","Plans and pricing"," for each plan's monthly download quotas.",[87,104,105,106,110,111,18],{},"The most recently fetched version downloads from the ",[14,107,109],{"href":108},"\u002Fdocumentation\u002Frest-api\u002Ffeeds#downloading-latest-static-gtfs","REST API feed endpoint",", and a historic version (not the most recently fetched version) from the ",[14,112,114],{"href":113},"\u002Fdocumentation\u002Frest-api\u002Ffeed_versions#downloading-source-gtfs","REST API feed versions endpoint",{"title":116,"searchDepth":117,"depth":117,"links":118},"",2,[119,120,121],{"id":35,"depth":117,"text":36},{"id":67,"depth":117,"text":68},{"id":78,"depth":117,"text":79},"Static GTFS feed versions in Transitland: SHA1 identifiers, hourly fetch and change detection, active feed version selection, and download conditions.","md",{"layout":125},"documentation",true,"\u002Fdocs\u002Fconcepts\u002Fstatic-gtfs-feed-versions",{"title":5,"description":122},"docs\u002Fconcepts\u002Fstatic-gtfs-feed-versions","2GT_8i3mOqJ-NfBTO9MyVMhnDFLypoK7KaGaQgbpadU","2026-10-18T16:11:50-07:00","{}",1793614315327]