Spotify API endpoint
Returns public Spotify playlists. Provide username, uri, or url; defaults to Spotify's official profile.
/spotify/profile/playlistsMCP tool: spotify_profile_playlists
Returns public playlists from a Spotify profile. Provide one of username, uri, or url; when omitted the endpoint defaults to Spotify's official profile.
| Name | Required | Description |
|---|---|---|
username | No | Spotify username, for example spotify. |
uri | No | Spotify user URI, for example spotify:user:spotify. |
url | No | Open Spotify user URL, for example https://open.spotify.com/user/spotify. |
offset | No | Playlist offset. |
limit | No | Playlist limit, clamped to 1..50. |
The endpoint uses the public Web Player profile playlist service with anonymous Spotify credentials.
| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| uri | 20 | |
| id | 20 | |
| name | 20 | |
| imageUrl | 20 | i.scdn.co |
| followersCount | 20 | 521,562 to 33,729,176, median 6,016,332 |
| ownerName | 20 | |
| ownerUri | 20 | |
| ownerUsername | 20 | |
| externalUrl | 20 | open.spotify.com |
| ownerUrl | 20 | open.spotify.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| username | string | No | Spotify username | spotify | |
| uri | string | No | Spotify user URI | spotify:user:spotify | |
| url | string | No | open.spotify.com user URL | https://open.spotify.com/user/spotify | |
| offset | integer | No | Playlist offset | 0 | |
| limit | integer | No | Playlist limit, clamped to 1-50 | 20 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/spotify/profile/playlists?limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"uri": "spotify:user:spotify",
"username": "spotify",
"offset": 0,
"limit": 20,
"totalPublicPlaylistsCount": 1519,
"publicPlaylists": [
{
"uri": "spotify:playlist:37i9dQZF1DXcBWIGoYBM5M",
"name": "Today’s Top Hits",
"followersCount": 34324513
}
]
}Request schema
No body schema
Response schema
#/definitions/spotify.userProfilePlaylistsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | spotify.UserProfilePlaylistsResponse | No | ||||
| data.limit | integer | No | 20 | Maximum number of playlists requested. | ||
| data.meta | object | No | Details about this response. | |||
| data.meta.appVersion | string | No | 1.2.90.403.gf901f20f | Version of the Spotify web player the data was read from. | ||
| data.meta.artistCount | integer | No | 0 | Number of recently played artists returned. | ||
| data.meta.fetchedAt | string | No | 2026-05-13T20:41:12Z | Time the data was fetched, in UTC (RFC 3339). | ||
| data.meta.operationName | string | No | userProfileView | Name of the Spotify web player operation that returned the data. | ||
| data.meta.playlistCount | integer | No | 10 | Number of playlists returned. | ||
| data.meta.profileCount | integer | No | 50 | Number of user profiles returned. | ||
| data.offset | integer | No | 0 | Position of the first playlist returned. | ||
| data.publicPlaylists | array | No | Public playlists of the user. | |||
| data.publicPlaylists[].externalUrl | string | No | https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M | Link to the playlist on open.spotify.com. | ||
| data.publicPlaylists[].followersCount | integer | No | 34324513 | Number of followers the playlist has. | ||
| data.publicPlaylists[].id | string | No | 37i9dQZF1DXcBWIGoYBM5M | Spotify ID of the playlist. | ||
| data.publicPlaylists[].imageUrl | string | No | https://i.scdn.co/image/ab67706f0000000273f7bb6e77ec5e23d7840ae5 | URL of the playlist cover image. | ||
| data.publicPlaylists[].isFollowing | boolean | No | false | Whether Spotify marks the playlist as followed. | ||
| data.publicPlaylists[].name | string | No | Today’s Top Hits | Playlist title as Spotify shows it. | ||
| data.publicPlaylists[].ownerName | string | No | Spotify | Display name of the playlist owner. | ||
| data.publicPlaylists[].ownerUri | string | No | spotify:user:spotify | Spotify URI of the playlist owner. | ||
| data.publicPlaylists[].ownerUrl | string | No | https://open.spotify.com/user/spotify | Link to the playlist owner's profile on open.spotify.com. | ||
| data.publicPlaylists[].ownerUsername | string | No | spotify | Spotify username of the playlist owner. | ||
| data.publicPlaylists[].uri | string | No | spotify:playlist:37i9dQZF1DXcBWIGoYBM5M | Spotify URI of the playlist. | ||
| data.totalPublicPlaylistsCount | integer | No | 1519 | Total number of public playlists the user has. | ||
| data.uri | string | No | spotify:user:spotify | Spotify URI of the user. | ||
| data.username | string | No | spotify | Spotify username of the user. | ||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| Status | Description | Schema |
|---|---|---|
| 400 | Missing or invalid parameters | #/definitions/app.Response |
| 429 | Rate limit exceeded | #/definitions/app.Response |
| 503 | Spotify upstream request failed | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/spotify/profile/playlists?limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"