train: 950210,0,4
Mon Mar 30 15:39:17 2026 2026-03-30T15:39:17Z

plat dest
 scheduled
 estimated
__323905    Stations on the Belgrave and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works.
_*344824    From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works.
**357996    At a glance
__358514    At a glance
** current, _* Later today, __ in the future

Final stop Parliament

1 1032 Camberwell Station 2026-03-31T04:09:00Z 15:09:00 749m43s 44983 no est disruptions 358514 357996 344824 323905
1 1012 Auburn Station 2026-03-31T04:11:00Z 15:11:00 751m43s 45103 no est disruptions 358514 357996 344824 323905
1 1080 Glenferrie Station 2026-03-31T04:13:00Z 15:13:00 753m43s 45223 no est disruptions 358514 357996 344824 323905
1 1090 Hawthorn Station 2026-03-31T04:15:00Z 15:15:00 755m43s 45343 no est disruptions 358514 357996 344824 323905
2 1030 Burnley Station 2026-03-31T04:17:00Z 15:17:00 757m43s 45463 no est disruptions 358514 357996 344824 323905
1 1059 East Richmond Station 2026-03-31T04:19:00Z 15:19:00 759m43s 45583 no est disruptions 358514 357996 344824 323905
8 1162 Richmond Station 2026-03-31T04:21:00Z 15:21:00 761m43s 45703 no est disruptions 358514 357996 344824 323905
2 1071 Flinders Street Station 2026-03-31T04:30:00Z 15:30:00 770m43s 46243 no est disruptions 358514 357996 344824 323905
10 1181 Southern Cross Station 2026-03-31T04:33:00Z 15:33:00 773m43s 46423 no est disruptions 358514 357996 344824 323905
4 1068 Flagstaff Station 2026-03-31T04:35:00Z 15:35:00 775m43s 46543 no est disruptions 358514 357996 344824 323905
4 1120 Melbourne Central Station 2026-03-31T04:37:00Z 15:37:00 777m43s 46663 no est disruptions 358514 357996 344824 323905
4 1155 Parliament Station 2026-03-31T04:39:00Z 15:39:00 779m43s 46783 no est disruptions 358514 357996 344824 323905
$perl_scalar = { 'departures' => [ { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 1, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:09:00Z', 'skipped_stops' => [], 'stop_id' => 1032 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 2, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:11:00Z', 'skipped_stops' => [], 'stop_id' => 1012 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 3, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:13:00Z', 'skipped_stops' => [], 'stop_id' => 1080 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 4, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:15:00Z', 'skipped_stops' => [], 'stop_id' => 1090 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 5, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:17:00Z', 'skipped_stops' => [], 'stop_id' => 1030 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 6, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '1', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:19:00Z', 'skipped_stops' => [], 'stop_id' => 1059 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 7, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '8', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:21:00Z', 'skipped_stops' => [], 'stop_id' => 1162 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 8, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '2', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:30:00Z', 'skipped_stops' => [], 'stop_id' => 1071 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 9, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '10', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:33:00Z', 'skipped_stops' => [], 'stop_id' => 1181 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 10, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:35:00Z', 'skipped_stops' => [], 'stop_id' => 1068 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 11, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => '', 'platform_number' => '4', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:37:00Z', 'skipped_stops' => [], 'stop_id' => 1120 }, { 'at_platform' => 'false', 'departure_note' => '', 'departure_sequence' => 12, 'direction_id' => 1, 'disruption_ids' => [ 358514, 357996, 344824, 323905 ], 'estimated_departure_utc' => undef, 'flags' => 'E', 'platform_number' => '4', 'route_id' => 9, 'run_id' => 950210, 'run_ref' => '950210', 'scheduled_departure_utc' => '2026-03-31T04:39:00Z', 'skipped_stops' => [], 'stop_id' => 1155 } ], 'directions' => { '1' => { 'direction_id' => 1, 'direction_name' => 'City', 'route_id' => 9, 'route_type' => 0 } }, 'disruptions' => [ { 'colour' => '#ffd500', 'description' => 'At a glance', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 358514, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Works', 'from_date' => '2026-03-30T10:00:00Z', 'last_updated' => '2026-03-30T10:02:51Z', 'published_on' => '2026-03-25T03:44:24Z', 'routes' => [], 'stops' => [], 'title' => 'Belgrave and Lilydale lines: Train services start and end at Burnley from 9pm to last service each night, Monday 30 March to Wednesday 1 April 2026', 'to_date' => '2026-04-01T16:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/belgrave-and-lilydale-lines-train-services-start-and-end-at-burnley-from-9pm-to-last-service-each-night-monday-30-march-to-wednesday-1-april-2026' }, { 'colour' => '#ffd500', 'description' => 'At a glance', 'display_on_board' => 'true', 'display_status' => 'true', 'disruption_id' => 357996, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Works', 'from_date' => '2026-03-30T10:00:00Z', 'last_updated' => '2026-03-30T10:01:58Z', 'published_on' => '2026-03-18T07:51:22Z', 'routes' => [], 'stops' => [], 'title' => 'Belgrave and Lilydale lines: No City Loop trains from 9pm to last service each night, Monday 30 March to Wednesday 1 April 2026', 'to_date' => '2026-04-01T16:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/belgrave-and-lilydale-lines-no-city-loop-trains-from-9pm-to-last-service-each-night-monday-30-march-to-wednesday-1-april-2026' }, { 'colour' => '#ffbb00', 'description' => 'Southern Cross Station: From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works.', 'display_on_board' => 'true', 'display_status' => 'false', 'disruption_id' => 344824, 'disruption_status' => 'Current', 'disruption_type' => 'Station detour', 'from_date' => '2025-09-25T05:13:00Z', 'last_updated' => '2026-02-10T10:00:02Z', 'published_on' => '2025-09-25T05:26:57Z', 'routes' => [], 'stops' => [], 'title' => 'Southern Cross Station: From 8.30pm Monday 29 September 2025 until August 2026, there will be changes to the way you access and exit the station, due to escalator upgrade works.', 'to_date' => '2026-08-31T17:00:00Z', 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/page/plan-a-journey/maps/southern-cross-station-map-and-travel-information/' }, { 'colour' => '#ffd500', 'description' => 'Stations on the Alamein, Belgrave, Glen Waverley and Lilydale lines will be affected by temporary car park closures, platform closures and changes to pedestrian access at select times, due to works as part of the Level Crossing Removal Project and other maintenance works.', 'display_on_board' => 'false', 'display_status' => 'false', 'disruption_id' => 323905, 'disruption_status' => 'Current', 'disruption_type' => 'Planned Closure', 'from_date' => '2024-10-28T10:54:00Z', 'last_updated' => '2026-03-18T05:11:32Z', 'published_on' => '2024-10-29T04:29:05Z', 'routes' => [], 'stops' => [], 'title' => 'Alamein, Belgrave, Glen Waverley and Lilydale line stations: Temporary car park closures and pedestrian access changes until further notice', 'to_date' => undef, 'url' => 'http://ptv.vic.gov.au/live-travel-updates/article/alamein-belgrave-glen-waverley-and-lilydale-line-stations-temporary-car-park-closures-and-pedestrian-access-changes-until-further-notice' } ], 'routes' => { '9' => { 'geopath' => [], 'route_gtfs_id' => '2-LIL', 'route_id' => 9, 'route_name' => 'Lilydale', 'route_number' => '', 'route_type' => 0 } }, 'runs' => { '950210' => { 'destination_name' => 'Parliament', 'direction_id' => 1, 'express_stop_count' => 0, 'externalService' => undef, 'final_stop_id' => 1155, 'geopath' => [], 'interchange' => { 'distributor' => { 'advertised' => 'false', 'destination_name' => 'Glen Waverley', 'direction_id' => 6, 'route_id' => 7, 'run_ref' => '950621', 'stop_id' => 1078 }, 'feeder' => undef }, 'route_id' => 9, 'route_type' => 0, 'run_id' => 950210, 'run_note' => '', 'run_ref' => '950210', 'run_sequence' => 0, 'status' => 'scheduled', 'vehicle_descriptor' => undef, 'vehicle_position' => undef } }, 'status' => { 'health' => 1, 'version' => '3.0' }, 'stops' => { '1012' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1012, 'stop_landmark' => '', 'stop_latitude' => '-37.8224', 'stop_longitude' => '145.045837', 'stop_name' => 'Auburn', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn East', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1030' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1030, 'stop_landmark' => '', 'stop_latitude' => '-37.8275566', 'stop_longitude' => '145.007553', 'stop_name' => 'Burnley', 'stop_sequence' => 0, 'stop_suburb' => 'Burnley', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1032' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1032, 'stop_landmark' => '', 'stop_latitude' => '-37.8265648', 'stop_longitude' => '145.058685', 'stop_name' => 'Camberwell', 'stop_sequence' => 0, 'stop_suburb' => 'Camberwell', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1059' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1059, 'stop_landmark' => '', 'stop_latitude' => '-37.8264046', 'stop_longitude' => '144.99707', 'stop_name' => 'East Richmond', 'stop_sequence' => 0, 'stop_suburb' => 'Richmond', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1068' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1068, 'stop_landmark' => '', 'stop_latitude' => '-37.8119774', 'stop_longitude' => '144.955658', 'stop_name' => 'Flagstaff', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1071' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1071, 'stop_landmark' => '', 'stop_latitude' => '-37.81831', 'stop_longitude' => '144.966965', 'stop_name' => 'Flinders Street', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1080' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1080, 'stop_landmark' => '', 'stop_latitude' => '-37.8214645', 'stop_longitude' => '145.036438', 'stop_name' => 'Glenferrie', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1090' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1090, 'stop_landmark' => '', 'stop_latitude' => '-37.8218231', 'stop_longitude' => '145.0229', 'stop_name' => 'Hawthorn', 'stop_sequence' => 0, 'stop_suburb' => 'Hawthorn', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1120' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1120, 'stop_landmark' => '', 'stop_latitude' => '-37.8099365', 'stop_longitude' => '144.9626', 'stop_name' => 'Melbourne Central', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1155' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1155, 'stop_landmark' => '', 'stop_latitude' => '-37.8110542', 'stop_longitude' => '144.9729', 'stop_name' => 'Parliament', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'false', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1162' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1162, 'stop_landmark' => '', 'stop_latitude' => '-37.8240738', 'stop_longitude' => '144.990158', 'stop_name' => 'Richmond', 'stop_sequence' => 0, 'stop_suburb' => 'Richmond', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'false', 'zone' => 'Zone 1' } }, '1181' => { 'route_type' => 0, 'stop_distance' => '0', 'stop_id' => 1181, 'stop_landmark' => '', 'stop_latitude' => '-37.8179321', 'stop_longitude' => '144.951416', 'stop_name' => 'Southern Cross', 'stop_sequence' => 0, 'stop_suburb' => 'Melbourne City', 'stop_ticket' => { 'is_free_fare_zone' => 'false', 'ticket_checks' => 'true', 'ticket_machine' => 'true', 'ticket_type' => '', 'ticket_zones' => [ 1 ], 'vline_reservation' => 'true', 'zone' => 'Zone 1' } } } }