Navidrome

App · 20 actions

Browse your Navidrome music library: search it, list new, most played and top rated albums, pick random songs and read lyrics. Manage favourites, ratings and playlists, see what's playing and record plays. Also works with other servers that speak the same Subsonic and OpenSubsonic API, such as Airsonic-Advanced, Gonic and Ampache.

Actions

ActionWhat it does
Add to favouritesMark a song, album or artist as a favourite: the heart in Navidrome, a star in other Subsonic apps.
Create a playlistCreate a playlist, optionally filled with songs from an earlier step, with a comment, and public or private.
Delete a playlistDelete one of your playlists.
Get a playlistGet a playlist's details and its songs in order.
Get a songGet one song's details: title, artist, album, length, plays, rating and whether it's a favourite.
Get a song's lyricsGet a song's lyrics as text, and line by line with the time each line is sung when the server has timed lyrics.
Get an albumGet an album's details and its songs in order, with each song's length, plays and rating.
Get an artistGet an artist's details and albums, with a short biography and picture when the server has them.
Get random songsPick songs at random from your library, optionally from one genre or a span of years, for a playlist or a daily pick.
Get what's playing nowSee what everyone on your server is listening to right now, and on which player.
List albumsList albums from your library: recently added, recently played, most played, top rated, favourites, random, A to Z, from a span of years or in one genre.
List artistsList the artists in your music library, A to Z, with how many albums each has: 50 at a time unless you ask for up to 500.
List favouritesList the songs, albums and artists you've marked as favourites (starred, in other Subsonic apps), newest first: 50 of each unless you ask for up to 500.
List genresList the genres in your library with how many songs and albums each has, the biggest first.
List playlistsList your playlists and other people's public ones, with how many songs each has and who owns it.
Rate a song, album or artistGive a song, album or artist a rating from 1 to 5 stars, or clear its rating.
Record a playCount a play of a song, or show it as playing now.
Remove from favouritesTake a song, album or artist out of your favourites.
Search the libraryFind artists, albums and songs whose names match some words, such as part of a title or an artist's name.
Update a playlistRename one of your playlists, change its comment or who can see it, and add or remove songs.

Add to favourites

Mark a song, album or artist as a favourite: the heart in Navidrome, a star in other Subsonic apps.

Inputs

What it isitem_typetext
Whether it's a song, an album or an artist.One of: song, album, artist. Default: song.
Songsong_idtext
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.Only when What it is is Song.
Albumalbumtext
The album. Pick it from the list, or use an album_id from an earlier step.Only when What it is is Album.
Artistartisttext
The artist. Pick them from the list, or use an artist_id from an earlier step.Only when What it is is Artist.

Outputs

artisttext
Who it's by.
favouritetrue/false
Whether it's one of your favourites.
item_idtext
Its ID.
item_typetext
What it is: song, album or artist.
nametext
The song's title, or the album's or artist's name.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
urltext
Its page in Navidrome (a song's album page). Null on other Subsonic servers.
was_favouritetrue/false
Whether it was a favourite already.
Example output
{
  "artist": "Diablo Swing Orchestra",
  "favourite": true,
  "item_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
  "item_type": "song",
  "name": "Heroines",
  "rating": 3,
  "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
  "was_favourite": false
}

Create a playlist

Create a playlist, optionally filled with songs from an earlier step, with a comment, and public or private.

Inputs

NamenametextRequired
What to call the playlist.
Songssongslist
Song IDs, such as the song_ids an earlier step returns (Get random songs, Get an album, Search the library). Leave empty for an empty playlist.
Commentcommenttext
A note shown with the playlist.
Publicpublictrue/false
Let everyone on the server see and play it.Default: false.

Outputs

can_edittrue/false
Whether it's yours, so you can change or delete it.
commenttext
The playlist's comment. Null when it has none.
created_attext
When it was made.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
nametext
The playlist's name.
ownertext
The username of whoever owns it.
playlist_idtext
The playlist's ID.
publictrue/false
Whether everyone on the server can see it.
song_countnumber
How many songs it has.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Its songs in order.
updated_attext
When it last changed.
urltext
The playlist's page in Navidrome. Null on other Subsonic servers.
Example output
{
  "can_edit": true,
  "comment": "Made by Lodol",
  "created_at": "2026-10-16T02:22:25Z",
  "duration": "5:22",
  "duration_seconds": 322,
  "name": "Friday mix",
  "owner": "demo",
  "playlist_id": "5ht5jj61nTBTyEUipS7Oqb",
  "public": false,
  "song_count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ],
  "updated_at": "2026-10-16T02:22:25Z",
  "url": "https://demo.navidrome.org/app/#/playlist/5ht5jj61nTBTyEUipS7Oqb/show"
}

Delete a playlist

Delete one of your playlists. The songs in it stay in your library.

Inputs

PlaylistplaylisttextRequired
One of your playlists. Other people's can't be changed.

Outputs

deletedtrue/false
True once the playlist is gone.
nametext
The deleted playlist's name.
playlist_idtext
The deleted playlist's ID.
Example output
{
  "deleted": true,
  "name": "Friday mix",
  "playlist_id": "5ht5jj61nTBTyEUipS7Oqb"
}

Get a playlist

Get a playlist's details and its songs in order.

Inputs

PlaylistplaylisttextRequired
The playlist: yours, or someone else's public one.

Outputs

can_edittrue/false
Whether it's yours, so you can change or delete it.
commenttext
The playlist's comment. Null when it has none.
created_attext
When it was made.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
nametext
The playlist's name.
ownertext
The username of whoever owns it.
playlist_idtext
The playlist's ID.
publictrue/false
Whether everyone on the server can see it.
song_countnumber
How many songs it has.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Its songs in order.
updated_attext
When it last changed.
urltext
The playlist's page in Navidrome. Null on other Subsonic servers.
Example output
{
  "can_edit": true,
  "comment": "Made by Lodol",
  "created_at": "2026-10-16T02:22:25Z",
  "duration": "5:22",
  "duration_seconds": 322,
  "name": "Friday mix",
  "owner": "demo",
  "playlist_id": "5ht5jj61nTBTyEUipS7Oqb",
  "public": false,
  "song_count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ],
  "updated_at": "2026-10-16T02:22:25Z",
  "url": "https://demo.navidrome.org/app/#/playlist/5ht5jj61nTBTyEUipS7Oqb/show"
}

Get a song

Get one song's details: title, artist, album, length, plays, rating and whether it's a favourite.

Inputs

Songsong_idtextRequired
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.

Outputs

albumtext
The album it's on.
album_idtext
The album's ID.
album_urltext
The album's page in Navidrome. Null on other Subsonic servers.
artisttext
Who performs it.
artist_idtext
The artist's ID.
bit_rate_kbpsnumber
The file's quality in kilobits a second, e.g. 320.
disc_numbernumber
Which disc of the album it's on. Null if unknown.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
favouritetrue/false
Whether it's one of your favourites.
favourited_attext
When you made it a favourite. Null if it isn't one.
file_formattext
The file type, e.g. mp3 or flac.
genretext
Its genre. Null if unknown.
last_played_attext
When you last played it, e.g. 2026-10-15T20:43:22Z. Null if never.
play_countnumber
How many times you've played it.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
song_idtext
The song's ID.
titletext
The song's title.
track_numbernumber
Its track number on the album. Null if unknown.
yearnumber
The year it came out. Null if unknown.
Example output
{
  "album": "netBloc Vol. 24: tiuqottigeloot",
  "album_id": "6oq0g9th4iTM8a0y0T88tr",
  "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
  "artist": "Diablo Swing Orchestra",
  "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
  "bit_rate_kbps": 192,
  "disc_number": null,
  "duration": "5:22",
  "duration_seconds": 322,
  "favourite": false,
  "favourited_at": null,
  "file_format": "mp3",
  "genre": "Netlabel",
  "last_played_at": "2026-10-15T17:02:51Z",
  "play_count": 1334,
  "rating": 3,
  "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
  "title": "Heroines",
  "track_number": 1,
  "year": 2009
}

Get a song's lyrics

Get a song's lyrics as text, and line by line with the time each line is sung when the server has timed lyrics.

Inputs

Songsong_idtextRequired
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.

Outputs

artisttext
Who performs it.
has_lyricstrue/false
Whether the server has lyrics for it.
languagetext
The lyrics' language, e.g. eng. Null if unknown.
lineslist
The lyrics line by line.
lyricstext
The whole lyrics, one line per line. Empty when there are none.
song_idtext
The song's ID.
syncedtrue/false
Whether the lines come with their times.
titletext
The song's title.
Example output
{
  "artist": "pornophonique",
  "has_lyrics": true,
  "language": "eng",
  "lines": [
    {
      "start_seconds": null,
      "text": "sometimes i fear the reaper"
    },
    {
      "start_seconds": null,
      "text": "sometimes i'm afraid to die"
    }
  ],
  "lyrics": "sometimes i fear the reaper\nsometimes i'm afraid to die",
  "song_id": "4PyP4nlXRSySf1XwZNf6f1",
  "synced": false,
  "title": "lemmings in love"
}

Get an album

Get an album's details and its songs in order, with each song's length, plays and rating.

Inputs

AlbumalbumtextRequired
The album. Pick it from the list, or use an album_id from an earlier step. Its link from Navidrome works too.

Outputs

added_attext
When it was added to the library, e.g. 2025-03-26T22:26:49Z.
album_idtext
The album's ID.
artisttext
The album's artist.
artist_idtext
The artist's ID.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
favouritetrue/false
Whether it's one of your favourites.
favourited_attext
When you made it a favourite. Null if it isn't one.
genretext
Its main genre. Null if unknown.
genreslist
Every genre it's tagged with.
is_compilationtrue/false
Whether it's a compilation of several artists.
last_played_attext
When you last played it, e.g. 2026-10-15T20:43:22Z. Null if never.
nametext
The album's title.
play_countnumber
How many times you've played it.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
song_countnumber
How many songs it has.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Its songs in order.
urltext
The album's page in Navidrome. Null on other Subsonic servers.
yearnumber
The year it came out. Null if unknown.
Example output
{
  "added_at": "2025-03-26T22:26:49Z",
  "album_id": "6oq0g9th4iTM8a0y0T88tr",
  "artist": "Various Artists",
  "artist_id": "63sqASlAfjbGMuLP4JhnZU",
  "duration": "43:35",
  "duration_seconds": 2615,
  "favourite": true,
  "favourited_at": "2026-10-15T03:30:42Z",
  "genre": "Netlabel",
  "genres": [
    "Netlabel"
  ],
  "is_compilation": true,
  "last_played_at": "2026-10-15T19:23:41Z",
  "name": "netBloc Vol. 24: tiuqottigeloot",
  "play_count": 3356,
  "rating": 5,
  "song_count": 12,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ],
  "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
  "year": 2009
}

Get an artist

Get an artist's details and albums, with a short biography and picture when the server has them.

Inputs

ArtistartisttextRequired
The artist. Pick them from the list, or use an artist_id from an earlier step. Their link from Navidrome works too.

Outputs

album_countnumber
How many albums they have.
albumslist
Their albums.
artist_idtext
The artist's ID.
biographytext
A short biography, from Last.fm when the server uses it. Null when there's none.
favouritetrue/false
Whether it's one of your favourites.
favourited_attext
When you made it a favourite. Null if it isn't one.
image_urltext
A picture of the artist. Null when the server has none.
nametext
The artist's name.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
urltext
The artist's page in Navidrome. Null on other Subsonic servers.
Example output
{
  "album_count": 1,
  "albums": [
    {
      "added_at": "2025-03-26T22:26:39Z",
      "album_id": "3Ss0LvMLYHiAOYlMrwcxtj",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "duration": "50:09",
      "duration_seconds": 3009,
      "favourite": false,
      "favourited_at": null,
      "genre": "Rock",
      "genres": [
        "Rock"
      ],
      "is_compilation": false,
      "last_played_at": "2026-10-15T22:43:12Z",
      "name": "The Butcher's Ballroom",
      "play_count": 2771,
      "rating": 5,
      "song_count": 13,
      "url": "https://demo.navidrome.org/app/#/album/3Ss0LvMLYHiAOYlMrwcxtj/show",
      "year": 2009
    }
  ],
  "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
  "biography": "A Swedish avant-garde metal ensemble with a penchant for pairing elements of jazz, swing, classical, and progressive rock with Marshall stack-powered sonic might.",
  "favourite": false,
  "favourited_at": null,
  "image_url": "https://demo.navidrome.org/share/img/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImFyLTFId3hGbTM4TXlpNEtHNVdNRURTMktfMTVmOTczYjFlNDk1ZDkzMSIsImlzcyI6Ik5EIn0.Gvu0WCCJM8Y1EbmrUzowjTMc6khTChTf9T0ajSI-3Nk?size=600",
  "name": "Diablo Swing Orchestra",
  "rating": 0,
  "url": "https://demo.navidrome.org/app/#/artist/1HwxFm38Myi4KG5WMEDS2K/show"
}

Get random songs

Pick songs at random from your library, optionally from one genre or a span of years, for a playlist or a daily pick.

Inputs

How manycountnumber
How many songs to pick.From 1 to 500. Default: 10.
Genregenretext
Only songs in this genre. Leave empty for any.
From yearfrom_yearnumber
Only from this year on, such as 1990. Leave empty for any.
To yearto_yearnumber
Only up to this year, such as 1999. Leave empty for any.

Outputs

countnumber
How many songs.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
The songs picked.
Example output
{
  "count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ]
}

Get what's playing now

See what everyone on your server is listening to right now, and on which player.

Inputs

None.

Outputs

countnumber
How many players are playing.
playinglist
What's playing, one entry per player.
Example output
{
  "count": 1,
  "playing": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "minutes_ago": 0,
      "play_count": 1334,
      "player_name": "NavidromeUI",
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "username": "demo",
      "year": 2009
    }
  ]
}

List albums

List albums from your library: recently added, recently played, most played, top rated, favourites, random, A to Z, from a span of years or in one genre.

Inputs

Which albumslist_typetext
Which albums to list, and in what order.One of: recently_added (Recently added), recently_played (Recently played), most_played (Most played), top_rated (Top rated), favourites, random, by_name (A to Z by album name), by_artist (A to Z by artist), by_year (Released between two years), by_genre (In one genre). Default: recently_added.
Genregenretext
The genre whose albums to list.Only when Which albums is In one genre.
From yearfrom_yearnumber
The earliest year, such as 1990.Only when Which albums is Released between two years.
To yearto_yearnumber
The latest year, such as 1999. Leave empty for this year.Only when Which albums is Released between two years.
How manylimitnumber
At most this many albums.From 1 to 500. Default: 50.
Skipskipnumber
Skip this many albums first, to read the next page of a long list.Default: 0.

Outputs

albumslist
The albums, in the list's order.
countnumber
How many albums.
has_moretrue/false
Whether there may be more: skip this many to read the next page.
listtext
Which albums these are, e.g. Recently added.
Example output
{
  "albums": [
    {
      "added_at": "2025-03-26T22:26:49Z",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "artist": "Various Artists",
      "artist_id": "63sqASlAfjbGMuLP4JhnZU",
      "duration": "43:35",
      "duration_seconds": 2615,
      "favourite": true,
      "favourited_at": "2026-10-15T03:30:42Z",
      "genre": "Netlabel",
      "genres": [
        "Netlabel"
      ],
      "is_compilation": true,
      "last_played_at": "2026-10-15T19:23:41Z",
      "name": "netBloc Vol. 24: tiuqottigeloot",
      "play_count": 3356,
      "rating": 5,
      "song_count": 12,
      "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "year": 2009
    }
  ],
  "count": 1,
  "has_more": false,
  "list": "Recently added"
}

List artists

List the artists in your music library, A to Z, with how many albums each has: 50 at a time unless you ask for up to 500.

Inputs

How manylimitnumber
At most this many artists.From 1 to 500. Default: 50.
Skipskipnumber
Skip this many first, to read the next page of a long list. Leave at 0 for the start.At least 0. Default: 0.

Outputs

artistslist
The artists, A to Z.
countnumber
How many artists are in this list.
has_moretrue/false
Whether there are more: skip this many to read the next page.
totalnumber
How many artists the library has in all.
Example output
{
  "artists": [
    {
      "album_count": 1,
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "favourite": false,
      "favourited_at": null,
      "image_url": "https://demo.navidrome.org/share/img/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImFyLTFId3hGbTM4TXlpNEtHNVdNRURTMktfMTVmOTczYjFlNDk1ZDkzMSIsImlzcyI6Ik5EIn0.Gvu0WCCJM8Y1EbmrUzowjTMc6khTChTf9T0ajSI-3Nk?size=600",
      "name": "Diablo Swing Orchestra",
      "rating": 0,
      "url": "https://demo.navidrome.org/app/#/artist/1HwxFm38Myi4KG5WMEDS2K/show"
    }
  ],
  "count": 1,
  "has_more": true,
  "total": 26
}

List favourites

List the songs, albums and artists you've marked as favourites (starred, in other Subsonic apps), newest first: 50 of each unless you ask for up to 500.

Inputs

How manylimitnumber
At most this many songs, albums and artists each.From 1 to 500. Default: 50.
Skipskipnumber
Skip this many first, to read the next page of a long list. Leave at 0 for the start.At least 0. Default: 0.

Outputs

album_countnumber
How many albums are in this list.
albumslist
Favourite albums.
artist_countnumber
How many artists are in this list.
artistslist
Favourite artists.
has_moretrue/false
Whether there are more of any kind: skip this many to read the next page.
song_countnumber
How many songs are in this list.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Favourite songs.
total_albumsnumber
How many favourite albums you have in all.
total_artistsnumber
How many favourite artists you have in all.
total_songsnumber
How many favourite songs you have in all.
Example output
{
  "album_count": 1,
  "albums": [
    {
      "added_at": "2025-03-26T22:26:49Z",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "artist": "Various Artists",
      "artist_id": "63sqASlAfjbGMuLP4JhnZU",
      "duration": "43:35",
      "duration_seconds": 2615,
      "favourite": true,
      "favourited_at": "2026-10-15T03:30:42Z",
      "genre": "Netlabel",
      "genres": [
        "Netlabel"
      ],
      "is_compilation": true,
      "last_played_at": "2026-10-15T19:23:41Z",
      "name": "netBloc Vol. 24: tiuqottigeloot",
      "play_count": 3356,
      "rating": 5,
      "song_count": 12,
      "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "year": 2009
    }
  ],
  "artist_count": 0,
  "artists": [],
  "has_more": false,
  "song_count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": true,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ],
  "total_albums": 1,
  "total_artists": 0,
  "total_songs": 1
}

List genres

List the genres in your library with how many songs and albums each has, the biggest first.

Inputs

None.

Outputs

countnumber
How many genres.
genreslist
Every genre, the most songs first.
Example output
{
  "count": 2,
  "genres": [
    {
      "album_count": 10,
      "name": "Electronic",
      "song_count": 73
    },
    {
      "album_count": 6,
      "name": "Rock",
      "song_count": 28
    }
  ]
}

List playlists

List your playlists and other people's public ones, with how many songs each has and who owns it.

Inputs

None.

Outputs

countnumber
How many playlists.
playlistslist
The playlists.
Example output
{
  "count": 1,
  "playlists": [
    {
      "can_edit": true,
      "comment": "Made by Lodol",
      "created_at": "2026-10-16T02:22:25Z",
      "duration": "5:22",
      "duration_seconds": 322,
      "name": "Friday mix",
      "owner": "demo",
      "playlist_id": "5ht5jj61nTBTyEUipS7Oqb",
      "public": false,
      "song_count": 1,
      "updated_at": "2026-10-16T02:22:25Z",
      "url": "https://demo.navidrome.org/app/#/playlist/5ht5jj61nTBTyEUipS7Oqb/show"
    }
  ]
}

Rate a song, album or artist

Give a song, album or artist a rating from 1 to 5 stars, or clear its rating.

Inputs

What it isitem_typetext
Whether it's a song, an album or an artist.One of: song, album, artist. Default: song.
Songsong_idtext
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.Only when What it is is Song.
Albumalbumtext
The album. Pick it from the list, or use an album_id from an earlier step.Only when What it is is Album.
Artistartisttext
The artist. Pick them from the list, or use an artist_id from an earlier step.Only when What it is is Artist.
RatingratingtextRequired
How many stars to give it.One of: 5 (5 stars), 4 (4 stars), 3 (3 stars), 2 (2 stars), 1 (1 star), 0 (No rating (removes it)).

Outputs

artisttext
Who it's by.
favouritetrue/false
Whether it's one of your favourites.
item_idtext
Its ID.
item_typetext
What it is: song, album or artist.
nametext
The song's title, or the album's or artist's name.
previous_ratingnumber
Its rating before, 0 when it had none.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
urltext
Its page in Navidrome (a song's album page). Null on other Subsonic servers.
Example output
{
  "artist": "Diablo Swing Orchestra",
  "favourite": true,
  "item_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
  "item_type": "song",
  "name": "Heroines",
  "previous_rating": 3,
  "rating": 5,
  "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show"
}

Record a play

Count a play of a song, or show it as playing now. Navidrome passes plays on to Last.fm or ListenBrainz if you've linked them.

Inputs

Songsong_idtextRequired
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.
What happenedeventtext
Whether the song finished or just started.One of: finished (Finished playing: count a play), started (Started playing: show as now playing). Default: finished.
Played atplayed_atdate and time
When it was played. Leave empty for now.Only when What happened is Finished playing: count a play.

Outputs

albumtext
The album it's on.
album_idtext
The album's ID.
album_urltext
The album's page in Navidrome. Null on other Subsonic servers.
artisttext
Who performs it.
artist_idtext
The artist's ID.
bit_rate_kbpsnumber
The file's quality in kilobits a second, e.g. 320.
disc_numbernumber
Which disc of the album it's on. Null if unknown.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
favouritetrue/false
Whether it's one of your favourites.
favourited_attext
When you made it a favourite. Null if it isn't one.
file_formattext
The file type, e.g. mp3 or flac.
genretext
Its genre. Null if unknown.
last_played_attext
When you last played it, e.g. 2026-10-15T20:43:22Z. Null if never.
play_countnumber
How many times you've played it.
played_attext
When the counted play happened. Null for now playing.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
recorded_astext
play when a play was counted, now_playing when it shows as playing now.
song_idtext
The song's ID.
titletext
The song's title.
track_numbernumber
Its track number on the album. Null if unknown.
yearnumber
The year it came out. Null if unknown.
Example output
{
  "album": "netBloc Vol. 24: tiuqottigeloot",
  "album_id": "6oq0g9th4iTM8a0y0T88tr",
  "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
  "artist": "Diablo Swing Orchestra",
  "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
  "bit_rate_kbps": 192,
  "disc_number": null,
  "duration": "5:22",
  "duration_seconds": 322,
  "favourite": false,
  "favourited_at": null,
  "file_format": "mp3",
  "genre": "Netlabel",
  "last_played_at": "2026-10-16T02:27:11Z",
  "play_count": 1335,
  "played_at": "2026-10-16T02:27:11Z",
  "rating": 3,
  "recorded_as": "play",
  "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
  "title": "Heroines",
  "track_number": 1,
  "year": 2009
}

Remove from favourites

Take a song, album or artist out of your favourites.

Inputs

What it isitem_typetext
Whether it's a song, an album or an artist.One of: song, album, artist. Default: song.
Songsong_idtext
The song: its song_id from an earlier step, such as Search the library, Get an album or Get random songs.Only when What it is is Song.
Albumalbumtext
The album. Pick it from the list, or use an album_id from an earlier step.Only when What it is is Album.
Artistartisttext
The artist. Pick them from the list, or use an artist_id from an earlier step.Only when What it is is Artist.

Outputs

artisttext
Who it's by.
favouritetrue/false
Whether it's one of your favourites.
item_idtext
Its ID.
item_typetext
What it is: song, album or artist.
nametext
The song's title, or the album's or artist's name.
ratingnumber
Your rating from 1 to 5 stars, or 0 when it has none.
urltext
Its page in Navidrome (a song's album page). Null on other Subsonic servers.
was_favouritetrue/false
Whether it was a favourite before.
Example output
{
  "artist": "Diablo Swing Orchestra",
  "favourite": false,
  "item_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
  "item_type": "song",
  "name": "Heroines",
  "rating": 3,
  "url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
  "was_favourite": true
}

Search the library

Find artists, albums and songs whose names match some words, such as part of a title or an artist's name.

Inputs

Search forquerytextRequired
Words to look for in names and titles.
Results of each kindlimitnumber
At most this many artists, albums and songs each.From 1 to 500. Default: 20.

Outputs

album_countnumber
How many albums matched.
albumslist
Matching albums.
artist_countnumber
How many artists matched.
artistslist
Matching artists.
querytext
What was searched.
song_countnumber
How many songs matched.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Matching songs.
Example output
{
  "album_count": 1,
  "albums": [
    {
      "added_at": "2025-03-26T22:26:39Z",
      "album_id": "3Ss0LvMLYHiAOYlMrwcxtj",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "duration": "50:09",
      "duration_seconds": 3009,
      "favourite": false,
      "favourited_at": null,
      "genre": "Rock",
      "genres": [
        "Rock"
      ],
      "is_compilation": false,
      "last_played_at": "2026-10-15T22:43:12Z",
      "name": "The Butcher's Ballroom",
      "play_count": 2771,
      "rating": 5,
      "song_count": 13,
      "url": "https://demo.navidrome.org/app/#/album/3Ss0LvMLYHiAOYlMrwcxtj/show",
      "year": 2009
    }
  ],
  "artist_count": 1,
  "artists": [
    {
      "album_count": 1,
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "favourite": false,
      "favourited_at": null,
      "image_url": "https://demo.navidrome.org/share/img/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImFyLTFId3hGbTM4TXlpNEtHNVdNRURTMktfMTVmOTczYjFlNDk1ZDkzMSIsImlzcyI6Ik5EIn0.Gvu0WCCJM8Y1EbmrUzowjTMc6khTChTf9T0ajSI-3Nk?size=600",
      "name": "Diablo Swing Orchestra",
      "rating": 0,
      "url": "https://demo.navidrome.org/app/#/artist/1HwxFm38Myi4KG5WMEDS2K/show"
    }
  ],
  "query": "Diablo Swing",
  "song_count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ]
}

Update a playlist

Rename one of your playlists, change its comment or who can see it, and add or remove songs.

Inputs

PlaylistplaylisttextRequired
One of your playlists. Other people's can't be changed.
New namenametext
A new name. Leave empty to keep the name.
Commentcommenttext
A new comment. Leave empty to keep the comment.
Who can see itpublictext
Make it public or private, or leave it as it is.One of: unchanged (Leave as it is), public (Public: everyone on the server can see it), private (Private: only you). Default: unchanged.
Songs to addadd_songslist
Song IDs, such as the song_ids an earlier step returns (Get random songs, Get an album, Search the library). They go at the end of the playlist.
Songs to removeremove_songslist
Song IDs to take out of the playlist, everywhere they appear in it.

Outputs

can_edittrue/false
Whether it's yours, so you can change or delete it.
commenttext
The playlist's comment. Null when it has none.
created_attext
When it was made.
durationtext
Its length as minutes and seconds, e.g. 5:22.
duration_secondsnumber
Its length in seconds.
nametext
The playlist's name.
ownertext
The username of whoever owns it.
playlist_idtext
The playlist's ID.
publictrue/false
Whether everyone on the server can see it.
song_countnumber
How many songs it has.
song_idslist
The songs' IDs in order, ready for a playlist step.
songslist
Its songs in order.
songs_addednumber
How many songs were added.
songs_removednumber
How many songs were taken out.
updated_attext
When it last changed.
urltext
The playlist's page in Navidrome. Null on other Subsonic servers.
Example output
{
  "can_edit": true,
  "comment": "Made by Lodol",
  "created_at": "2026-10-16T02:22:25Z",
  "duration": "5:22",
  "duration_seconds": 322,
  "name": "Friday mix",
  "owner": "demo",
  "playlist_id": "5ht5jj61nTBTyEUipS7Oqb",
  "public": true,
  "song_count": 1,
  "song_ids": [
    "7C5bQ7Xk1VhCQ2db0bpucJ"
  ],
  "songs": [
    {
      "album": "netBloc Vol. 24: tiuqottigeloot",
      "album_id": "6oq0g9th4iTM8a0y0T88tr",
      "album_url": "https://demo.navidrome.org/app/#/album/6oq0g9th4iTM8a0y0T88tr/show",
      "artist": "Diablo Swing Orchestra",
      "artist_id": "1HwxFm38Myi4KG5WMEDS2K",
      "bit_rate_kbps": 192,
      "disc_number": null,
      "duration": "5:22",
      "duration_seconds": 322,
      "favourite": false,
      "favourited_at": null,
      "file_format": "mp3",
      "genre": "Netlabel",
      "last_played_at": "2026-10-15T17:02:51Z",
      "play_count": 1334,
      "rating": 3,
      "song_id": "7C5bQ7Xk1VhCQ2db0bpucJ",
      "title": "Heroines",
      "track_number": 1,
      "year": 2009
    }
  ],
  "songs_added": 1,
  "songs_removed": 0,
  "updated_at": "2026-10-16T02:22:25Z",
  "url": "https://demo.navidrome.org/app/#/playlist/5ht5jj61nTBTyEUipS7Oqb/show"
}

On this page