API RFC: Deprecate and remove is-online endpoint

Sort:
bcurtis

https://www.chess.com/news/view/published-data-api#pubapi-endpoint-player-is-online

This endpoint requires a large number of internal resources to maintain, and in the past week it has been used by only one clear developer script with a user-agent that helps us contact the developer. All other access to that endpoint appears to be tests, runaway scripts, or unidentified programs that could work better.

We propose to completely remove this endpoint. Current online status of a player will no longer be available in this API.

We would like to have one week of discussion here, so that developers can voice any thoughts or concerns. We will work directly with the developer who identifies his program in these calls to move him to the newer system. In addition, we will monitor this forum post for at least two months, and directly work with other developers who are impacted. We are unlikely to publish the new method publicly, since it is strictly beta testing at the moment.

Thank you. Please let us know if this impacts a program you are running, and any concerns you have.

stephen_33

Although I've never used that particular endpoint, it would be useful to have some means by which I could check the online status of a member(s). I thought of writing some code to do this a while ago when I was waiting for an admin of a club to send an urgent match challenge.

Then it could run in background, polling the member's status endpoint, instead of me having to refresh their profile page. So it's good to know you plan to replace it with something similar.

bcurtis

If you don't currently use it, don't start now.

We do hope to make the new system publicly available at some point. It has richer data — you may have noticed the buttons on people's member profile pages that tell you if they are currently playing, for example.

If you or other developers have specific requests for such data endpoints, describing them here will be useful but we do not have current plans to replace this endpoint with something specific for the purpose and fitting the current Public API policies. It is very likely the same system the website uses will be useful for you, but we do not yet invite developers to hook into that yet. It is beta (might change without notice) and the load concerns are still being addressed.

Thanks.

stephen_33

The 'new system' sounds intriguing but will any aspects of existing endpoints change?

I did recently suggest splitting off the 'in_registration' and 'in_progress' matches from the  'finished' ones in the clubs-match endpoint.

ImperfectAge

Never used that API. Most of my scripts are related to club and club league management

bcurtis

> will any aspects of existing endpoints change?

Only this one: https://www.chess.com/news/view/published-data-api#pubapi-endpoint-player-is-online

That endpoint uses a deprecated technology on the backend for tracking who is online. We have been removing all of this throughout the website, and only recently noticed that there was a Public API endpoint using it. We want to remove the technology and so we plan to remove this endpoint next week. No other work on Public API endpoints is currently planned; we are unlikely to have available manpower until after the WCC concludes. The team match change you suggested and also addressing the large per-country player lists are high on the priority list.

Tricky_Dicky

I do use the 'online' end point but only in the run up to team matches.

I check before sending direct message.

stephen_33
bcurtis wrote:

The team match change you suggested and also addressing the large per-country player lists are high on the priority list.

That's good news!

* And I notice the most recent 500 finished matches are now being given instead of the oldest? Is that yesterday's news because I don't remember hearing that had been fixed?

Anyway, it's all coming together at last  😄

Nevfy

I rarely used it before, but I won't miss it.

Nevertheless, I hope that 'last_online' player's timestamp is not connected to the same technology, which you plan to remove, and won't be impacted.

bcurtis

Last Online will not be changed. It is, however, less precise than the technology we are moving to, and so it might be updated in the future to be more accurate. No telling when or if, though.

Tricky_Dicky

I get the impression (no emperical evidence) that the API is responding quite a bit faster over the last few days. Wonder if the removal of this endpoint has helped with response time?

I also note that the ChangeLog and the documentation have not been updated to reflect that it no longer is valid.

ttbel

Hi,
Which endpoint can be used already to get a "player online status" after is-online was removed ?