Need help? Check out Spotify Answers for solutions to a wide range of topics. |
Can we list more than 50 of the most recently played tracks of users from our systems, in the API https://developer.spotify.com/documentation/web-api/reference/#endpoint-get-recently-played ?
Currently, it allows us to fetch only the 50 most recent tracks. However, since in the apps, users can now view a much higher number of their tracks played in the past, can't this limitation be relaxed in this API?
Thanks.
Hey @BloodShura, thanks for your post here!
Hmm, let’s dive into this. Are you able to navigate the list of recently played tracks with the before attribute? That might help get more recently played tracks. Let me know how it goes.
Have a great day,
Hubo
Hi Hubo, thank you for your prompt reply!
Unfortunately, no -- that's what I expected too. However, after I send an initial request with limit=50, the API responds with the 50 most recent tracks, along with the cursors "after" and "before" to fetch it again. However, by using the cursor "before" with the timestamp returned by the API, no tracks are returned at all.
To demonstrate it -- I send the initial request, with no after/before cursors and limit=50:
Then, the request responds me successfully with the 50 most recently listened tracks, and with the after/before cursors that I could use in the next requests:
Then, calling the very same API again, but with the cursor before=1617655258250 (that is, to fetch all tracks played before the timestamp of the last returned track in the first API call):
It returns me no tracks at all:
Also, AFAIR, this has been behavior of this API ever since 2018 -- only 50 tracks are returned at all. However, it would be really great if the API team could relax this limitation, now that this information is freely available in the Spotify clients, as this would enrich API clients with many new possibilities and use cases.
Thank you!
Hubo,
Thank you for your time. I'm really hoping that the API team can have the resources and "permissions" necessary to relax this limit, as that would be beneficial to many API consumers.
By increasing the amount of "recently played tracks" we could fetch from users, systems that integrate with the Spotify API could:
Theoretically, a system could already spam Spotify's API calling this "recently-played-tracks" endpoint every 3 hours, for example, and constructing a list with the users recently played tracks (just like scrobbling); but, again, that is not viable, particularly when you have 20,000 monthly active users in your application (my case here).
Thank you!