List playlists
get_playlistsRetrieve the playlist hierarchy from an Engine DJ library, including folder depth, track counts, and missing-track warnings. Optionally select a specific library.
Instructions
The library's playlist tree, in the order Engine DJ displays it -- taken from the Playlist.nextListId chain, which is where that order actually lives (the PlaylistPath view's position column runs the other way). Flat and in pre-order, so reading top to bottom is exactly the sidebar: depth and path carry the nesting, parent_id names the folder. is_folder means the list has child lists (Engine has no folder flag; a folder is a playlist other playlists sit under), so an emptied folder reads as an empty playlist. track_count is entries in that list alone, never rolled up from children, and missing_count is how many of them name a track that is not in this library. warnings appears when a link chain is broken or cyclic; nothing is ever dropped from the list because of one. With more than one library connected, pass library (a uuid or path from list_libraries, either the ~/... form or the absolute one) to choose which one; the default is the supported library with the most tracks.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| library | No | Which library to use: either the uuid or the path reported by list_libraries (the reported ~/... form is accepted, as is the absolute path). Omit it to use the supported library holding the most tracks. A READ may always omit it. A WRITE may omit it only when a single supported library is connected: with two or more, a write refuses with ambiguous_library listing them, since the choice decides which disk changes; ask the user which, then pass it here. A library copied onto another drive keeps its uuid, so a uuid can name two connected libraries: a write naming such a uuid refuses with ambiguous_library as well. Pass the path to write to one of them. |