### Supported Subsonic API endpoints Navidrome is currently compatible with [Subsonic API](http://www.subsonic.org/pages/api.jsp) v1.8.0, with some exceptions. This is an (almost) up to date list of all Subsonic API endpoints implemented by Navidrome. Check the "Notes" column for limitations/missing behaviour. Also keep in mind these differences between Navidrome and Subsonic: * Right now, Navidrome only works with a single Music Library (Music Folder) * Navidrome 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. Navidrome is actively being tested with: [DSub](http://www.subsonic.org/pages/apps.jsp#dsub), [Music Stash](https://play.google.com/store/apps/details?id=com.ghenry22.mymusicstash) and [Jamstash](http://www.subsonic.org/pages/apps.jsp#jamstash)) | ENDPOINT | NOTES | |------------------------|-------| | _SYSTEM_ || | `ping` | | | `getLicense` | Always valid ;) | | || | _BROWSING_ || | `getMusicFolders` | Hardcoded to just one, set with ND_MUSICFOLDER configuration | | `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` | | | `getStarred2` | | | `getNowPlaying` | | | `getRandomSongs` | Ignores `fromYear` and `toYear` parameters | | || | _SEARCHING_ || | `search2` | Doesn't support Lucene queries, only simple auto complete queries | | `search3` | Doesn't support Lucene queries, only simple auto complete queries | | || | _PLAYLISTS_ || | `getPlaylists` | `username` parameter is not implemented | | `getPlaylist` | | | `createPlaylist` | Return empty response on success | | `updatePlaylist` | `comment` and `public` are not implemented. All playlists are public | | `deletePlaylist` | | | || | _MEDIA RETRIEVAL_ || | `stream` | No Transcoding/Downsampling support (for now)| | `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 and last played | | || | _USER MANAGEMENT_ || | `getUser` | Hardcoded all roles, ignores `username` parameter|