Beta. The response shape may still change. These pages are updated when it does, and the changelog records anything that would break a client.
What you can and cannot do
Writes are on the roadmap. Until they land, an app can display lists but not edit them.
A 200 does not always mean a list
Shared query parameters
Both endpoints accept the same paging controls.
A non-numeric
limit or page is normally a 400 naming the parameter, so out-of-range is silent while wrong-type is loud.
The two endpoints validate
sort differently, on purpose.On GET /lists/user/{userId}, sort is a fixed set — updated, created, name, likes, followers, items, popularity — and anything else is a 400.On GET /lists/{id} it is free-form: an unrecognised value falls back to the list’s own stored order rather than erroring. Do not rely on a typo failing loudly there.Account limits
These are limits on what a user can build, enforced when a list is saved on the website. The read API cannot return them, but they explain why a list stops accepting items.
There are three separate ceilings, and a user can hit any of them independently: too many items in one list, too many lists, or too many items across everything.
See also
GET /lists/{id}
One list and its items, with sorting and paging.
GET /lists/user/{userId}
Every list belonging to one user.
Custom lists guide
What custom lists are, and how they fit alongside the watchlist.
AUTH V2
How to get the user token these endpoints require.