{"id":33044448,"url":"https://github.com/kurtraschke/gtfs-rt-dump","last_synced_at":"2025-12-30T02:18:38.153Z","repository":{"id":24750851,"uuid":"28163624","full_name":"kurtraschke/gtfs-rt-dump","owner":"kurtraschke","description":"Command-line dumper for GTFS-realtime feeds","archived":false,"fork":false,"pushed_at":"2024-11-10T21:19:23.000Z","size":554,"stargazers_count":23,"open_issues_count":1,"forks_count":4,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-11-10T22:22:03.662Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kurtraschke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-12-18T01:42:35.000Z","updated_at":"2024-11-10T21:19:20.000Z","dependencies_parsed_at":"2024-03-08T05:31:32.644Z","dependency_job_id":"d51ff77d-86e1-4953-a666-7529bdcd91de","html_url":"https://github.com/kurtraschke/gtfs-rt-dump","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/kurtraschke/gtfs-rt-dump","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtraschke%2Fgtfs-rt-dump","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtraschke%2Fgtfs-rt-dump/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtraschke%2Fgtfs-rt-dump/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtraschke%2Fgtfs-rt-dump/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kurtraschke","download_url":"https://codeload.github.com/kurtraschke/gtfs-rt-dump/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtraschke%2Fgtfs-rt-dump/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284767947,"owners_count":27060132,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-16T02:00:05.974Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-11-14T00:00:28.414Z","updated_at":"2025-11-16T20:01:54.724Z","avatar_url":"https://github.com/kurtraschke.png","language":"Kotlin","funding_links":[],"categories":["Producing Data","Uncategorized"],"sub_categories":["GTFS Realtime","Uncategorized"],"readme":"gtfs-rt-dump\n============\n\nCommand-line dumper for GTFS-realtime feeds.\n\n```\n$ java -jar gtfs-rt-dump.jar -h\nUsage: gtfs-rt-dump [-hV] [--disable-tls-validation] [-H=\u003cString=String\u003e]...\n                    [-X=\u003cenabledExtensions\u003e]... [-f=\u003cprotobufPath\u003e |\n                    -u=\u003cprotobufUrl\u003e] [-U=\u003cusername\u003e -P=\u003cpassword\u003e] COMMAND\nParse and display the contents of a GTFS-realtime feed in a human-readable\nformat.\n      --disable-tls-validation\n                            Disable all TLS server certificate validation.\n  -h, --help                Show this help message and exit.\n  -H, --header=\u003cString=String\u003e\n                            Add specified HTTP header to request.\n  -V, --version             Print version information and exit.\n  -X, --enable-extension=\u003cenabledExtensions\u003e\n                            Enable specified GTFS-rt extensions. Valid values:\n                              OBA, NYCT, LIRR, MNR, MTARR, MERCURY\nInput can be read from a file or URL. If neither are specified, standard input\nwill be used.\n  -f, --file=\u003cprotobufPath\u003e Read GTFS-rt from specified file.\n  -u, --url=\u003cprotobufUrl\u003e   Read GTFS-rt from specified URL.\nHTTP Basic authentication credentials can be specified if input is read from a\nURL.\n  -P, --password=\u003cpassword\u003e Password for HTTP Basic authentication\n  -U, --username=\u003cusername\u003e Username for HTTP Basic authentication\nCommands:\n  help    Displays help information about the specified command\n  pbtext  Protocol Buffer text format output\n  table   Formatted table output\n  json    JSON output\n  csv     CSV output\n\n```\n\nIf pbtext or formatted table output is selected, the timestamp format can be specified:\n\n```\n$ java -jar gtfs-rt-dump.jar help table\nUsage: gtfs-rt-dump table [--timestamp-format=\u003ctimestampFormatter\u003e]\nFormatted table output\n      --timestamp-format=\u003ctimestampFormatter\u003e\n         Valid values: POSIX, ISO_8601_LOCAL, ISO_8601_UTC\n```\n\n```\nUsage: gtfs-rt-dump pbtext [--timestamp-format[=\u003ctimestampFormatter\u003e]]\nProtocol Buffer text format output\n      --timestamp-format[=\u003ctimestampFormatter\u003e]\n         Valid values: POSIX, ISO_8601_LOCAL, ISO_8601_UTC\n```\n\nTo produce formatted timestamps in a timezone other than the OS timezone, set the `user.timezone` Java system property:\n\n```\njava -Duser.timezone=\"US/Pacific\" -jar gtfs-rt-dump.jar -u http://api.bart.gov/gtfsrt/tripupdate.aspx pbtext --timestamp-format\n```\n\nFor CSV output, a single feed component must be specified for extraction:\n\n```\n% java -jar gtfs-rt-dump.jar help csv  \nUsage: gtfs-rt-dump csv \u003cselectedFeedPart\u003e\nCSV output\n      \u003cselectedFeedPart\u003e   Feed part to extract to CSV. Valid values:\n                             FEED_HEADER, TRIP_UPDATES, VEHICLE_POSITIONS,\n                             ALERTS\n\n```\n\nSample usage:\n\n```\n$ java -jar gtfs-rt-dump.jar -u http://api.bart.gov/gtfsrt/tripupdate.aspx pbtext\nheader {\n  gtfs_realtime_version: \"1.0\"\n  incrementality: FULL_DATASET\n  timestamp: 1418867234\n}\nentity {\n  id: \"46DC10\"\n  trip_update {\n    trip {\n      trip_id: \"46DC10\"\n    }\n```\n\nThe JSON output mode can be combined with [jq](https://stedolan.github.io/jq/) to slice and filter the resulting output:\n\n```\n$ java -jar gtfs-rt-dump.jar -u http://api.bart.gov/gtfsrt/tripupdate.aspx json | jq '[.entity[].tripUpdate | .trip.tripId as $tripId | .stopTimeUpdate[] | {tripId: $tripId, stopId: .stopId, arrival: .arrival.time|todate}] | map(select(.stopId == \"EMBR\")) | sort_by(.arrival) | .[0:3]'\n[\n  {\n    \"tripId\": \"4531853SAT\",\n    \"stopId\": \"EMBR\",\n    \"arrival\": \"2020-01-19T03:12:04Z\"\n  },\n  {\n    \"tripId\": \"1071858SAT\",\n    \"stopId\": \"EMBR\",\n    \"arrival\": \"2020-01-19T03:16:42Z\"\n  },\n  {\n    \"tripId\": \"3611847SAT\",\n    \"stopId\": \"EMBR\",\n    \"arrival\": \"2020-01-19T03:19:57Z\"\n  }\n]\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkurtraschke%2Fgtfs-rt-dump","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkurtraschke%2Fgtfs-rt-dump","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkurtraschke%2Fgtfs-rt-dump/lists"}