Spotify Episodes API

The Episodes API from Spotify — 5 operation(s) for episodes.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

spotify-episodes-api-openapi.yml Raw ↑
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 Albums Episodes 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: Episodes
paths:
  /shows/{id}/episodes:
    get:
      tags:
      - 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
  /me/episodes:
    get:
      tags:
      - Episodes
      operationId: get-users-saved-episodes
      summary: 'Get User''s Saved Episodes

        '
      description: 'Get a list of the episodes saved in the current Spotify user''s library.

        '
      parameters:
      - $ref: '#/components/parameters/QueryMarket'
      - $ref: '#/components/parameters/QueryLimit'
      - $ref: '#/components/parameters/QueryOffset'
      responses:
        '200':
          $ref: '#/components/responses/PagingSavedEpisodeObject'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - oauth_2_0:
        - user-library-read
        - user-read-playback-position
    put:
      deprecated: true
      tags:
      - Episodes
      operationId: save-episodes-user
      summary: 'Save Episodes for Current User

        '
      description: 'Save one or more episodes to the current user''s library.


        **Note:** This endpoint is deprecated. Use [Save Items to Library](/documentation/web-api/reference/save-library-items) instead.

        '
      parameters:
      - name: ids
        required: true
        in: query
        schema:
          title: Spotify Episodes IDs
          description: 'A comma-separated list of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). Maximum: 50 IDs.

            '
          example: 77o6BIVlYM3msb4MMIL1jH,0Q86acNRm6V9GYx55SXKwf
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
              required:
              - uris
              properties:
                ids:
                  type: array
                  description: 'A JSON array of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). <br/>A maximum of 50 items can be specified in one request. _**Note**: if the `ids` parameter is present in the query string, any IDs listed here in the body will be ignored._

                    '
                  items:
                    type: string
      responses:
        '200':
          description: Episode saved
        '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:
      - Episodes
      operationId: remove-episodes-user
      summary: 'Remove User''s Saved Episodes

        '
      description: 'Remove one or more episodes from the current 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/QueryTrackIds'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
              properties:
                ids:
                  type: array
                  description: 'A JSON array of the [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). <br/>A maximum of 50 items can be specified in one request. _**Note**: if the `ids` parameter is present in the query string, any IDs listed here in the body will be ignored._

                    '
                  items:
                    type: string
      responses:
        '200':
          description: Episode removed
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - oauth_2_0:
        - user-library-modify
  /me/episodes/contains:
    get:
      tags:
      - Episodes
      operationId: check-users-saved-episodes
      summary: 'Check User''s Saved Episodes

        '
      deprecated: true
      description: 'Check if one or more episodes is already saved in the current Spotify user''s ''Your Episodes'' library.


        **Note:** This endpoint is deprecated. Use [Check User''s Saved Items](/documentation/web-api/reference/check-library-contains) instead.

        '
      parameters:
      - name: ids
        required: true
        in: query
        schema:
          title: Spotify Episode 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
      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
components:
  schemas:
    PagingSavedEpisodeObject:
      type: object
      x-spotify-docs-type: PagingEpisodeObject
      allOf:
      - $ref: '#/components/schemas/PagingObject'
      - type: object
        properties:
          items:
            type: array
            items:
              $ref: '#/components/schemas/SavedEpisodeObject'
    EpisodeBase:
      type: object
      required:
      - audio_preview_url
      - description
      - html_description
      - duration_ms
      - explicit
      - external_urls
      - href
      - id
      - images
      - is_externally_hosted
      - is_playable
      - languages
      - name
      - release_date
      - release_date_precision
      - type
      - uri
      properties:
        audio_preview_url:
          deprecated: true
          type: string
          nullable: true
          example: https://p.scdn.co/mp3-preview/2f37da1d4221f40b9d1a98cd191f4d6f1646ad17
          description: 'A URL to a 30 second preview (MP3 format) of the episode. `null` if not available.

            '
          x-spotify-policy-list:
          - $ref: '#/components/x-spotify-policy/policies/StandalonePreview'
        description:
          type: string
          example: 'A Spotify podcast sharing fresh insights on important topics of the moment—in a way only Spotify can. You’ll hear from experts in the music, podcast and tech industries as we discover and uncover stories about our work and the world around us.

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

            '
        html_description:
          type: string
          example: '<p>A Spotify podcast sharing fresh insights on important topics of the moment—in a way only Spotify can. You’ll hear from experts in the music, podcast and tech industries as we discover and uncover stories about our work and the world around us.</p>

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

            '
        duration_ms:
          type: integer
          example: 1686230
          description: 'The episode length in milliseconds.

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

            '
        external_urls:
          allOf:
          - $ref: '#/components/schemas/ExternalUrlObject'
          description: 'External URLs for this episode.

            '
        href:
          type: string
          example: https://api.spotify.com/v1/episodes/5Xt5DXGzch68nYYamXrNxZ
          description: 'A link to the Web API endpoint providing full details of the episode.

            '
        id:
          type: string
          example: 5Xt5DXGzch68nYYamXrNxZ
          description: 'The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the episode.

            '
        images:
          type: array
          items:
            $ref: '#/components/schemas/ImageObject'
          description: 'The cover art for the episode in various sizes, widest first.

            '
        is_externally_hosted:
          type: boolean
          description: 'True if the episode is hosted outside of Spotify''s CDN.

            '
        is_playable:
          type: boolean
          description: 'True if the episode is playable in the given market. Otherwise false.

            '
        language:
          type: string
          deprecated: true
          example: en
          description: 'The language used in the episode, identified by a [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code. This field is deprecated and might be removed in the future. Please use the `languages` field instead.

            '
        languages:
          type: array
          items:
            type: string
          example:
          - fr
          - en
          description: 'A list of the languages used in the episode, identified by their [ISO 639-1](https://en.wikipedia.org/wiki/ISO_639) code.

            '
        name:
          type: string
          example: 'Starting Your Own Podcast: Tips, Tricks, and Advice From Anchor Creators

            '
          description: 'The name of the episode.

            '
        release_date:
          type: string
          example: '1981-12-15'
          description: '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:
          type: string
          example: day
          enum:
          - year
          - month
          - day
          description: 'The precision with which `release_date` value is known.

            '
        resume_point:
          allOf:
          - $ref: '#/components/schemas/ResumePointObject'
          description: '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''.

            '
        type:
          type: string
          enum:
          - episode
          description: 'The object type.

            '
        uri:
          type: string
          example: spotify:episode:0zLhl3WsOCQHbe1BPTiHgr
          description: 'The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the episode.

            '
        restrictions:
          allOf:
          - $ref: '#/components/schemas/EpisodeRestrictionObject'
          description: 'Included in the response when a content restriction is applied.

            '
    SimplifiedEpisodeObject:
      x-spotify-docs-type: SimplifiedEpisodeObject
      type: object
      allOf:
      - $ref: '#/components/schemas/EpisodeBase'
      - type: object
    ExternalUrlObject:
      type: object
      x-spotify-docs-type: ExternalUrlObject
      properties:
        spotify:
          type: string
          description: 'The [Spotify URL](/documentation/web-api/concepts/spotify-uris-ids) for the object.

            '
    PagingSimplifiedEpisodeObject:
      type: object
      x-spotify-docs-type: PagingEpisodeObject
      allOf:
      - $ref: '#/components/schemas/PagingObject'
      - type: object
        properties:
          items:
            type: array
            items:
              $ref: '#/components/schemas/SimplifiedEpisodeObject'
    ErrorObject:
      type: object
      x-spotify-docs-type: ErrorObject
      required:
      - status
      - message
      properties:
        status:
          type: integer
          minimum: 400
          maximum: 599
          description: 'The HTTP status code (also returned in the response header; see [Response Status Codes](/documentation/web-api/concepts/api-calls#response-status-codes) for more information).

            '
        message:
          type: string
          description: 'A short description of the cause of the error.

            '
    SavedEpisodeObject:
      type: object
      x-spotify-docs-type: SavedEpisodeObject
      properties:
        added_at:
          type: string
          format: date-time
          x-spotify-docs-type: Timestamp
          description: 'The date and time the episode was saved.

            Timestamps are returned in ISO 8601 format as Coordinated Universal Time (UTC) with a zero offset: YYYY-MM-DDTHH:MM:SSZ.

            '
        episode:
          allOf:
          - $ref: '#/components/schemas/EpisodeObject'
          description: Information about the episode.
    ImageObject:
      type: object
      x-spotify-docs-type: ImageObject
      required:
      - url
      - height
      - width
      properties:
        url:
          type: string
          example: 'https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228

            '
          description: 'The source URL of the image.

            '
        height:
          type: integer
          example: 300
          nullable: true
          description: 'The image height in pixels.

            '
        width:
          type: integer
          example: 300
          nullable: true
          description: 'The image width in pixels.

            '
    EpisodeObject:
      x-spotify-docs-type: EpisodeObject
      type: object
      allOf:
      - $ref: '#/components/schemas/EpisodeBase'
      - type: object
        required:
        - show
        properties:
          show:
            allOf:
            - $ref: '#/components/schemas/SimplifiedShowObject'
            description: 'The show on which the episode belongs.

              '
    SimplifiedShowObject:
      x-spotify-docs-type: SimplifiedShowObject
      allOf:
      - $ref: '#/components/schemas/ShowBase'
      - type: object
    CopyrightObject:
      type: object
      x-spotify-docs-type: CopyrightObject
      properties:
        text:
          type: string
          description: 'The copyright text for this content.

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

            '
    PagingObject:
      type: object
      x-spotify-docs-type: PagingObject
      required:
      - href
      - items
      - limit
      - next
      - offset
      - previous
      - total
      properties:
        href:
          type: string
          example: 'https://api.spotify.com/v1/me/shows?offset=0&limit=20

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

            '
        limit:
          type: integer
          example: 20
          description: 'The maximum number of items in the response (as set in the query or by default).

            '
        next:
          type: string
          example: https://api.spotify.com/v1/me/shows?offset=1&limit=1
          nullable: true
          description: 'URL to the next page of items. ( `null` if none)

            '
        offset:
          type: integer
          example: 0
          description: 'The offset of the items returned (as set in the query or by default)

            '
        previous:
          type: string
          example: https://api.spotify.com/v1/me/shows?offset=1&limit=1
          nullable: true
          description: 'URL to the previous page of items. ( `null` if none)

            '
        total:
          type: integer
          example: 4
          description: 'The total number of items available to return.

            '
    EpisodeRestrictionObject:
      type: object
      x-spotify-docs-type: EpisodeRestrictionObject
      properties:
        reason:
          type: string
          description: '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.

            '
    ResumePointObject:
      type: object
      x-spotify-docs-type: ResumePointObject
      properties:
        fully_played:
          type: boolean
          description: 'Whether or not the episode has been fully played by the user.

            '
        resume_position_ms:
          type: integer
          description: 'The user''s most recent position in the episode in milliseconds.

            '
    ShowBase:
      type: object
      required:
      - available_markets
      - copyrights
      - description
      - explicit
      - external_urls
      - href
      - html_description
      - id
      - images
      - is_externally_hosted
      - languages
      - media_type
      - name
      - publisher
      - total_episodes
      - type
      - uri
      properties:
        available_markets:
          deprecated: true
          type: array
          items:
            type: string
          description: 'A list of the countries in which the show can be played, identified by their [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.

            '
        copyrights:
          type: array
          items:
            $ref: '#/components/schemas/CopyrightObject'
          description: 'The copyright statements of the show.

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

            '
        html_description:
          type: string
          description: 'A description of the show. This field may contain HTML tags.

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

            '
        external_urls:
          allOf:
          - $ref: '#/components/schemas/ExternalUrlObject'
          description: 'External URLs for this show.

            '
        href:
          type: string
          description: 'A link to the Web API endpoint providing full details of the show.

            '
        id:
          type: string
          description: 'The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the show.

            '
        images:
          type: array
          items:
            $ref: '#/components/schemas/ImageObject'
          description: 'The cover art for the show in various sizes, widest first.

            '
        is_externally_hosted:
          type: boolean
          description: 'True if all of the shows episodes are hosted outside of Spotify''s CDN. This field might be `null` in some cases.

            '
        languages:
          type: array
          items:
            type: string
          description: 'A list of the languages used in the show, identified by their [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code.

            '
        media_type:
          type: string
          description: 'The media type of the show.

            '
        name:
          type: string
          description: 'The name of the episode.

            '
        publisher:
          deprecated: true
          type: string
          description: 'The publisher of the show.

            '
        type:
          type: string
          enum:
          - show
          description: 'The object type.

            '
        uri:
          type: string
          description: 'The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the show.

            '
        total_episodes:
          type: integer
          description: 'The total number of episodes in the show.

            '
  x-spotify-policy:
    metadataPolicyList:
    - $ref: '#/components/x-spotify-policy/policies/Downloading'
    - $ref: '#/components/x-spotify-policy/policies/VisualAlteration'
    - $ref: '#/components/x-spotify-policy/policies/Attribution'
  responses:
    OneEpisode:
      description: An episode
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EpisodeObject'
    ManyEpisodes:
      description: A set of episodes
      content:
        application/json:
          schema:
            type: object
            required:
            - episodes
            properties:
              episodes:
                type: array
                items:
                  $ref: '#/components/schemas/EpisodeObject'
    Forbidden:
      description: 'Bad OAuth request (wrong consumer key, bad nonce, expired

        timestamp...). Unfortunately, re-authenticating the user won''t help here.

        '
      content:
        application/json:
          schema:
            type: object
            required:
            - error
            properties:
              error:
                $ref: '#/components/schemas/ErrorObject'
    Unauthorized:
      description: '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.

        '
      content:
        application/json:
          schema:
            type: object
            required:
            - error
            properties:
              error:
                $ref: '#/components/schemas/ErrorObject'
    ArrayOfBooleans:
      description: Array of booleans
      content:
        application/json:
          schema:
            type: array
            example:
            - false
            - true
            items:
              type: boolean
    PagingSimplifiedEpisodeObject:
      description: Pages of episodes
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PagingSimplifiedEpisodeObject'
    PagingSavedEpisodeObject:
      description: Pages of episodes
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PagingSavedEpisodeObject'
    TooManyRequests:
      description: 'The app has exceeded its rate limits.

        '
      content:
        application/json:
          schema:
            type: object
            required:
            - error
            properties:
              error:
                $ref: '#/components/schemas/ErrorObject'
  parameters:
    QueryMarket:
      name: market
      required: false
      in: query
      schema:
        title: Market
        description: "An [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).\n  If a country code is specified, only content that is available in that market will be returned.<br/>\n  If a valid user access token is specified in the request header, the country associated with\n  the user account will take priority over this parameter.<br/>\n  _**Note**: If neither market or user country are provided, the content is considered unavailable for the client._<br/>\n  Users can view the country that is associated with their account in the [account settings](https://www.spotify.com/account/overview/).\n"
        example: ES
        type: string
    PathShowId:
      name: id
      required: true
      in: path
      schema:
        title: Spotify Show ID
        description: 'The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids)

          for the show.

          '
        example: 38bS44xjbVVZ3No3ByF1dJ
        type: string
    QueryOffset:
      name: offset
      required: false
      in: query
      schema:
        title: Offset
        description: 'The index of the first item to return. Default: 0 (the first item). Use with limit to get the next set of items.

          '
        default: 0
        example: 5
        type: integer
    QueryLimit:
      name: limit
      required: false
      in: query
      schema:
        title: Limit
        description: 'The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.

          '
        default: 20
        example: 10
        type: integer
        minimum: 0
        maximum: 50
    QueryTrackIds:
      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
  securitySchemes:
    oauth_2_0:
      type: oauth2
      description: Spotify supports OAuth 2.0 for authenticating all API requests.
      flows:
        authorizationCode:
          authorizationUrl: https://accounts.spotify.com/authorize
          tokenUrl: https://accounts.spotify.com/api/token
          scopes:
            app-remote-control: 'Communicate with the Spotify app on your device.

              '
            playlist-read-private: 'Access your private playlists.

              '
            playlist-read-collaborative: 'Access your collaborative playlists.

              '
            playlist-modify-public: 'Manage your public playlists.

              '
            playlist-modify-private: 'Manage your private playlists.

              '
            user-library-read: 'Access your saved content.

              '
            user-library-modify: 'Manage your saved content.

              '
            user-read-private: 'Access your subscription details.

              '
            user-read-email: 'Get your real email address.

              '
            user-follow-read: 'Access your followers and who you are following.

              '
            user-follow-modify: 'Manage your saved content.

              '
            user-top-read: 'Read your top artists and content.

              '
            user-read-playback-position: 'Read your position in content you have played.

              '
            user-read-playback-state: 'Read your currently playing content and Spotify Connect devices information.

              '
            user-read-recently-played: 'Access your recently played items.

              '
            user-read-currently-playing: 'Read your currently playing content.

              '
            user-modify-playback-state: 'Control playback on your Spotify clients and Spotify Connect devices.

              '
            ugc-image-upload: 'Upload images to Spotify on your behalf.

              '
            streaming: 'Play content and control playback on your other devices.

              '