-
Notifications
You must be signed in to change notification settings - Fork 12
API
- spotify.Session
- Properties
- spotify.AudioPlayer
- Methods
- Events
- spotify.Playlist
- Methods
- Properties
- spotify.Album
- Properties
- spotify.Artist
- Properties
- spotify.Track
- Properties
Authenticate the user with the Spotify API
spotify.authenticate(clientId, tokenExchangeURL, [scopes], callback)the clientId supplied by Spotify.
The URL for your token exchange service. See setting up a token exchange service
Custom scopes to request from the Spotify authentication service
The callback gets two arguments error and session. session is a spotify.Session object.
Search albums, artists or tracks. Return a maximum of 20 items. Use multiple requests with offset to receive more results.
spotify.search(query, searchType, [offset], session, callback)The query to search for.
this can be one of three strings:
-
artistto perform an artist search. -
albumto perform an album search. -
trackto perform a track search.
The starting index of the search results. If omitted the search will start from the first entry.
The spotify.Session object to use for authentication.
The callback gets two arguments error and result. result is an array of partial items. Each item has the following properties:
-
name. The name of the item. -
uri. The URI of the item.
Use the uri with the correct spotify object to promote a partial item to a full item.
For example (Get the largest image for an artist from the search results):
var session = ...a valid spotify.Session object...
var item = ...a single artist search item.....
spotify.Artist(item.uri, session, function(error, artist) {
var image = artist.largestImage;
console.log('Image URL: %s', image.imageURL);
console.log('Image aspect ratio: %f', image.aspect);
console.log('Image size: %s', image.aspect);
});Get an array of playlists for user with username.
spotify.getPlaylistsForUser(username, session, callback);The username of the user to request the playlists from.
The spotify.Session object to use for authentication.
The callback gets two arguments error and result. result is an array of partial items, see spotify.search for an explanation of partial items.
Normally a spotify.Session object is returned from spotify.authenticate() but you can use the spotify.Session object to store the session for later use. A session is valid for 24 hours after which the user will need to login again.
var session = spotify.Session({username: 'someUsername', credentials: 'AFD42....GD43'});The username of the user.
An access token to verify the session.
The constructor for a new spotify.AudioPlayer object.
spotify.AudioPlayer(companyName, appName, session, callback)Your company name
Your application name
The user's spotify.Session object.
The callback gets two arguments error and an spotify.AudioPlayer object, ready to start playing tracks.
These examples show how to construct a spotify.AudioPlayer and play a track.
spotify.AudioPlayer('Your-Company-Name', 'Your-App-Name', session, function(error, audioPlayer) {
audioPlayer.playURI('spotify:track:6JEK0CvvjDjjMUBFoXShNZ');
});Add an event listener to the audio player.
audioPlayer.addEventListener(event, listener)Play the audio track belonging to the supplied Spotify track URI.
audioPlayer.playURI(uri, callback)The callback gets one argument error. The error argument will be null if successful or an Error object if something went wrong.
Skip the track to the specified offset.
audioPlayer.seekToOffset(offset, callback)The callback gets one argument error. The error argument will be null if successful or an Error object if something went wrong.
Request the current playback status.
audioPlayer.getIsPlaying(callback)The callback gets two arguments error and status. The status value will be true if playing or false if paused / stopped.
Set the current playback status. This can be seen as a method for pausing / resuming playback.
audioPlayer.setIsPlaying(status, callback)The callback gets one argument error. The error argument will be null if successful or an Error object if something went wrong.
Request the playback volume.
audioPlayer.getVolume(callback)The callback gets two arguments error and volume. The volume value will be a numeric value between 0.0 and 1.0.
Set the playback volume.
audioPlayer.setVolume(volume, callback)The callback gets one argument error. The error argument will be null if successful or an Error object if something went wrong.
Request the current login status of the audio player.
audioPlayer.getLoggedIn(callback)The callback gets one argument error. The error argument will be null if successful or an Error object if something went wrong.
Request information about the track that is currently playing.
audioPlayer.getCurrentTrack(callback)The callback gets two arguments error and track. The track value will be an object literal with the track's metadata.
Request the current playback position.
audioPlayer.getCurrentPlaybackPosition(callback)The callback gets two arguments error and offset. The offset value will be a numeric value in seconds between 0.0 and the duration of the track.
This event is dispatched when the player has logged in.
This event is dispatched when the player is logged out.
This event is dispatched when the playback permission is lost. This happens mostly when the user plays a track on another device.
This event is dispatched whenever an error occurs in the audio player.
The listener method receives a single string argument error.
This event is dispatched when a message is sent by Spotify to the user. This message has to be shown to the user see the iOS SDK reference.
The listener method receives a single string argument message.
This event is dispatched when the playback status has changed.
The listener method receives a single boolean argument status.
This event is dispatched if the playback offset has changed "unnaturally".
The listener method receives a single Number argument offset.