Get a playlist owned by a Spotify user.
Endpoint
GET https://api.spotify.com/v1/users/{user_id}/playlists/{playlist_id}
Request Parameters
| Path parameter | Value |
|---|---|
| user_id | The user's Spotify user ID. |
| playlist_id | The Spotify ID for the playlist. |
| Header field | Value |
|---|---|
Authorization | Required. A valid access token from the Spotify Accounts service: see the Web API Authorization Guide for details. Both Public and Private playlists belonging to any user are retrievable on provision of a valid access token. |
| Query parameter | Value |
|---|---|
| fields | Optional. Filters for the query: a comma-separated list of the fields to return. If omitted, all fields are returned. For example, to get just the playlist's description and URI:fields=description,uriA dot separator can be used to specify non-reoccurring fields, while parentheses can be used to specify reoccurring fields within objects. For example, to get just the added date and user ID of the adder: fields=tracks.items(added_at,added_by.id)Use multiple parentheses to drill down into nested objects, for example: fields=tracks.items(track(name,href,album(name,href)))Fields can be excluded by prefixing them with an exclamation mark, for example: fields=tracks.items(track(name,href,album(!name,href))) |
Response Format
On success, the response body contains a playlist object in JSON format and the HTTP status code in the response header is 200 OK. On error, the header status code is an error code and the response body contains an error object. Requesting playlists that you do not have the user’s authorization to access returns error 403 Forbidden.
Example (get a user’s playlist)
curl -X GET "https://api.spotify.com/v1/users/spotify/playlists/59ZbFPES4DQwEjBpWHzrtC" -H "Authorization: Bearer {your access token}"
{
"collaborative" : false,
"description" : "Having friends over for dinner? Here´s the perfect playlist.",
"external_urls" : {
"spotify" : "http://open.spotify.com/user/spotify/playlist/59ZbFPES4DQwEjBpWHzrtC"
},
"followers" : {
"href" : null,
"total" : 143350
},
"href" : "https://api.spotify.com/v1/users/spotify/playlists/59ZbFPES4DQwEjBpWHzrtC",
"id" : "59ZbFPES4DQwEjBpWHzrtC",
"images" : [ {
"url" : "https://i.scdn.co/image/68b6a65573a55095e9c0c0c33a274b18e0422736"
} ],
"name" : "Dinner with Friends",
"owner" : {
"external_urls" : {
"spotify" : "http://open.spotify.com/user/spotify"
},
"href" : "https://api.spotify.com/v1/users/spotify",
"id" : "spotify",
"type" : "user",
"uri" : "spotify:user:spotify"
},
"public" : null,
"snapshot_id" : "bNLWdmhh+HDsbHzhckXeDC0uyKyg4FjPI/KEsKjAE526usnz2LxwgyBoMShVL+z+",
"tracks" : {
"href" : "https://api.spotify.com/v1/users/spotify/playlists/59ZbFPES4DQwEjBpWHzrtC/tracks",
"items" : [ {
"added_at" : "2014-09-01T04:21:28Z",
"added_by" : {
"external_urls" : {
"spotify" : "http://open.spotify.com/user/spotify"
},
"href" : "https://api.spotify.com/v1/users/spotify",
"id" : "spotify",
"type" : "user",
"uri" : "spotify:user:spotify"
},
"is_local" : false,
"track" : {
"album" : {
"album_type" : "single",
"available_markets" : [ "AD", "AR", "AT", "AU", "BE", "BG", "BO", "BR", "CH", "CL", "CO", "CR", "CY", "CZ", "DK", "DO", "EC", "EE", "ES", "FI", "FR", "GB", "GR", "GT", "HK", "HN", "HU", "IE", "IS", "IT", "LI", "LT", "LU", "LV", "MC", "MT", "MY", "NI", "NL", "NO", "NZ", "PA", "PE", "PH", "PL", "PT", "PY", "RO", "SE", "SG", "SI", "SK", "SV", "TR", "TW", "UY" ],
"external_urls" : {
"spotify" : "https://open.spotify.com/album/5GWoXPsTQylMuaZ84PC563"
},
"href" : "https://api.spotify.com/v1/albums/5GWoXPsTQylMuaZ84PC563",
"id" : "5GWoXPsTQylMuaZ84PC563",
"images" : [ {
"height" : 640,
"url" : "https://i.scdn.co/image/47421900e7534789603de84c03a40a826c058e45",
"width" : 640
}, {
"height" : 300,
"url" : "https://i.scdn.co/image/0d447b6faae870f890dc5780cc58d9afdbc36a1d",
"width" : 300
}, {
"height" : 64,
"url" : "https://i.scdn.co/image/d926b3e5f435ef3ac0874b1ff1571cf675b3ef3b",
"width" : 64
} ],
"name" : "I'm Not The Only One",
"type" : "album",
"uri" : "spotify:album:5GWoXPsTQylMuaZ84PC563"
},
"artists" : [ {
"external_urls" : {
"spotify" : "https://open.spotify.com/artist/2wY79sveU1sp5g7SokKOiI"
},
"href" : "https://api.spotify.com/v1/artists/2wY79sveU1sp5g7SokKOiI",
"id" : "2wY79sveU1sp5g7SokKOiI",
"name" : "Sam Smith",
"type" : "artist",
"uri" : "spotify:artist:2wY79sveU1sp5g7SokKOiI"
} ],
"available_markets" : [ "AD", "AR", "AT", "AU", "BE", "BG", "BO", "BR", "CH", "CL", "CO", "CR", "CY", "CZ", "DK", "DO", "EC", "EE", "ES", "FI", "FR", "GB", "GR", "GT", "HK", "HN", "HU", "IE", "IS", "IT", "LI", "LT", "LU", "LV", "MC", "MT", "MY", "NI", "NL", "NO", "NZ", "PA", "PE", "PH", "PL", "PT", "PY", "RO", "SE", "SG", "SI", "SK", "SV", "TR", "TW", "UY" ],
"disc_number" : 1,
"duration_ms" : 204732,
"explicit" : false,
"external_ids" : {
"isrc" : "GBUM71403920"
},
"external_urls" : {
"spotify" : "https://open.spotify.com/track/4i9sYtSIlR80bxje5B3rUb"
},
"href" : "https://api.spotify.com/v1/tracks/4i9sYtSIlR80bxje5B3rUb",
"id" : "4i9sYtSIlR80bxje5B3rUb",
"name" : "I'm Not The Only One - Radio Edit",
"popularity" : 45,
"preview_url" : "https://p.scdn.co/mp3-preview/dd64cca26c69e93ea78f1fff2cc4889396bb6d2f",
"track_number" : 1,
"type" : "track",
"uri" : "spotify:track:4i9sYtSIlR80bxje5B3rUb"
},
...
}],
"limit" : 100,
"next" : "https://api.spotify.com/v1/users/spotify/playlists/59ZbFPES4DQwEjBpWHzrtC/tracks?offset=100&limit=100",
"offset" : 0,
"previous" : null,
"total" : 105
},
"type" : "playlist",
"uri" : "spotify:user:spotify:playlist:59ZbFPES4DQwEjBpWHzrtC"
}
Example (get selected fields of a playlist)
curl -X GET "https://api.spotify.com/v1/users/spotify/playlists/59ZbFPES4DQwEjBpWHzrtC?fields=href,name,owner(!href,external_urls),tracks.items(added_by.id,track(name,href,album(name,href)))" -H "Authorization: Bearer {your access token}"
playlist object (full)
| Key | Value Type | Value Description |
|---|---|---|
| collaborative | Boolean | true if the owner allows other users to modify the playlist. Note: only non-collaborative playlists are currently returned by the Web API. |
| description | string | The playlist description. Only returned for modified, verified playlists, otherwise null. |
| external_urls | an external URL object | Known external URLs for this playlist. |
| followers | a followers object | Information about the followers of the playlist. |
| href | string | A link to the Web API endpoint providing full details of the playlist. |
| id | string | The Spotify ID for the playlist. |
| images | an array of image objects | Images for the playlist. The array may be empty or contain up to three images. The images are returned by size in descending order. See Working with Playlists. Note: If returned, the source URL for the image ( url) is temporary and will expire in less than a day. |
| name | string | The name of the playlist. |
| owner | a public user object | The user who owns the playlist |
| public | Boolean or null | The playlist's public/private status: true the playlist is public, false the playlist is private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists. |
| snapshot_id | string | The version identifier for the current playlist. Can be supplied in other requests to target a specific playlist version: see Remove tracks from a playlist |
| tracks | array of playlist track objects inside a paging object | Information about the tracks of the playlist. |
| type | string | The object type: "playlist" |
| uri | string | The Spotify URI for the artist. |
paging object
| Key | Value Type | Value Description |
|---|---|---|
| href | string | A link to the Web API endpoint returning the full result of the request. |
| items | an array of objects | The requested data. |
| limit | integer | The maximum number of items in the response (as set in the query or by default). |
| next | string | URL to the next page of items. (null if none) |
| offset | integer | The offset of the items returned (as set in the query or by default). |
| previous | string | URL to the previous page of items. (null if none) |
| total | integer | The total number of items available to return. |