rocksky/playlist
app.rocksky.playlist.* — the global, AT-Proto-backed playlists.
Distinct from rocksky/library, whose playlist functions drive the
Subsonic/Navidrome library (app.rocksky.library.*).
Writes publish records to the caller’s repo, so they take a token and only
appear in reads once the AppView has ingested the commit. Pass "" to omit
an optional argument.
Values
pub fn add_songs(
token: String,
uri: String,
songs: List(String),
) -> dynamic.Dynamic
Add songs by their app.rocksky.song AT-URIs. Owner only.
pub fn add_songs_at(
base: String,
token: String,
uri: String,
songs: List(String),
) -> dynamic.Dynamic
add_songs against a custom AppView endpoint.
pub fn create(token: String, name: String) -> dynamic.Dynamic
Create a playlist. Returns the new record’s uri and cid.
pub fn create_full(
base: String,
token: String,
name: String,
description: String,
picture_url: String,
) -> dynamic.Dynamic
create with a description, cover image and custom endpoint.
pub fn get_at(base: String, uri: String) -> dynamic.Dynamic
get against a custom AppView endpoint.
pub fn list_at(
base: String,
limit: Int,
offset: Int,
) -> dynamic.Dynamic
list against a custom AppView endpoint.
pub fn post(
nsid: String,
params_json: String,
token: String,
) -> dynamic.Dynamic
Escape hatch — any app.rocksky.* procedure whose arguments ride the query
string. params_json is a pre-encoded JSON object.
pub fn remove(token: String, uri: String) -> dynamic.Dynamic
Delete a playlist and the caller’s own entries. Owner only.
pub fn remove_track(
token: String,
uri: String,
song_uri: String,
) -> dynamic.Dynamic
Remove a song. Only the repo that added an entry can retract it.
pub fn update(
base: String,
token: String,
uri: String,
name: String,
description: String,
picture_url: String,
) -> dynamic.Dynamic
Rename or re-describe a playlist. Owner only; the AT-URI is unchanged.