All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
UsersApi#checkIfUserFollowsPlaylist
removeids
argument as only the current use can be checked- Adjust type of
artists
property inTrack
object fromArtist
toSimplifiedArtist
- Bump jackson to
2.18.1
- Remove no longer supported
country
query parameter - Fix generation for 64bit integers #262
- Bump jackson to
2.16.1
- Introduce
ArtistDiscographyAlbum
as response for get Artist's Albums request - Rename model
Devices
intoManyDevices
- Remove unused
PlayerError
andTuneableTrack
models - Bump jackson to
2.16.0
- Bump okhttp to
4.12.0
- Update links to Spotify documentation
- Adjust the categories of some endpoints to match with the official Spotify Web API Reference. No endpoint have been removed, they just got moved to other categories.
- Added
CategoriesApi
andGenresApi
category - Removed
BrowseApe
,LibraryApi
andPersonalizationApi
- Renamed
UsersProfileApi
toUsersApi
- Added
- Add "Get an Audiobook's Chapters" endpoint
- Add "Get User's Saved Audiobooks" endpoint
- Add "Save Audiobooks for Current User" endpoint
- Add "Remove User's Saved Audiobooks" endpoint
- Add "Check User's Saved Audiobooks" endpoint
- Fix type of
shuffleState
inCurrentlyPlayingContext
toboolean
- Fix return type of "Get Category's Playlists request" from
PagedPlaylists
toPagingFeaturedPlaylist
- Fix return type of "Get Featured Playlists request" from
PagedPlaylistsAndMessage
toPagingFeaturedPlaylist
- Fix type of
narrators
field inAudiobookBase
fromNarrator
toList<Narrator>
- Bump jackson to
2.15.2
- Bump okhttp to
4.11.0
- Change the API of the recommendations request. All
seed*
parameters are now considered optional because not all of them are always required. It must be at least oneseed*
parameter present. - Add player's get queue request
- Add audiobooks and chapters API
- Bump jackson to
2.13.4
- Fix type of artists property of Album to SimplifiedArtist
- Bump jackson-databind from 2.13.2 to 2.13.2.2
The Java wrapper generator has been completely rewritten and uses now OpenAPI definition of the Spotify Web API as source. The OpenAPI definition contains fixes and improvements from my spotify-web-api repository. Therefore, some model class names have changed and many fixes are included.
- The library now also requires Java 17
- Update to jackson
2.13.2
and jackson-databind to2.13.2.1
to fix CVE-2020-36518 - Update to okhttp
4.9.3
- Update to spotify-web-api-core
2021.10.17
- Mark
market
parameter in "Get Artist's Top Tracks" endpoint as optional - Mark
market
parameter in "Get User's Currently Playing Track" endpoint as optional
- Mark
- Update to okhttp
4.9.2
- Update to jackson
2.12.5
- Update to spotify-web-api-core
2021.8.23
- Fix
tracks
property inRecommendations
- Mark
market
parameter in "Get Playlist's Items" endpoint as optional - Make "Upload a Custom Playlist Cover Image" endpoint actually usable
- Make type of
tracks
parameter in "Remove Items from a Playlist" endpoint more accurate
- Fix
- Update to jackson
2.12.4
- Update to spotify-web-api-core
2021.6.18
- Fix response type of
ReplacePlaylistsTracksRequest
fromVoid
toSnapshotId
.
- Fix response type of
- Add a module-info file, so the library is usable with the Java module system.
- Update to spotify-web-api-core
2021.5.1
- The
ids
parameter in theRemoveShowsUserRequest
andSaveShowsUserRequest
is now passed in the body - Add
htmlDescription
andrestrictions
fields toEpisode
andSimplifiedEpisode
- Fix
SearchResponse
object
- The
Complete rewrite of the library. The models and endpoints are generated from output of my spotify-web-api-parser which generates a machine-readable format of the Spotify Web API Reference. This results in a lot of breaking changes around naming of objects, properties, endpoints and parameters.
Other notable changes:
- Renamed the maven groupId from
de.jsone-studios
tode.sonallux.spotify
- Renamed package from
de.jsone_studios.wrapper.spotify
tode.sonallux.spotify.api
- Removed
SpotifyApi
interface in favour of an updatedSpotifyWebApi
class SpotifyWebApi
uses the builder pattern to create an instance- Replaced retrofit with a custom wrapper around OkHttp
- Requests are now created with a builder style api for optional parameters. For example:
ApiCall<?> call1 = spotifyWebApi.getXApi().getX("requiredParam").build();
ApiCall<?> call2 = spotifyWebApi.getXApi().getX("requiredParam").optionalParam1("Y").build();
- Removed
SpotifyApi.callApi()
in favour of anexecuteCall()
method on the newApiCall
class - Removed
SpotifyApi.callApiAndReturnBody()
in favour of anexecute()
method on the newApiCall
class - Added support for all authorization flows. See here for more details.
- Bump minimum required Java version to Java 11
The changelog of the 1.x.x
version of the spotify-web-api-java
can be found on the 1.x branch.