Skip to content
DocumentationAPI Reference

Get Playlist

client.playlists.retrieve(stringplaylistID, PlaylistRetrieveParams { additional_types, fields, market } query?, RequestOptionsoptions?): PlaylistRetrieveResponse { id, collaborative, description, 11 more }
GET/playlists/{playlist_id}

Get a playlist owned by a Spotify user.

ParametersExpand Collapse
playlistID: string

The Spotify ID of the playlist.

query: PlaylistRetrieveParams { additional_types, fields, market }
additional_types?: string

A comma-separated list of item types that your client supports besides the default track type. Valid types are: track and episode.
Note: This parameter was introduced to allow existing clients to maintain their current behaviour and might be deprecated in the future.
In addition to providing this parameter, make sure that your client properly handles cases of new types in the future by checking against the type field of each object.

fields?: string

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)))

market?: string

An ISO 3166-1 alpha-2 country code. If a country code is specified, only content that is available in that market will be returned.
If a valid user access token is specified in the request header, the country associated with the user account will take priority over this parameter.
Note: If neither market or user country are provided, the content is considered unavailable for the client.
Users can view the country that is associated with their account in the account settings.

ReturnsExpand Collapse
PlaylistRetrieveResponse { id, collaborative, description, 11 more }
id?: string

The Spotify ID for the playlist.

collaborative?: boolean

true if the owner allows other users to modify the playlist.

description?: string | null

The playlist description. Only returned for modified, verified playlists, otherwise null.

external_urls?: ExternalURLObject { published, spotify }

Known external URLs for this playlist.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

followers?: FollowersObject { href, published, total }

Information about the followers of the playlist.

href?: string | null

This will always be set to null, as the Web API does not support it at the moment.

published?: boolean

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

total?: number

The total number of followers.

href?: string

A link to the Web API endpoint providing full details of the playlist.

images?: Array<ImageObject { height, url, width, published } >

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.

height: number | null

The image height in pixels.

url: string

The source URL of the image.

width: number | null

The image width in pixels.

published?: boolean

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

name?: string

The name of the playlist.

owner?: Owner { display_name }

The user who owns the playlist

display_name?: string | null

The name displayed on the user's profile. null if not available.

published?: boolean

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

snapshot_id?: string

The version identifier for the current playlist. Can be supplied in other requests to target a specific playlist version

tracks?: Tracks { href, limit, next, 5 more }

The tracks of the playlist.

href: string

A link to the Web API endpoint returning the full result of the request

limit: number

The maximum number of items in the response (as set in the query or by default).

URL to the next page of items. ( null if none)

offset: number

The offset of the items returned (as set in the query or by default)

URL to the previous page of items. ( null if none)

total: number

The total number of items available to return.

items?: Array<PlaylistTrackObject { added_at, added_by, is_local, 2 more } >
added_at?: string

The date and time the track or episode was added. Note: some very old playlists may return null in this field.

formatdate-time
added_by?: PlaylistUserObject { id, external_urls, href, 3 more }

The Spotify user who added the track or episode. Note: some very old playlists may return null in this field.

id?: string

The Spotify user ID for this user.

external_urls?: ExternalURLObject { published, spotify }

Known public external URLs for this user.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href?: string

A link to the Web API endpoint for this user.

published?: boolean

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

type?: "user"

The object type.

uri?: string

The Spotify URI for this user.

is_local?: boolean

Whether this track or episode is a local file or not.

published?: boolean

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

track?: TrackObject { id, album, artists, 18 more } | EpisodeObject { id, audio_preview_url, description, 19 more }

Information about the track or episode.

Accepts one of the following:
TrackObject { id, album, artists, 18 more }
id?: string

The Spotify ID for the track.

album?: Album { id, album_type, artists, 12 more }

The album on which the track appears. The album object includes a link in href to full information about the album.

id: string

The Spotify ID for the album.

album_type: "album" | "single" | "compilation"

The type of the album.

Accepts one of the following:
"album"
"single"
"compilation"
artists: Array<SimplifiedArtistObject { id, external_urls, href, 4 more } >

The artists of the album. Each artist object includes a link in href to more detailed information about the artist.

id?: string

The Spotify ID for the artist.

external_urls?: ExternalURLObject { published, spotify }

Known external URLs for this artist.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href?: string

A link to the Web API endpoint providing full details of the artist.

name?: string

The name of the artist.

published?: boolean

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

type?: "artist"

The object type.

uri?: string

The Spotify URI for the artist.

available_markets: Array<string>

The markets in which the album is available: ISO 3166-1 alpha-2 country codes. NOTE: an album is considered available in a market when at least 1 of its tracks is available in that market.

external_urls: ExternalURLObject { published, spotify }

Known external URLs for this album.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href: string

A link to the Web API endpoint providing full details of the album.

images: Array<ImageObject { height, url, width, published } >

The cover art for the album in various sizes, widest first.

height: number | null

The image height in pixels.

url: string

The source URL of the image.

width: number | null

The image width in pixels.

published?: boolean

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

name: string

The name of the album. In case of an album takedown, the value may be an empty string.

release_date: string

The date the album was first released.

release_date_precision: "year" | "month" | "day"

The precision with which release_date value is known.

Accepts one of the following:
"year"
"month"
"day"
total_tracks: number

The number of tracks in the album.

type: "album"

The object type.

uri: string

The Spotify URI for the album.

published?: boolean

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

restrictions?: AlbumRestrictionObject { published, reason }

Included in the response when a content restriction is applied.

published?: boolean

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

reason?: "market" | "product" | "explicit"

The reason for the restriction. Albums may be restricted if the content is not available in a given market, to the user's subscription type, or when the user's account is set to not play explicit content. Additional reasons may be added in the future.

Accepts one of the following:
"market"
"product"
"explicit"
artists?: Array<SimplifiedArtistObject { id, external_urls, href, 4 more } >

The artists who performed the track. Each artist object includes a link in href to more detailed information about the artist.

id?: string

The Spotify ID for the artist.

external_urls?: ExternalURLObject { published, spotify }

Known external URLs for this artist.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href?: string

A link to the Web API endpoint providing full details of the artist.

name?: string

The name of the artist.

published?: boolean

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

type?: "artist"

The object type.

uri?: string

The Spotify URI for the artist.

available_markets?: Array<string>

A list of the countries in which the track can be played, identified by their ISO 3166-1 alpha-2 code.

disc_number?: number

The disc number (usually 1 unless the album consists of more than one disc).

duration_ms?: number

The track length in milliseconds.

explicit?: boolean

Whether or not the track has explicit lyrics ( true = yes it does; false = no it does not OR unknown).

external_ids?: ExternalIDObject { ean, isrc, published, upc }

Known external IDs for the track.

published?: boolean

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

external_urls?: ExternalURLObject { published, spotify }

Known external URLs for this track.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href?: string

A link to the Web API endpoint providing full details of the track.

is_local?: boolean

Whether or not the track is from a local file.

is_playable?: boolean

Part of the response when Track Relinking is applied. If true, the track is playable in the given market. Otherwise false.

linked_from?: LinkedTrackObject { id, external_urls, href, 3 more }

Part of the response when Track Relinking is applied, and the requested track has been replaced with different track. The track in the linked_from object contains information about the originally requested track.

id?: string

The Spotify ID for the track.

external_urls?: ExternalURLObject { published, spotify }

Known external URLs for this track.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href?: string

A link to the Web API endpoint providing full details of the track.

published?: boolean

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

type?: string

The object type: "track".

uri?: string

The Spotify URI for the track.

name?: string

The name of the track.

popularity?: number

The popularity of the track. The value will be between 0 and 100, with 100 being the most popular.
The popularity of a track is a value between 0 and 100, with 100 being the most popular. The popularity is calculated by algorithm and is based, in the most part, on the total number of plays the track has had and how recent those plays are.
Generally speaking, songs that are being played a lot now will have a higher popularity than songs that were played a lot in the past. Duplicate tracks (e.g. the same track from a single and an album) are rated independently. Artist and album popularity is derived mathematically from track popularity. Note: the popularity value may lag actual popularity by a few days: the value is not updated in real time.

Deprecatedpreview_url?: string | null

A link to a 30 second preview (MP3 format) of the track. Can be null

published?: boolean

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

restrictions?: TrackRestrictionObject { published, reason }

Included in the response when a content restriction is applied.

published?: boolean

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

reason?: string

The reason for the restriction. Supported values:

  • market - The content item is not available in the given market.
  • product - The content item is not available for the user's subscription type.
  • explicit - The content item is explicit and the user's account is set to not play explicit content.

Additional reasons may be added in the future. Note: If you use this field, make sure that your application safely handles unknown values.

track_number?: number

The number of the track. If an album has several discs, the track number is the number on the specified disc.

type?: "track"

The object type: "track".

uri?: string

The Spotify URI for the track.

EpisodeObject { id, audio_preview_url, description, 19 more }
id: string

The Spotify ID for the episode.

Deprecatedaudio_preview_url: string | null

A URL to a 30 second preview (MP3 format) of the episode. null if not available.

description: string

A description of the episode. HTML tags are stripped away from this field, use html_description field in case HTML tags are needed.

duration_ms: number

The episode length in milliseconds.

explicit: boolean

Whether or not the episode has explicit content (true = yes it does; false = no it does not OR unknown).

external_urls: ExternalURLObject { published, spotify }

External URLs for this episode.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href: string

A link to the Web API endpoint providing full details of the episode.

html_description: string

A description of the episode. This field may contain HTML tags.

images: Array<ImageObject { height, url, width, published } >

The cover art for the episode in various sizes, widest first.

height: number | null

The image height in pixels.

url: string

The source URL of the image.

width: number | null

The image width in pixels.

published?: boolean

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

is_externally_hosted: boolean

True if the episode is hosted outside of Spotify's CDN.

is_playable: boolean

True if the episode is playable in the given market. Otherwise false.

languages: Array<string>

A list of the languages used in the episode, identified by their ISO 639-1 code.

name: string

The name of the episode.

release_date: string

The date the episode was first released, for example "1981-12-15". Depending on the precision, it might be shown as "1981" or "1981-12".

release_date_precision: "year" | "month" | "day"

The precision with which release_date value is known.

Accepts one of the following:
"year"
"month"
"day"
show: ShowBase { id, available_markets, copyrights, 15 more }

The show on which the episode belongs.

id: string

The Spotify ID for the show.

available_markets: Array<string>

A list of the countries in which the show can be played, identified by their ISO 3166-1 alpha-2 code.

copyrights: Array<CopyrightObject { published, text, type } >

The copyright statements of the show.

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

The copyright text for this content.

The type of copyright: C = the copyright, P = the sound recording (performance) copyright.

description: string

A description of the show. HTML tags are stripped away from this field, use html_description field in case HTML tags are needed.

explicit: boolean

Whether or not the show has explicit content (true = yes it does; false = no it does not OR unknown).

external_urls: ExternalURLObject { published, spotify }

External URLs for this show.

published?: boolean

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

spotify?: string

The Spotify URL for the object.

href: string

A link to the Web API endpoint providing full details of the show.

html_description: string

A description of the show. This field may contain HTML tags.

images: Array<ImageObject { height, url, width, published } >

The cover art for the show in various sizes, widest first.

height: number | null

The image height in pixels.

url: string

The source URL of the image.

width: number | null

The image width in pixels.

published?: boolean

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

is_externally_hosted: boolean

True if all of the shows episodes are hosted outside of Spotify's CDN. This field might be null in some cases.

languages: Array<string>

A list of the languages used in the show, identified by their ISO 639 code.

media_type: string

The media type of the show.

name: string

The name of the episode.

publisher: string

The publisher of the show.

total_episodes: number

The total number of episodes in the show.

type: "show"

The object type.

uri: string

The Spotify URI for the show.

published?: boolean

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

type: "episode"

The object type.

uri: string

The Spotify URI for the episode.

Deprecatedlanguage?: string

The language used in the episode, identified by a ISO 639 code. This field is deprecated and might be removed in the future. Please use the languages field instead.

published?: boolean

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

restrictions?: EpisodeRestrictionObject { published, reason }

Included in the response when a content restriction is applied.

published?: boolean

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

reason?: string

The reason for the restriction. Supported values:

  • market - The content item is not available in the given market.
  • product - The content item is not available for the user's subscription type.
  • explicit - The content item is explicit and the user's account is set to not play explicit content.

Additional reasons may be added in the future. Note: If you use this field, make sure that your application safely handles unknown values.

resume_point?: ResumePointObject { fully_played, published, resume_position_ms }

The user's most recent position in the episode. Set if the supplied access token is a user token and has the scope 'user-read-playback-position'.

fully_played?: boolean

Whether or not the episode has been fully played by the user.

published?: boolean

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

resume_position_ms?: number

The user's most recent position in the episode in milliseconds.

published?: boolean

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

type?: string

The object type: "playlist"

uri?: string

The Spotify URI for the playlist.

Get Playlist

import Spotted from 'spotted-ts';

const client = new Spotted({
  accessToken: process.env['SPOTIFY_ACCESS_TOKEN'], // This is the default and can be omitted
});

const playlist = await client.playlists.retrieve('3cEYpjA9oz9GiPac4AsH4n');

console.log(playlist.id);
{
  "id": "id",
  "collaborative": true,
  "description": "description",
  "external_urls": {
    "published": true,
    "spotify": "spotify"
  },
  "followers": {
    "href": "href",
    "published": true,
    "total": 0
  },
  "href": "href",
  "images": [
    {
      "height": 300,
      "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
      "width": 300,
      "published": true
    }
  ],
  "name": "name",
  "owner": {
    "id": "id",
    "external_urls": {
      "published": true,
      "spotify": "spotify"
    },
    "href": "href",
    "published": true,
    "type": "user",
    "uri": "uri",
    "display_name": "display_name"
  },
  "published": true,
  "snapshot_id": "snapshot_id",
  "tracks": {
    "href": "https://api.spotify.com/v1/me/shows?offset=0&limit=20\n",
    "limit": 20,
    "next": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
    "offset": 0,
    "previous": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
    "total": 4,
    "items": [
      {
        "added_at": "2019-12-27T18:11:19.117Z",
        "added_by": {
          "id": "id",
          "external_urls": {
            "published": true,
            "spotify": "spotify"
          },
          "href": "href",
          "published": true,
          "type": "user",
          "uri": "uri"
        },
        "is_local": true,
        "published": true,
        "track": {
          "id": "id",
          "album": {
            "id": "2up3OPMp9Tb4dAKM2erWXQ",
            "album_type": "compilation",
            "artists": [
              {
                "id": "id",
                "external_urls": {
                  "published": true,
                  "spotify": "spotify"
                },
                "href": "href",
                "name": "name",
                "published": true,
                "type": "artist",
                "uri": "uri"
              }
            ],
            "available_markets": [
              "CA",
              "BR",
              "IT"
            ],
            "external_urls": {
              "published": true,
              "spotify": "spotify"
            },
            "href": "href",
            "images": [
              {
                "height": 300,
                "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
                "width": 300,
                "published": true
              }
            ],
            "name": "name",
            "release_date": "1981-12",
            "release_date_precision": "year",
            "total_tracks": 9,
            "type": "album",
            "uri": "spotify:album:2up3OPMp9Tb4dAKM2erWXQ",
            "published": true,
            "restrictions": {
              "published": true,
              "reason": "market"
            }
          },
          "artists": [
            {
              "id": "id",
              "external_urls": {
                "published": true,
                "spotify": "spotify"
              },
              "href": "href",
              "name": "name",
              "published": true,
              "type": "artist",
              "uri": "uri"
            }
          ],
          "available_markets": [
            "string"
          ],
          "disc_number": 0,
          "duration_ms": 0,
          "explicit": true,
          "external_ids": {
            "ean": "ean",
            "isrc": "isrc",
            "published": true,
            "upc": "upc"
          },
          "external_urls": {
            "published": true,
            "spotify": "spotify"
          },
          "href": "href",
          "is_local": true,
          "is_playable": true,
          "linked_from": {
            "id": "id",
            "external_urls": {
              "published": true,
              "spotify": "spotify"
            },
            "href": "href",
            "published": true,
            "type": "type",
            "uri": "uri"
          },
          "name": "name",
          "popularity": 0,
          "preview_url": "preview_url",
          "published": true,
          "restrictions": {
            "published": true,
            "reason": "reason"
          },
          "track_number": 0,
          "type": "track",
          "uri": "uri"
        }
      }
    ],
    "published": true
  },
  "type": "type",
  "uri": "uri"
}
Returns Examples
{
  "id": "id",
  "collaborative": true,
  "description": "description",
  "external_urls": {
    "published": true,
    "spotify": "spotify"
  },
  "followers": {
    "href": "href",
    "published": true,
    "total": 0
  },
  "href": "href",
  "images": [
    {
      "height": 300,
      "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
      "width": 300,
      "published": true
    }
  ],
  "name": "name",
  "owner": {
    "id": "id",
    "external_urls": {
      "published": true,
      "spotify": "spotify"
    },
    "href": "href",
    "published": true,
    "type": "user",
    "uri": "uri",
    "display_name": "display_name"
  },
  "published": true,
  "snapshot_id": "snapshot_id",
  "tracks": {
    "href": "https://api.spotify.com/v1/me/shows?offset=0&limit=20\n",
    "limit": 20,
    "next": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
    "offset": 0,
    "previous": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
    "total": 4,
    "items": [
      {
        "added_at": "2019-12-27T18:11:19.117Z",
        "added_by": {
          "id": "id",
          "external_urls": {
            "published": true,
            "spotify": "spotify"
          },
          "href": "href",
          "published": true,
          "type": "user",
          "uri": "uri"
        },
        "is_local": true,
        "published": true,
        "track": {
          "id": "id",
          "album": {
            "id": "2up3OPMp9Tb4dAKM2erWXQ",
            "album_type": "compilation",
            "artists": [
              {
                "id": "id",
                "external_urls": {
                  "published": true,
                  "spotify": "spotify"
                },
                "href": "href",
                "name": "name",
                "published": true,
                "type": "artist",
                "uri": "uri"
              }
            ],
            "available_markets": [
              "CA",
              "BR",
              "IT"
            ],
            "external_urls": {
              "published": true,
              "spotify": "spotify"
            },
            "href": "href",
            "images": [
              {
                "height": 300,
                "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
                "width": 300,
                "published": true
              }
            ],
            "name": "name",
            "release_date": "1981-12",
            "release_date_precision": "year",
            "total_tracks": 9,
            "type": "album",
            "uri": "spotify:album:2up3OPMp9Tb4dAKM2erWXQ",
            "published": true,
            "restrictions": {
              "published": true,
              "reason": "market"
            }
          },
          "artists": [
            {
              "id": "id",
              "external_urls": {
                "published": true,
                "spotify": "spotify"
              },
              "href": "href",
              "name": "name",
              "published": true,
              "type": "artist",
              "uri": "uri"
            }
          ],
          "available_markets": [
            "string"
          ],
          "disc_number": 0,
          "duration_ms": 0,
          "explicit": true,
          "external_ids": {
            "ean": "ean",
            "isrc": "isrc",
            "published": true,
            "upc": "upc"
          },
          "external_urls": {
            "published": true,
            "spotify": "spotify"
          },
          "href": "href",
          "is_local": true,
          "is_playable": true,
          "linked_from": {
            "id": "id",
            "external_urls": {
              "published": true,
              "spotify": "spotify"
            },
            "href": "href",
            "published": true,
            "type": "type",
            "uri": "uri"
          },
          "name": "name",
          "popularity": 0,
          "preview_url": "preview_url",
          "published": true,
          "restrictions": {
            "published": true,
            "reason": "reason"
          },
          "track_number": 0,
          "type": "track",
          "uri": "uri"
        }
      }
    ],
    "published": true
  },
  "type": "type",
  "uri": "uri"
}