---
title: "Add Items to Playlist"
method: POST
path: "/playlists/{playlist_id}/tracks"
tags: ["Playlists", "Tracks"]
---

# Add Items to Playlist

`POST /playlists/{playlist_id}/tracks`

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

## Path parameters

- `playlist_id` string, required — The [Spotify ID](/documentation/web-api/#spotify-uris-and-ids) of the playlist.

## Query parameters

- `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 are listed in the query string or request body.
- `uris` string — A comma-separated list of [Spotify URIs](/documentation/web-api/#spotify-uris-and-ids) to add, can be track or episode URIs. For example:<br/>`uris=spotify:track:4iV5W9uYEdYUVa79Axb7Rh, spotify:track:1301WleyT98MSxVHPZCA6M, spotify:episode:512ojhOuo1ktJprKbVcKyQ`<br/>A maximum of 100 items can be added in one request. <br/> _**Note**: it is likely that passing a large number of item URIs as a query parameter will exceed the maximum length of the request URI. When adding a large number of items, it is recommended to pass them in the request body, see below._

## Request body

- object
  - `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}`
  - `uris` string[] — A JSON array of the [Spotify URIs](/documentation/web-api/#spotify-uris-and-ids) to add. For example: `{"uris": ["spotify:track:4iV5W9uYEdYUVa79Axb7Rh","spotify:track:1301WleyT98MSxVHPZCA6M", "spotify:episode:512ojhOuo1ktJprKbVcKyQ"]}`<br/>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._

## Response `201`

A snapshot ID for the playlist

- object
  - `snapshot_id` string

## Other responses

- `401` — Bad or expired token. This can happen if the user revoked a token or the access token has expired. You should re-authenticate the user.
- `403` — Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here.
- `429` — The app has exceeded its rate limits.

---

[API](https://skmtc.net/spotify/apis/sonallux.md) · [All operations](https://skmtc.net/spotify/apis/sonallux/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/spotify/sonallux/versions/1459b27f2e48/schema)
