I noticed today, due to some exceptions, that sites that do not perform in beta can be closed and thus removed from /sites.
If you persist data, you will need to check your data every time you pull /sites.
8-\
I would suggest adding a site.state
, closed
, and keep the site in the list for a short period of time to allow an intelligent response to the event.
response to kevin
This is assuming that sites behaves perfectly. If, for any reason, sites does something like returning an empty array, or a malformed site, automated processes will erroneously delete or disassociate data.
Where as if an explicit indication that the site is removed were present appropriate and proactive action could be taken.
This is another case where a little bit of compromise in providing fault tolerance upstream would be of great benefit downstream and easily justify a few extra bytes in the /sites response.
see http://area51.stackexchange.com/proposals/614/electronic-gadgets
/sites
malfunctioning is the concern, why not be concerned about it erroneously returningclosed
? The flaw is deleting data at the drop of a hat, which is purely a client concern. As soon as there's a "signal state," we have to worry about every client seeing it. What if some client misses theclosed
state, and now the site is gone (we're not keeping dead sites around forever, period); how should it behave?state=closed
for a site that is taken down, this is a problem with signalling in general over a REST-ful API (unless the "messages" are persisted, which as I said we aren't going to do). All implementing this would do is encourage developers to write brittle, subtly broken code. Remember that [app]s in general do not control when they are run, that is very fundamental to the problem with this feature-request.