All endpoints return JSON. Times are UK local time (HH:MM).
Plan a journey: West Cowes to London (Red Jet, bus, train) or London to West Cowes. Train times come from the National Rail timetable (Darwin for today and tomorrow), with the cheapest walk-up rail ticket valid on each train.
Parameters:
london (default: Waterloo, or Paddington via Reading),
victoria (London Victoria, changing at Clapham Junction or Barnham), parkway
(Southampton Airport Parkway), gatwick (Gatwick Airport, changing at Clapham Junction,
Reading or Barnham), or heathrow_t23, heathrow_t4 or heathrow_t5
(RailAir coach from Woking or Reading, or across London to Paddington). These have no fares yetto_london (default: from Cowes to the place) or
to_cowes (from the place to Cowes)Example Request:
GET /api/journeys?date=2026-10-15&departure_time=09:30
Example Response (one option shown):
{
"direction": "to_london",
"date": "2026-10-15",
"requested_departure": "09:30",
"arrive_by": null,
"journey_options": [
{
"ferry_depart": "09:35",
"ferry_arrive_t2": "10:03",
"bus_service": "QuayConnect",
"bus_depart": "10:07",
"arrive_central": "10:17",
"train_depart": "10:30",
"train_platform": "1",
"operator": "South Western Railway",
"route_type": "direct",
"london_terminal": "London Waterloo",
"arrive_london": "11:47",
"destination": "London Waterloo",
"arrive_destination": "11:47",
"route": ["Southampton Central", "London Waterloo"],
"changes": 0,
"interchange": null,
"total_duration": "2h 12m",
"ticket": {"code": "SVR", "name": "Off-Peak Return", "price": "£60.60", "band": "off_peak"},
"other_route": {"route_type": "via_reading", "train_depart": "11:15",
"interchange": "Reading", "london_terminal": "London Paddington", "arrive_london": "12:40",
"destination": "London Paddington", "arrive_destination": "12:40"}
}
],
"train_source": "timetable",
"train_data_status": "Showing timetabled services for Thursday 15 October 2026 from 09:30 onwards",
"timetable_warning": null,
"train_warning": null,
"place": "london",
"place_name": "London"
}
Every option has route (the stations where you board, change and leave),
changes (0 for a direct train) and, after a change, a
note with the times at the interchange. london_terminal
and arrive_london appear only for London; use destination
and arrive_destination (or origin for
to_cowes) for every place.
Options may also include tight_option (a train leaving less than 5 minutes after you
reach Southampton Central) and, for to_cowes, arrive_southampton,
arrive_town_quay, arrive_cowes and
earlier_trains.
Live trains for the next two hours. By default from Southampton Central towards London, including CrossCountry trains with their best connection at Basingstoke or Reading.
home for trains from London Waterloo and Paddington to
Southampton, each with the bus and Red Jet it connects with and the West Cowes arrivalGET /api/departures GET /api/departures?direction=home
Status of one live departure and the alternatives that get you there sooner.
home for trains from Londondirection=home: London Waterloo (default) or London PaddingtonGET /api/departures/options?train=10:30 GET /api/departures/options?train=17:35&direction=home&origin=London%20Waterloo
Live tracking of today's journey to London: where you should be, delays, missed connections and alternatives.
GET /api/track?ferry=09:35&train=10:30
Red Jet timetable for a date, in both directions, with live service status for today.
GET /api/ferry?date=2026-10-15
Raw live departure board for a station.
GET /api/trains?from=SOU&to=WAT
Retry-After header (seconds).