The accuracy of the API during diversions

I have been entertained by the 410 this week. Due to emergency water works, there has been a diversion in place for much of this week. The stops themselves have been hooded and marked closed since Monday, but from past and present experience, that really is only an indication that something might be, might soon be, or might recently have been, going on. It certainly doesn’t mean the stops are currently closed. In reality the bus returned to route until well after seven o’clock on Tuesday morning and then was only diverted one way for the day. It now seems to have happily settled down to being diverted both ways.

Unfortunately the API has not even come close to communicating this on occasions. Sometimes the status has been updated to acknowledge the diversion. It was correct on Tuesday and belatedly caught up (with a minor error) on Wednesday, but has been reset to normal service even though the buses are very much on diversion. There have been times when the stops have been marked as closed. Looking at Matthew Somerville’s fun Live Bus Map, there was one point when all the bus stops on the diverted section were not displayed but I don’t know if that was just the stops being marked closed, or a more drastic change. But anyway for the last two days there has been arrivals data for all the stops that are not being served, with or without a status update.

The bottom line is that there is no useful way of reliably knowing what is happening with this route without actually walking to one of the two diversion points and hanging around for fifteen minutes or so to see which way the buses go.

Anyway, coming to the point … Is this just a symptom of a disconnect between what is happening operationally, and the information in the API? Is the accuracy of the API data entirely dependent on someone manually updating it in an accurate and timely fashion?

Basically, anything “local” is done by the local council and/or the bus contractor. There isn’t any way for TfL, as things stand at the moment, to capture this very useful information.

I’m not sure if this a technical problem a legal one or the direct from the Mayor.


I am wondering about that. You see plenty of messages on TfL’s Twitter feed about road closures because of accidents and you also hear them on the buses if you are sitting close enough to the driver. It seems unlikely to me that Centrecomm or whatever it is called is unaware of diversions such as those on the 410.

It may be more a matter of ensuring that the information is captured beyond social media. Sad fact with any administrative source is that if putting in the data right (or at all) is not necessary for the wider activity (in this case running the bus service) to function, it often won’t get done. The end result can be a nice shiny public interface which is rusting away underneath, because the input ain’t right.


1 Like

100% agreed. GIGO, as ever.,

Just after I boarded the 125 this afternoon after checking for arrivals with my app, I found that the app was simultaneously telling me that the stop was closed, thanks to Eversley Park Road being closed for gas works. That bit of fake news was of course communicated by TfL, as shown by the bus status page for the route. I might add that there was no sign whatsoever of actual or impending work in EPR.

So that is one and a half miles of bus route, 5 or 6 stops each way, with totally false information.


1 Like

@mjcarchive I’ve found that if you tell the TflBusAlerts Twitter feed about a problem involving:
a) an unexpected, unnotified diversion (ie. route IS diverted but nothing in app to reflect that)
b) an incorrect diversion status message (ie. route is running as normal, maybe due to cancelled/delayed works)

They will say that they hadn’t been informed.

Yet every bus sends GPS coordinates all the time and within the bus the “*” is displayed in place of next stop name.

If bus stops are flagged as closed, but the bus calls at them - the data is there.
If bus stops are open, but the bus diverts without warning - the data is there.

I’m guessing this just means there is no alert algorithm in place to let them know. Of course there is huge network to monitor, so that couldn’t be done manually, but it’s very odd to have days of disruption that go unnoticed in the system.