#spotify #spotify-api #track #duration #time #url


A Rust-built wrapper for the Spotify Web API that focuses on consistent and reliable developer interaction with the many objects in the API (artists, tracks, etc)

17 releases

0.3.0-beta.5 Jun 18, 2023
0.3.0-beta.3 Jun 1, 2023
0.3.0-beta.2 May 28, 2023
0.2.0 May 10, 2023
0.1.0 Oct 14, 2022

#360 in Audio

Download history 14/week @ 2023-08-10 3/week @ 2023-08-17 2/week @ 2023-08-24 26/week @ 2023-09-07 17/week @ 2023-09-14 3/week @ 2023-09-21 4/week @ 2023-09-28 2/week @ 2023-10-05 2/week @ 2023-10-19 17/week @ 2023-10-26 1/week @ 2023-11-02 19/week @ 2023-11-09 1/week @ 2023-11-16 52/week @ 2023-11-23

90 downloads per month

MIT and GPL-3.0-only

3.5K SLoC


spotifyrs aims to be a relatively easy to use wrapper for the Spotify API. It is still currently under development (see issues and roadmap); however, it can be used for most purposes in its current state. This wrapper allows you to interact with the Spotify API using simple method calls and consistent objects that give you a consistent way to access the data returned by the API.

See the documentation for a quick start guide.

If you see any issues with this crate, please submit an issue or make a pull request! If you submit an issue I will try to get to it as soon as possible, this is still an early version, so not all the problems have been worked out.

Issues and Roadmap

  • Support for Episodes, Shows, Audiobooks, and Chapters
    • I have yet to implement these endpoints because they are features in Spotify which I don't use. Though, I plan on implementing them in the future. In particular, I plan to implement a more thorough implementation for handling the possibility that both episodes and tracks are returned from the "recently listened" endpoint, for example.
  • Support for other authorization code flows. I never implemented other ones as it wasn't required for my purposes (yet); however, as it represents part of the API, I plan to add this in the future.
    • This also comes with support for other forms of redirect uri outside of just localhost
  • Currently, there is poor support if the user quits out of an authorization request. As this is something which is important to handle properly, this is something that I plan on fixing soon.


Please do! This started as a passion project for me so that I could build an app that required the Spotify API and also improve my understanding of how the API works; however, I would love it if other people wanted to contribute!


~277K SLoC