navidrome/API_COMPATIBILITY.md

2.5 KiB

Supported Subsonic API endpoints

CloudSonic is currently compatible (to some extent) with Subsonic API v1.8.0, with some exceptions.

This is an (almost) up to date list of all Subsonic API endpoints implemented by CloudSonic. Check the "Notes" column for limitations/missing behaviour. Also keep in mind these differences between CloudSonic and Subsonic:

  • Right now, CloudSonic only works with a single Music Library (Music Folder)
  • CloudSonic does not mark songs as played by calls to stream, only when scrobble is called with submission=true
  • Next features to be implemented: Playlists (WIP), MultiUser (WIP), Jukebox, Sharing, Podcasts, Bookmarks, Internet Radio.
ENDPOINT NOTES
SYSTEM
ping
getLicense Always valid ;)
BROWSING
getMusicFolders Hardcoded to just one, configured in app.conf
getIndexes Doesn't support shortcuts, nor direct children
getMusicDirectory
getSong
getArtists
getArtist
getAlbum
getGenres
ALBUM/SONGS LISTS
getAlbumList byYear and byGenre are not implemented
getAlbumList2 byYear and byGenre are not implemented
getStarred Doesn't return any artists, as iTunes does not support starred (loved) artists
getStarred2 Doesn't return any artists, as iTunes does not support starred (loved) artists
getNowPlaying
getRandomSongs Ignores genre and year parameters
SEARCHING
search2 Doesn't support Lucene queries, only simple auto complete queries
search3 Doesn't support Lucene queries, only simple auto complete queries
MEDIA RETRIEVAL
stream Returns wrong content-length when downsampling
download
getCoverArt Only gets embedded artwork
getAvatar Always returns the same image
MEDIA ANNOTATION
star
unstar
setRating Doesn't work with artists
scrobble No Last.FM support yet. It is used to update play count, last played, skip count and last skipped
USER MANAGEMENT
getUser Hardcoded all roles, ignores username parameter