@@ -5,33 +5,176 @@ namespace SpotifyAPI.Web
55{
66 public interface IPlaylistsClient
77 {
8+ /// <summary>
9+ /// Remove one or more items from a user’s playlist.
10+ /// </summary>
11+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
12+ /// <param name="request">The request-model which contains required and optional parameters.</param>
13+ /// <remarks>
14+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-remove-tracks-playlist
15+ /// </remarks>
16+ /// <returns></returns>
817 Task < SnapshotResponse > RemoveItems ( string playlistId , PlaylistRemoveItemsRequest request ) ;
918
19+ /// <summary>
20+ /// Add one or more items to a user’s playlist.
21+ /// </summary>
22+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
23+ /// <param name="request">The request-model which contains required and optional parameters.</param>
24+ /// <remarks>
25+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-add-tracks-to-playlist
26+ /// </remarks>
27+ /// <returns></returns>
1028 Task < SnapshotResponse > AddItems ( string playlistId , PlaylistAddItemsRequest request ) ;
1129
30+ /// <summary>
31+ /// Get full details of the items of a playlist owned by a Spotify user.
32+ /// </summary>
33+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
34+ /// <remarks>
35+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-playlists-tracks
36+ /// </remarks>
37+ /// <returns></returns>
1238 Task < Paging < PlaylistTrack < IPlayableItem > > > GetItems ( string playlistId ) ;
39+
40+ /// <summary>
41+ /// Get full details of the items of a playlist owned by a Spotify user.
42+ /// </summary>
43+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
44+ /// <param name="request">The request-model which contains required and optional parameters.</param>
45+ /// <remarks>
46+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-playlists-tracks
47+ /// </remarks>
48+ /// <returns></returns>
1349 Task < Paging < PlaylistTrack < IPlayableItem > > > GetItems ( string playlistId , PlaylistGetItemsRequest request ) ;
1450
51+ /// <summary>
52+ /// Create a playlist for a Spotify user. (The playlist will be empty until you add tracks.)
53+ /// </summary>
54+ /// <param name="userId">The user’s Spotify user ID.</param>
55+ /// <param name="request">The request-model which contains required and optional parameters.</param>
56+ /// <remarks>
57+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-create-playlist
58+ /// </remarks>
59+ /// <returns></returns>
1560 Task < FullPlaylist > Create ( string userId , PlaylistCreateRequest request ) ;
1661
62+ /// <summary>
63+ /// Replace the image used to represent a specific playlist.
64+ /// </summary>
65+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
66+ /// <param name="base64JpgData">Base64 encoded JPEG image data, maximum payload size is 256 KB.</param>
67+ /// <remarks>
68+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-upload-custom-playlist-cover
69+ /// </remarks>
70+ /// <returns></returns>
1771 Task < bool > UploadCover ( string playlistId , string base64JpgData ) ;
72+
73+ /// <summary>
74+ /// Get the current image associated with a specific playlist.
75+ /// </summary>
76+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
77+ /// <remarks>
78+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-playlist-cover
79+ /// </remarks>
80+ /// <returns></returns>
1881 Task < List < Image > > GetCovers ( string playlistId ) ;
1982
83+ /// <summary>
84+ /// Get a list of the playlists owned or followed by a Spotify user.
85+ /// </summary>
86+ /// <param name="userId">The user’s Spotify user ID.</param>
87+ /// <remarks>
88+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-list-users-playlists
89+ /// </remarks>
90+ /// <returns></returns>
2091 Task < Paging < SimplePlaylist > > GetUsers ( string userId ) ;
92+
93+ /// <summary>
94+ /// Get a list of the playlists owned or followed by a Spotify user.
95+ /// </summary>
96+ /// <param name="userId">The user’s Spotify user ID.</param>
97+ /// <param name="request">The request-model which contains required and optional parameters.</param>
98+ /// <remarks>
99+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-list-users-playlists
100+ /// </remarks>
101+ /// <returns></returns>
21102 Task < Paging < SimplePlaylist > > GetUsers ( string userId , PlaylistGetUsersRequest request ) ;
22103
104+ /// <summary>
105+ /// Get a playlist owned by a Spotify user.
106+ /// </summary>
107+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
108+ /// <remarks>
109+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-playlist
110+ /// </remarks>
111+ /// <returns></returns>
23112 [ System . Diagnostics . CodeAnalysis . SuppressMessage ( "Microsoft.Naming" , "CA1716" ) ]
24113 Task < FullPlaylist > Get ( string playlistId ) ;
114+
115+ /// <summary>
116+ /// Get a playlist owned by a Spotify user.
117+ /// </summary>
118+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
119+ /// <param name="request">The request-model which contains required and optional parameters.</param>
120+ /// <remarks>
121+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-playlist
122+ /// </remarks>
123+ /// <returns></returns>
25124 [ System . Diagnostics . CodeAnalysis . SuppressMessage ( "Microsoft.Naming" , "CA1716" ) ]
26125 Task < FullPlaylist > Get ( string playlistId , PlaylistGetRequest request ) ;
27126
127+ /// <summary>
128+ /// Replace all the items in a playlist, overwriting its existing items.
129+ /// This powerful request can be useful for replacing items, re-ordering existing items, or clearing the playlist.
130+ /// </summary>
131+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
132+ /// <param name="request">The request-model which contains required and optional parameters.</param>
133+ /// <remarks>
134+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-replace-playlists-tracks
135+ /// </remarks>
136+ /// <returns></returns>
28137 Task < bool > ReplaceItems ( string playlistId , PlaylistReplaceItemsRequest request ) ;
29138
139+ /// <summary>
140+ /// Get a list of the playlists owned or followed by the current Spotify user.
141+ /// </summary>
142+ /// <remarks>
143+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-a-list-of-current-users-playlists
144+ /// </remarks>
145+ /// <returns></returns>
30146 Task < Paging < SimplePlaylist > > CurrentUsers ( ) ;
147+
148+ /// <summary>
149+ /// Get a list of the playlists owned or followed by the current Spotify user.
150+ /// </summary>
151+ /// <param name="request">The request-model which contains required and optional parameters.</param>
152+ /// <remarks>
153+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-a-list-of-current-users-playlists
154+ /// </remarks>
155+ /// <returns></returns>
31156 Task < Paging < SimplePlaylist > > CurrentUsers ( PlaylistCurrentUsersRequest request ) ;
32157
158+ /// <summary>
159+ /// Change a playlist’s name and public/private state. (The user must, of course, own the playlist.)
160+ /// </summary>
161+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
162+ /// <param name="request">The request-model which contains required and optional parameters.</param>
163+ /// <remarks>
164+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-change-playlist-details
165+ /// </remarks>
166+ /// <returns></returns>
33167 Task < bool > ChangeDetails ( string playlistId , PlaylistChangeDetailsRequest request ) ;
34168
169+ /// <summary>
170+ /// Reorder an item or a group of items in a playlist.
171+ /// </summary>
172+ /// <param name="playlistId">The Spotify ID for the playlist.</param>
173+ /// <param name="request">The request-model which contains required and optional parameters.</param>
174+ /// <remarks>
175+ /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-reorder-playlists-tracks
176+ /// </remarks>
177+ /// <returns></returns>
35178 Task < SnapshotResponse > ReorderItems ( string playlistId , PlaylistReorderItemsRequest request ) ;
36179 }
37180}
0 commit comments