Title: | R Wrapper for the 'Spotify' Web API |
---|---|
Description: | An R wrapper for pulling data from the 'Spotify' Web API <https://developer.spotify.com/documentation/web-api/> in bulk, or post items on a 'Spotify' user's playlist. |
Authors: | Charlie Thompson [aut], Daniel Antal [aut, cre] , Josiah Parry [aut] , Donal Phipps [aut], Tom Wolff [aut], Stephen Holsenbeck [ctb], Peter Harrison [ctb] |
Maintainer: | Daniel Antal <[email protected]> |
License: | MIT + file LICENSE |
Version: | 2.2.5 |
Built: | 2024-10-25 08:20:04 UTC |
Source: | https://github.com/charlie86/spotifyr |
Add one or more tracks to a user’s playlist.
add_tracks_to_playlist( playlist_id, uris, position = NULL, authorization = get_spotify_authorization_code() )
add_tracks_to_playlist( playlist_id, uris, position = NULL, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID for the playlist. |
uris |
Optional. A character vector of
Spotify track URIs to add.
For example: |
position |
Optional. Integer indicating the position to insert the tracks,
a zero-based index. For example, to insert the tracks in the first position:
|
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the
POST
request, with a meaningful error message if the operation was not successful.
Other playlist functions:
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
Change a playlist’s name and public/private state. (The user must, of course, own the playlist.)
change_playlist_details( playlist_id, name = NULL, public = NULL, collaborative = NULL, description = NULL, authorization = get_spotify_authorization_code() )
change_playlist_details( playlist_id, name = NULL, public = NULL, collaborative = NULL, description = NULL, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID for the playlist. |
name |
Optional String containing the name for the new playlist, for example |
public |
Optional. Boolean. If |
collaborative |
Optional. Boolean. If |
description |
Optional. String containing the playlist description as displayed in Spotify Clients and in the Web API. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the
PUT
request, with a meaningful error message if the operation was not successful.
Other playlist functions:
add_tracks_to_playlist()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
Check if the current user is following specific artists or users.
check_me_following(type, ids, authorization = get_spotify_authorization_code())
check_me_following(type, ids, authorization = get_spotify_authorization_code())
type |
Required. String of the ID type: either |
ids |
Required. A character vector of the artist or the user
Spotify IDs to check. For example: |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
A data frame containing three columns, "type"
, the "id"
of the
artist or users and "is_following"
as a logical, boolean variable.
Check if particular users are following a particular playlist.
check_users_following( playlist_id, ids, authorization = get_spotify_authorization_code() )
check_users_following( playlist_id, ids, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID of the playlist. |
ids |
Required. Spotify User IDs; the ids of the users that you want to check to see if they follow the playlist. Maximum: 5 ids. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. |
A data frame containing three columns,"user_id"
for the particular users, "playlist_id"
for the particular playlists, "is_following"
as a logical, boolean variable.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
Create a playlist for a Spotify user. The playlist will be empty until you add tracks.
create_playlist( user_id, name, public = TRUE, collaborative = FALSE, description = NULL, authorization = get_spotify_authorization_code() )
create_playlist( user_id, name, public = TRUE, collaborative = FALSE, description = NULL, authorization = get_spotify_authorization_code() )
user_id |
Required. The user's Spotify user ID. |
name |
Required. String containing the name for the new playlist, for example |
public |
Optional. Boolean. Defaults to |
collaborative |
Optional. Boolean. Defaults to |
description |
Optional. String containing the playlist description as displayed in Spotify Clients and in the Web API. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the POST
request, with a meaningful
error message if the operation was not successful.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
Use fuzzy matching to remove duplicate album names (including reissues, remasters, etc).
dedupe_album_names( df, album_name_col = "album_name", album_release_year_col = "album_release_year" )
dedupe_album_names( df, album_name_col = "album_name", album_release_year_col = "album_release_year" )
df |
Data frame with album name |
album_name_col |
String of field name containing album names |
album_release_year_col |
String of field name containing album release year |
The original data frame with distinct album_name
rows, keeping as much as
possible the original album release (and not re-releases.)
Add the current user as a follower of one or more artists or other Spotify users.
follow_artists_or_users( type, ids = NULL, authorization = get_spotify_authorization_code() )
follow_artists_or_users( type, ids = NULL, authorization = get_spotify_authorization_code() )
type |
Required. The ID type: either |
ids |
Optional. A character vector of the artist or the user
Spotify IDs. For example: |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Add Current User to Followers of Playlist.
follow_playlist( playlist_id, public = FALSE, authorization = get_spotify_authorization_code() )
follow_playlist( playlist_id, public = FALSE, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID of the playlist. Any playlist can be followed, regardless of its public/private status, as long as you know its playlist ID. |
public |
Optional. Defaults to |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Get Spotify catalog information for a single album.
get_album(id, market = NULL, authorization = get_spotify_access_token())
get_album(id, market = NULL, authorization = get_spotify_access_token())
id |
The Spotify ID for the album. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
Returns a data frame of results containing album data. See the official documentation for more information.
Other album functions:
get_albums()
Get Spotify catalog information about an album’s tracks. Optional parameters can be used to limit the number of tracks returned.
get_album_tracks( id, limit = 20, offset = 0, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_album_tracks( id, limit = 20, offset = 0, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
id |
Required. The Spotify ID for the album. |
limit |
Optional. |
offset |
Optional. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing album data. See the official API documentation for more information.
Other track functions:
get_playlist_tracks()
,
get_track()
,
get_tracks()
Get Spotify catalog information for multiple albums identified by their Spotify IDs.
get_albums( ids, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_albums( ids, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
ids |
Required. A character vector of the Spotify IDs for the albums. Maximum: 20 IDs. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing album data. See https://developer.spotify.com/documentation/web-api/reference/albums/get-album/ for more information.
Other album functions:
get_album()
Get Spotify catalog information for a single artist identified by their unique Spotify ID.
get_artist(id, authorization = get_spotify_access_token())
get_artist(id, authorization = get_spotify_access_token())
id |
The Spotify ID for the artist. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details.
Defaults to |
Returns a data frame of results containing album data. See https://developer.spotify.com/documentation/web-api/reference/albums/get-album/ for more information.
Other artist functions:
get_artist_albums()
,
get_artist_top_tracks()
,
get_artists()
,
get_my_followed_artists()
,
get_related_artists()
Get Spotify catalog information for multiple artists identified by their Spotify IDs.
get_artist_albums( id, include_groups = c("album", "single", "appears_on", "compilation"), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_artist_albums( id, include_groups = c("album", "single", "appears_on", "compilation"), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
id |
The Spotify ID for the artist. |
include_groups |
Optional. A character vector of keywords that will be used to filter the response. If not supplied, all album types will be returned. Valid values are: |
market |
Optional. |
limit |
Optional. |
offset |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing artist data. See https://developer.spotify.com/documentation/web-api/reference/artists/get-several-artists/ for more information.
Other artist functions:
get_artist()
,
get_artist_top_tracks()
,
get_artists()
,
get_my_followed_artists()
,
get_related_artists()
Get audio feature information for all or part of an artists' discography.
get_artist_audio_features( artist = NULL, include_groups = "album", return_closest_artist = TRUE, dedupe_albums = TRUE, market = NULL, authorization = get_spotify_access_token() )
get_artist_audio_features( artist = NULL, include_groups = "album", return_closest_artist = TRUE, dedupe_albums = TRUE, market = NULL, authorization = get_spotify_access_token() )
artist |
Required. String of either an artist name or an artist Spotify ID.
If an artist name is provided, |
include_groups |
Optional. A character vector of keywords that will be used to filter
the response. Defaults to |
return_closest_artist |
Optional. Boolean. |
dedupe_albums |
Optional. Logical, boolean parameter, defaults to
|
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the
Web API authorization Guide for more details.
Defaults to |
Returns a data frame of results containing track audio features data. See the Spotify Web API documentation for more information.
Other musicology functions:
get_genre_artists()
,
get_playlist_audio_features()
,
get_track_audio_analysis()
,
get_track_audio_features()
,
get_user_audio_features()
Get Spotify catalog information about an artist’s top tracks by country.
get_artist_top_tracks( id, market = "US", authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_artist_top_tracks( id, market = "US", authorization = get_spotify_access_token(), include_meta_info = FALSE )
id |
The Spotify ID for the artist. |
market |
Required. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing artist data. See https://developer.spotify.com/documentation/web-api/reference/artists/get-several-artists/ for more information.
Other artist functions:
get_artist()
,
get_artist_albums()
,
get_artists()
,
get_my_followed_artists()
,
get_related_artists()
Get Spotify catalog information for multiple artists identified by their Spotify IDs.
get_artists( ids, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_artists( ids, authorization = get_spotify_access_token(), include_meta_info = FALSE )
ids |
Required. A character vector of the Spotify IDs for the artists. Maximum: 50 IDs. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing artist data. See https://developer.spotify.com/documentation/web-api/reference/artists/get-several-artists/ for more information.
Other artist functions:
get_artist()
,
get_artist_albums()
,
get_artist_top_tracks()
,
get_my_followed_artists()
,
get_related_artists()
Get a list of Spotify categories
get_categories(authorization = get_spotify_access_token(), df = TRUE)
get_categories(authorization = get_spotify_access_token(), df = TRUE)
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details.
Defaults to |
df |
Should the results be formatted as a data frame?
If |
Returns a data frame of results containing album data. See https://developer.spotify.com/documentation/web-api/reference/browse/get-list-categories/ for more information.
Get a single category used to tag items in Spotify (on, for example, the Spotify player’s “Browse” tab).
get_category( category_id, country = NULL, locale = NULL, authorization = get_spotify_access_token() )
get_category( category_id, country = NULL, locale = NULL, authorization = get_spotify_access_token() )
category_id |
Required. The Spotify ID for the category. |
country |
Optional. A country: an ISO 3166-1 alpha-2 country code. Provide this parameter to ensure that the category exists for a particular country. |
locale |
Optional. The desired language, consisting of an
ISO 639-1 language code and an
ISO 3166-1 alpha-2 country code, joined by an underscore. For example: |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
Returns a list of results containing category information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Get a list of Spotify playlists tagged with a particular category
get_category_playlists( category_id = "party", country = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_category_playlists( category_id = "party", country = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
category_id |
Required. The Spotify ID for the category. |
country |
Optional. A country: an ISO 3166-1 alpha-2 country code. |
limit |
Optional. The maximum number of items to return.
Defaults to |
offset |
Optional. The index of the first item to return.
Defaults to |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details.
Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing category playlists. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
## Not run: get_category_playlists('party', country = 'BR') ## End(Not run)
## Not run: get_category_playlists('party', country = 'BR') ## End(Not run)
Get a list of Spotify featured playlists (as shown, for example, on a Spotify player’s ‘Browse’ tab)
get_featured_playlists( locale = NULL, country = NULL, timestamp = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_featured_playlists( locale = NULL, country = NULL, timestamp = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
locale |
Optional. The desired language, consisting of an
ISO 639-1 language code and
an ISO 3166-1 alpha-2 country code, joined by an underscore. For example: |
country |
Optional. A country: an ISO 3166-1 alpha-2 country code. Provide this parameter if you want the list of returned items to be relevant to a particular country. If omitted, the returned items will be relevant to all countries. |
timestamp |
Optional.
A timestamp in ISO 8601 format:
|
limit |
Optional. The maximum number of items to return.
Default to |
offset |
Optional. The index of the first item to return.
Defaults to |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing featured playlists.
See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
## Not run: ## Get Flemish-Dutch playlists from Belgium: get_featured_playlists( country = 'BE', locale = "nl_BE" ) ## End(Not run)
## Not run: ## Get Flemish-Dutch playlists from Belgium: get_featured_playlists( country = 'BE', locale = "nl_BE" ) ## End(Not run)
Get Spotify Catalog information about artists belonging to a given genre.
get_genre_artists( genre = character(), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token() )
get_genre_artists( genre = character(), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token() )
genre |
Required. |
market |
Optional. |
limit |
Optional. |
offset |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts
service. See the Web API authorization guide for more details.
Defaults to |
A data frame of the artists belonging to the genre with data and metadata about the artists in a tibble.
Other musicology functions:
get_artist_audio_features()
,
get_playlist_audio_features()
,
get_track_audio_analysis()
,
get_track_audio_features()
,
get_user_audio_features()
## Not run: get_genre_artists('wonky') ## End(Not run)
## Not run: get_genre_artists('wonky') ## End(Not run)
Get Spotify Catalog information about artists belonging to a given label.
get_label_artists( label = character(), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token() )
get_label_artists( label = character(), market = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token() )
label |
Required. |
market |
Optional. |
limit |
Optional. |
offset |
Optional. |
authorization |
Required.
A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details. Defaults to |
A data frame with the label information of the artists.
## Not run: get_label_artists('brainfeeder') ## End(Not run)
## Not run: get_label_artists('brainfeeder') ## End(Not run)
Get information about the user’s current playback state, including track, track progress, and active device.
get_my_current_playback( market = NULL, authorization = get_spotify_authorization_code() )
get_my_current_playback( market = NULL, authorization = get_spotify_authorization_code() )
market |
An ISO 3166-1 alpha-2 country code or the string |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide
for more details.
Defaults to |
Returns a list containing user playback information. See the official Spotify Web API documentation for more information.
Other player functions:
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Get the object currently being played on the user’s Spotify account.
get_my_currently_playing( market = NULL, authorization = get_spotify_authorization_code() )
get_my_currently_playing( market = NULL, authorization = get_spotify_authorization_code() )
market |
An ISO 3166-1 alpha-2 country code or the string |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details.
Defaults to |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Other player functions:
get_my_current_playback()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Get information about a user’s available devices.
get_my_devices(authorization = get_spotify_authorization_code())
get_my_devices(authorization = get_spotify_authorization_code())
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
Returns a data frame of results containing user device information.
See the official Spotify Web API
documentation for more information.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Get the current user’s followed artists.
get_my_followed_artists( limit = 20, after = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_followed_artists( limit = 20, after = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
limit |
Optional. The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50. |
after |
Optional. The last artist ID retrieved from the previous request. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
A data frame containing my followed artists with some of full information about the followed artists.
Other artist functions:
get_artist()
,
get_artist_albums()
,
get_artist_top_tracks()
,
get_artists()
,
get_related_artists()
Get a list of the playlists owned or followed by the current Spotify user.
get_my_playlists( limit = 20, offset = 0, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_playlists( limit = 20, offset = 0, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
limit |
Optional. |
offset |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
Get detailed profile information about the current user (including the current user’s username).
get_my_profile(authorization = get_spotify_authorization_code())
get_my_profile(authorization = get_spotify_authorization_code())
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Get Current User's Recently Played Tracks
get_my_recently_played( limit = 20, after = NULL, before = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_recently_played( limit = 20, after = NULL, before = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
limit |
Optional. The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50. |
after |
Optional. A Unix timestamp in milliseconds. Returns all items after
(but not including) this cursor position.
If |
before |
Optional. A Unix timestamp in milliseconds. Returns all items before
(but not including) this cursor position. If |
authorization |
Required. A valid access token from the Spotify Accounts service. See the
Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a list or data frame of results containing the most recently played tracks for the current user.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Get a list of the albums saved in the current Spotify user’s ‘Your Music’ library.
get_my_saved_albums( limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_saved_albums( limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
limit |
Optional. |
offset |
Optional. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/library/get-users-saved-albums/ for more information.
Get a list of the songs saved in the current Spotify user’s ‘Your Music’ library.
get_my_saved_tracks( limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_saved_tracks( limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
limit |
Optional. |
offset |
Optional. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Get the current user’s top artists or tracks based on calculated affinity.
get_my_top_artists_or_tracks( type = "artists", limit = 20, offset = 0, time_range = "medium_term", authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_my_top_artists_or_tracks( type = "artists", limit = 20, offset = 0, time_range = "medium_term", authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
type |
Required. The type of entity to return.
Defaults to |
limit |
Optional. |
offset |
Optional. |
time_range |
Optional. Over what time frame the affinities are computed.
Valid values: long_term (calculated from several years of data and including all new data
as it becomes available), |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing track or album data. See the official API documentation for more information.
Other personalization functions:
get_recommendations()
,
get_recommendations_all()
Get a list of new album releases featured in Spotify (shown, for example, on a Spotify player’s “Browse” tab).
get_new_releases( country = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_new_releases( country = NULL, limit = 20, offset = 0, authorization = get_spotify_access_token(), include_meta_info = FALSE )
country |
Optional. A country: an ISO 3166-1 alpha-2 country code. Provide this parameter if you want the list of returned items to be relevant to a particular country. If omitted, the returned items will be relevant to all countries. |
limit |
Optional. The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50. |
offset |
Optional. The index of the first item to return. Default: 0 (the first object). Use with |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing new releases.
See https://developer.spotify.com/documentation/web-api/reference/#category-browse for more information.
## Not run: ## Get new Swedish music get_new_releases(country = 'SE', limit = 5) ## End(Not run)
## Not run: ## Get new Swedish music get_new_releases(country = 'SE', limit = 5) ## End(Not run)
Get a playlist owned by a Spotify user.
get_playlist( playlist_id, fields = NULL, market = NULL, authorization = get_spotify_access_token() )
get_playlist( playlist_id, fields = NULL, market = NULL, authorization = get_spotify_access_token() )
playlist_id |
Required. The Spotify ID for the playlist. |
fields |
Optional.
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: |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details. Both Public and Private playlists belonging to any user are retrievable on provision of a valid access token. Defaults to |
Returns a list containing the data about the playlist. See https://developer.spotify.com/console/get-playlist/ for more information.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_user_playlists()
,
remove_tracks_from_playlist()
,
tidy()
This function returns the popularity and audio features for every song for a given set of playlists on Spotify
get_playlist_audio_features( username, playlist_uris, authorization = get_spotify_access_token() )
get_playlist_audio_features( username, playlist_uris, authorization = get_spotify_access_token() )
username |
String of Spotify username. Can be found on the Spotify app. |
playlist_uris |
Character vector of Spotify playlist uris. Can be found within the Spotify App |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
A data frame with the audio features and popularity variables of playlists.
Other musicology functions:
get_artist_audio_features()
,
get_genre_artists()
,
get_track_audio_analysis()
,
get_track_audio_features()
,
get_user_audio_features()
## Not run: playlist_username <- 'spotify' playlist_uris <- c('37i9dQZF1E9T1oFsQFg98K', '37i9dQZF1CyQNOI21QVf3p') playlist_audio_features <- get_playlist_audio_features(playlist_username, playlist_uris) ## End(Not run)
## Not run: playlist_username <- 'spotify' playlist_uris <- c('37i9dQZF1E9T1oFsQFg98K', '37i9dQZF1CyQNOI21QVf3p') playlist_audio_features <- get_playlist_audio_features(playlist_username, playlist_uris) ## End(Not run)
Get the current image associated with a specific playlist.
get_playlist_cover_image( playlist_id, authorization = get_spotify_authorization_code() )
get_playlist_cover_image( playlist_id, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID for the playlist. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
Returns a data frame of results containing playlist cover image information. See the official Spotify Web API Documentation for more information.
Get full details of the tracks of a playlist owned by a Spotify user.
get_playlist_tracks( playlist_id, fields = NULL, limit = 100, offset = 0, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_playlist_tracks( playlist_id, fields = NULL, limit = 100, offset = 0, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
playlist_id |
Required. The Spotify ID for the playlist. |
fields |
Optional. 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 creation date and album information: |
limit |
Optional. |
offset |
Optional. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details. Both Public and Private playlists belonging to any user are retrievable on provision of a valid access token. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-current-users-profile/ for more information.
Other track functions:
get_album_tracks()
,
get_track()
,
get_tracks()
All parameters are optional, but at least one of
seed_artists
, seed_tracks
and seed_genres
must be given.
get_recommendations( limit = 20, market = NULL, seed_artists = NULL, seed_genres = NULL, seed_tracks = NULL, max_acousticness = NULL, max_danceability = NULL, max_duration_ms = NULL, max_energy = NULL, max_instrumentalness = NULL, max_key = NULL, max_liveness = NULL, max_loudness = NULL, max_mode = NULL, max_popularity = NULL, max_speechiness = NULL, max_tempo = NULL, max_time_signature = NULL, max_valence = NULL, min_acousticness = NULL, min_danceability = NULL, min_duration_ms = NULL, min_energy = NULL, min_instrumentalness = NULL, min_key = NULL, min_liveness = NULL, min_loudness = NULL, min_mode = NULL, min_popularity = NULL, min_speechiness = NULL, min_tempo = NULL, min_time_signature = NULL, min_valence = NULL, target_acousticness = NULL, target_danceability = NULL, target_duration_ms = NULL, target_energy = NULL, target_instrumentalness = NULL, target_key = NULL, target_liveness = NULL, target_loudness = NULL, target_mode = NULL, target_popularity = NULL, target_speechiness = NULL, target_tempo = NULL, target_time_signature = NULL, target_valence = NULL, authorization = get_spotify_access_token(), include_seeds_in_response = FALSE )
get_recommendations( limit = 20, market = NULL, seed_artists = NULL, seed_genres = NULL, seed_tracks = NULL, max_acousticness = NULL, max_danceability = NULL, max_duration_ms = NULL, max_energy = NULL, max_instrumentalness = NULL, max_key = NULL, max_liveness = NULL, max_loudness = NULL, max_mode = NULL, max_popularity = NULL, max_speechiness = NULL, max_tempo = NULL, max_time_signature = NULL, max_valence = NULL, min_acousticness = NULL, min_danceability = NULL, min_duration_ms = NULL, min_energy = NULL, min_instrumentalness = NULL, min_key = NULL, min_liveness = NULL, min_loudness = NULL, min_mode = NULL, min_popularity = NULL, min_speechiness = NULL, min_tempo = NULL, min_time_signature = NULL, min_valence = NULL, target_acousticness = NULL, target_danceability = NULL, target_duration_ms = NULL, target_energy = NULL, target_instrumentalness = NULL, target_key = NULL, target_liveness = NULL, target_loudness = NULL, target_mode = NULL, target_popularity = NULL, target_speechiness = NULL, target_tempo = NULL, target_time_signature = NULL, target_valence = NULL, authorization = get_spotify_access_token(), include_seeds_in_response = FALSE )
limit |
Optional. The target size of the list of recommended tracks. For seeds with unusually small pools or when highly restrictive filtering is applied, it may be impossible to generate the requested number of recommended tracks. Debugging information for such cases is available in the response. Default: 20. Minimum: 1. Maximum: 100. |
market |
Optional.
An ISO 3166-1 alpha-2 country code or the string |
seed_artists |
A character vector of
Spotify IDs for seed artists. Up to 5 seed values may be provided in any combination of |
seed_genres |
A character vector of any genres in the set of
available genre seeds. Up to 5 seed values may be provided in any combination of |
seed_tracks |
A character vector of
Spotify IDs for a seed track. Up to 5 seed values may be provided in any combination of |
max_acousticness |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' acousticness. |
max_danceability |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' danceability. |
max_duration_ms |
Optional. Integer indicating a hard ceiling on recommended tracks' duration in milliseconds. |
max_energy |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' energy. |
max_instrumentalness |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' instrumentalness. |
max_key |
Optional. Integer ranging from 1 to 12 indicating a hard ceiling on recommended tracks' key. |
max_liveness |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' liveness. |
max_loudness |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' loudness. |
max_mode |
Optional. Integer ranging from 0 to 1 indicating a hard ceiling on recommended tracks' mode. |
max_popularity |
Optional. Integer ranging between 0 and 100 indicating a hard ceiling on recommended tracks' popularity. |
max_speechiness |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' speechiness. |
max_tempo |
Optional. Numeric value indicating a hard ceiling on recommended tracks' tempo. |
max_time_signature |
Optional. Integer indicating a hard ceiling on recommended tracks' time signature. |
max_valence |
Optional. Numeric value between 0 and 1 indicating a hard ceiling on recommended tracks' valence. |
min_acousticness |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' acousticness. |
min_danceability |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' danceability. |
min_duration_ms |
Optional. Integer indicating a hard floor on recommended tracks' duration in milliseconds. |
min_energy |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' energy. |
min_instrumentalness |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' instrumentalness. |
min_key |
Optional. Integer ranging from 1 to 12 indicating a hard floor on recommended tracks' key. |
min_liveness |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' liveness. |
min_loudness |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' loudness. |
min_mode |
Optional. Integer ranging from 0 to 1 indicating a hard floor on recommended tracks' mode. |
min_popularity |
Optional. Integer ranging between 0 and 100 indicating a hard floor on recommended tracks' popularity. |
min_speechiness |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' speechiness. |
min_tempo |
Optional. Numeric value indicating a hard floor on recommended tracks' tempo. |
min_time_signature |
Optional. Integer indicating a hard floor on recommended tracks' time signature. |
min_valence |
Optional. Numeric value between 0 and 1 indicating a hard floor on recommended tracks' valence. |
target_acousticness |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' acousticness. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_danceability |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' danceability. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_duration_ms |
Optional. Integer indicating a target value for recommended tracks' duration in milliseconds. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_energy |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' energy. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_instrumentalness |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' instrumentalness. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_key |
Optional. Integer ranging from 1 to 12 indicating a target value for recommended tracks' key. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_liveness |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' liveness. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_loudness |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' loudness. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_mode |
Optional. Integer ranging from 0 to 1 indicating a target value for recommended tracks' mode. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_popularity |
Optional. Integer ranging between 0 and 100 indicating a target value for recommended tracks' popularity. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_speechiness |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' speechiness. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_tempo |
Optional. Numeric value indicating a target value for recommended tracks' tempo. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_time_signature |
Optional. Integer indicating a target value for recommended tracks' time signature. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
target_valence |
Optional. Numeric value between 0 and 1 indicating a target value for recommended tracks' valence. Tracks with the attribute values nearest to the target values will be preferred. For example, you might request |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_seeds_in_response |
Optional. Boolean for whether to include seed object in response. Defaults to |
Returns a data frame of results recommendations. See the official Spotify Web API documentation for more information.
Other personalization functions:
get_my_top_artists_or_tracks()
,
get_recommendations_all()
## Not run: get_recommendations(market = 'SE', seed_genres = 'rock') ## End(Not run)
## Not run: get_recommendations(market = 'SE', seed_genres = 'rock') ## End(Not run)
Get recommendations for a submitted vector of track IDs, with no limit on the number of seed tracks
get_recommendations_all(track_ids, valence = NULL)
get_recommendations_all(track_ids, valence = NULL)
track_ids |
A vector containing the IDs of the tracks you'd like recommendations for |
valence |
The target valence for the recommendations |
This is a wrapper for the get_recommendations
function, which provides a workaround for
the limit of 5 seed tracks per recommendation call. The function splits a supplied vector
of track IDs into subsets of length 5, then applies a get_recommendations
call,
5 tracks at a time. This should generate a data frame of recommended tracks, with
length equal to the supplied vector of track ids.
Returns a data frame containing binded recommendations from the Spotify API in a single data frame.
Other personalization functions:
get_my_top_artists_or_tracks()
,
get_recommendations()
## Not run: get_recommendations_all( track_ids = c("5VIpLopHgolKcSSj7JPCMA", "3QRGYDFFUVb4qneE4DX1gR") ) ## End(Not run)
## Not run: get_recommendations_all( track_ids = c("5VIpLopHgolKcSSj7JPCMA", "3QRGYDFFUVb4qneE4DX1gR") ) ## End(Not run)
Get Spotify catalog information for a single show.
get_show(id, market = NULL, authorization = get_spotify_authorization_code())
get_show(id, market = NULL, authorization = get_spotify_authorization_code())
id |
The Spotify ID for the show. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
Returns a data frame of results containing show data. See the official documentation for more information.
Get Spotify catalog information about an show's episodes. Optional parameters can be used to limit the number of episodes returned.
get_show_episodes( id, limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_show_episodes( id, limit = 20, offset = 0, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
id |
Required. The Spotify ID for the show. |
limit |
Optional. |
offset |
Optional. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the
Web API authorization Guide for more details.
Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing show data. See the official API documentation for more information.
Get Spotify catalog information for multiple shows identified by their Spotify IDs.
get_shows( ids, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_shows( ids, market = NULL, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
ids |
Required. A character vector of the Spotify IDs for the shows. Maximum: 20 IDs. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing show data. See https://developer.spotify.com/documentation/web-api/reference/shows/get-several-shows/ for more information.
This function creates a Spotify access token.
get_spotify_access_token( client_id = Sys.getenv("SPOTIFY_CLIENT_ID"), client_secret = Sys.getenv("SPOTIFY_CLIENT_SECRET") )
get_spotify_access_token( client_id = Sys.getenv("SPOTIFY_CLIENT_ID"), client_secret = Sys.getenv("SPOTIFY_CLIENT_SECRET") )
client_id |
Defaults to System Environment variable "SPOTIFY_CLIENT_ID" |
client_secret |
Defaults to System Environment variable "SPOTIFY_CLIENT_SECRET" |
The Spotify Access Token of the current user or a meaningful error message.
Other authentication functions:
get_spotify_authorization_code()
## Not run: token <- get_spotify_access_token() ## End(Not run)
## Not run: token <- get_spotify_access_token() ## End(Not run)
This function creates a Spotify authorization code.
See httr::oauth2.0_token
.
get_spotify_authorization_code( client_id = Sys.getenv("SPOTIFY_CLIENT_ID"), client_secret = Sys.getenv("SPOTIFY_CLIENT_SECRET"), scope = scopes() )
get_spotify_authorization_code( client_id = Sys.getenv("SPOTIFY_CLIENT_ID"), client_secret = Sys.getenv("SPOTIFY_CLIENT_SECRET"), scope = scopes() )
client_id |
Defaults to System Environment variable "SPOTIFY_CLIENT_ID" |
client_secret |
Defaults to System Environment variable "SPOTIFY_CLIENT_SECRET" |
scope |
Space delimited string of spotify scopes, found here: https://developer.spotify.com/documentation/general/guides/scopes/. All scopes are selected by default |
The Spotify Web API Token2.0 reference class object (see
httr::oauth2.0_token
), or an error message.
Other authentication functions:
get_spotify_access_token()
## Not run: authorization <- get_spotify_authorization_code() ## End(Not run)
## Not run: authorization <- get_spotify_authorization_code() ## End(Not run)
Get Spotify catalog information for a single track identified by its unique Spotify ID.
get_track(id, market = NULL, authorization = get_spotify_access_token())
get_track(id, market = NULL, authorization = get_spotify_access_token())
id |
The Spotify ID for the track. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
Returns a data frame of results containing track data. See https://developer.spotify.com/documentation/web-api/reference/tracks/get-several-tracks/ for more information.
Other track functions:
get_album_tracks()
,
get_playlist_tracks()
,
get_tracks()
Get a detailed audio analysis for a single track identified by its unique Spotify ID.
get_track_audio_analysis(id, authorization = get_spotify_access_token())
get_track_audio_analysis(id, authorization = get_spotify_access_token())
id |
The Spotify ID for the track. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
Returns a data frame of results containing track audio analysis data. See https://developer.spotify.com/documentation/web-api/reference/tracks/get-audio-analysis/ for more information.
Other musicology functions:
get_artist_audio_features()
,
get_genre_artists()
,
get_playlist_audio_features()
,
get_track_audio_features()
,
get_user_audio_features()
Get audio feature information for up to 100 tracks identified by their unique Spotify IDs.
get_track_audio_features(ids, authorization = get_spotify_access_token())
get_track_audio_features(ids, authorization = get_spotify_access_token())
ids |
Required. A comma-separated list of the Spotify IDs of the tracks. Maximum: 100 IDs. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
Returns a data frame of results containing track audio features data. See https://developer.spotify.com/documentation/web-api/reference/tracks/get-several-audio-features/ for more information.
Other musicology functions:
get_artist_audio_features()
,
get_genre_artists()
,
get_playlist_audio_features()
,
get_track_audio_analysis()
,
get_user_audio_features()
Get Spotify catalog information for a single track identified by its unique Spotify ID.
get_tracks( ids, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
get_tracks( ids, market = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
ids |
The Spotify ID for the track. |
market |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
Returns a data frame of results containing track data. See https://developer.spotify.com/documentation/web-api/reference/tracks/get-several-tracks/ for more information.
Other track functions:
get_album_tracks()
,
get_playlist_tracks()
,
get_track()
Get audio feature information for a users' playlists.
get_user_audio_features( username = NULL, authorization = get_spotify_access_token() )
get_user_audio_features( username = NULL, authorization = get_spotify_access_token() )
username |
Required. String of Spotify username. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details.
Defaults to |
Returns a data frame of results containing track audio features data. See the Spotify Web API documentation for more information.
Other musicology functions:
get_artist_audio_features()
,
get_genre_artists()
,
get_playlist_audio_features()
,
get_track_audio_analysis()
,
get_track_audio_features()
Get a list of the playlists owned or followed by a Spotify user.
get_user_playlists( user_id, limit = 20, offset = 0, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
get_user_playlists( user_id, limit = 20, offset = 0, authorization = get_spotify_authorization_code(), include_meta_info = FALSE )
user_id |
Required. The user's Spotify user ID. |
limit |
Optional. |
offset |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
Returns a data frame of results containing user playlist information. See the official Spotify Web API documentation for more information.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
remove_tracks_from_playlist()
,
tidy()
Get public profile information about a Spotify user.
get_user_profile(user_id, authorization = get_spotify_access_token())
get_user_profile(user_id, authorization = get_spotify_access_token())
user_id |
Required. The user's Spotify user ID. |
authorization |
Required.
A valid access token from the Spotify Accounts service. See the Web API authorization guide for more details. Defaults to |
Returns a data frame of results containing user profile information. See https://developer.spotify.com/documentation/web-api/reference/users-profile/get-users-profile/ for more information.
Pause playback on the user’s device.
pause_my_playback( device_id = NULL, authorization = get_spotify_authorization_code() )
pause_my_playback( device_id = NULL, authorization = get_spotify_authorization_code() )
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Remove one or more tracks from a user’s playlist.
remove_tracks_from_playlist( playlist_id, uris, authorization = get_spotify_authorization_code() )
remove_tracks_from_playlist( playlist_id, uris, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID for the playlist. |
uris |
Optional. A character vector of Spotify track URIs to add. For example |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the
DELETE
request, with a meaningful error message if the operation was not successful.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
tidy()
A vector of valid scopes for get_spotify_authorization_code
.
scopes(exclude_SOA = TRUE)
scopes(exclude_SOA = TRUE)
exclude_SOA |
Boolean indicating whether to exclude 'Spotify Open Access' (SOA) scopes, which are only available for approved partners. Defaults to |
A character vector of valid authorization scopes for the Spotify Web API. See Spotify Web API Authorization Scopes
scopes()
scopes()
Get Spotify Catalog information about artists, albums, tracks or playlists that match a keyword string. For more information see the official documentation.
search_spotify( q, type = c("album", "artist", "playlist", "track", "show", "episode"), market = NULL, limit = 20, offset = 0, include_external = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
search_spotify( q, type = c("album", "artist", "playlist", "track", "show", "episode"), market = NULL, limit = 20, offset = 0, include_external = NULL, authorization = get_spotify_access_token(), include_meta_info = FALSE )
q |
Required. |
type |
A character vector of item types to search across. |
market |
Optional (except for shows and episodes). |
limit |
Optional. |
offset |
Optional. |
include_external |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization guide for more details. Defaults to |
include_meta_info |
Optional. Boolean indicating whether to include full result, with meta information such as |
A tibble with detailed information about the searched album, artist, playlist, track or their combination.
## Not run: search_spotify('radiohead', 'artist') ## End(Not run)
## Not run: search_spotify('radiohead', 'artist') ## End(Not run)
Seeks to the given position in the user’s currently playing track.
seek_to_position( position_ms, device_id = NULL, authorization = get_spotify_authorization_code() )
seek_to_position( position_ms, device_id = NULL, authorization = get_spotify_authorization_code() )
position_ms |
Required. Integer indicating the position in milliseconds to seek to. Must be a positive number. Passing in a position that is greater than the length of the track will cause the player to start playing the next song. |
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the POST
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Set the repeat mode for the user’s playback. Options are repeat-track, repeat-context, and off.
set_my_repeat_mode( state, device_id = NULL, authorization = get_spotify_authorization_code() )
set_my_repeat_mode( state, device_id = NULL, authorization = get_spotify_authorization_code() )
state |
Required. |
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Set the volume for the user’s current playback device.
set_my_volume( volume_percent = 50, device_id = NULL, authorization = get_spotify_authorization_code() )
set_my_volume( volume_percent = 50, device_id = NULL, authorization = get_spotify_authorization_code() )
volume_percent |
Required integer value. The volume to set.
Must be a value from 0 to 100 inclusive. Defaults to |
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide
for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Skips to next track in the user’s queue.
skip_my_playback( device_id = NULL, authorization = get_spotify_authorization_code() )
skip_my_playback( device_id = NULL, authorization = get_spotify_authorization_code() )
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the POST
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
Skips to previous track in the user’s queue.
skip_my_playback_previous( device_id = NULL, authorization = get_spotify_authorization_code() )
skip_my_playback_previous( device_id = NULL, authorization = get_spotify_authorization_code() )
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the POST
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
start_my_playback()
,
toggle_my_shuffle()
,
transfer_my_playback()
spotifyr
packageA Quick and Easy Wrapper for Pulling Track Audio Features from Spotify's Web API in Bulk
See the README on GitHub
Retrieve information related to artists.
get_artist
: Get the data of a single artist.get_artists
: Get the data of multiple artist.get_related_artists
: Get that of related artist to an original artist.get_artist_albums
: Get artists who appear on an album.
Retrieve information related to individual song recordings (songs, concerts).
get_track
get_tracks
get_playlist_tracks
Retrieve information about albums.
See also get_album_tracks
.
Work with playlists.add_tracks_to_playlist
change_playlist_details
get_user_playlists
Interact with the user's devices and players.
Functions related to the contents of the music.get_track_audio_analysis
get_artist_audio_features
get_playlist_audio_features
get_user_audio_features
get_genre_artists
Search for an artist, song or other keyword.
The main function is search_spotify
.
Helper functions to provide authentication function for requests.
Never reveal in public documents, markdown files the returned values of these
functions: get_spotify_authorization_code
get_spotify_access_token
.
Maintainer: Daniel Antal [email protected] (ORCID)
Authors:
Charlie Thompson [email protected]
Josiah Parry [email protected] (ORCID)
Donal Phipps [email protected]
Tom Wolff [email protected]
Other contributors:
Stephen Holsenbeck [contributor]
Peter Harrison [contributor]
Useful links:
Skips to previous track in the user’s queue.
start_my_playback( device_id = NULL, context_uri = NULL, uris = NULL, offset = NULL, position_ms = NULL, authorization = get_spotify_authorization_code() )
start_my_playback( device_id = NULL, context_uri = NULL, uris = NULL, offset = NULL, position_ms = NULL, authorization = get_spotify_authorization_code() )
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
context_uri |
Optional. String of the Spotify URI of the context to play. Valid contexts are albums, artists, playlists. Example |
uris |
Optional. A character vector of the Spotify track URIs to play.
For example: |
offset |
Optional. A named list indicating from where the context playback should start. Only available when |
position_ms |
Optional. Integer indicating from what position to start playback. Must be a positive number. Passing in a position that is greater than the length of the track will cause the player to start playing the next song. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the POST
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
toggle_my_shuffle()
,
transfer_my_playback()
tidy
extracts and tidies the data frame containing track level
information that is returned from get_playlist
as a tibble.
tidy(x, ...) ## S3 method for class 'playlist' tidy(x, ...) ## S3 method for class 'playlist' print(x, ...)
tidy(x, ...) ## S3 method for class 'playlist' tidy(x, ...) ## S3 method for class 'playlist' print(x, ...)
x |
A playlist object generated from |
... |
Unused. |
Return or print a tidy version a tibble containing the track level
information that is returned from get_playlist
.
Other playlist functions:
add_tracks_to_playlist()
,
change_playlist_details()
,
check_users_following()
,
create_playlist()
,
get_my_playlists()
,
get_playlist()
,
get_user_playlists()
,
remove_tracks_from_playlist()
## Not run: fall <- get_playlist("4GSV6uJzlbtTCPJhnVU1o8") tidy(fall) print(fall) ## End(Not run)
## Not run: fall <- get_playlist("4GSV6uJzlbtTCPJhnVU1o8") tidy(fall) print(fall) ## End(Not run)
Toggle shuffle on or off for user’s playback.
toggle_my_shuffle( state, device_id = NULL, authorization = get_spotify_authorization_code() )
toggle_my_shuffle( state, device_id = NULL, authorization = get_spotify_authorization_code() )
state |
Required. |
device_id |
Optional. The id of the device this command is targeting. If not supplied, the user’s currently active device is the target. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
transfer_my_playback()
Transfer playback to a new device and determine if it should start playing.
transfer_my_playback( device_ids, play = FALSE, authorization = get_spotify_authorization_code() )
transfer_my_playback( device_ids, play = FALSE, authorization = get_spotify_authorization_code() )
device_ids |
Required. A character vector containing the ID of the device this on which playback should be started/transferred. Note: only a single device_id is currently supported. |
play |
Optional. |
authorization |
Required. A valid access token from the Spotify Accounts service.
See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the PUT
request, with a meaningful
error message if the operation was not successful.
Other player functions:
get_my_current_playback()
,
get_my_currently_playing()
,
get_my_devices()
,
get_my_recently_played()
,
pause_my_playback()
,
seek_to_position()
,
set_my_repeat_mode()
,
skip_my_playback()
,
skip_my_playback_previous()
,
start_my_playback()
,
toggle_my_shuffle()
Remove Current User from Followers of Playlist.
unfollow_playlist( playlist_id, authorization = get_spotify_authorization_code() )
unfollow_playlist( playlist_id, authorization = get_spotify_authorization_code() )
playlist_id |
Required. The Spotify ID of the playlist that is to be no longer followed. |
authorization |
Required. A valid access token from the Spotify Accounts service. See the Web API authorization Guide for more details. Defaults to |
The response from the Spotify Web API on the DELETE
request, with a meaningful
error message if the operation was not successful.
Assertions are made to give early and precise error messages for wrong API call parameters.
validate_parameters( artists_or_tracks = NULL, artist_or_user = NULL, market = NULL, country = NULL, limit = NULL, offset = NULL, locale = NULL, volume_percent = NULL, time_range = NULL, position_ms = NULL, state = NULL, include_meta_info = NULL )
validate_parameters( artists_or_tracks = NULL, artist_or_user = NULL, market = NULL, country = NULL, limit = NULL, offset = NULL, locale = NULL, volume_percent = NULL, time_range = NULL, position_ms = NULL, state = NULL, include_meta_info = NULL )
artists_or_tracks |
The type parameter must be either 'artists' or 'tracks'." |
artist_or_user |
"The type parameter must be either 'artist' or 'user'." |
market |
Optional. |
country |
Optional. |
limit |
Optional. The maximum number of items to return.
Default to |
offset |
Optional. The index of the first item to return.
Defaults to |
locale |
Optional. The desired language, consisting of an
ISO 639-1 language code and
an ISO 3166-1 alpha-2 country code, joined by an underscore. For example: |
volume_percent |
Required integer value. The volume to set.
Must be a value from 0 to 100 inclusive. Defaults to |
time_range |
Optional. Over what time frame the affinities are computed.
Valid values: long_term (calculated from several years of data and including all new data
as it becomes available), |
position_ms |
Optional. Integer indicating from what position to start playback. Must be a positive number. Passing in a position that is greater than the length of the track will cause the player to start playing the next song. |
state |
The state parameter must be exactly one of |
include_meta_info |
Optional. Boolean indicating whether to include full result,
with meta information such as |
These assertions are called from various wrapper functions. However, you can also call this function directly to make sure that you are adding (programatically) the correct parameters to a call.
All validate_parameters
parameters default to NULL
.
Asserts the correct parameter values for any values that are not NULL
.
A boolean if the parameter matches the Spotify Web API parameter range.