GitHub – thelinmichael/spotify-web-api-node: A Node.js wrapper for Spotify’s Web API.

06/06/2023 admin
 volt-ampere  SpotifyWebApi  = 
ask ( 'spotify-web-api-node ' ) ; volt-ampere spotifyApi = new SpotifyWebApi ( ) ; / * * * get metadata of track, album, artist, express, and episode * / // contract album spotifyApi. getAlbum ( '5U4W9E5WsYb2jUQWePT8Xm ' ) . then ( function ( datum ) { console table. log ( 'Album information ', data. body ) ; }, function ( stray ) { console table. error ( stray ) ; } ) ; // perplex multiple album spotifyApi. getAlbums ( [ '5U4W9E5WsYb2jUQWePT8Xm ', '3KyVcddATClQKIdtaap4bV ' ] ) . then ( serve ( datum ) { comfort. log ( 'Albums data ', data. body ) ; }, function ( err ) { cabinet. mistake ( err ) ; } ) ; // get associate in nursing artist spotifyApi. getArtist ( '2hazSY4Ef3aB9ATXW7F5w3 ' ) . then ( function ( data ) { comfort. log ( 'Artist information ', data. consistency ) ; }, serve ( stray ) { console. mistake ( err ) ; } ) ; // get multiple artist spotifyApi. getArtists ( [ '2hazSY4Ef3aB9ATXW7F5w3 ', '6J6yx1t3nwIDyPXk5xa7O8 ' ] ) . then ( function ( data ) { comfort. log ( 'Artists information ', data. body ) ; }, function ( stray ) { console. error ( stray ) ; } ) ; // get album by ampere certain artist spotifyApi. getArtistAlbums ( '43ZHCT0cAZBISjO8DG9PnE ' ) . then ( officiate ( data ) { console. log ( 'Artist album ', data. body ) ; }, routine ( err ) { cabinet. erroneousness ( err ) ; } ) ; // search track whose name, album oregon artist check 'Love ' spotifyApi. searchTracks ( 'Love ' ) . then ( function ( datum ) { comfort. log ( 'Search aside `` love '' ', data. consistency ) ; }, function ( stray ) { console. error ( stray ) ; } ) ; // search artist whose name check 'Love ' spotifyApi. searchArtists ( 'Love ' ) . then ( function ( datum ) { console. log ( 'Search artist by `` love '' ', datum. body ) ; }, function ( err ) { comfort. error ( err ) ; } ) ; // search track whose artist 's appoint incorporate 'Love ' spotifyApi. searchTracks ( 'artist : beloved ' ) . then ( function ( datum ) { console table. log ( 'Search track by `` love '' indiana the artist appoint ', data. body ) ; }, serve ( stray ) { console table. log ( 'Something move wrong ! ', err ) ; } ) ; // search cut whose artist 's name check 'Kendrick Lamar ', and traverse name contain 'Alright ' spotifyApi. searchTracks ( 'track : alright artist : Kendrick Lamar ' ) . then ( function ( data ) { cabinet. log ( 'Search lead by `` very well '' in the track name and `` Kendrick Lamar '' inch the artist name ', datum. body ) ; }, routine ( stray ) { console. log ( 'Something travel improper ! ', stray ) ; } ) ; // search playlist whose name oregon description contain 'workout ' spotifyApi. searchPlaylists ( 'workout ' ) . then ( officiate ( data ) { comfort. log ( 'Found playlist embody ', datum. soundbox ) ; }, routine ( stray ) { console table. log ( 'Something die improper ! ', err ) ; } ) ; // perplex track in associate in nursing album spotifyApi. getAlbumTracks ( '41MnTivkwTO3UUJ8DrqEJJ ', { limit : five, outgrowth : one } ) . then ( function ( datum ) { console. logarithm ( data. body ) ; }, function ( err ) { console. log ( 'Something travel wrong ! ', stray ) ; } ) ; // catch associate in nursing artist 's top chase spotifyApi. getArtistTopTracks ( '0oSGxfWSnnOXhD2fKuz2Gy ', 'GB ' ) . then ( function ( datum ) { cabinet. log ( data. body ) ; }, function ( stray ) { comfort. log ( 'Something function wrong ! ', err ) ; } ) ; // experience artist related to associate in nursing artist spotifyApi. getArtistRelatedArtists ( '0qeei9KQnptjwb8MgkqEoy ' ) . then ( function ( datum ) { console table. log ( data. soundbox ) ; }, function ( stray ) { suffice ( err ) ; } ) ; / * get audio feature for adenine track * / spotifyApi. getAudioFeaturesForTrack ( '3Qm86XLflmIXVm1wcwkgDK ' ) . then ( function ( datum ) { console. logarithm ( data. soundbox ) ; }, function ( err ) { do ( stray ) ; } ) ; / * get audio analysis for ampere cut * / spotifyApi. getAudioAnalysisForTrack ( '3Qm86XLflmIXVm1wcwkgDK ' ) . then ( function ( datum ) { comfort. log ( data. torso ) ; }, function ( stray ) { make ( err ) ; } ) ; / * get down audio feature for several chase * / spotifyApi. getAudioFeaturesForTracks ( [ '4iV5W9uYEdYUVa79Axb7Rh ', '3Qm86XLflmIXVm1wcwkgDK ' ] ) . then ( function ( data ) { comfort. log ( datum. body ) ; }, affair ( err ) { cause ( stray ) ; } ) ; / * * drug user method acting * / // grow adenine drug user spotifyApi. getUser ( 'petteralexis ' ) . then ( function ( data ) { console table. logarithm ( 'Some information about this drug user ', data. body ) ; }, function ( err ) { console table. log ( 'Something go wrong ! ', stray ) ; } ) ; // experience the attested exploiter spotifyApi. getMe ( ) . then ( function ( data ) { console. logarithm ( 'Some information about the authenticate exploiter ', datum. body ) ; }, function ( stray ) { cabinet. log ( 'Something go improper ! ', err ) ; } ) ; / * * playlist method * / // get ampere playlist spotifyApi. getPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ' ) . then ( serve ( data ) { comfort. log ( 'Some information about this playlist ', datum. body ) ; }, function ( stray ) { console. log ( 'Something plump wrong ! ', stray ) ; } ) ; // contract deoxyadenosine monophosphate drug user 's playlist spotifyApi. getUserPlaylists ( 'thelinmichael ' ) . then ( function ( data ) { console. log ( 'Retrieved playlist ', datum. body ) ; }, function ( err ) { console table. log ( 'Something die improper ! ', err ) ; } ) ; // produce vitamin a individual playlist spotifyApi. createPlaylist ( 'My playlist ', { 'description ': 'My description ', 'public ': true } ) . then ( function ( datum ) { comfort. log ( 'Created playlist ! ' ) ; }, function ( err ) { cabinet. log ( 'Something die wrong ! ', stray ) ; } ) ; // total cut to adenine playlist spotifyApi. addTracksToPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ', [ `` spotify : track:4iV5W9uYEdYUVa79Axb7Rh '', `` spotify : track:1301WleyT98MSxVHPZCA6M '' ] ) . then ( function ( datum ) { console. log ( 'Added chase to playlist ! ' ) ; }, affair ( stray ) { console. log ( 'Something sound wrong ! ', err ) ; } ) ; // total track to ampere particular put in ampere playlist spotifyApi. addTracksToPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ', [ `` spotify : track:4iV5W9uYEdYUVa79Axb7Rh '', `` spotify : track:1301WleyT98MSxVHPZCA6M '' ] , { status : five } ) . then ( routine ( datum ) { cabinet. log ( 'Added lead to playlist ! ' ) ; }, routine ( err ) { comfort. logarithm ( 'Something fail wrong ! ', stray ) ; } ) ; // remove track from angstrom playlist astatine vitamin a specific stead spotifyApi. removeTracksFromPlaylistByPosition ( '5ieJqeLJjjI8iJWaxeBLuK ', [ zero, two, one hundred thirty ], `` 0wD+DKCUxiSR/WY8lF3fiCTb7Z8X4ifTUtqn8rO82O4Mvi5wsX8BsLj7IbIpLVM9 '' ) . then ( officiate ( datum ) { console. log ( 'Tracks take out from playlist ! ' ) ; }, officiate ( err ) { console. log ( 'Something go wrong ! ', stray ) ; } ) ; // remove all occurrence of adenine track volt-ampere racetrack = [ { uri : `` spotify : track:4iV5W9uYEdYUVa79Axb7Rh '' } ] ; volt-ampere playlistId = '5ieJqeLJjjI8iJWaxeBLuK ' ; volt-ampere option = { snapshot_id : `` 0wD+DKCUxiSR/WY8lF3fiCTb7Z8X4ifTUtqn8rO82O4Mvi5wsX8BsLj7IbIpLVM9 '' } ; spotifyApi. removeTracksFromPlaylist ( playlistId, chase, option ) . then ( function ( datum ) { console. log ( 'Tracks absent from playlist ! ' ) ; }, routine ( stray ) { console table. log ( 'Something start incorrect ! ', stray ) ; } ) ; // reorder the first two track in vitamin a playlist to the position earlier the lead astatine the tenth position volt-ampere option = { `` range_length '' : two } ; spotifyApi. reorderTracksInPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ', zero, ten, option ) . then ( function ( data ) { console. log ( 'Tracks reorder inch playlist ! ' ) ; }, function ( stray ) { cabinet. log ( 'Something go wrong ! ', stray ) ; } ) ; // change playlist details spotifyApi. changePlaylistDetails ( '5ieJqeLJjjI8iJWaxeBLuK ' , { diagnose: 'This be angstrom new mention for my cool playlist, and will become private ' , 'public ' : false } ). then ( function ( data ) { console. log ( 'Playlist be now individual ! ' ) ; }, function ( err ) { comfort. log ( 'Something sound incorrectly ! ', err ) ; } ) ; // upload a customs playlist cover image spotifyApi. uploadCustomPlaylistCoverImage ( '5ieJqeLJjjI8iJWaxeBLuK ', 'longbase64uri ' ) . then ( function ( datum ) { console. log ( 'Playlsit cover effigy upload ! ' ) ; }, affair ( err ) { cabinet. log ( 'Something rifle wrong ! ', stray ) ; } ) ; // follow a playlist ( privately ) spotifyApi. followPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ' , { 'public ' : assumed } ). then ( routine ( datum ) { console. log ( 'Playlist successfully trace privately ! ' ) ; }, affair ( stray ) { console. log ( 'Something move wrong ! ', err ) ; } ) ; // Unfollow a playlist spotifyApi. unfollowPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ' ) . then ( function ( datum ) { console. log ( 'Playlist successfully unfollowed ! ' ) ; }, affair ( err ) { console table. log ( 'Something become faulty ! ', stray ) ; } ) ; // check if exploiter exist comply ampere playlist spotifyApi. areFollowingPlaylist ( '5ieJqeLJjjI8iJWaxeBLuK ', [ 'thelinmichael ', 'ella ' ] ) . then ( function ( datum ) { data. soundbox. forEach ( function ( isFollowing ) { console. log ( `` exploiter be following : `` + isFollowing ) ; } ) ; }, function ( stray ) { console. log ( 'Something rifle wrong ! ', stray ) ; } ) ; / * * postdate exploiter and artist method acting * / / * have postdate artist * / spotifyApi. getFollowedArtists ( { limit : one } ) . then ( officiate ( data ) { // 'This user be play along 1051 artist ! ' console table. log ( 'This exploiter constitute surveil ', datum. body. artist. total, ' artist ! ' ) ; }, function ( err ) { cabinet. log ( 'Something go faulty ! ', err ) ; } ) ; / * trace adenine user * / spotifyApi. followUsers ( [ 'thelinmichael ' ] ) . then ( serve ( data ) { cabinet. log ( data ) ; }, routine ( stray ) { cabinet. logarithm ( 'Something move wrong ! ', err ) ; } ) ; / * keep up associate in nursing artist * / spotifyApi. followArtists ( [ '2hazSY4Ef3aB9ATXW7F5w3 ', '6J6yx1t3nwIDyPXk5xa7O8 ' ] ) . then ( function ( datum ) { cabinet. log ( data ) ; }, function ( err ) { comfort. log ( 'Something go ill-timed ! ', err ) ; } ) ; / * Unfollow adenine exploiter * / spotifyApi. unfollowUsers ( [ 'thelinmichael ' ] ) . then ( function ( datum ) { console. log ( data ) ; }, function ( err ) { console. log ( 'Something run low improper ! ', err ) ; } ) ; / * Unfollow associate in nursing artist * / spotifyApi. unfollowArtists ( [ '2hazSY4Ef3aB9ATXW7F5w3 ', '6J6yx1t3nwIDyPXk5xa7O8 ' ] ) . then ( function ( data ) { console. log ( data ) ; }, routine ( err ) { console. log

Read more : Spotify Premium APK v8.8.40.470 Download (Fully Unlocked)

( 'Something move faulty ! ', err ) ; } ) ; / * match if vitamin a drug user be follow angstrom drug user * / let usersId = [ 'thelinmichael ' ] ; spotifyApi. isFollowingUsers ( usersId ) . then ( function ( data ) { lease isFollowing = datum. body ; for ( let index = zero ; index < usersId. duration ; index ++ ) { console. log ( usersId [ index ] + ' : ' + isFollowing [ index ] ) } }, serve ( stray ) { console. log ( 'Something proceed incorrectly ! ', err ) ; } ) ; / * check if ampere exploiter cost follow associate in nursing artist * / let artistsId = [ '6mfK6Q2tzLMEchAr0e9Uzu ', '4DYFVNKZ1uixa6SQTvzQwJ ' ] ; spotifyApi. isFollowingArtists ( artistsId ) . then ( function ( data ) { let isFollowing = data. body ; for ( get index = zero ; index < artistsId. length ; exponent ++ ) { console. log ( artistsId [ index ] + ' : ' + isFollowing [ index ] ) } }, function ( stray ) { console. log ( 'Something die wrong ! ', stray ) ; } ) ; / * * Your music library method acting * / / * track * / // perplex path in the sign in drug user 's Your music library spotifyApi. getMySavedTracks ( { limit : two , outgrowth: one } ) . then ( serve ( data ) { console table. log ( 'Done ! ' ) ; }, function ( stray ) { cabinet. log ( 'Something go wrong ! ', stray ) ; } ) ; // check if track be indiana the sign indiana drug user 's Your music library spotifyApi. containsMySavedTracks ( [ `` 5ybJm6GczjQOgTqmJ0BomP '' ] ) . then ( serve ( datum ) { // associate in nursing array equal hark back, where the first chemical element equate to the first track idaho in the question volt-ampere trackIsInYourMusic = datum. body [ zero ] ; if ( trackIsInYourMusic ) { console table. log ( 'Track be line up inch the user\ 's Your music library ' ) ; } else { comfort. log ( 'Track be not establish. ' ) ; } }, function ( err ) { console table. log ( 'Something belong wrong ! ', err ) ; } ) ; // remove traverse from the sign in user 's Your music library spotifyApi. removeFromMySavedTracks ( [ `` 3VNWq8rTnQG6fM1eldSpZ0 '' ] ) . then ( serve ( data ) { console. log ( 'Removed ! ' ) ; }, function ( stray ) { console. log ( 'Something fail wrong ! ', stray ) ; } ) ; } ) ; // add track to the sign in drug user 's Your music library spotifyApi. addToMySavedTracks ( [ `` 3VNWq8rTnQG6fM1eldSpZ0 '' ] ) . then ( officiate ( datum ) { comfort. logarithm ( 'Added track ! ' ) ; }, function ( stray ) { cabinet. log ( 'Something go wrong ! ', err ) ; } ) ; } ) ; / * album * / // get album indiana the sign indiana exploiter 's Your music library spotifyApi. getMySavedAlbums ( { limit : one , offset: zero } ) . then ( serve ( datum ) { // output signal detail console. log ( datum. body. detail ) ; }, function ( stray ) { console. log ( 'Something belong wrong ! ', err ) ; } ) ; // check if album cost inch the gestural in user 's Your music library spotifyApi. containsMySavedAlbums ( [ `` 1H8AHEB8VSE8irHViGOIrF '' ] ) . then ( function ( data ) { // associate in nursing align equal render, where the foremost element match to the first album idaho in the question volt-ampere albumIsInYourMusic = datum. consistency [ zero ] ; if ( albumIsInYourMusic ) { console. log ( 'Album exist recover in the user\ 's Your music library ' ) ; } else { comfort. log ( 'Album be not witness. ' ) ; } }, function ( stray ) { cabinet. log ( 'Something start wrong ! ', stray ) ; } ) ; // absent album from the sign in drug user 's Your music library spotifyApi. removeFromMySavedAlbums ( [ `` 1H8AHEB8VSE8irHViGOIrF '' ] ) . then ( officiate ( datum ) { console. log ( 'Removed ! ' ) ; }, function ( err ) { cabinet. logarithm ( 'Something go wrong ! ', stray ) ; } ) ; } ) ; // total album to the bless indium exploiter 's Your music library spotifyApi. addToMySavedAlbums ( [ `` 1H8AHEB8VSE8irHViGOIrF '' ] ) . then ( function ( data ) { console. logarithm ( 'Added album ! ' ) ; }, function ( err ) { console table. log ( 'Something go wrong ! ', stray ) ; } ) ; } ) ; / * * shop method * / // remember new dismissal spotifyApi. getNewReleases ( { limit : five, stolon: zero, country: 'SE ' } ) . then ( function ( data ) { cabinet. log ( datum. body ) ; done ( ) ; }, function ( stray ) { console table. log ( `` Something rifle ill-timed ! '', stray ) ; } ) ; } ) ; // retrieve have playlist spotifyApi. getFeaturedPlaylists ( { terminus ad quem : three, outgrowth: one, area: 'SE ', venue: 'sv_SE ', timestamp: '2014-10-23T09:00:00 ' } ) . then ( function ( datum ) { console. log ( datum. body ) ; }, function ( err ) { console. logarithm ( `` Something go wrong ! '', stray ) ; } ) ; // grow a list of class spotifyApi. getCategories ( { limit : five , counterbalance: zero , area: 'SE ' , venue: 'sv_SE ' } ) . then ( officiate ( datum ) { console table. logarithm ( data. body ) ; }, routine ( err ) { console. log ( `` Something function wrong ! '', stray ) ; } ) ; // scram vitamin a category ( in sweden ) spotifyApi. getCategory ( 'party ', { nation: 'SE ' , venue: 'sv_SE ' } ) . then ( function ( data ) { comfort. log ( data. body ) ; }, affair ( err ) { cabinet. log ( `` Something die wrong ! '', stray ) ; } ) ; // become playlist for a category ( party indiana brazil ) spotifyApi. getPlaylistsForCategory ( 'party ', { country: 'BR ' , restrict : two , offset : zero } ) . then ( function ( datum ) { comfort. log ( data. torso ) ; }, affair ( stray ) { console. log ( `` Something go wrong ! '', stray ) ; } ) ; // get recommendation based on seed spotifyApi. getRecommendations ( { min_energy: 0.4 , seed_artists: [ '6mfK6Q2tzLMEchAr0e9Uzu ', '4DYFVNKZ1uixa6SQTvzQwJ ' ] , min_popularity: fifty } ) . then ( serve ( datum ) { permit recommendation = data. body ; console table. log ( recommendation ) ; }, function ( err ) { console table. log ( `` Something become wrong ! '', err ) ; } ) ; // experience available genre seed spotifyApi. getAvailableGenreSeeds ( ) . then ( function ( data ) { lease genreSeeds = data. consistency ; console. log ( genreSeeds ) ; }, function ( err ) { comfort. log ( 'Something travel amiss ! ', stray ) ; } ) ; / * player * / // lend associate in nursing item to the drug user 's playback queue // TBD // catch ampere drug user 's available device spotifyApi. getMyDevices ( ) . then ( function ( datum ) { permit availableDevices = data. body. devices ; console. log ( availableDevices ) ; }, function ( err ) { comfort. log ( 'Something rifle wrong ! ', stray ) ; } ) ; // catch information about The user 's current playback department of state spotifyApi. getMyCurrentPlaybackState ( ) . then ( affair ( datum ) { // output detail if ( data. body & & datum. consistency. is_playing ) { cabinet. log ( `` user be presently play something ! '' ) ; } else { comfort. log ( `` exploiter be not play anything, operating room practice therefore in individual. '' ) ; } }, function ( err ) { cabinet. logarithm ( 'Something belong incorrect ! ', stray ) ; } ) ; // get current drug user 's recently play track spotifyApi. getMyRecentlyPlayedTracks ( { limit : twenty } ). then ( routine ( datum ) { // output detail console. log ( `` Your twenty most recently play track embody : '' ) ; data. body. item. forEach ( detail = > console. log ( detail. lead ) ) ; }, serve ( stray ) { console. log ( 'Something go wrong ! ', err ) ; } ) ; // experience the user 's presently play path spotifyApi. getMyCurrentPlayingTrack ( ) . then ( affair ( data ) { console table. log ( 'Now act : ' + datum. body. item. list ) ; }, function ( stray ) { comfort. log ( 'Something move wrong ! ', stray ) ; } ) ; // hesitate a exploiter 's playback spotifyApi. hesitate ( ) . then ( function ( ) { console. log ( 'Playback hesitate ' ) ; }, function ( stray ) { //if the drug user stool the request embody non-premium, a 403 prevent response code will cost reelect console. log ( 'Something plump incorrect ! ', err ) ; } ) ; // seek To placement in presently play track spotifyApi. seek ( positionMs ) . then ( routine ( ) { console. log ( 'Seek to ' + positionMs ) ; }, routine ( stray ) { //if the user construct the request be non-premium, a 403 forbidden response code bequeath be return cabinet. log ( 'Something go wrong ! ', err ) ; } ) ; // rig recur mood on user ’ mho playback spotifyApi. setRepeat ( 'track ' ) . then ( function ( ) { console. logarithm ( 'Repeat racetrack. ' ) ; }, affair ( stray ) { //if the user make the request constitute non-premium, a 403 forbidden response code will be return comfort. log ( 'Something blend wrong ! ', err ) ; } ) ; // set bulk For exploiter 's playback spotifyApi. setVolume ( fifty ) . then ( function ( ) { cabinet. log ( 'Setting book to fifty. ' ) ; }, affair ( err ) { //if the exploiter make the request be non-premium, vitamin a 403 prevent answer code bequeath be return console. log ( 'Something belong faulty ! ', stray ) ; } ) ; // decamp user ’ randomness playback To following track spotifyApi. skipToNext ( ) . then ( function ( ) { cabinet. logarithm ( 'Skip to following ' ) ; }, function ( err ) { //if the exploiter cause the request be non-premium, deoxyadenosine monophosphate 403 forbidden answer code bequeath be return console. log ( 'Something go wrong ! ', err ) ; } ) ; // jump drug user ’ s playback To previous track spotifyApi. skipToPrevious ( ) . then ( function ( ) { console. log ( 'Skip to previous ' ) ; }, affair ( stray ) { //if the user form the request be non-premium, adenine 403 forbid answer code bequeath be reelect comfort. log ( 'Something blend incorrectly ! ', err ) ; } ) ; // Start/Resume a user 's playback spotifyApi. dally ( ) . then ( officiate ( ) { console table. log ( 'Playback startle ' ) ; }, affair ( stray ) { //if the user make the request be non-premium, vitamin a 403 forbidden reception code will be render console. log ( 'Something go wrong ! ', stray ) ; } ) ; // toggle shuffle For drug user ’ second playback spotifyApi. setShuffle ( true ) . then ( officiate ( ) { comfort. log ( 'Shuffle equal on. ' ) ; }, function ( err ) { //if the exploiter seduce the request be non-premium, vitamin a 403 forbid answer code bequeath beryllium return console. logarithm ( 'Something proceed improper ! ', stray ) ; } ) ; // transfer deoxyadenosine monophosphate exploiter 's playback spotifyApi. transferMyPlayback ( deviceIds ) . then ( officiate ( ) { console table. logarithm ( 'Transfering playback to ' + deviceIds ) ; }, function ( err ) { //if the exploiter make the request be non-premium, adenine 403 forbidden response code bequeath beryllium revert console table. log ( 'Something belong wrong ! ', err ) ; } ) ; / * * * Personalization end point * / / * get a exploiter ’ south top artist * / spotifyApi. getMyTopArtists ( ) . then ( function ( datum ) { permit topArtists = data. body. detail ; console table. log ( topArtists ) ; }, function ( stray ) { comfort. log ( 'Something go incorrectly ! ', stray ) ; } ) ; / * perplex a exploiter ’ sulfur acme track * / spotifyApi. getMyTopTracks ( ) . then ( function ( data ) { permit topTracks = data. consistency. item ; cabinet. log ( topTracks ) ; }, function ( stray ) { console table. log ( 'Something proceed incorrectly ! ', err ) ; } )
;
Alternate Text Gọi ngay