{
 "path": "/trains/oldfield-park",
 "title": "Oldfield Park trains: live departures and arrivals",
 "description": "Live departures and arrivals at Oldfield Park station: platforms, delays, cancellations, calling points, engineering works, step-free access and…",
 "canonical": "https://heybath.uk/trains/oldfield-park",
 "generated_at": "2026-10-12T16:29:41.871Z",
 "date_modified": "2026-10-12T16:29:41Z",
 "data": {
  "station": {
   "name": "Oldfield Park",
   "crs": "OLF",
   "path": "/trains/oldfield-park",
   "lat": 51.37920116,
   "lng": -2.3802945,
   "address": "Oldfield Park station, Brook Road, BA2 3RS",
   "area": {
    "name": "Westmoreland",
    "path": "/areas/westmoreland"
   }
  },
  "board_checked_at": "2026-10-12T16:29:41.835Z",
  "departures": [
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Weymouth",
    "origin_crs": [
     "WEY"
    ],
    "destination": "Gloucester",
    "destination_crs": [
     "GCR"
    ],
    "time": "17:32",
    "at": "2026-10-12T16:32:00.000Z",
    "status": {
     "state": "late",
     "label": "4 min late",
     "late_min": 4,
     "expected_at": "2026-10-12T16:36:00.000Z",
     "reason": null
    },
    "calls": [
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "17:38",
      "at": "2026-10-12T16:38:00.000Z",
      "est": "17:42",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "17:48",
      "at": "2026-10-12T16:48:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Filton Abbey Wood",
      "crs": "FIT",
      "time": "18:17",
      "at": "2026-10-12T17:17:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Parkway",
      "crs": "BPW",
      "time": "18:21",
      "at": "2026-10-12T17:21:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Yate",
      "crs": "YAE",
      "time": "18:31",
      "at": "2026-10-12T17:31:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Gloucester",
      "crs": "GCR",
      "time": "19:04",
      "at": "2026-10-12T18:04:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Severn Beach",
    "origin_crs": [
     "SVB"
    ],
    "destination": "Salisbury",
    "destination_crs": [
     "SAL"
    ],
    "time": "18:01",
    "at": "2026-10-12T17:01:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "18:04",
      "at": "2026-10-12T17:04:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Freshford",
      "crs": "FFD",
      "time": "18:14",
      "at": "2026-10-12T17:14:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Avoncliff",
      "crs": "AVF",
      "time": "18:17",
      "at": "2026-10-12T17:17:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "18:20",
      "at": "2026-10-12T17:20:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "18:27",
      "at": "2026-10-12T17:27:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "18:34",
      "at": "2026-10-12T17:34:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Dilton Marsh",
      "crs": "DMH",
      "time": "18:38",
      "at": "2026-10-12T17:38:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Warminster",
      "crs": "WMN",
      "time": "18:44",
      "at": "2026-10-12T17:44:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Salisbury",
      "crs": "SAL",
      "time": "19:06",
      "at": "2026-10-12T18:06:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Warminster",
    "origin_crs": [
     "WMN"
    ],
    "destination": "Bristol Temple Meads",
    "destination_crs": [
     "BRI"
    ],
    "time": "18:14",
    "at": "2026-10-12T17:14:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "18:21",
      "at": "2026-10-12T17:21:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "18:29",
      "at": "2026-10-12T17:29:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Gloucester",
    "origin_crs": [
     "GCR"
    ],
    "destination": "Weymouth",
    "destination_crs": [
     "WEY"
    ],
    "time": "18:20",
    "at": "2026-10-12T17:20:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "18:22",
      "at": "2026-10-12T17:22:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Freshford",
      "crs": "FFD",
      "time": "18:32",
      "at": "2026-10-12T17:32:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "18:36",
      "at": "2026-10-12T17:36:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "18:43",
      "at": "2026-10-12T17:43:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "18:50",
      "at": "2026-10-12T17:50:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Frome",
      "crs": "FRO",
      "time": "19:05",
      "at": "2026-10-12T18:05:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bruton",
      "crs": "BRU",
      "time": "19:18",
      "at": "2026-10-12T18:18:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Castle Cary",
      "crs": "CLC",
      "time": "19:24",
      "at": "2026-10-12T18:24:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Yeovil Pen Mill",
      "crs": "YVP",
      "time": "19:50",
      "at": "2026-10-12T18:50:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Thornford",
      "crs": "THO",
      "time": "19:56",
      "at": "2026-10-12T18:56:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Yetminster",
      "crs": "YET",
      "time": "19:59",
      "at": "2026-10-12T18:59:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Chetnole",
      "crs": "CNO",
      "time": "20:03",
      "at": "2026-10-12T19:03:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Maiden Newton",
      "crs": "MDN",
      "time": "20:13",
      "at": "2026-10-12T19:13:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Dorchester West",
      "crs": "DCW",
      "time": "20:25",
      "at": "2026-10-12T19:25:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Upwey",
      "crs": "UPW",
      "time": "20:35",
      "at": "2026-10-12T19:35:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Weymouth",
      "crs": "WEY",
      "time": "20:41",
      "at": "2026-10-12T19:41:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 2,
    "origin": "Bristol Temple Meads",
    "origin_crs": [
     "BRI"
    ],
    "destination": "Salisbury",
    "destination_crs": [
     "SAL"
    ],
    "time": "18:57",
    "at": "2026-10-12T17:57:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "18:59",
      "at": "2026-10-12T17:59:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Freshford",
      "crs": "FFD",
      "time": "19:10",
      "at": "2026-10-12T18:10:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Avoncliff",
      "crs": "AVF",
      "time": "19:12",
      "at": "2026-10-12T18:12:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "19:16",
      "at": "2026-10-12T18:16:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "19:23",
      "at": "2026-10-12T18:23:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "19:30",
      "at": "2026-10-12T18:30:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Dilton Marsh",
      "crs": "DMH",
      "time": "19:39",
      "at": "2026-10-12T18:39:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Warminster",
      "crs": "WMN",
      "time": "19:45",
      "at": "2026-10-12T18:45:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Salisbury",
      "crs": "SAL",
      "time": "20:06",
      "at": "2026-10-12T19:06:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Westbury",
    "origin_crs": [
     "WSB"
    ],
    "destination": "Bristol Temple Meads",
    "destination_crs": [
     "BRI"
    ],
    "time": "19:16",
    "at": "2026-10-12T18:16:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "19:22",
      "at": "2026-10-12T18:22:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "19:31",
      "at": "2026-10-12T18:31:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Gloucester",
    "origin_crs": [
     "GCR"
    ],
    "destination": "Frome",
    "destination_crs": [
     "FRO"
    ],
    "time": "19:19",
    "at": "2026-10-12T18:19:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "19:22",
      "at": "2026-10-12T18:22:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "19:34",
      "at": "2026-10-12T18:34:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "19:41",
      "at": "2026-10-12T18:41:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "19:49",
      "at": "2026-10-12T18:49:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Frome",
      "crs": "FRO",
      "time": "20:04",
      "at": "2026-10-12T19:04:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   }
  ],
  "arrivals": [
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Weymouth",
    "origin_crs": [
     "WEY"
    ],
    "destination": "Gloucester",
    "destination_crs": [
     "GCR"
    ],
    "time": "17:31",
    "at": "2026-10-12T16:31:00.000Z",
    "status": {
     "state": "late",
     "label": "4 min late",
     "late_min": 4,
     "expected_at": "2026-10-12T16:35:00.000Z",
     "reason": null
    },
    "calls": [
     {
      "name": "Weymouth",
      "crs": "WEY",
      "time": "15:28",
      "at": "2026-10-12T14:28:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Upwey",
      "crs": "UPW",
      "time": "15:33",
      "at": "2026-10-12T14:33:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Dorchester West",
      "crs": "DCW",
      "time": "15:44",
      "at": "2026-10-12T14:44:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Maiden Newton",
      "crs": "MDN",
      "time": "15:57",
      "at": "2026-10-12T14:57:00.000Z",
      "est": "16:03",
      "cancelled": false
     },
     {
      "name": "Chetnole",
      "crs": "CNO",
      "time": "16:05",
      "at": "2026-10-12T15:05:00.000Z",
      "est": "16:11",
      "cancelled": false
     },
     {
      "name": "Yetminster",
      "crs": "YET",
      "time": "16:09",
      "at": "2026-10-12T15:09:00.000Z",
      "est": "16:15",
      "cancelled": false
     },
     {
      "name": "Thornford",
      "crs": "THO",
      "time": "16:12",
      "at": "2026-10-12T15:12:00.000Z",
      "est": "16:18",
      "cancelled": false
     },
     {
      "name": "Yeovil Pen Mill",
      "crs": "YVP",
      "time": "16:21",
      "at": "2026-10-12T15:21:00.000Z",
      "est": "16:25",
      "cancelled": false
     },
     {
      "name": "Castle Cary",
      "crs": "CLC",
      "time": "16:35",
      "at": "2026-10-12T15:35:00.000Z",
      "est": "16:40",
      "cancelled": false
     },
     {
      "name": "Bruton",
      "crs": "BRU",
      "time": "16:40",
      "at": "2026-10-12T15:40:00.000Z",
      "est": "16:46",
      "cancelled": false
     },
     {
      "name": "Frome",
      "crs": "FRO",
      "time": "16:52",
      "at": "2026-10-12T15:52:00.000Z",
      "est": "17:00",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "17:02",
      "at": "2026-10-12T16:02:00.000Z",
      "est": "17:09",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "17:09",
      "at": "2026-10-12T16:09:00.000Z",
      "est": "17:15",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "17:15",
      "at": "2026-10-12T16:15:00.000Z",
      "est": "17:20",
      "cancelled": false
     },
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "17:28",
      "at": "2026-10-12T16:28:00.000Z",
      "est": "17:33",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Severn Beach",
    "origin_crs": [
     "SVB"
    ],
    "destination": "Salisbury",
    "destination_crs": [
     "SAL"
    ],
    "time": "18:01",
    "at": "2026-10-12T17:01:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Severn Beach",
      "crs": "SVB",
      "time": "17:01",
      "at": "2026-10-12T16:01:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "St Andrews Road",
      "crs": "SAR",
      "time": "17:07",
      "at": "2026-10-12T16:07:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Avonmouth",
      "crs": "AVN",
      "time": "17:13",
      "at": "2026-10-12T16:13:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Portway Park and Ride",
      "crs": "PRI",
      "time": "17:16",
      "at": "2026-10-12T16:16:00.000Z",
      "est": "17:20",
      "cancelled": false
     },
     {
      "name": "Shirehampton",
      "crs": "SHH",
      "time": "17:18",
      "at": "2026-10-12T16:18:00.000Z",
      "est": "17:23",
      "cancelled": false
     },
     {
      "name": "Sea Mills",
      "crs": "SML",
      "time": "17:22",
      "at": "2026-10-12T16:22:00.000Z",
      "est": "17:25",
      "cancelled": false
     },
     {
      "name": "Clifton Down",
      "crs": "CFN",
      "time": "17:27",
      "at": "2026-10-12T16:27:00.000Z",
      "est": "17:30",
      "cancelled": false
     },
     {
      "name": "Redland",
      "crs": "RDA",
      "time": "17:30",
      "at": "2026-10-12T16:30:00.000Z",
      "est": "17:33",
      "cancelled": false
     },
     {
      "name": "Montpelier",
      "crs": "MTP",
      "time": "17:32",
      "at": "2026-10-12T16:32:00.000Z",
      "est": "17:35",
      "cancelled": false
     },
     {
      "name": "Stapleton Road",
      "crs": "SRD",
      "time": "17:37",
      "at": "2026-10-12T16:37:00.000Z",
      "est": "17:39",
      "cancelled": false
     },
     {
      "name": "Lawrence Hill",
      "crs": "LWH",
      "time": "17:41",
      "at": "2026-10-12T16:41:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "17:48",
      "at": "2026-10-12T16:48:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "17:55",
      "at": "2026-10-12T16:55:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Warminster",
    "origin_crs": [
     "WMN"
    ],
    "destination": "Bristol Temple Meads",
    "destination_crs": [
     "BRI"
    ],
    "time": "18:14",
    "at": "2026-10-12T17:14:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Warminster",
      "crs": "WMN",
      "time": "17:30",
      "at": "2026-10-12T16:30:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Dilton Marsh",
      "crs": "DMH",
      "time": "17:34",
      "at": "2026-10-12T16:34:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "17:41",
      "at": "2026-10-12T16:41:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "17:47",
      "at": "2026-10-12T16:47:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "17:53",
      "at": "2026-10-12T16:53:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Avoncliff",
      "crs": "AVF",
      "time": "17:56",
      "at": "2026-10-12T16:56:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Freshford",
      "crs": "FFD",
      "time": "17:59",
      "at": "2026-10-12T16:59:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "18:11",
      "at": "2026-10-12T17:11:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Gloucester",
    "origin_crs": [
     "GCR"
    ],
    "destination": "Weymouth",
    "destination_crs": [
     "WEY"
    ],
    "time": "18:19",
    "at": "2026-10-12T17:19:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Gloucester",
      "crs": "GCR",
      "time": "17:09",
      "at": "2026-10-12T16:09:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Yate",
      "crs": "YAE",
      "time": "17:36",
      "at": "2026-10-12T16:36:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Parkway",
      "crs": "BPW",
      "time": "17:45",
      "at": "2026-10-12T16:45:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Filton Abbey Wood",
      "crs": "FIT",
      "time": "17:49",
      "at": "2026-10-12T16:49:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "18:06",
      "at": "2026-10-12T17:06:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "18:13",
      "at": "2026-10-12T17:13:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 2,
    "origin": "Bristol Temple Meads",
    "origin_crs": [
     "BRI"
    ],
    "destination": "Salisbury",
    "destination_crs": [
     "SAL"
    ],
    "time": "18:56",
    "at": "2026-10-12T17:56:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "18:43",
      "at": "2026-10-12T17:43:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "18:50",
      "at": "2026-10-12T17:50:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "1",
    "bus": false,
    "coaches": 3,
    "origin": "Westbury",
    "origin_crs": [
     "WSB"
    ],
    "destination": "Bristol Temple Meads",
    "destination_crs": [
     "BRI"
    ],
    "time": "19:15",
    "at": "2026-10-12T18:15:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Westbury",
      "crs": "WSB",
      "time": "18:42",
      "at": "2026-10-12T17:42:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Trowbridge",
      "crs": "TRO",
      "time": "18:48",
      "at": "2026-10-12T17:48:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bradford-on-Avon",
      "crs": "BOA",
      "time": "18:55",
      "at": "2026-10-12T17:55:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Avoncliff",
      "crs": "AVF",
      "time": "18:58",
      "at": "2026-10-12T17:58:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Freshford",
      "crs": "FFD",
      "time": "19:01",
      "at": "2026-10-12T18:01:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bath Spa",
      "crs": "BTH",
      "time": "19:13",
      "at": "2026-10-12T18:13:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   },
   {
    "operator": "Great Western Railway",
    "operator_code": "GW",
    "platform": "2",
    "bus": false,
    "coaches": 3,
    "origin": "Gloucester",
    "origin_crs": [
     "GCR"
    ],
    "destination": "Frome",
    "destination_crs": [
     "FRO"
    ],
    "time": "19:19",
    "at": "2026-10-12T18:19:00.000Z",
    "status": {
     "state": "on-time",
     "label": "On time",
     "late_min": 0,
     "expected_at": null,
     "reason": null
    },
    "calls": [
     {
      "name": "Gloucester",
      "crs": "GCR",
      "time": "18:09",
      "at": "2026-10-12T17:09:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Yate",
      "crs": "YAE",
      "time": "18:33",
      "at": "2026-10-12T17:33:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Parkway",
      "crs": "BPW",
      "time": "18:46",
      "at": "2026-10-12T17:46:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Filton Abbey Wood",
      "crs": "FIT",
      "time": "18:49",
      "at": "2026-10-12T17:49:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Bristol Temple Meads",
      "crs": "BRI",
      "time": "19:05",
      "at": "2026-10-12T18:05:00.000Z",
      "est": "On time",
      "cancelled": false
     },
     {
      "name": "Keynsham",
      "crs": "KYN",
      "time": "19:12",
      "at": "2026-10-12T18:12:00.000Z",
      "est": "On time",
      "cancelled": false
     }
    ]
   }
  ],
  "messages": [],
  "next_trains": [
   {
    "towards": "Bristol Temple Meads",
    "to": "Bristol Temple Meads",
    "at": "2026-10-12T16:32:00.000Z",
    "platform": "1",
    "status": {
     "state": "late",
     "label": "4 min late",
     "late_min": 4,
     "expected_at": "2026-10-12T16:36:00.000Z",
     "reason": null
    },
    "arrives_at": "2026-10-12T16:48:00.000Z",
    "then": {
     "at": "2026-10-12T17:14:00.000Z",
     "status": {
      "state": "on-time",
      "label": "On time",
      "late_min": 0,
      "expected_at": null,
      "reason": null
     }
    }
   }
  ],
  "disruptions": [],
  "operators": [
   {
    "code": "GW",
    "name": "Great Western Railway",
    "status": "Custom",
    "description": "Reduced service between Falmouth Docks and Truro"
   }
  ],
  "facilities": {
   "crs": "OLF",
   "name": "Oldfield Park",
   "kb_slug": "oldfield-park",
   "address": "Oldfield Park station, Brook Road",
   "postcode": "BA2 3RS",
   "lat": 51.37920116,
   "lng": -2.3802945,
   "operator": {
    "name": "Great Western Railway",
    "code": "GW"
   },
   "staffing": "Part Time",
   "step_free": "B2, (refer to quick reference guide)",
   "step_free_notes": "Step Free - Category B2 Station - This station has step free access to both platforms however these are via steep ramps in particular to the Bath Spa bound platform.",
   "lifts": false,
   "ramp": false,
   "wheelchairs": false,
   "staff_help": true,
   "staff_hours": [
    {
     "day": "Monday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Tuesday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Wednesday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Thursday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Friday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Saturday",
     "hours": "Unavailable"
    },
    {
     "day": "Sunday",
     "hours": "Unavailable"
    }
   ],
   "meeting_point": "Meeting point: Ticket Machine, Platform 1.",
   "helpline": "08001 971 329 or 18001 0800 197 1329 (Textphone)",
   "ticket_office": true,
   "ticket_office_hours": [
    {
     "day": "Monday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Tuesday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Wednesday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Thursday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Friday",
     "hours": "6.45am to 9.40am"
    },
    {
     "day": "Saturday",
     "hours": "Unavailable"
    },
    {
     "day": "Sunday",
     "hours": "Unavailable"
    }
   ],
   "ticket_office_notes": null,
   "ticket_machines": true,
   "toilets": false,
   "accessible_toilets": false,
   "baby_changing": false,
   "changing_places": false,
   "waiting_room": false,
   "sheltered": true,
   "wifi": false,
   "refreshments": false,
   "platforms": 2,
   "cycle_spaces": 14,
   "cycle_storage": true,
   "car_spaces": null,
   "accessible_car_spaces": 0,
   "taxi": null,
   "replacement_bus": "Towards Bath Spa - Bus stop (Bellots Road) on A36 Lower Bristol Road. Towards Bristol - Bus stop on A3604 Windsor Bridge Road.",
   "alerts": null,
   "changed_at": "2026-09-05T14:41:56.600Z",
   "link": "https://www.nationalrail.co.uk/stations/oldfield-park/"
  },
  "credits": [
   "Train times: National Rail",
   "Disruptions: National Rail and Rail Delivery Group",
   "Service status: National Rail",
   "Station facilities: NationalRail (Train Information Services Ltd)",
   "Train times can change at short notice; check nationalrail.co.uk before you travel.",
   "Rail information from National Rail and Rail Delivery Group. Not affiliated with or endorsed by either."
  ],
  "photo": null,
  "inside": [],
  "near": {
   "same": [],
   "other": [
    {
     "name": "West Avenue (SW-bound)",
     "kind": "bus-stop",
     "path": "/buses/stops/west-avenue-sw-bound-0180bac30255",
     "distance": 102,
     "lat": 51.37873,
     "lng": -2.38155
    },
    {
     "name": "Triangle North (E-bound)",
     "kind": "bus-stop",
     "path": "/buses/stops/triangle-north-e-bound-0180bac30253",
     "distance": 111,
     "lat": 51.37874,
     "lng": -2.37887
    },
    {
     "name": "Moorland Road (A)",
     "kind": "bus-stop",
     "path": "/buses/stops/moorland-road-a-0180bac30300",
     "distance": 195,
     "lat": 51.37755,
     "lng": -2.37933
    },
    {
     "name": "Lyndhurst Road (S-bound)",
     "kind": "bus-stop",
     "path": "/buses/stops/lyndhurst-road-s-bound-0180bac30256",
     "distance": 205,
     "lat": 51.37867,
     "lng": -2.38313
    },
    {
     "name": "South View Road/Denmark Road Car Park",
     "kind": "car-park",
     "path": "/parking/south-view-road-denmark-road-car-park",
     "distance": 207,
     "lat": 51.380989,
     "lng": -2.379473
    }
   ]
  },
  "indexable": true,
  "date_modified": "2026-10-12T16:29:41Z",
  "sources": [
   {
    "id": "rail-disruptions",
    "name": "Rail disruptions (National Rail)",
    "url": "https://www.nationalrail.co.uk/status-and-disruptions/",
    "licence": "Rail Data Marketplace open data licence (free, credit required)",
    "attribution": "National Rail and Rail Delivery Group",
    "cadence_minutes": 15,
    "last_ok": "2026-10-12T16:15:14.931Z",
    "state": "ok",
    "label": "Up to date",
    "at": "2026-10-12T16:15:14.931Z"
   },
   {
    "id": "rail-status",
    "name": "Train operator status (National Rail)",
    "url": "https://www.nationalrail.co.uk/status-and-disruptions/",
    "licence": "Rail Data Marketplace open data licence (free, credit required)",
    "attribution": "National Rail",
    "cadence_minutes": 15,
    "last_ok": "2026-10-12T16:15:14.325Z",
    "state": "ok",
    "label": "Up to date",
    "at": "2026-10-12T16:15:14.325Z"
   },
   {
    "id": "rail-stations",
    "name": "Station facilities (National Rail)",
    "url": "https://www.nationalrail.co.uk/stations/",
    "licence": "Rail Data Marketplace open data licence (free, credit required); not for commercial gain",
    "attribution": "NationalRail (Train Information Services Ltd)",
    "cadence_minutes": 10080,
    "last_ok": "2026-10-12T13:23:15.672Z",
    "state": "ok",
    "label": "Up to date",
    "at": "2026-10-12T13:23:15.672Z"
   }
  ]
 }
}