Spotify Web API
  1. category-search
Spotify Web API
  • category-albums
    • Get Multiple Albums
      GET
    • Get an Album
      GET
    • Get an Album's Tracks
      GET
  • category-artists
    • Get Multiple Artists
      GET
    • Get an Artist
      GET
    • Get an Artist's Albums
      GET
    • Get an Artist's Related Artists
      GET
    • Get an Artist's Top Tracks
      GET
  • category-tracks
    • Get Audio Analysis for a Track
      GET
    • Get Audio Features for Several Tracks
      GET
    • Get Audio Features for a Track
      GET
    • Get Several Tracks
      GET
    • Get a Track
      GET
  • category-browse
    • Get All Categories
      GET
    • Get a Category
      GET
    • Get a Category's Playlists
      GET
    • Get All Featured Playlists
      GET
    • Get All New Releases
      GET
    • Get Recommendations
      GET
    • Get Recommendation Genres
      GET
  • category-episodes
    • Get Multiple Episodes
      GET
    • Get an Episode
      GET
  • category-markets
    • Get Available Markets
      GET
  • category-users-profile
    • Get Current User's Profile
    • Get a User's Profile
  • category-library
    • Remove Albums for Current User
    • Get User's Saved Albums
    • Save Albums for Current User
    • Check User's Saved Albums
    • Remove User's Saved Episodes
    • Get User's Saved Episodes
    • Save Episodes for User
    • Check User's Saved Episodes
    • Remove User's Saved Shows
    • Get User's Saved Shows
    • Save Shows for Current User
    • Check User's Saved Shows
    • Remove User's Saved Tracks
    • Get User's Saved Tracks
    • Save Tracks for User
    • Check User's Saved Tracks
  • category-follow
    • Unfollow Artists or Users
    • Get User's Followed Artists
    • Follow Artists or Users
    • Get Following State for Artists/Users
    • Unfollow Playlist
    • Follow a Playlist
    • Check if Users Follow a Playlist
  • category-player
    • Get Information About The User's Current Playback
    • Transfer a User's Playback
    • Get the User's Currently Playing Track
    • Get a User's Available Devices
    • Skip User’s Playback To Next Track
    • Pause a User's Playback
    • Start/Resume a User's Playback
    • Skip User’s Playback To Previous Track
    • Add an item to queue
    • Get Current User's Recently Played Tracks
    • Set Repeat Mode On User’s Playback
    • Seek To Position In Currently Playing Track
    • Toggle Shuffle For User’s Playback
    • Set Volume For User's Playback
  • category-playlists
    • Get a List of Current User's Playlists
    • Get a Playlist
    • Change a Playlist's Details
    • Get a Playlist Cover Image
    • Upload a Custom Playlist Cover Image
    • Remove Items from a Playlist
    • Get a Playlist's Items
    • Add Items to a Playlist
    • Reorder or Replace a Playlist's Items
    • Get a List of a User's Playlists
    • Create a Playlist
  • category-personalization
    • Get a User's Top Artists and Tracks
  • category-search
    • Search for an Item
      GET
  • category-shows
    • Get Multiple Shows
    • Get a Show
    • Get a Show's Episodes
  1. category-search

Search for an Item

Developing
GET
/search
category-search
Get Spotify Catalog information about albums, artists, playlists, tracks, shows or episodes
that match a keyword string.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request GET 'https://api.spotify.com/v1/search?q=&type=' \
--header 'Authorization;'
Response Response Example
200 - Example 1
{
  "albums": {
    "href": "string",
    "items": [
      {
        "album_group": "string",
        "album_type": "string",
        "artists": [
          {
            "external_urls": {
              "spotify": "string"
            },
            "href": "string",
            "id": "string",
            "name": "string",
            "type": "string",
            "uri": "string"
          }
        ],
        "available_markets": [
          "string"
        ],
        "external_urls": {
          "spotify": "string"
        },
        "href": "string",
        "id": "string",
        "images": [
          {
            "height": 0,
            "url": "string",
            "width": 0
          }
        ],
        "name": "string",
        "release_date": "string",
        "release_date_precision": "string",
        "restrictions": {
          "reason": "string"
        },
        "total_tracks": 0,
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  },
  "artists": {
    "href": "string",
    "items": [
      {
        "external_urls": {
          "spotify": "string"
        },
        "followers": {
          "href": "string",
          "total": 0
        },
        "genres": [
          "string"
        ],
        "href": "string",
        "id": "string",
        "images": [
          {
            "height": 0,
            "url": "string",
            "width": 0
          }
        ],
        "name": "string",
        "popularity": 0,
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  },
  "episodes": {
    "href": "string",
    "items": [
      {
        "audio_preview_url": "string",
        "description": "string",
        "duration_ms": 0,
        "explicit": true,
        "external_urls": {
          "spotify": "string"
        },
        "href": "string",
        "html_description": "string",
        "id": "string",
        "images": [
          {
            "height": 0,
            "url": "string",
            "width": 0
          }
        ],
        "is_externally_hosted": true,
        "is_playable": true,
        "language": "string",
        "languages": [
          "string"
        ],
        "name": "string",
        "release_date": "string",
        "release_date_precision": "string",
        "restrictions": {
          "reason": "string"
        },
        "resume_point": {
          "fully_played": true,
          "resume_position_ms": 0
        },
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  },
  "playlists": {
    "href": "string",
    "items": [
      {
        "collaborative": true,
        "description": "string",
        "external_urls": {
          "spotify": "string"
        },
        "href": "string",
        "id": "string",
        "images": [
          {
            "height": 0,
            "url": "string",
            "width": 0
          }
        ],
        "name": "string",
        "owner": {
          "display_name": "string",
          "external_urls": {
            "spotify": "string"
          },
          "followers": {
            "href": "string",
            "total": 0
          },
          "href": "string",
          "id": "string",
          "images": [
            {
              "height": 0,
              "url": "string",
              "width": 0
            }
          ],
          "type": "string",
          "uri": "string"
        },
        "public": true,
        "snapshot_id": "string",
        "tracks": {
          "href": "string",
          "total": 0
        },
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  },
  "shows": {
    "href": "string",
    "items": [
      {
        "available_markets": [
          "string"
        ],
        "copyrights": [
          {
            "text": "string",
            "type": "string"
          }
        ],
        "description": "string",
        "explicit": true,
        "external_urls": {
          "spotify": "string"
        },
        "href": "string",
        "html_description": "string",
        "id": "string",
        "images": [
          {
            "height": 0,
            "url": "string",
            "width": 0
          }
        ],
        "is_externally_hosted": true,
        "languages": [
          "string"
        ],
        "media_type": "string",
        "name": "string",
        "publisher": "string",
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  },
  "tracks": {
    "href": "string",
    "items": [
      {
        "album": {
          "album_group": "string",
          "album_type": "string",
          "artists": [
            {
              "external_urls": {
                "spotify": "string"
              },
              "href": "string",
              "id": "string",
              "name": "string",
              "type": "string",
              "uri": "string"
            }
          ],
          "available_markets": [
            "string"
          ],
          "external_urls": {
            "spotify": "string"
          },
          "href": "string",
          "id": "string",
          "images": [
            {
              "height": 0,
              "url": "string",
              "width": 0
            }
          ],
          "name": "string",
          "release_date": "string",
          "release_date_precision": "string",
          "restrictions": {
            "reason": "string"
          },
          "total_tracks": 0,
          "type": "string",
          "uri": "string"
        },
        "artists": [
          {
            "external_urls": {
              "spotify": "string"
            },
            "followers": {
              "href": "string",
              "total": 0
            },
            "genres": [
              "string"
            ],
            "href": "string",
            "id": "string",
            "images": [
              {
                "height": 0,
                "url": "string",
                "width": 0
              }
            ],
            "name": "string",
            "popularity": 0,
            "type": "string",
            "uri": "string"
          }
        ],
        "available_markets": [
          "string"
        ],
        "disc_number": 0,
        "duration_ms": 0,
        "explicit": true,
        "external_ids": {
          "ean": "string",
          "isrc": "string",
          "upc": "string"
        },
        "external_urls": {
          "spotify": "string"
        },
        "href": "string",
        "id": "string",
        "is_local": true,
        "is_playable": true,
        "linked_from": {
          "external_urls": {
            "spotify": "string"
          },
          "href": "string",
          "id": "string",
          "type": "string",
          "uri": "string"
        },
        "name": "string",
        "popularity": 0,
        "preview_url": "string",
        "restrictions": {
          "reason": "string"
        },
        "track_number": 0,
        "type": "string",
        "uri": "string"
      }
    ],
    "limit": 0,
    "next": "string",
    "offset": 0,
    "previous": "string",
    "total": 0
  }
}

Request

Query Params
q
string 
required
Search query keywords and optional field filters and operators.
For example:
q=roadhouse%20blues.
type
string 
required
A comma-separated list of item types to search across.
Valid types are: album , artist, playlist, track, show and episode.
Search results include hits from all the specified item types.
For example: q=name:abacab&type=album,track returns both albums and tracks with "abacab" included in their name.
market
string 
optional
An ISO 3166-1 alpha-2 country code or the string from_token.
If a country code is specified, only content that is playable in that market is returned.
Note :
Playlist results are not affected by the market parameter.
If market is set to from_token, and a valid access token is specified in the request header, only content playable in the country associated with the user account, is returned.
Users can view the country that is associated with their account in the account settings. A user must grant access to the user-read-private scope prior to when the access token is issued.
limit
integer 
optional
Maximum number of results to return.
Default: 20
Minimum: 1
Maximum: 50
Note : The limit is applied within each type, not on the total response.
For example, if the limit value is 3 and the type is artist,album, the response contains 3 artists and 3 albums.
offset
integer 
optional
The index of the first result to return.
Default: 0 (the first result).
Maximum offset (including limit): 1,000.
Use with limit to get the next page of search results.
include_external
string 
optional
Possible values: audio
If include_external=audio is specified the response will include any relevant audio content that is hosted externally.
By default external content is filtered out from responses.
Header Params
Authorization
string 
required
A valid access token from the Spotify Accounts service: see the Web API Authorization Guide for details.

Responses

🟢200**On success**: - In the response ***header*** the HTTP status code is `200` OK. - For each type provided in the `type` parameter, the response ***body*** contains an array of [artist objects](https://developer.spotify.com/documentation/web-api/reference
application/json
Body
albums
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (SimplifiedAlbumObject) {15}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
artists
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (ArtistObject) {10}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
episodes
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (SimplifiedEpisodeObject) {20}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
playlists
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (SimplifiedPlaylistObject) {13}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
shows
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (SimplifiedShowObject) {16}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
tracks
object 
optional
href
string 
optional
A link to the Web API endpoint returning the full result of the request
items
array[object (TrackObject) {20}] 
optional
The requested data.
limit
integer <int32>
optional
The maximum number of items in the response (as set in the query or by default).
next
string 
optional
URL to the next page of items. ( null if none)
offset
integer <int32>
optional
The offset of the items returned (as set in the query or by default)
previous
string 
optional
URL to the previous page of items. ( null if none)
total
integer <int32>
optional
The total number of items available to return.
🔴500500
Modified at 2022-09-12 10:04:50
Previous
Get a User's Top Artists and Tracks
Next
Get Multiple Shows
Built with