Skip to main content

Song Search

This page focuses on a single object type.

Refer to the main Advanced Search page for further information regarding the advanced_search method.

Available search rules

Select the type of search based on the type of data you are searching for. (songs, playlists, etc)

rule_1TitleOperator Type
anywhereAny searchable texttext
titleTitle / Nametext
name(*Alias of title)
song(*Alias of title)
song_title(*Alias of title)
albumAlbum Titletext
album_title(*Alias of album)
artistArtisttext
artist_title(*Alias of artist)
album_artistAlbum Artisttext
album_artist_title(*Alias of album_artist)
song_artistSong Artisttext
song_artist_title(*Alias of song_artist)
composerComposertext
trackTracknumeric
yearYearnumeric
myratingMy Ratingnumeric
ratingRating (Average)numeric
songratingMy Rating (Song)numeric
albumratingMy Rating (Album)numeric
artistratingMy Rating (Artist)numeric
favoriteFavoritestext
favorite_albumFavorites (Album)text
favorite_artistFavorites (Artist)text
played_times# Playednumeric
skipped_times# Skippednumeric
play_skip_ratioPlayed/Skipped rationumeric
last_playMy Last Playdays
last_play_or_skipMy Last Play OR skipdays
playedPlayedboolean
myplayedPlayed by Meboolean
myplayedalbumPlayed by Me (Album)boolean
myplayedartistPlayed by Me (Artist)boolean
timeLength (in minutes)numeric
genreGenretags
tag(*Alias of genre)
song_genre(*Alias of genre)
song_tag(*Alias of genre)
album_genreAlbum Genretags
album_tag(*Alias of album_genre)
artist_genreArtist Genretags
artist_tag(*Alias of artist_genre)
no_genreNo Genreis_true
no_tag(*Alias of no_genre)
other_userAnother Useruser_numeric
other_user_albumAnother User (Album)user_numeric
other_user_artistAnother User (Artist)user_numeric
labelLabeltext
licenseMusic Licenseboolean_numeric
no_licenseNo Licenseis_true
playlistPlaylistboolean_numeric
smartplaylistSmart Playlistboolean_subsearch
playlist_namePlaylist Nametext
commentCommenttext
lyricsLyricstext
fileFilenametext
bitrateBitratenumeric
addedAddeddate
updatedUpdateddate
recent_playedRecently Playednumeric_limit
recent_addedRecently Addednumeric_limit
recent_updatedRecently Updatednumeric_limit
catalogCatalogboolean_numeric
mbidMusicBrainz IDtext
mbid_albumMusicBrainz ID (Album)text
mbid_artistMusicBrainz ID (Artist)text
mbid_songMusicBrainz ID (Song)text
metadataMetadatametadata (mixed)
possible_duplicatePossible Duplicateis_true
possible_duplicate_albumPossible Duplicate Albumsis_true

Available operator values

Select your operator (integer only!) based on the type or your selected search

NOTE with the numeric_limit and is_true operators the operator is ignored, but still required

rule_1_operatortext / tagsnumeric / user_numericdateboolean, boolean_numeric, boolean_subsearch, days
0containsis greater than or equal to / has lovedbeforeis true / before (x) days ago
1does not containis less than or equal to / has rated 5 starsafteris false / after (x) days ago
2starts withequals / has rated 4 stars
3ends withdoes not equal / has rated 3 stars
4isis greater than / has rated 2 stars
5is notis less than / has rated 1 stars
6 (Text Only)sounds like
7 (Text Only)does not sound like
8 (Text Only)matches regular expression
9 (Text Only)does not match regular expression

Send the correct input based on the type of search.

rule_1_input
text
integer
boolean

NOTE To search metadata you need to add a 4th rule "rule_*_subtype"

Operators for metadata are using the text/tag types AND numeric types in a single list as they can be ints/strings/dates.

Currently there is not a simple way to identify what metadata types you have saved. New methods will be created for this.

Metadata operator table

rule_1_operatorMetadata
0contains
1does not contain
2starts with
3ends with
4is
5is not
6 (Text Only)sounds like
7 (Text Only)does not sound like
8 (Text Only)matches regular expression
9 (Text Only)does not match regular expression
10is greater than or equal to
11is less than or equal to
12is
13is not
14is greater than
15is less than

To search a mixed type like metadata you must search using 4 rules.

  • Search rule 1 for band containing 'Prodigy', Search Rule 2 for bbm > 120
    • rule name (e.g. rule_1['metadata'], rule_2['metadata'])
    • rule operator (e.g. rule_1_operator[0], rule_2_operator[12])
    • rule input (e.g. rule_1_input['Prodigy'], rule_2_input['120'])
    • rule subtype (e.g. rule_1_subtype['4'], rule_2_subtype['9'])