openapi: '3.0.3'
info:
description: |
You can use Spotify's Web API to discover music and podcasts, manage your Spotify library, control audio playback, and much more. Browse our available Web API endpoints using the sidebar at left, or via the navigation bar on top of this page on smaller screens.
In order to make successful Web API requests your app will need a valid access token. One can be obtained through <a href="https://developer.spotify.com/documentation/general/guides/authorization-guide/">OAuth 2.0</a>.
The base URI for all Web API requests is `https://api.spotify.com/v1`.
Need help? See our <a href="https://developer.spotify.com/documentation/web-api/guides/">Web API guides</a> for more information, or visit the <a href="https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer">Spotify for Developers community forum</a> to ask questions and connect with other developers.
version: '1.0.0'
title: 'Spotify Web API'
termsOfService: 'https://developer.spotify.com/terms/'
contact:
name: Spotify for Developers Community
url: https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer
servers:
- url: https://api.spotify.com/v1
tags:
- name: Albums
- name: Artists
- name: Audiobooks
- name: Categories
- name: Chapters
- name: Episodes
- name: Library
- name: Genres
- name: Markets
- name: Player
- name: Playlists
- name: Search
- name: Shows
- name: Tracks
- name: Users
paths:
/albums/{id}:
get:
operationId: get-an-album
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Albums
summary: |
Get Album
description: |
Get Spotify catalog information for a single album.
parameters:
- $ref: '#/components/parameters/PathAlbumId'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/OneAlbum'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/albums:
get:
deprecated: true
operationId: get-multiple-albums
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Albums
summary: |
Get Several Albums
description: |
Get Spotify catalog information for multiple albums identified by their Spotify IDs.
parameters:
- $ref: '#/components/parameters/QueryAlbumIds'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/ManyAlbums'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/albums/{id}/tracks:
get:
operationId: get-an-albums-tracks
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Albums
- Tracks
summary: |
Get Album Tracks
description: |
Get Spotify catalog information about an album’s tracks.
Optional parameters can be used to limit the number of tracks returned.
parameters:
- $ref: '#/components/parameters/PathAlbumId'
- $ref: '#/components/parameters/QueryMarket'
- $ref: '#/components/parameters/QueryLimit'
- $ref: '#/components/parameters/QueryOffset'
responses:
'200':
$ref: '#/components/responses/PagingSimplifiedTrackObject'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/artists/{id}:
get:
tags:
- Artists
operationId: get-an-artist
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Artist
description: |
Get Spotify catalog information for a single artist identified by their unique Spotify ID.
parameters:
- $ref: '#/components/parameters/PathArtistId'
responses:
'200':
$ref: '#/components/responses/OneArtist'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/artists:
get:
deprecated: true
tags:
- Artists
operationId: get-multiple-artists
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Several Artists
description: |
Get Spotify catalog information for several artists based on their Spotify IDs.
parameters:
- name: ids
required: true
in: query
schema:
title: Spotify Artist IDs
description: |
A comma-separated list of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the artists. Maximum: 50 IDs.
example: 2CIMQHirSU0MQqyYHq0eOx,57dN52uHvrHOxijzpIgu3E,1vCWHaC5f2uS3yhpwWbIA6
type: string
responses:
'200':
$ref: '#/components/responses/ManyArtists'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/artists/{id}/albums:
get:
tags:
- Artists
- Albums
operationId: get-an-artists-albums
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Artist's Albums
description: |
Get Spotify catalog information about an artist's albums.
parameters:
- $ref: '#/components/parameters/PathArtistId'
- $ref: '#/components/parameters/QueryIncludeGroups'
- $ref: '#/components/parameters/QueryMarket'
- name: limit
required: false
in: query
schema:
title: Limit
description: |
The maximum number of items to return. Default: 5. Minimum: 1. Maximum: 10.
default: 5
example: 5
type: integer
minimum: 0
maximum: 10
- $ref: '#/components/parameters/QueryOffset'
responses:
'200':
$ref: '#/components/responses/PagingArtistDiscographyAlbumObject'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/artists/{id}/top-tracks:
get:
deprecated: true
tags:
- Artists
- Tracks
operationId: get-an-artists-top-tracks
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Artist's Top Tracks
description: |
Get Spotify catalog information about an artist's top tracks by country.
parameters:
- $ref: '#/components/parameters/PathArtistId'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/ManyTracks'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/artists/{id}/related-artists:
get:
deprecated: true
tags:
- Artists
operationId: get-an-artists-related-artists
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Artist's Related Artists
description: |
Get Spotify catalog information about artists similar to a given artist. Similarity is based on analysis of the Spotify community's listening history.
parameters:
- $ref: '#/components/parameters/PathArtistId'
responses:
'200':
$ref: '#/components/responses/ManyArtists'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/shows/{id}:
get:
tags:
- Shows
operationId: get-a-show
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Show
description: |
Get Spotify catalog information for a single show identified by its
unique Spotify ID.
parameters:
- $ref: '#/components/parameters/QueryMarket'
- $ref: '#/components/parameters/PathShowId'
responses:
'200':
$ref: '#/components/responses/OneShow'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-read-playback-position
/shows:
get:
deprecated: true
tags:
- Shows
operationId: get-multiple-shows
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Several Shows
description: |
Get Spotify catalog information for several shows based on their Spotify IDs.
parameters:
- $ref: '#/components/parameters/QueryMarket'
- $ref: '#/components/parameters/QueryShowIds'
responses:
'200':
$ref: '#/components/responses/ManySimplifiedShows'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/shows/{id}/episodes:
get:
tags:
- Shows
- Episodes
operationId: get-a-shows-episodes
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Show Episodes
description: |
Get Spotify catalog information about an show’s episodes. Optional parameters can be used to limit the number of episodes returned.
parameters:
- $ref: '#/components/parameters/PathShowId'
- $ref: '#/components/parameters/QueryMarket'
- $ref: '#/components/parameters/QueryLimit'
- $ref: '#/components/parameters/QueryOffset'
responses:
'200':
$ref: '#/components/responses/PagingSimplifiedEpisodeObject'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-read-playback-position
/episodes/{id}:
get:
tags:
- Episodes
operationId: get-an-episode
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Episode
description: |
Get Spotify catalog information for a single episode identified by its
unique Spotify ID.
parameters:
- name: id
required: true
in: path
schema:
title: Get an Episode
description:
The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids)
for the episode.
example: 512ojhOuo1ktJprKbVcKyQ
type: string
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/OneEpisode'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-read-playback-position
/episodes:
get:
deprecated: true
tags:
- Episodes
operationId: get-multiple-episodes
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
summary: |
Get Several Episodes
description: |
Get Spotify catalog information for several episodes based on their Spotify IDs.
parameters:
- name: ids
required: true
in: query
schema:
title: Ids
description: |
A comma-separated list of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the episodes. Maximum: 50 IDs.
example: 77o6BIVlYM3msb4MMIL1jH,0Q86acNRm6V9GYx55SXKwf
type: string
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/ManyEpisodes'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-read-playback-position
/audiobooks/{id}:
get:
operationId: get-an-audiobook
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Audiobooks
summary: |
Get an Audiobook
description: |
Get Spotify catalog information for a single audiobook. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- $ref: '#/components/parameters/PathAudiobookId'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/OneAudiobook'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/audiobooks:
get:
deprecated: true
operationId: get-multiple-audiobooks
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Audiobooks
summary: |
Get Several Audiobooks
description: |
Get Spotify catalog information for several audiobooks identified by their Spotify IDs. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- $ref: '#/components/parameters/QueryAudiobookIds'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/ManyAudiobooks'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/audiobooks/{id}/chapters:
get:
operationId: get-audiobook-chapters
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Audiobooks
- Chapters
summary: |
Get Audiobook Chapters
description: |
Get Spotify catalog information about an audiobook's chapters. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- $ref: '#/components/parameters/PathAudiobookId'
- $ref: '#/components/parameters/QueryMarket'
- $ref: '#/components/parameters/QueryLimit'
- $ref: '#/components/parameters/QueryOffset'
responses:
'200':
$ref: '#/components/responses/PagingSimplifiedChapterObject'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/me/audiobooks:
get:
tags:
- Audiobooks
- Library
operationId: get-users-saved-audiobooks
summary: |
Get User's Saved Audiobooks
description: |
Get a list of the audiobooks saved in the current Spotify user's 'Your Music' library.
parameters:
- $ref: '#/components/parameters/QueryLimit'
- $ref: '#/components/parameters/QueryOffset'
responses:
'200':
$ref: '#/components/responses/PagingSimplifiedAudiobookObject'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-library-read
put:
deprecated: true
tags:
- Audiobooks
- Library
operationId: save-audiobooks-user
summary: |
Save Audiobooks for Current User
description: |
Save one or more audiobooks to the current Spotify user's library.
**Note:** This endpoint is deprecated. Use [Save Items to Library](/documentation/web-api/reference/save-library-items) instead.
parameters:
- $ref: '#/components/parameters/QueryAudiobookIds'
responses:
'200':
description: Audiobook(s) are saved to the library
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-library-modify
delete:
deprecated: true
tags:
- Audiobooks
- Library
operationId: remove-audiobooks-user
summary: |
Remove User's Saved Audiobooks
description: |
Remove one or more audiobooks from the Spotify user's library.
**Note:** This endpoint is deprecated. Use [Remove Items from Library](/documentation/web-api/reference/remove-library-items) instead.
parameters:
- $ref: '#/components/parameters/QueryAudiobookIds'
responses:
'200':
description: Audiobook(s) have been removed from the library
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-library-modify
/me/audiobooks/contains:
get:
tags:
- Audiobooks
- Library
operationId: check-users-saved-audiobooks
summary: |
Check User's Saved Audiobooks
deprecated: true
description: |
Check if one or more audiobooks are already saved in the current Spotify user's library.
**Note:** This endpoint is deprecated. Use [Check User's Saved Items](/documentation/web-api/reference/check-library-contains) instead.
parameters:
- $ref: '#/components/parameters/QueryAudiobookIds'
responses:
'200':
$ref: '#/components/responses/ArrayOfBooleans'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-library-read
/chapters/{id}:
get:
operationId: get-a-chapter
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Chapters
summary: |
Get a Chapter
description: |
Get Spotify catalog information for a single audiobook chapter. Chapters are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- $ref: '#/components/parameters/PathChapterId'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/OneChapter'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/chapters:
get:
deprecated: true
operationId: get-several-chapters
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataPolicyList'
tags:
- Chapters
summary: |
Get Several Chapters
description: |
Get Spotify catalog information for several audiobook chapters identified by their Spotify IDs. Chapters are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- $ref: '#/components/parameters/QueryChapterIds'
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/ManyChapters'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/tracks/{id}:
get:
tags:
- Tracks
operationId: get-track
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataWithMachineLearningPolicyList'
summary: |
Get Track
description: |
Get Spotify catalog information for a single track identified by its
unique Spotify ID.
parameters:
- name: id
required: true
in: path
schema:
title: Spotify Track ID
description: |
The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids)
for the track.
example: 11dFghVXANMlKmJXsNCbNl
type: string
- $ref: '#/components/parameters/QueryMarket'
responses:
'200':
$ref: '#/components/responses/OneTrack'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/tracks:
get:
deprecated: true
tags:
- Tracks
operationId: get-several-tracks
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataWithMachineLearningPolicyList'
summary: |
Get Several Tracks
description: |
Get Spotify catalog information for multiple tracks based on their Spotify IDs.
parameters:
- $ref: '#/components/parameters/QueryMarket'
- name: ids
required: true
in: query
schema:
title: Spotify Track IDs
description: |
A comma-separated list of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example: `ids=4iV5W9uYEdYUVa79Axb7Rh,1301WleyT98MSxVHPZCA6M`. Maximum: 50 IDs.
example: 7ouMYWpwJ422jRcDASZB7P,4VqPOruhp5EdPBeR92t6lQ,2takcwOaAZWiXQijPHIx7B
type: string
responses:
'200':
$ref: '#/components/responses/ManyTracks'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/search:
get:
tags:
- Search
operationId: search
x-spotify-policy-list:
- $ref: '#/components/x-spotify-policy/policies/MachineLearning'
summary: |
Search for Item
description: |
Get Spotify catalog information about albums, artists, playlists, tracks, shows, episodes or audiobooks
that match a keyword string. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
parameters:
- name: q
required: true
in: query
schema:
title: Query
description: |
Your search query.
You can narrow down your search using field filters. The available filters are `album`, `artist`, `track`, `year`, `upc`, `tag:hipster`, `tag:new`, `isrc`, and `genre`. Each field filter only applies to certain result types.
The `artist` and `year` filters can be used while searching albums, artists and tracks. You can filter on a single `year` or a range (e.g. 1955-1960).<br />
The `album` filter can be used while searching albums and tracks.<br />
The `genre` filter can be used while searching artists and tracks.<br />
The `isrc` and `track` filters can be used while searching tracks.<br />
The `upc`, `tag:new` and `tag:hipster` filters can only be used while searching albums. The `tag:new` filter will return albums released in the past two weeks and `tag:hipster` can be used to return only albums with the lowest 10% popularity.<br />
example: remaster%20track:Doxy%20artist:Miles%20Davis
type: string
- name: type
required: true
explode: false
in: query
schema:
title: Item type
description: |
A comma-separated list of item types to search across. Search results include hits
from all the specified item types. For example: `q=abacab&type=album,track` returns
both albums and tracks matching "abacab".
items:
type: string
enum:
- album
- artist
- playlist
- track
- show
- episode
- audiobook
type: array
- $ref: '#/components/parameters/QueryMarket'
- name: limit
required: false
in: query
schema:
title: Limit
description: |
The maximum number of results to return in each item type.
default: 5
example: 10
type: integer
minimum: 0
maximum: 10
- name: offset
required: false
in: query
schema:
title: Offset
description: |
The index of the first result to return. Use
with limit to get the next page of search results.
default: 0
minimum: 0
maximum: 1000
example: 5
type: integer
- name: include_external
required: false
in: query
schema:
title: Include External
description: |
If `include_external=audio` is specified it signals that the client can play externally hosted audio content, and marks
the content as playable in the response. By default externally hosted audio content is marked as unplayable in the response.
type: string
enum:
- audio
responses:
'200':
$ref: '#/components/responses/SearchItems'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
/me:
get:
tags:
- Users
operationId: get-current-users-profile
summary: |
Get Current User's Profile
description: |
Get detailed profile information about the current user (including the
current user's username).
responses:
'200':
$ref: '#/components/responses/OnePrivateUser'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0:
- user-read-private
- user-read-email
/playlists/{playlist_id}:
get:
tags:
- Playlists
operationId: get-playlist
x-spotify-policy-list:
$ref: '#/components/x-spotify-policy/metadataWithMachineLearningPolicyList'
summary: |
Get Playlist
description: |
Get a playlist owned by a Spotify user.
parameters:
- $ref: '#/components/parameters/PathPlaylistId'
- $ref: '#/components/parameters/QueryMarket'
- name: fields
required: false
in: query
schema:
title: Fields
description: |
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,uri`. A 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)))`
example: items(added_by.id,track(name,href,album(name,href)))
type: string
- $ref: '#/components/parameters/QueryAdditionalTypes'
responses:
'200':
$ref: '#/components/responses/OnePlaylist'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- oauth_2_0: []
put:
tags:
- Playlists
- Library
operationId: change-playlist-details
summary: |
Change Playlist Details
description: |
Change a playlist's name and public/private state. (The user must, of
course, own the playlist.)
parameters:
- $ref: '#/components/parameters/PathPlaylistId'
requestBody:
content:
application/json:
schema:
example:
name: Updated Playlist Name
description: Updated playlist description
public: false
type: object
additionalProperties: true
properties:
name:
type: string
description: |
The new name for the playlist, for example `"My New Playlist Title"`
public:
type: boolean
description: |
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](/documentation/web-api/concepts/playlists)
collaborative:
type: boolean
description: |
If `true`, the playlist will become collaborative and other users will be able to modify the playlist in their Spotify client. <br/>
_**Note**: You can only set `collaborative` to `true` on non-publi
# --- truncated at 32 KB (282 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/spotify/refs/heads/main/openapi/spotify-openapi-original.yml