public static ApiRequestObject <T> GetNextPageContent <T>(string pageAddress) { CheckAuthValidity(); Client.DefaultRequestHeaders.Authorization = AuthenticationHeaderValue.Parse($"{SpotifyToken.Instance.Type} {SpotifyToken.Instance.Token}"); var response = Client.GetAsync(new Uri(pageAddress)).Result; var returnObject = new ApiRequestObject <T>(); if (returnObject.IsSuccess = response.StatusCode == HttpStatusCode.OK) { var responseContent = response.Content.ReadAsStringAsync().Result; returnObject.Content = JsonConvert.DeserializeObject <T>(responseContent); } return(returnObject); }
public Task <object> ExecuteRequest(ApiRequest request) { ApiRequestObject requestObject = new ApiRequestObject(request); object result = _app.Scripts.Execute(_path, GetScriptPath(request), "request", requestObject); if (Script.IsNullOrUndefined(result) == false) { Task <object> taskResult = result as Task <object>; if (taskResult != null) { return(taskResult); } } return(Deferred.Create <object>(result).Task); }
public static ApiRequestObject <SpotifyPlaylistsResponse> GetPlaylists(string category) { string endpoint = $"/v1/browse/categories/{category}/playlists"; CheckAuthValidity(); Client.DefaultRequestHeaders.Authorization = AuthenticationHeaderValue.Parse($"{SpotifyToken.Instance.Type} {SpotifyToken.Instance.Token}"); var response = Client.GetAsync(endpoint).Result; var returnObject = new ApiRequestObject <SpotifyPlaylistsResponse>(); if (returnObject.IsSuccess = response.StatusCode == HttpStatusCode.OK) { var responseContent = response.Content.ReadAsStringAsync().Result; returnObject.Content = JsonConvert.DeserializeObject <SpotifyPlaylistsResponse>(responseContent); } return(returnObject); }
public static ApiRequestObject <SpotifyTracksResponse> GetArtistTopTracks(string artistId) { string endpoint = $"/v1/artists/{artistId}/top-tracks?country=SE"; CheckAuthValidity(); Client.DefaultRequestHeaders.Authorization = AuthenticationHeaderValue.Parse($"{SpotifyToken.Instance.Type} {SpotifyToken.Instance.Token}"); var response = Client.GetAsync(endpoint).Result; var returnObject = new ApiRequestObject <SpotifyTracksResponse>(); if (returnObject.IsSuccess = response.StatusCode == HttpStatusCode.OK) { var responseContent = response.Content.ReadAsStringAsync().Result; returnObject.Content = JsonConvert.DeserializeObject <SpotifyTracksResponse>(responseContent); } return(returnObject); }
public static ApiRequestObject <SpotifyTracksAnalysisResponse> GetTracksFeatures(List <string> trackIdsList) { string endpoint = $"/v1/audio-features?ids={string.Join(",", trackIdsList)}"; CheckAuthValidity(); Client.DefaultRequestHeaders.Authorization = AuthenticationHeaderValue.Parse($"{SpotifyToken.Instance.Type} {SpotifyToken.Instance.Token}"); var response = Client.GetAsync(endpoint).Result; var returnObject = new ApiRequestObject <SpotifyTracksAnalysisResponse>(); if (returnObject.IsSuccess = response.StatusCode == HttpStatusCode.OK) { var responseContent = response.Content.ReadAsStringAsync().Result; returnObject.Content = JsonConvert.DeserializeObject <SpotifyTracksAnalysisResponse>(responseContent); } return(returnObject); }
public static ApiRequestObject <SpotifySeedRecommendResponse> GetSeedRecommendations(Dictionary <string, string> seedVariables) { string endpoint = $"/v1/recommendations?{string.Join("&", seedVariables.Select(i => $"{i.Key}={i.Value}"))}"; CheckAuthValidity(); Client.DefaultRequestHeaders.Authorization = AuthenticationHeaderValue.Parse($"{SpotifyToken.Instance.Type} {SpotifyToken.Instance.Token}"); var result = Client.GetAsync(endpoint).Result; var returnObject = new ApiRequestObject <SpotifySeedRecommendResponse>(); if (returnObject.IsSuccess = result.StatusCode == HttpStatusCode.OK) { var responseContent = result.Content.ReadAsStringAsync().Result; returnObject.Content = JsonConvert.DeserializeObject <SpotifySeedRecommendResponse>(responseContent); } return(returnObject); }