de.sonallux.spotify.api.apis.playlists.GetListUsersPlaylistsRequest 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.playlists;
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 User's Playlists request
*
* Required OAuth scopes
* playlist-read-private, playlist-read-collaborative
*
* Response
* A paged set of playlists
*/
public class GetListUsersPlaylistsRequest {
private static final TypeReference> RESPONSE_TYPE = new TypeReference<>() {};
private final ApiClient apiClient;
private final Request request;
/**
* Get User's Playlists request
* @param apiClient The API client
* @param userId The user's Spotify user ID.
*/
public GetListUsersPlaylistsRequest(ApiClient apiClient, String userId) {
this.apiClient = apiClient;
this.request = new Request("GET", "/users/{user_id}/playlists")
.addPathParameter("user_id", String.valueOf(userId))
;
}
/**
* @param limit The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
* @return this request
*/
public GetListUsersPlaylistsRequest limit(int limit) {
this.request.addQueryParameter("limit", String.valueOf(limit));
return this;
}
/**
* @param offset The index of the first playlist to return. Default: 0 (the first object). Maximum offset: 100.000. Use with limit
to get the next set of playlists.
* @return this request
*/
public GetListUsersPlaylistsRequest offset(int offset) {
this.request.addQueryParameter("offset", String.valueOf(offset));
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