Spotify.NET/SpotifyAPI.Docs/versioned_docs/version-5.1.1/web/playlists.md
Jonas Dellinger fee995f984 Started docs
2020-05-13 18:27:16 +02:00

10 KiB
Raw Permalink Blame History

id title sidebar_label
playlists Playlists Playlists

GetUserPlaylists

Get a list of the playlists owned or followed by a Spotify user.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
[limit] The maximum number of playlists to return. Default: 20. Minimum: 1. Maximum: 50. 20
[offset] The index of the first playlist to return. Default: 0 (the first object) 0

Returns a SimplePlaylist wrapped inside a Paging Object

Usage

Paging<SimplePlaylist> userPlaylists = _spotify.GetUserPlaylists("1122095781");
userPlaylists.Items.ForEach(playlist => playlist.Owner.DisplayName) //Who is the owner of the playlist?

GetPlaylist

Get a playlist owned by a Spotify user.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
[fields] Filters for the query: a comma-separated list of the fields to return. If omitted, all fields are returned. "description,uri"
[market] An ISO 3166-1 alpha-2 country code. Provide this parameter if you want to apply Track Relinking. "DE"

Returns a FullTrack

Usage

FullPlaylist playlist = _spotify.GetPlaylist("1122095781", "1TtEejT1y4D1WmcOnLfha2");
playlist.Tracks.Items.ForEach(track => Console.WriteLine(track.Track.Name));

GetPlaylistTracks

Get full details of the tracks of a playlist owned by a Spotify user.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
[fields] Filters for the query: a comma-separated list of the fields to return. If omitted, all fields are returned. "description,uri"
[limit] The maximum number of tracks to return. Default: 100. Minimum: 1. Maximum: 100. 100
[offset] The index of the first object to return. Default: 0 (i.e., the first object) 0
[market] An ISO 3166-1 alpha-2 country code. Provide this parameter if you want to apply Track Relinking. DE

Returns a PlaylistTrack wrapped inside a Paging Object

Usage

Paging<PlaylistTrack> playlist = _spotify.GetPlaylistTracks("1122095781", "1TtEejT1y4D1WmcOnLfha2");
playlist.Items.ForEach(track => Console.WriteLine(track.Track.Name));

CreatePlaylist

Create a playlist for a Spotify user. (The playlist will be empty until you add tracks.)

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistName The name for the new playlist, for example "Your Coolest Playlist". This name does not need to be unique. "This is my new Playlist"
[isPublic] default true. If true the playlist will be public, if false it will be private. To be able to create private playlists, the user must have granted the playlist-modify-private scope. true

Returns a FullPlaylist

Usage

FullPlaylist playlist = _spotify.CreatePlaylist("1122095781", "This is my new Playlist");
if(!playlist.HasError())
    Console.WriteLine("Playlist-URI: " + playlist.Uri);

UpdatePlaylist

Change a playlists name and public/private state. (The user must, of course, own the playlist.)

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
[newName] The new name for the playlist, for example "My New Playlist Title". "New Playlistname"
[newPublic] If true the playlist will be public, if false it will be private. EXAMPLE

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

ErrorResponse response = _spotify.UpdatePlaylist("1122095781", "1TtEejT1y4D1WmcOnLfha2", "New Name", true);
if(!response.HasError())
    Console.WriteLine("success");

ReplacePlaylistTracks

Replace all the tracks in a playlist, overwriting its existing tracks. This powerful request can be useful for replacing tracks, re-ordering existing tracks, or clearing the playlist.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
uris A list of Spotify track URIs to set. A maximum of 100 tracks can be set in one request. new List<string> { "1ri6UZpjPLmTCswIXZ6Uq1" }

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

ErrorResponse response = _spotify.ReplacePlaylistTracks("1122095781", "1TtEejT1y4D1WmcOnLfha2", new List<string> { "1ri6UZpjPLmTCswIXZ6Uq1" });
if(!response.HasError())
    Console.WriteLine("success");

RemovePlaylistTracks

Remove one or more tracks from a users playlist.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
uris array of objects containing Spotify URI strings (and their position in the playlist). A maximum of 100 objects can be sent at once. (example below)

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

//Remove multiple tracks
ErrorResponse playlist = _spotify.RemovePlaylistTracks("1122095781", "1TtEejT1y4D1WmcOnLfha2", new List<DeleteTrackUri>()
{
    new DeleteTrackUri("1ri6UZpjPLmTCswIXZ6Uq1"),
    new DeleteTrackUri("47xtGU3vht7mXLHqnbaau5")
});
//Remove multiple tracks at their specified positions
ErrorResponse playlist = _spotify.RemovePlaylistTracks("1122095781", "1TtEejT1y4D1WmcOnLfha2", new List<DeleteTrackUri>()
{
    new DeleteTrackUri("1ri6UZpjPLmTCswIXZ6Uq1", 2),
    new DeleteTrackUri("47xtGU3vht7mXLHqnbaau5", 0, 50)
});

RemovePlaylistTrack

Remove one or more tracks from a users playlist.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
uri Spotify URI new DeleteTrackUri("1ri6UZpjPLmTCswIXZ6Uq1")

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

//Remove all tracks with the specified URI
ErrorResponse response = _spotify.RemovePlaylistTrack("1122095781", "1TtEejT1y4D1WmcOnLfha2", new DeleteTrackUri("1ri6UZpjPLmTCswIXZ6Uq1"));
//Remove all tracks with the specified URI and the specified positions
ErrorResponse response = _spotify.RemovePlaylistTrack("1122095781", "1TtEejT1y4D1WmcOnLfha2", new DeleteTrackUri("1ri6UZpjPLmTCswIXZ6Uq1", 0, 10, 20));

AddPlaylistTracks

Add one or more tracks to a users playlist.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
uris A list of Spotify track URIs to add new List<string> { "1ri6UZpjPLmTCswIXZ6Uq1" }
[position] The position to insert the tracks, a zero-based index 10

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

ErrorResponse response = _spotify.AddPlaylistTracks("1122095781", "1TtEejT1y4D1WmcOnLfha2", new List<string> { "1ri6UZpjPLmTCswIXZ6Uq1" });
if(!response.HasError())
    Console.WriteLine("Success");

AddPlaylistTrack

Add one or more tracks to a users playlist.

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
uri A Spotify Track URI "1ri6UZpjPLmTCswIXZ6Uq1"
position The position to insert the tracks, a zero-based index 10

Returns a ErrorResponse which just contains a possible error. (response.HasError() and response.Error)

Usage

ErrorResponse response = _spotify.AddPlaylistTrack("1122095781", "1TtEejT1y4D1WmcOnLfha2", "1ri6UZpjPLmTCswIXZ6Uq1");
if(!response.HasError())
    Console.WriteLine("Success");

ReorderPlaylist

Reorder a track or a group of tracks in a playlist. More Info: Reorder-Playlist

Parameters

Name Description Example
userId The user's Spotify user ID. "1122095781"
playlistId The Spotify ID for the playlist. "1TtEejT1y4D1WmcOnLfha2"
rangeStart The position of the first track to be reordered. 2
insertBefore The position where the tracks should be inserted. 0
[rangeLength] The amount of tracks to be reordered. Defaults to 1 if not set. 2
[snapshotId] The playlist's snapshot ID against which you want to make the changes. ``

Returns a Snapshot-Object which contains the property String SnapshotId

Usage

Snapshot snapshot = _spotify.ReorderPlaylist("1122095781", "1TtEejT1y4D1WmcOnLfha2", 2, 0, 2);
Console.WriteLine("New SnapshotId: " + snapshot.SnapshotId);