Skip to content
DocumentationAPI Reference

Add Items to Playlist

TrackAddResponse playlists().tracks().add(TrackAddParamsparams = TrackAddParams.none(), RequestOptionsrequestOptions = RequestOptions.none())
POST/playlists/{playlist_id}/tracks

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

ParametersExpand Collapse
TrackAddParams params
Optional<String> playlistId

The Spotify ID of the playlist.

Optional<Long> position

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}

Optional<Boolean> published

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

Optional<List<String>> uris

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:
Optional<String> snapshotId

Add Items to Playlist

package dev.cjav.spotted.example;

import dev.cjav.spotted.client.SpottedClient;
import dev.cjav.spotted.client.okhttp.SpottedOkHttpClient;
import dev.cjav.spotted.models.playlists.tracks.TrackAddParams;
import dev.cjav.spotted.models.playlists.tracks.TrackAddResponse;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        SpottedClient client = SpottedOkHttpClient.fromEnv();

        TrackAddResponse response = client.playlists().tracks().add("3cEYpjA9oz9GiPac4AsH4n");
    }
}
{
  "snapshot_id": "abc"
}
Returns Examples
{
  "snapshot_id": "abc"
}