tl;dr: can we remove all the deprecated stuff from the Reading Lists API when we reimplement it?
Details:
The existing Reading List REST Interface implemented in RESTBase is being replaced by MediaWiki REST API endpoints. See parent, grandparent and siblings tasks for context.
Some items (response values from endpoints or even entire endpoints) have been marked as deprecated for years. Additionally, discussion has revealed that some data not marked as deprecated is unused. All the Reading Lists endpoints are all marked as unstable, and review of metrics indicates that WMF Mobile Apps are the only callers of concern. We can therefore make whatever simplifying adjustments we choose during the reimplementation without violating promises or affecting public callers.
Here are a list of things we might remove. (If I've missed anything, please add it):
- POST /data/lists endpoint: this entire endpoint is marked as deprecated. Callers are advised to use the "batch" version instead.
- POST /data/lists/{id}/entries: this entire endpoint is marked as deprecated. Callers are advised to use the "batch" version instead.
- POST /data/lists/batch endpoint, "batch" response value: this response value is marked as deprecated. Callers are advised to use the full "lists" object instead (the "lists" object already exists within that same response).
- PUT /data/lists/{id}, "id" response value: this response value is marked as deprecated. Callers are advised to use the full "list" object instead (the "list" object already exists within that same response).
- GET /data/lists/{id}/entries summary hydration: The RESTBase code appears intended to hydrate the Action API response with summary values. However, these summary values are not used by the Mobile Apps, do not appear in the Open API spec, and don't appear in the actual production responses. They therefore do not need to be included in the reimplementation. This has already been discussed in T346739: Remove 'summary' field from reading list sync structures., and is included here for completeness
If you have knowledge about any of the above, please comment on the task whether or not particular endpoints or response value can be removed.
I have subscribed some folks that work on the Mobile Apps to this task. Hopefully I got the right set of people. If I subscribed you and this is not relevant to you, please unsubscribe. If you know of someone else that should be subscribed, please add them. Thanks.