de.sonallux.spotify.api.apis.artists.GetArtistsTopTracksRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of spotify-web-api-java Show documentation
Show all versions of spotify-web-api-java Show documentation
A Java wrapper for Spotify's Web API
The newest version!
package de.sonallux.spotify.api.apis.artists;
import com.fasterxml.jackson.core.type.TypeReference;
import de.sonallux.spotify.api.http.ApiCall;
import de.sonallux.spotify.api.http.ApiClient;
import de.sonallux.spotify.api.http.Request;
import de.sonallux.spotify.api.models.*;
/**
* Get Artist's Top Tracks request
*
* Response
* A set of tracks
*/
public class GetArtistsTopTracksRequest {
private static final TypeReference RESPONSE_TYPE = new TypeReference<>() {};
private final ApiClient apiClient;
private final Request request;
/**
* Get Artist's Top Tracks request
* @param apiClient The API client
* @param id The Spotify ID of the artist.
*/
public GetArtistsTopTracksRequest(ApiClient apiClient, String id) {
this.apiClient = apiClient;
this.request = new Request("GET", "/artists/{id}/top-tracks")
.addPathParameter("id", String.valueOf(id))
;
}
/**
* @param market An ISO 3166-1 alpha-2 country code. If a country code is specified, only content that is available in that market will be returned.
If a valid user access token is specified in the request header, the country associated with the user account will take priority over this parameter.
Note: If neither market or user country are provided, the content is considered unavailable for the client.
Users can view the country that is associated with their account in the account settings.
* @return this request
*/
public GetArtistsTopTracksRequest market(String market) {
this.request.addQueryParameter("market", String.valueOf(market));
return this;
}
/**
* Build the request into an executable api call
* @return an executable api call
*/
public ApiCall build() {
return apiClient.createApiCall(request, RESPONSE_TYPE);
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy