Skip to content
DocumentationAPI Reference

Add Items to Playlist

playlists.tracks.add(playlist_id, **kwargs) -> TrackAddResponse { snapshot_id }
POST/playlists/{playlist_id}/tracks

Add one or more items to a user's playlist.

ParametersExpand Collapse
playlist_id: String

The Spotify ID of the playlist.

position: Integer

The position to insert the items, a zero-based index. For example, to insert the items in the first position: position=0 ; to insert the items in the third position: position=2. If omitted, the items will be appended to the playlist. Items are added in the order they appear in the uris array. For example: {"uris": ["spotify:track:4iV5W9uYEdYUVa79Axb7Rh","spotify:track:1301WleyT98MSxVHPZCA6M"], "position": 3}

published: bool

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

uris: Array[String]

A JSON array of the Spotify URIs to add. For example: {"uris": ["spotify:track:4iV5W9uYEdYUVa79Axb7Rh","spotify:track:1301WleyT98MSxVHPZCA6M", "spotify:episode:512ojhOuo1ktJprKbVcKyQ"]}
A maximum of 100 items can be added in one request. Note: if the uris parameter is present in the query string, any URIs listed here in the body will be ignored.

ReturnsExpand Collapse
class TrackAddResponse { snapshot_id }
snapshot_id: String

Add Items to Playlist

require "spotted"

spotted = Spotted::Client.new(access_token: "My Access Token")

response = spotted.playlists.tracks.add("3cEYpjA9oz9GiPac4AsH4n")

puts(response)
{
  "snapshot_id": "abc"
}
Returns Examples
{
  "snapshot_id": "abc"
}