@Tricky_Dicky thanks, I'll investigate on this issue
Online status

Thanks for the bug report! If you see something like this and report it while it's happening, we can gather a lot more data and maybe solve it sooner. For example, I would love to compare the "last online" timestamp in the player profile.
So if you see this again, please post here right away — thanks!

Yes sorry Ben. Should have posted examples.
One of them was my login. I had been logged on for at least an hour and the flag was still coming up false.
If I see it again I will post ASAP.

Example found 19th May 10:00 GMT
https://www.chess.com/member/ragman666
Home page - online now
API flag - False
I refreshed home page to make sure not a caching issue

From what we can tell, this is mostly an issue with our 5-minute time resolution for accuracy — when a person changes from offline to on or online to off, it can take up to 5 minutes to show up in this endpoint. We'll reduce this to 1 minute, which should give better results but will not be immediate — the description you gave is likely to still report a failure.
In the near future, we will be testing out a completely different mechanism for evaluating if a person is online. That should give to-the-second time resolution, and if it works as planned then we will invite everyone to switch to that.
https://api.chess.com/pub/player/{username}/is-online
Although this function seems to work pretty well I have seen instances of players on line for at least 30 mins flagged as false and at least one instance of a player who was offline for at least 4 hours flagged as true.