spotted 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (677) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +25 -0
  4. data/README.md +236 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/spotted/client.rb +169 -0
  7. data/lib/spotted/errors.rb +228 -0
  8. data/lib/spotted/file_part.rb +58 -0
  9. data/lib/spotted/internal/cursor_url_page.rb +86 -0
  10. data/lib/spotted/internal/oauth2.rb +87 -0
  11. data/lib/spotted/internal/transport/base_client.rb +567 -0
  12. data/lib/spotted/internal/transport/pooled_net_requester.rb +204 -0
  13. data/lib/spotted/internal/type/array_of.rb +168 -0
  14. data/lib/spotted/internal/type/base_model.rb +529 -0
  15. data/lib/spotted/internal/type/base_page.rb +55 -0
  16. data/lib/spotted/internal/type/boolean.rb +77 -0
  17. data/lib/spotted/internal/type/converter.rb +327 -0
  18. data/lib/spotted/internal/type/enum.rb +131 -0
  19. data/lib/spotted/internal/type/file_input.rb +111 -0
  20. data/lib/spotted/internal/type/hash_of.rb +188 -0
  21. data/lib/spotted/internal/type/request_parameters.rb +42 -0
  22. data/lib/spotted/internal/type/union.rb +237 -0
  23. data/lib/spotted/internal/type/unknown.rb +81 -0
  24. data/lib/spotted/internal/util.rb +915 -0
  25. data/lib/spotted/internal.rb +20 -0
  26. data/lib/spotted/models/album_list_params.rb +43 -0
  27. data/lib/spotted/models/album_list_response.rb +297 -0
  28. data/lib/spotted/models/album_list_tracks_params.rb +50 -0
  29. data/lib/spotted/models/album_restriction_object.rb +39 -0
  30. data/lib/spotted/models/album_retrieve_params.rb +33 -0
  31. data/lib/spotted/models/album_retrieve_response.rb +287 -0
  32. data/lib/spotted/models/artist_list_albums_params.rb +61 -0
  33. data/lib/spotted/models/artist_list_albums_response.rb +195 -0
  34. data/lib/spotted/models/artist_list_params.rb +27 -0
  35. data/lib/spotted/models/artist_list_related_artists_params.rb +14 -0
  36. data/lib/spotted/models/artist_list_related_artists_response.rb +16 -0
  37. data/lib/spotted/models/artist_list_response.rb +16 -0
  38. data/lib/spotted/models/artist_list_top_tracks_params.rb +33 -0
  39. data/lib/spotted/models/artist_list_top_tracks_response.rb +16 -0
  40. data/lib/spotted/models/artist_object.rb +108 -0
  41. data/lib/spotted/models/artist_retrieve_params.rb +14 -0
  42. data/lib/spotted/models/audio_analysis_retrieve_params.rb +14 -0
  43. data/lib/spotted/models/audio_analysis_retrieve_response.rb +628 -0
  44. data/lib/spotted/models/audio_feature_list_params.rb +27 -0
  45. data/lib/spotted/models/audio_feature_list_response.rb +214 -0
  46. data/lib/spotted/models/audio_feature_retrieve_params.rb +14 -0
  47. data/lib/spotted/models/audio_feature_retrieve_response.rb +203 -0
  48. data/lib/spotted/models/audiobook_list_chapters_params.rb +50 -0
  49. data/lib/spotted/models/audiobook_list_params.rb +43 -0
  50. data/lib/spotted/models/audiobook_list_response.rb +266 -0
  51. data/lib/spotted/models/audiobook_retrieve_params.rb +33 -0
  52. data/lib/spotted/models/audiobook_retrieve_response.rb +255 -0
  53. data/lib/spotted/models/author_object.rb +19 -0
  54. data/lib/spotted/models/browse/category_get_playlists_params.rb +36 -0
  55. data/lib/spotted/models/browse/category_get_playlists_response.rb +29 -0
  56. data/lib/spotted/models/browse/category_list_params.rb +51 -0
  57. data/lib/spotted/models/browse/category_list_response.rb +121 -0
  58. data/lib/spotted/models/browse/category_retrieve_params.rb +34 -0
  59. data/lib/spotted/models/browse/category_retrieve_response.rb +47 -0
  60. data/lib/spotted/models/browse_get_featured_playlists_params.rb +49 -0
  61. data/lib/spotted/models/browse_get_featured_playlists_response.rb +27 -0
  62. data/lib/spotted/models/browse_get_new_releases_params.rb +34 -0
  63. data/lib/spotted/models/browse_get_new_releases_response.rb +245 -0
  64. data/lib/spotted/models/chapter_list_params.rb +43 -0
  65. data/lib/spotted/models/chapter_list_response.rb +408 -0
  66. data/lib/spotted/models/chapter_restriction_object.rb +29 -0
  67. data/lib/spotted/models/chapter_retrieve_params.rb +33 -0
  68. data/lib/spotted/models/chapter_retrieve_response.rb +398 -0
  69. data/lib/spotted/models/copyright_object.rb +28 -0
  70. data/lib/spotted/models/episode_list_params.rb +43 -0
  71. data/lib/spotted/models/episode_list_response.rb +16 -0
  72. data/lib/spotted/models/episode_object.rb +382 -0
  73. data/lib/spotted/models/episode_restriction_object.rb +28 -0
  74. data/lib/spotted/models/episode_retrieve_params.rb +33 -0
  75. data/lib/spotted/models/external_id_object.rb +35 -0
  76. data/lib/spotted/models/external_url_object.rb +20 -0
  77. data/lib/spotted/models/followers_object.rb +28 -0
  78. data/lib/spotted/models/image_object.rb +35 -0
  79. data/lib/spotted/models/linked_track_object.rb +53 -0
  80. data/lib/spotted/models/market_list_params.rb +14 -0
  81. data/lib/spotted/models/market_list_response.rb +16 -0
  82. data/lib/spotted/models/me/album_check_params.rb +29 -0
  83. data/lib/spotted/models/me/album_check_response.rb +10 -0
  84. data/lib/spotted/models/me/album_list_params.rb +52 -0
  85. data/lib/spotted/models/me/album_list_response.rb +318 -0
  86. data/lib/spotted/models/me/album_remove_params.rb +31 -0
  87. data/lib/spotted/models/me/album_save_params.rb +31 -0
  88. data/lib/spotted/models/me/audiobook_check_params.rb +29 -0
  89. data/lib/spotted/models/me/audiobook_check_response.rb +10 -0
  90. data/lib/spotted/models/me/audiobook_list_params.rb +36 -0
  91. data/lib/spotted/models/me/audiobook_list_response.rb +287 -0
  92. data/lib/spotted/models/me/audiobook_remove_params.rb +29 -0
  93. data/lib/spotted/models/me/audiobook_save_params.rb +29 -0
  94. data/lib/spotted/models/me/context_object.rb +46 -0
  95. data/lib/spotted/models/me/device_object.rb +82 -0
  96. data/lib/spotted/models/me/episode_check_params.rb +29 -0
  97. data/lib/spotted/models/me/episode_check_response.rb +10 -0
  98. data/lib/spotted/models/me/episode_list_params.rb +52 -0
  99. data/lib/spotted/models/me/episode_list_response.rb +32 -0
  100. data/lib/spotted/models/me/episode_remove_params.rb +31 -0
  101. data/lib/spotted/models/me/episode_save_params.rb +31 -0
  102. data/lib/spotted/models/me/following_check_params.rb +49 -0
  103. data/lib/spotted/models/me/following_check_response.rb +10 -0
  104. data/lib/spotted/models/me/following_follow_params.rb +50 -0
  105. data/lib/spotted/models/me/following_list_params.rb +53 -0
  106. data/lib/spotted/models/me/following_list_response.rb +94 -0
  107. data/lib/spotted/models/me/following_unfollow_params.rb +50 -0
  108. data/lib/spotted/models/me/player/queue_add_params.rb +38 -0
  109. data/lib/spotted/models/me/player/queue_get_params.rb +18 -0
  110. data/lib/spotted/models/me/player/queue_get_response.rb +59 -0
  111. data/lib/spotted/models/me/player_get_currently_playing_params.rb +48 -0
  112. data/lib/spotted/models/me/player_get_currently_playing_response.rb +175 -0
  113. data/lib/spotted/models/me/player_get_devices_params.rb +16 -0
  114. data/lib/spotted/models/me/player_get_devices_response.rb +18 -0
  115. data/lib/spotted/models/me/player_get_state_params.rb +48 -0
  116. data/lib/spotted/models/me/player_get_state_response.rb +200 -0
  117. data/lib/spotted/models/me/player_list_recently_played_params.rb +45 -0
  118. data/lib/spotted/models/me/player_list_recently_played_response.rb +35 -0
  119. data/lib/spotted/models/me/player_pause_playback_params.rb +28 -0
  120. data/lib/spotted/models/me/player_seek_to_position_params.rb +38 -0
  121. data/lib/spotted/models/me/player_set_repeat_mode_params.rb +38 -0
  122. data/lib/spotted/models/me/player_set_volume_params.rb +36 -0
  123. data/lib/spotted/models/me/player_skip_next_params.rb +28 -0
  124. data/lib/spotted/models/me/player_skip_previous_params.rb +28 -0
  125. data/lib/spotted/models/me/player_start_playback_params.rb +68 -0
  126. data/lib/spotted/models/me/player_toggle_shuffle_params.rb +37 -0
  127. data/lib/spotted/models/me/player_transfer_params.rb +40 -0
  128. data/lib/spotted/models/me/playlist_list_params.rb +36 -0
  129. data/lib/spotted/models/me/show_check_params.rb +29 -0
  130. data/lib/spotted/models/me/show_check_response.rb +10 -0
  131. data/lib/spotted/models/me/show_list_params.rb +36 -0
  132. data/lib/spotted/models/me/show_list_response.rb +197 -0
  133. data/lib/spotted/models/me/show_remove_params.rb +47 -0
  134. data/lib/spotted/models/me/show_save_params.rb +31 -0
  135. data/lib/spotted/models/me/top_list_top_artists_params.rb +47 -0
  136. data/lib/spotted/models/me/top_list_top_tracks_params.rb +47 -0
  137. data/lib/spotted/models/me/track_check_params.rb +29 -0
  138. data/lib/spotted/models/me/track_check_response.rb +10 -0
  139. data/lib/spotted/models/me/track_list_params.rb +52 -0
  140. data/lib/spotted/models/me/track_list_response.rb +34 -0
  141. data/lib/spotted/models/me/track_remove_params.rb +31 -0
  142. data/lib/spotted/models/me/track_save_params.rb +74 -0
  143. data/lib/spotted/models/me_retrieve_params.rb +14 -0
  144. data/lib/spotted/models/me_retrieve_response.rb +157 -0
  145. data/lib/spotted/models/narrator_object.rb +19 -0
  146. data/lib/spotted/models/paging_playlist_object.rb +66 -0
  147. data/lib/spotted/models/playlist_retrieve_params.rb +63 -0
  148. data/lib/spotted/models/playlist_retrieve_response.rb +217 -0
  149. data/lib/spotted/models/playlist_track_object.rb +64 -0
  150. data/lib/spotted/models/playlist_tracks_ref_object.rb +28 -0
  151. data/lib/spotted/models/playlist_update_params.rb +56 -0
  152. data/lib/spotted/models/playlist_user_object.rb +65 -0
  153. data/lib/spotted/models/playlists/follower_check_params.rb +29 -0
  154. data/lib/spotted/models/playlists/follower_check_response.rb +10 -0
  155. data/lib/spotted/models/playlists/follower_follow_params.rb +30 -0
  156. data/lib/spotted/models/playlists/follower_unfollow_params.rb +16 -0
  157. data/lib/spotted/models/playlists/image_list_params.rb +16 -0
  158. data/lib/spotted/models/playlists/image_list_response.rb +10 -0
  159. data/lib/spotted/models/playlists/image_update_params.rb +24 -0
  160. data/lib/spotted/models/playlists/track_add_params.rb +45 -0
  161. data/lib/spotted/models/playlists/track_add_response.rb +18 -0
  162. data/lib/spotted/models/playlists/track_list_params.rb +82 -0
  163. data/lib/spotted/models/playlists/track_remove_params.rb +52 -0
  164. data/lib/spotted/models/playlists/track_remove_response.rb +18 -0
  165. data/lib/spotted/models/playlists/track_update_params.rb +67 -0
  166. data/lib/spotted/models/playlists/track_update_response.rb +18 -0
  167. data/lib/spotted/models/recommendation_get_params.rb +549 -0
  168. data/lib/spotted/models/recommendation_get_response.rb +86 -0
  169. data/lib/spotted/models/recommendation_list_available_genre_seeds_params.rb +14 -0
  170. data/lib/spotted/models/recommendation_list_available_genre_seeds_response.rb +16 -0
  171. data/lib/spotted/models/resume_point_object.rb +27 -0
  172. data/lib/spotted/models/search_retrieve_params.rb +120 -0
  173. data/lib/spotted/models/search_retrieve_response.rb +930 -0
  174. data/lib/spotted/models/show_list_episodes_params.rb +50 -0
  175. data/lib/spotted/models/show_list_params.rb +43 -0
  176. data/lib/spotted/models/show_list_response.rb +176 -0
  177. data/lib/spotted/models/show_retrieve_params.rb +33 -0
  178. data/lib/spotted/models/show_retrieve_response.rb +238 -0
  179. data/lib/spotted/models/simplified_artist_object.rb +73 -0
  180. data/lib/spotted/models/simplified_chapter_object.rb +209 -0
  181. data/lib/spotted/models/simplified_episode_object.rb +211 -0
  182. data/lib/spotted/models/simplified_playlist_object.rb +147 -0
  183. data/lib/spotted/models/simplified_track_object.rb +161 -0
  184. data/lib/spotted/models/time_interval_object.rb +32 -0
  185. data/lib/spotted/models/track_list_params.rb +43 -0
  186. data/lib/spotted/models/track_list_response.rb +16 -0
  187. data/lib/spotted/models/track_object.rb +375 -0
  188. data/lib/spotted/models/track_restriction_object.rb +28 -0
  189. data/lib/spotted/models/track_retrieve_params.rb +33 -0
  190. data/lib/spotted/models/user_retrieve_profile_params.rb +14 -0
  191. data/lib/spotted/models/user_retrieve_profile_response.rb +90 -0
  192. data/lib/spotted/models/users/playlist_create_params.rb +65 -0
  193. data/lib/spotted/models/users/playlist_create_response.rb +219 -0
  194. data/lib/spotted/models/users/playlist_list_params.rb +36 -0
  195. data/lib/spotted/models.rb +168 -0
  196. data/lib/spotted/request_options.rb +77 -0
  197. data/lib/spotted/resources/albums.rb +102 -0
  198. data/lib/spotted/resources/artists.rb +150 -0
  199. data/lib/spotted/resources/audio_analysis.rb +41 -0
  200. data/lib/spotted/resources/audio_features.rb +67 -0
  201. data/lib/spotted/resources/audiobooks.rb +105 -0
  202. data/lib/spotted/resources/browse/categories.rb +105 -0
  203. data/lib/spotted/resources/browse.rb +78 -0
  204. data/lib/spotted/resources/chapters.rb +72 -0
  205. data/lib/spotted/resources/episodes.rb +69 -0
  206. data/lib/spotted/resources/markets.rb +32 -0
  207. data/lib/spotted/resources/me/albums.rb +127 -0
  208. data/lib/spotted/resources/me/audiobooks.rb +121 -0
  209. data/lib/spotted/resources/me/episodes.rb +138 -0
  210. data/lib/spotted/resources/me/following.rb +133 -0
  211. data/lib/spotted/resources/me/player/queue.rb +65 -0
  212. data/lib/spotted/resources/me/player.rb +382 -0
  213. data/lib/spotted/resources/me/playlists.rb +44 -0
  214. data/lib/spotted/resources/me/shows.rb +127 -0
  215. data/lib/spotted/resources/me/top.rb +76 -0
  216. data/lib/spotted/resources/me/tracks.rb +121 -0
  217. data/lib/spotted/resources/me.rb +69 -0
  218. data/lib/spotted/resources/playlists/followers.rb +93 -0
  219. data/lib/spotted/resources/playlists/images.rb +67 -0
  220. data/lib/spotted/resources/playlists/tracks.rb +157 -0
  221. data/lib/spotted/resources/playlists.rb +91 -0
  222. data/lib/spotted/resources/recommendations.rb +160 -0
  223. data/lib/spotted/resources/search.rb +51 -0
  224. data/lib/spotted/resources/shows.rb +102 -0
  225. data/lib/spotted/resources/tracks.rb +69 -0
  226. data/lib/spotted/resources/users/playlists.rb +82 -0
  227. data/lib/spotted/resources/users.rb +41 -0
  228. data/lib/spotted/version.rb +5 -0
  229. data/lib/spotted.rb +257 -0
  230. data/manifest.yaml +15 -0
  231. data/rbi/spotted/client.rbi +104 -0
  232. data/rbi/spotted/errors.rbi +205 -0
  233. data/rbi/spotted/file_part.rbi +37 -0
  234. data/rbi/spotted/internal/cursor_url_page.rbi +22 -0
  235. data/rbi/spotted/internal/oauth2.rbi +34 -0
  236. data/rbi/spotted/internal/transport/base_client.rbi +292 -0
  237. data/rbi/spotted/internal/transport/pooled_net_requester.rbi +79 -0
  238. data/rbi/spotted/internal/type/array_of.rbi +104 -0
  239. data/rbi/spotted/internal/type/base_model.rbi +302 -0
  240. data/rbi/spotted/internal/type/base_page.rbi +42 -0
  241. data/rbi/spotted/internal/type/boolean.rbi +58 -0
  242. data/rbi/spotted/internal/type/converter.rbi +216 -0
  243. data/rbi/spotted/internal/type/enum.rbi +82 -0
  244. data/rbi/spotted/internal/type/file_input.rbi +59 -0
  245. data/rbi/spotted/internal/type/hash_of.rbi +104 -0
  246. data/rbi/spotted/internal/type/request_parameters.rbi +29 -0
  247. data/rbi/spotted/internal/type/union.rbi +128 -0
  248. data/rbi/spotted/internal/type/unknown.rbi +58 -0
  249. data/rbi/spotted/internal/util.rbi +484 -0
  250. data/rbi/spotted/internal.rbi +16 -0
  251. data/rbi/spotted/models/album_list_params.rbi +74 -0
  252. data/rbi/spotted/models/album_list_response.rbi +479 -0
  253. data/rbi/spotted/models/album_list_tracks_params.rbi +86 -0
  254. data/rbi/spotted/models/album_restriction_object.rbi +82 -0
  255. data/rbi/spotted/models/album_retrieve_params.rbi +59 -0
  256. data/rbi/spotted/models/album_retrieve_response.rbi +439 -0
  257. data/rbi/spotted/models/artist_list_albums_params.rbi +103 -0
  258. data/rbi/spotted/models/artist_list_albums_response.rbi +338 -0
  259. data/rbi/spotted/models/artist_list_params.rbi +44 -0
  260. data/rbi/spotted/models/artist_list_related_artists_params.rbi +30 -0
  261. data/rbi/spotted/models/artist_list_related_artists_response.rbi +30 -0
  262. data/rbi/spotted/models/artist_list_response.rbi +27 -0
  263. data/rbi/spotted/models/artist_list_top_tracks_params.rbi +59 -0
  264. data/rbi/spotted/models/artist_list_top_tracks_response.rbi +30 -0
  265. data/rbi/spotted/models/artist_object.rbi +166 -0
  266. data/rbi/spotted/models/artist_retrieve_params.rbi +27 -0
  267. data/rbi/spotted/models/audio_analysis_retrieve_params.rbi +30 -0
  268. data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +1080 -0
  269. data/rbi/spotted/models/audio_feature_list_params.rbi +44 -0
  270. data/rbi/spotted/models/audio_feature_list_response.rbi +382 -0
  271. data/rbi/spotted/models/audio_feature_retrieve_params.rbi +27 -0
  272. data/rbi/spotted/models/audio_feature_retrieve_response.rbi +338 -0
  273. data/rbi/spotted/models/audiobook_list_chapters_params.rbi +89 -0
  274. data/rbi/spotted/models/audiobook_list_params.rbi +74 -0
  275. data/rbi/spotted/models/audiobook_list_response.rbi +377 -0
  276. data/rbi/spotted/models/audiobook_retrieve_params.rbi +59 -0
  277. data/rbi/spotted/models/audiobook_retrieve_response.rbi +332 -0
  278. data/rbi/spotted/models/author_object.rbi +30 -0
  279. data/rbi/spotted/models/browse/category_get_playlists_params.rbi +64 -0
  280. data/rbi/spotted/models/browse/category_get_playlists_response.rbi +51 -0
  281. data/rbi/spotted/models/browse/category_list_params.rbi +89 -0
  282. data/rbi/spotted/models/browse/category_list_response.rbi +204 -0
  283. data/rbi/spotted/models/browse/category_retrieve_params.rbi +62 -0
  284. data/rbi/spotted/models/browse/category_retrieve_response.rbi +68 -0
  285. data/rbi/spotted/models/browse_get_featured_playlists_params.rbi +87 -0
  286. data/rbi/spotted/models/browse_get_featured_playlists_response.rbi +49 -0
  287. data/rbi/spotted/models/browse_get_new_releases_params.rbi +59 -0
  288. data/rbi/spotted/models/browse_get_new_releases_response.rbi +423 -0
  289. data/rbi/spotted/models/chapter_list_params.rbi +74 -0
  290. data/rbi/spotted/models/chapter_list_response.rbi +588 -0
  291. data/rbi/spotted/models/chapter_restriction_object.rbi +50 -0
  292. data/rbi/spotted/models/chapter_retrieve_params.rbi +59 -0
  293. data/rbi/spotted/models/chapter_retrieve_response.rbi +551 -0
  294. data/rbi/spotted/models/copyright_object.rbi +41 -0
  295. data/rbi/spotted/models/episode_list_params.rbi +74 -0
  296. data/rbi/spotted/models/episode_list_response.rbi +30 -0
  297. data/rbi/spotted/models/episode_object.rbi +485 -0
  298. data/rbi/spotted/models/episode_restriction_object.rbi +48 -0
  299. data/rbi/spotted/models/episode_retrieve_params.rbi +59 -0
  300. data/rbi/spotted/models/external_id_object.rbi +50 -0
  301. data/rbi/spotted/models/external_url_object.rbi +32 -0
  302. data/rbi/spotted/models/followers_object.rbi +42 -0
  303. data/rbi/spotted/models/image_object.rbi +47 -0
  304. data/rbi/spotted/models/linked_track_object.rbi +88 -0
  305. data/rbi/spotted/models/market_list_params.rbi +27 -0
  306. data/rbi/spotted/models/market_list_response.rbi +26 -0
  307. data/rbi/spotted/models/me/album_check_params.rbi +46 -0
  308. data/rbi/spotted/models/me/album_check_response.rbi +13 -0
  309. data/rbi/spotted/models/me/album_list_params.rbi +88 -0
  310. data/rbi/spotted/models/me/album_list_response.rbi +529 -0
  311. data/rbi/spotted/models/me/album_remove_params.rbi +56 -0
  312. data/rbi/spotted/models/me/album_save_params.rbi +56 -0
  313. data/rbi/spotted/models/me/audiobook_check_params.rbi +46 -0
  314. data/rbi/spotted/models/me/audiobook_check_response.rbi +13 -0
  315. data/rbi/spotted/models/me/audiobook_list_params.rbi +61 -0
  316. data/rbi/spotted/models/me/audiobook_list_response.rbi +414 -0
  317. data/rbi/spotted/models/me/audiobook_remove_params.rbi +49 -0
  318. data/rbi/spotted/models/me/audiobook_save_params.rbi +46 -0
  319. data/rbi/spotted/models/me/context_object.rbi +77 -0
  320. data/rbi/spotted/models/me/device_object.rbi +123 -0
  321. data/rbi/spotted/models/me/episode_check_params.rbi +46 -0
  322. data/rbi/spotted/models/me/episode_check_response.rbi +13 -0
  323. data/rbi/spotted/models/me/episode_list_params.rbi +88 -0
  324. data/rbi/spotted/models/me/episode_list_response.rbi +55 -0
  325. data/rbi/spotted/models/me/episode_remove_params.rbi +56 -0
  326. data/rbi/spotted/models/me/episode_save_params.rbi +53 -0
  327. data/rbi/spotted/models/me/following_check_params.rbi +86 -0
  328. data/rbi/spotted/models/me/following_check_response.rbi +13 -0
  329. data/rbi/spotted/models/me/following_follow_params.rbi +91 -0
  330. data/rbi/spotted/models/me/following_list_params.rbi +89 -0
  331. data/rbi/spotted/models/me/following_list_response.rbi +187 -0
  332. data/rbi/spotted/models/me/following_unfollow_params.rbi +97 -0
  333. data/rbi/spotted/models/me/player/queue_add_params.rbi +63 -0
  334. data/rbi/spotted/models/me/player/queue_get_params.rbi +34 -0
  335. data/rbi/spotted/models/me/player/queue_get_response.rbi +143 -0
  336. data/rbi/spotted/models/me/player_get_currently_playing_params.rbi +88 -0
  337. data/rbi/spotted/models/me/player_get_currently_playing_response.rbi +304 -0
  338. data/rbi/spotted/models/me/player_get_devices_params.rbi +32 -0
  339. data/rbi/spotted/models/me/player_get_devices_response.rbi +34 -0
  340. data/rbi/spotted/models/me/player_get_state_params.rbi +85 -0
  341. data/rbi/spotted/models/me/player_get_state_response.rbi +335 -0
  342. data/rbi/spotted/models/me/player_list_recently_played_params.rbi +77 -0
  343. data/rbi/spotted/models/me/player_list_recently_played_response.rbi +67 -0
  344. data/rbi/spotted/models/me/player_pause_playback_params.rbi +50 -0
  345. data/rbi/spotted/models/me/player_seek_to_position_params.rbi +65 -0
  346. data/rbi/spotted/models/me/player_set_repeat_mode_params.rbi +65 -0
  347. data/rbi/spotted/models/me/player_set_volume_params.rbi +61 -0
  348. data/rbi/spotted/models/me/player_skip_next_params.rbi +47 -0
  349. data/rbi/spotted/models/me/player_skip_previous_params.rbi +50 -0
  350. data/rbi/spotted/models/me/player_start_playback_params.rbi +113 -0
  351. data/rbi/spotted/models/me/player_toggle_shuffle_params.rbi +63 -0
  352. data/rbi/spotted/models/me/player_transfer_params.rbi +66 -0
  353. data/rbi/spotted/models/me/playlist_list_params.rbi +61 -0
  354. data/rbi/spotted/models/me/show_check_params.rbi +46 -0
  355. data/rbi/spotted/models/me/show_check_response.rbi +13 -0
  356. data/rbi/spotted/models/me/show_list_params.rbi +61 -0
  357. data/rbi/spotted/models/me/show_list_response.rbi +277 -0
  358. data/rbi/spotted/models/me/show_remove_params.rbi +83 -0
  359. data/rbi/spotted/models/me/show_save_params.rbi +56 -0
  360. data/rbi/spotted/models/me/top_list_top_artists_params.rbi +81 -0
  361. data/rbi/spotted/models/me/top_list_top_tracks_params.rbi +81 -0
  362. data/rbi/spotted/models/me/track_check_params.rbi +46 -0
  363. data/rbi/spotted/models/me/track_check_response.rbi +13 -0
  364. data/rbi/spotted/models/me/track_list_params.rbi +88 -0
  365. data/rbi/spotted/models/me/track_list_response.rbi +58 -0
  366. data/rbi/spotted/models/me/track_remove_params.rbi +56 -0
  367. data/rbi/spotted/models/me/track_save_params.rbi +130 -0
  368. data/rbi/spotted/models/me_retrieve_params.rbi +27 -0
  369. data/rbi/spotted/models/me_retrieve_response.rbi +257 -0
  370. data/rbi/spotted/models/narrator_object.rbi +30 -0
  371. data/rbi/spotted/models/paging_playlist_object.rbi +83 -0
  372. data/rbi/spotted/models/playlist_retrieve_params.rbi +112 -0
  373. data/rbi/spotted/models/playlist_retrieve_response.rbi +327 -0
  374. data/rbi/spotted/models/playlist_track_object.rbi +101 -0
  375. data/rbi/spotted/models/playlist_tracks_ref_object.rbi +41 -0
  376. data/rbi/spotted/models/playlist_update_params.rbi +93 -0
  377. data/rbi/spotted/models/playlist_user_object.rbi +109 -0
  378. data/rbi/spotted/models/playlists/follower_check_params.rbi +52 -0
  379. data/rbi/spotted/models/playlists/follower_check_response.rbi +13 -0
  380. data/rbi/spotted/models/playlists/follower_follow_params.rbi +54 -0
  381. data/rbi/spotted/models/playlists/follower_unfollow_params.rbi +32 -0
  382. data/rbi/spotted/models/playlists/image_list_params.rbi +32 -0
  383. data/rbi/spotted/models/playlists/image_list_response.rbi +13 -0
  384. data/rbi/spotted/models/playlists/image_update_params.rbi +45 -0
  385. data/rbi/spotted/models/playlists/track_add_params.rbi +82 -0
  386. data/rbi/spotted/models/playlists/track_add_response.rbi +31 -0
  387. data/rbi/spotted/models/playlists/track_list_params.rbi +141 -0
  388. data/rbi/spotted/models/playlists/track_remove_params.rbi +100 -0
  389. data/rbi/spotted/models/playlists/track_remove_response.rbi +31 -0
  390. data/rbi/spotted/models/playlists/track_update_params.rbi +111 -0
  391. data/rbi/spotted/models/playlists/track_update_response.rbi +31 -0
  392. data/rbi/spotted/models/recommendation_get_params.rbi +864 -0
  393. data/rbi/spotted/models/recommendation_get_response.rbi +152 -0
  394. data/rbi/spotted/models/recommendation_list_available_genre_seeds_params.rbi +30 -0
  395. data/rbi/spotted/models/recommendation_list_available_genre_seeds_response.rbi +26 -0
  396. data/rbi/spotted/models/resume_point_object.rbi +47 -0
  397. data/rbi/spotted/models/search_retrieve_params.rbi +218 -0
  398. data/rbi/spotted/models/search_retrieve_response.rbi +1381 -0
  399. data/rbi/spotted/models/show_list_episodes_params.rbi +86 -0
  400. data/rbi/spotted/models/show_list_params.rbi +74 -0
  401. data/rbi/spotted/models/show_list_response.rbi +238 -0
  402. data/rbi/spotted/models/show_retrieve_params.rbi +59 -0
  403. data/rbi/spotted/models/show_retrieve_response.rbi +305 -0
  404. data/rbi/spotted/models/simplified_artist_object.rbi +121 -0
  405. data/rbi/spotted/models/simplified_chapter_object.rbi +287 -0
  406. data/rbi/spotted/models/simplified_episode_object.rbi +289 -0
  407. data/rbi/spotted/models/simplified_playlist_object.rbi +230 -0
  408. data/rbi/spotted/models/simplified_track_object.rbi +239 -0
  409. data/rbi/spotted/models/time_interval_object.rbi +54 -0
  410. data/rbi/spotted/models/track_list_params.rbi +74 -0
  411. data/rbi/spotted/models/track_list_response.rbi +27 -0
  412. data/rbi/spotted/models/track_object.rbi +556 -0
  413. data/rbi/spotted/models/track_restriction_object.rbi +48 -0
  414. data/rbi/spotted/models/track_retrieve_params.rbi +59 -0
  415. data/rbi/spotted/models/user_retrieve_profile_params.rbi +27 -0
  416. data/rbi/spotted/models/user_retrieve_profile_response.rbi +159 -0
  417. data/rbi/spotted/models/users/playlist_create_params.rbi +107 -0
  418. data/rbi/spotted/models/users/playlist_create_response.rbi +336 -0
  419. data/rbi/spotted/models/users/playlist_list_params.rbi +64 -0
  420. data/rbi/spotted/models.rbi +132 -0
  421. data/rbi/spotted/request_options.rbi +57 -0
  422. data/rbi/spotted/resources/albums.rbi +100 -0
  423. data/rbi/spotted/resources/artists.rbi +129 -0
  424. data/rbi/spotted/resources/audio_analysis.rbi +29 -0
  425. data/rbi/spotted/resources/audio_features.rbi +44 -0
  426. data/rbi/spotted/resources/audiobooks.rbi +105 -0
  427. data/rbi/spotted/resources/browse/categories.rbi +91 -0
  428. data/rbi/spotted/resources/browse.rbi +63 -0
  429. data/rbi/spotted/resources/chapters.rbi +69 -0
  430. data/rbi/spotted/resources/episodes.rbi +66 -0
  431. data/rbi/spotted/resources/markets.rbi +21 -0
  432. data/rbi/spotted/resources/me/albums.rbi +101 -0
  433. data/rbi/spotted/resources/me/audiobooks.rbi +86 -0
  434. data/rbi/spotted/resources/me/episodes.rbi +112 -0
  435. data/rbi/spotted/resources/me/following.rbi +99 -0
  436. data/rbi/spotted/resources/me/player/queue.rbi +45 -0
  437. data/rbi/spotted/resources/me/player.rbi +315 -0
  438. data/rbi/spotted/resources/me/playlists.rbi +34 -0
  439. data/rbi/spotted/resources/me/shows.rbi +101 -0
  440. data/rbi/spotted/resources/me/top.rbi +62 -0
  441. data/rbi/spotted/resources/me/tracks.rbi +112 -0
  442. data/rbi/spotted/resources/me.rbi +49 -0
  443. data/rbi/spotted/resources/playlists/followers.rbi +70 -0
  444. data/rbi/spotted/resources/playlists/images.rbi +47 -0
  445. data/rbi/spotted/resources/playlists/tracks.rbi +177 -0
  446. data/rbi/spotted/resources/playlists.rbi +102 -0
  447. data/rbi/spotted/resources/recommendations.rbi +336 -0
  448. data/rbi/spotted/resources/search.rbi +71 -0
  449. data/rbi/spotted/resources/shows.rbi +100 -0
  450. data/rbi/spotted/resources/tracks.rbi +66 -0
  451. data/rbi/spotted/resources/users/playlists.rbi +78 -0
  452. data/rbi/spotted/resources/users.rbi +29 -0
  453. data/rbi/spotted/version.rbi +5 -0
  454. data/sig/spotted/client.rbs +62 -0
  455. data/sig/spotted/errors.rbs +117 -0
  456. data/sig/spotted/file_part.rbs +21 -0
  457. data/sig/spotted/internal/cursor_url_page.rbs +13 -0
  458. data/sig/spotted/internal/oauth2.rbs +19 -0
  459. data/sig/spotted/internal/transport/base_client.rbs +131 -0
  460. data/sig/spotted/internal/transport/pooled_net_requester.rbs +45 -0
  461. data/sig/spotted/internal/type/array_of.rbs +48 -0
  462. data/sig/spotted/internal/type/base_model.rbs +102 -0
  463. data/sig/spotted/internal/type/base_page.rbs +24 -0
  464. data/sig/spotted/internal/type/boolean.rbs +26 -0
  465. data/sig/spotted/internal/type/converter.rbs +79 -0
  466. data/sig/spotted/internal/type/enum.rbs +32 -0
  467. data/sig/spotted/internal/type/file_input.rbs +25 -0
  468. data/sig/spotted/internal/type/hash_of.rbs +48 -0
  469. data/sig/spotted/internal/type/request_parameters.rbs +17 -0
  470. data/sig/spotted/internal/type/union.rbs +52 -0
  471. data/sig/spotted/internal/type/unknown.rbs +26 -0
  472. data/sig/spotted/internal/util.rbs +185 -0
  473. data/sig/spotted/internal.rbs +9 -0
  474. data/sig/spotted/models/album_list_params.rbs +30 -0
  475. data/sig/spotted/models/album_list_response.rbs +237 -0
  476. data/sig/spotted/models/album_list_tracks_params.rbs +38 -0
  477. data/sig/spotted/models/album_restriction_object.rbs +34 -0
  478. data/sig/spotted/models/album_retrieve_params.rbs +25 -0
  479. data/sig/spotted/models/album_retrieve_response.rbs +222 -0
  480. data/sig/spotted/models/artist_list_albums_params.rbs +49 -0
  481. data/sig/spotted/models/artist_list_albums_response.rbs +141 -0
  482. data/sig/spotted/models/artist_list_params.rbs +20 -0
  483. data/sig/spotted/models/artist_list_related_artists_params.rbs +15 -0
  484. data/sig/spotted/models/artist_list_related_artists_response.rbs +14 -0
  485. data/sig/spotted/models/artist_list_response.rbs +13 -0
  486. data/sig/spotted/models/artist_list_top_tracks_params.rbs +25 -0
  487. data/sig/spotted/models/artist_list_top_tracks_response.rbs +14 -0
  488. data/sig/spotted/models/artist_object.rbs +101 -0
  489. data/sig/spotted/models/artist_retrieve_params.rbs +15 -0
  490. data/sig/spotted/models/audio_analysis_retrieve_params.rbs +15 -0
  491. data/sig/spotted/models/audio_analysis_retrieve_response.rbs +518 -0
  492. data/sig/spotted/models/audio_feature_list_params.rbs +20 -0
  493. data/sig/spotted/models/audio_feature_list_response.rbs +170 -0
  494. data/sig/spotted/models/audio_feature_retrieve_params.rbs +15 -0
  495. data/sig/spotted/models/audio_feature_retrieve_response.rbs +153 -0
  496. data/sig/spotted/models/audiobook_list_chapters_params.rbs +38 -0
  497. data/sig/spotted/models/audiobook_list_params.rbs +30 -0
  498. data/sig/spotted/models/audiobook_list_response.rbs +189 -0
  499. data/sig/spotted/models/audiobook_retrieve_params.rbs +25 -0
  500. data/sig/spotted/models/audiobook_retrieve_response.rbs +174 -0
  501. data/sig/spotted/models/author_object.rbs +15 -0
  502. data/sig/spotted/models/browse/category_get_playlists_params.rbs +34 -0
  503. data/sig/spotted/models/browse/category_get_playlists_response.rbs +30 -0
  504. data/sig/spotted/models/browse/category_list_params.rbs +40 -0
  505. data/sig/spotted/models/browse/category_list_response.rbs +101 -0
  506. data/sig/spotted/models/browse/category_retrieve_params.rbs +27 -0
  507. data/sig/spotted/models/browse/category_retrieve_response.rbs +37 -0
  508. data/sig/spotted/models/browse_get_featured_playlists_params.rbs +38 -0
  509. data/sig/spotted/models/browse_get_featured_playlists_response.rbs +28 -0
  510. data/sig/spotted/models/browse_get_new_releases_params.rbs +32 -0
  511. data/sig/spotted/models/browse_get_new_releases_response.rbs +185 -0
  512. data/sig/spotted/models/chapter_list_params.rbs +30 -0
  513. data/sig/spotted/models/chapter_list_response.rbs +286 -0
  514. data/sig/spotted/models/chapter_restriction_object.rbs +15 -0
  515. data/sig/spotted/models/chapter_retrieve_params.rbs +25 -0
  516. data/sig/spotted/models/chapter_retrieve_response.rbs +271 -0
  517. data/sig/spotted/models/copyright_object.rbs +19 -0
  518. data/sig/spotted/models/episode_list_params.rbs +30 -0
  519. data/sig/spotted/models/episode_list_response.rbs +13 -0
  520. data/sig/spotted/models/episode_object.rbs +259 -0
  521. data/sig/spotted/models/episode_restriction_object.rbs +15 -0
  522. data/sig/spotted/models/episode_retrieve_params.rbs +25 -0
  523. data/sig/spotted/models/external_id_object.rbs +23 -0
  524. data/sig/spotted/models/external_url_object.rbs +15 -0
  525. data/sig/spotted/models/followers_object.rbs +17 -0
  526. data/sig/spotted/models/image_object.rbs +17 -0
  527. data/sig/spotted/models/linked_track_object.rbs +52 -0
  528. data/sig/spotted/models/market_list_params.rbs +14 -0
  529. data/sig/spotted/models/market_list_response.rbs +15 -0
  530. data/sig/spotted/models/me/album_check_params.rbs +25 -0
  531. data/sig/spotted/models/me/album_check_response.rbs +9 -0
  532. data/sig/spotted/models/me/album_list_params.rbs +40 -0
  533. data/sig/spotted/models/me/album_list_response.rbs +249 -0
  534. data/sig/spotted/models/me/album_remove_params.rbs +28 -0
  535. data/sig/spotted/models/me/album_save_params.rbs +28 -0
  536. data/sig/spotted/models/me/audiobook_check_params.rbs +25 -0
  537. data/sig/spotted/models/me/audiobook_check_response.rbs +9 -0
  538. data/sig/spotted/models/me/audiobook_list_params.rbs +34 -0
  539. data/sig/spotted/models/me/audiobook_list_response.rbs +204 -0
  540. data/sig/spotted/models/me/audiobook_remove_params.rbs +25 -0
  541. data/sig/spotted/models/me/audiobook_save_params.rbs +25 -0
  542. data/sig/spotted/models/me/context_object.rbs +47 -0
  543. data/sig/spotted/models/me/device_object.rbs +69 -0
  544. data/sig/spotted/models/me/episode_check_params.rbs +25 -0
  545. data/sig/spotted/models/me/episode_check_response.rbs +9 -0
  546. data/sig/spotted/models/me/episode_list_params.rbs +40 -0
  547. data/sig/spotted/models/me/episode_list_response.rbs +25 -0
  548. data/sig/spotted/models/me/episode_remove_params.rbs +28 -0
  549. data/sig/spotted/models/me/episode_save_params.rbs +26 -0
  550. data/sig/spotted/models/me/following_check_params.rbs +41 -0
  551. data/sig/spotted/models/me/following_check_response.rbs +9 -0
  552. data/sig/spotted/models/me/following_follow_params.rbs +44 -0
  553. data/sig/spotted/models/me/following_list_params.rbs +52 -0
  554. data/sig/spotted/models/me/following_list_response.rbs +94 -0
  555. data/sig/spotted/models/me/following_unfollow_params.rbs +46 -0
  556. data/sig/spotted/models/me/player/queue_add_params.rbs +34 -0
  557. data/sig/spotted/models/me/player/queue_get_params.rbs +19 -0
  558. data/sig/spotted/models/me/player/queue_get_response.rbs +53 -0
  559. data/sig/spotted/models/me/player_get_currently_playing_params.rbs +34 -0
  560. data/sig/spotted/models/me/player_get_currently_playing_response.rbs +160 -0
  561. data/sig/spotted/models/me/player_get_devices_params.rbs +17 -0
  562. data/sig/spotted/models/me/player_get_devices_response.rbs +16 -0
  563. data/sig/spotted/models/me/player_get_state_params.rbs +34 -0
  564. data/sig/spotted/models/me/player_get_state_response.rbs +181 -0
  565. data/sig/spotted/models/me/player_list_recently_played_params.rbs +40 -0
  566. data/sig/spotted/models/me/player_list_recently_played_response.rbs +38 -0
  567. data/sig/spotted/models/me/player_pause_playback_params.rbs +27 -0
  568. data/sig/spotted/models/me/player_seek_to_position_params.rbs +32 -0
  569. data/sig/spotted/models/me/player_set_repeat_mode_params.rbs +32 -0
  570. data/sig/spotted/models/me/player_set_volume_params.rbs +32 -0
  571. data/sig/spotted/models/me/player_skip_next_params.rbs +27 -0
  572. data/sig/spotted/models/me/player_skip_previous_params.rbs +27 -0
  573. data/sig/spotted/models/me/player_start_playback_params.rbs +58 -0
  574. data/sig/spotted/models/me/player_toggle_shuffle_params.rbs +32 -0
  575. data/sig/spotted/models/me/player_transfer_params.rbs +32 -0
  576. data/sig/spotted/models/me/playlist_list_params.rbs +34 -0
  577. data/sig/spotted/models/me/show_check_params.rbs +25 -0
  578. data/sig/spotted/models/me/show_check_response.rbs +9 -0
  579. data/sig/spotted/models/me/show_list_params.rbs +34 -0
  580. data/sig/spotted/models/me/show_list_response.rbs +137 -0
  581. data/sig/spotted/models/me/show_remove_params.rbs +34 -0
  582. data/sig/spotted/models/me/show_save_params.rbs +28 -0
  583. data/sig/spotted/models/me/top_list_top_artists_params.rbs +40 -0
  584. data/sig/spotted/models/me/top_list_top_tracks_params.rbs +40 -0
  585. data/sig/spotted/models/me/track_check_params.rbs +25 -0
  586. data/sig/spotted/models/me/track_check_response.rbs +9 -0
  587. data/sig/spotted/models/me/track_list_params.rbs +40 -0
  588. data/sig/spotted/models/me/track_list_response.rbs +21 -0
  589. data/sig/spotted/models/me/track_remove_params.rbs +28 -0
  590. data/sig/spotted/models/me/track_save_params.rbs +49 -0
  591. data/sig/spotted/models/me_retrieve_params.rbs +14 -0
  592. data/sig/spotted/models/me_retrieve_response.rbs +121 -0
  593. data/sig/spotted/models/narrator_object.rbs +15 -0
  594. data/sig/spotted/models/paging_playlist_object.rbs +50 -0
  595. data/sig/spotted/models/playlist_retrieve_params.rbs +38 -0
  596. data/sig/spotted/models/playlist_retrieve_response.rbs +178 -0
  597. data/sig/spotted/models/playlist_track_object.rbs +55 -0
  598. data/sig/spotted/models/playlist_tracks_ref_object.rbs +19 -0
  599. data/sig/spotted/models/playlist_update_params.rbs +44 -0
  600. data/sig/spotted/models/playlist_user_object.rbs +64 -0
  601. data/sig/spotted/models/playlists/follower_check_params.rbs +27 -0
  602. data/sig/spotted/models/playlists/follower_check_response.rbs +9 -0
  603. data/sig/spotted/models/playlists/follower_follow_params.rbs +27 -0
  604. data/sig/spotted/models/playlists/follower_unfollow_params.rbs +17 -0
  605. data/sig/spotted/models/playlists/image_list_params.rbs +17 -0
  606. data/sig/spotted/models/playlists/image_list_response.rbs +9 -0
  607. data/sig/spotted/models/playlists/image_update_params.rbs +25 -0
  608. data/sig/spotted/models/playlists/track_add_params.rbs +34 -0
  609. data/sig/spotted/models/playlists/track_add_response.rbs +17 -0
  610. data/sig/spotted/models/playlists/track_list_params.rbs +58 -0
  611. data/sig/spotted/models/playlists/track_remove_params.rbs +47 -0
  612. data/sig/spotted/models/playlists/track_remove_response.rbs +17 -0
  613. data/sig/spotted/models/playlists/track_update_params.rbs +58 -0
  614. data/sig/spotted/models/playlists/track_update_response.rbs +17 -0
  615. data/sig/spotted/models/recommendation_get_params.rbs +350 -0
  616. data/sig/spotted/models/recommendation_get_response.rbs +79 -0
  617. data/sig/spotted/models/recommendation_list_available_genre_seeds_params.rbs +15 -0
  618. data/sig/spotted/models/recommendation_list_available_genre_seeds_response.rbs +14 -0
  619. data/sig/spotted/models/resume_point_object.rbs +23 -0
  620. data/sig/spotted/models/search_retrieve_params.rbs +88 -0
  621. data/sig/spotted/models/search_retrieve_response.rbs +706 -0
  622. data/sig/spotted/models/show_list_episodes_params.rbs +38 -0
  623. data/sig/spotted/models/show_list_params.rbs +30 -0
  624. data/sig/spotted/models/show_list_response.rbs +125 -0
  625. data/sig/spotted/models/show_retrieve_params.rbs +25 -0
  626. data/sig/spotted/models/show_retrieve_response.rbs +162 -0
  627. data/sig/spotted/models/simplified_artist_object.rbs +71 -0
  628. data/sig/spotted/models/simplified_chapter_object.rbs +147 -0
  629. data/sig/spotted/models/simplified_episode_object.rbs +147 -0
  630. data/sig/spotted/models/simplified_playlist_object.rbs +126 -0
  631. data/sig/spotted/models/simplified_track_object.rbs +140 -0
  632. data/sig/spotted/models/time_interval_object.rbs +28 -0
  633. data/sig/spotted/models/track_list_params.rbs +30 -0
  634. data/sig/spotted/models/track_list_response.rbs +13 -0
  635. data/sig/spotted/models/track_object.rbs +295 -0
  636. data/sig/spotted/models/track_restriction_object.rbs +15 -0
  637. data/sig/spotted/models/track_retrieve_params.rbs +25 -0
  638. data/sig/spotted/models/user_retrieve_profile_params.rbs +15 -0
  639. data/sig/spotted/models/user_retrieve_profile_response.rbs +85 -0
  640. data/sig/spotted/models/users/playlist_create_params.rbs +44 -0
  641. data/sig/spotted/models/users/playlist_create_response.rbs +180 -0
  642. data/sig/spotted/models/users/playlist_list_params.rbs +34 -0
  643. data/sig/spotted/models.rbs +127 -0
  644. data/sig/spotted/request_options.rbs +34 -0
  645. data/sig/spotted/resources/albums.rbs +27 -0
  646. data/sig/spotted/resources/artists.rbs +37 -0
  647. data/sig/spotted/resources/audio_analysis.rbs +12 -0
  648. data/sig/spotted/resources/audio_features.rbs +17 -0
  649. data/sig/spotted/resources/audiobooks.rbs +27 -0
  650. data/sig/spotted/resources/browse/categories.rbs +29 -0
  651. data/sig/spotted/resources/browse.rbs +22 -0
  652. data/sig/spotted/resources/chapters.rbs +19 -0
  653. data/sig/spotted/resources/episodes.rbs +19 -0
  654. data/sig/spotted/resources/markets.rbs +11 -0
  655. data/sig/spotted/resources/me/albums.rbs +31 -0
  656. data/sig/spotted/resources/me/audiobooks.rbs +27 -0
  657. data/sig/spotted/resources/me/episodes.rbs +31 -0
  658. data/sig/spotted/resources/me/following.rbs +34 -0
  659. data/sig/spotted/resources/me/player/queue.rbs +21 -0
  660. data/sig/spotted/resources/me/player.rbs +88 -0
  661. data/sig/spotted/resources/me/playlists.rbs +15 -0
  662. data/sig/spotted/resources/me/shows.rbs +31 -0
  663. data/sig/spotted/resources/me/top.rbs +23 -0
  664. data/sig/spotted/resources/me/tracks.rbs +32 -0
  665. data/sig/spotted/resources/me.rbs +29 -0
  666. data/sig/spotted/resources/playlists/followers.rbs +26 -0
  667. data/sig/spotted/resources/playlists/images.rbs +20 -0
  668. data/sig/spotted/resources/playlists/tracks.rbs +43 -0
  669. data/sig/spotted/resources/playlists.rbs +30 -0
  670. data/sig/spotted/resources/recommendations.rbs +62 -0
  671. data/sig/spotted/resources/search.rbs +17 -0
  672. data/sig/spotted/resources/shows.rbs +27 -0
  673. data/sig/spotted/resources/tracks.rbs +19 -0
  674. data/sig/spotted/resources/users/playlists.rbs +25 -0
  675. data/sig/spotted/resources/users.rbs +14 -0
  676. data/sig/spotted/version.rbs +3 -0
  677. metadata +734 -0
@@ -0,0 +1,549 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::Recommendations#get
6
+ class RecommendationGetParams < Spotted::Internal::Type::BaseModel
7
+ extend Spotted::Internal::Type::RequestParameters::Converter
8
+ include Spotted::Internal::Type::RequestParameters
9
+
10
+ # @!attribute limit
11
+ # The target size of the list of recommended tracks. For seeds with unusually
12
+ # small pools or when highly restrictive filtering is applied, it may be
13
+ # impossible to generate the requested number of recommended tracks. Debugging
14
+ # information for such cases is available in the response. Default: 20\. Minimum:
15
+ # 1\. Maximum: 100.
16
+ #
17
+ # @return [Integer, nil]
18
+ optional :limit, Integer
19
+
20
+ # @!attribute market
21
+ # An
22
+ # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
23
+ # If a country code is specified, only content that is available in that market
24
+ # will be returned.<br/> If a valid user access token is specified in the request
25
+ # header, the country associated with the user account will take priority over
26
+ # this parameter.<br/> _**Note**: If neither market or user country are provided,
27
+ # the content is considered unavailable for the client._<br/> Users can view the
28
+ # country that is associated with their account in the
29
+ # [account settings](https://www.spotify.com/account/overview/).
30
+ #
31
+ # @return [String, nil]
32
+ optional :market, String
33
+
34
+ # @!attribute max_acousticness
35
+ # For each tunable track attribute, a hard ceiling on the selected track
36
+ # attribute’s value can be provided. See tunable track attributes below for the
37
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
38
+ # out most tracks that are likely to be instrumental.
39
+ #
40
+ # @return [Float, nil]
41
+ optional :max_acousticness, Float
42
+
43
+ # @!attribute max_danceability
44
+ # For each tunable track attribute, a hard ceiling on the selected track
45
+ # attribute’s value can be provided. See tunable track attributes below for the
46
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
47
+ # out most tracks that are likely to be instrumental.
48
+ #
49
+ # @return [Float, nil]
50
+ optional :max_danceability, Float
51
+
52
+ # @!attribute max_duration_ms
53
+ # For each tunable track attribute, a hard ceiling on the selected track
54
+ # attribute’s value can be provided. See tunable track attributes below for the
55
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
56
+ # out most tracks that are likely to be instrumental.
57
+ #
58
+ # @return [Integer, nil]
59
+ optional :max_duration_ms, Integer
60
+
61
+ # @!attribute max_energy
62
+ # For each tunable track attribute, a hard ceiling on the selected track
63
+ # attribute’s value can be provided. See tunable track attributes below for the
64
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
65
+ # out most tracks that are likely to be instrumental.
66
+ #
67
+ # @return [Float, nil]
68
+ optional :max_energy, Float
69
+
70
+ # @!attribute max_instrumentalness
71
+ # For each tunable track attribute, a hard ceiling on the selected track
72
+ # attribute’s value can be provided. See tunable track attributes below for the
73
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
74
+ # out most tracks that are likely to be instrumental.
75
+ #
76
+ # @return [Float, nil]
77
+ optional :max_instrumentalness, Float
78
+
79
+ # @!attribute max_key
80
+ # For each tunable track attribute, a hard ceiling on the selected track
81
+ # attribute’s value can be provided. See tunable track attributes below for the
82
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
83
+ # out most tracks that are likely to be instrumental.
84
+ #
85
+ # @return [Integer, nil]
86
+ optional :max_key, Integer
87
+
88
+ # @!attribute max_liveness
89
+ # For each tunable track attribute, a hard ceiling on the selected track
90
+ # attribute’s value can be provided. See tunable track attributes below for the
91
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
92
+ # out most tracks that are likely to be instrumental.
93
+ #
94
+ # @return [Float, nil]
95
+ optional :max_liveness, Float
96
+
97
+ # @!attribute max_loudness
98
+ # For each tunable track attribute, a hard ceiling on the selected track
99
+ # attribute’s value can be provided. See tunable track attributes below for the
100
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
101
+ # out most tracks that are likely to be instrumental.
102
+ #
103
+ # @return [Float, nil]
104
+ optional :max_loudness, Float
105
+
106
+ # @!attribute max_mode
107
+ # For each tunable track attribute, a hard ceiling on the selected track
108
+ # attribute’s value can be provided. See tunable track attributes below for the
109
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
110
+ # out most tracks that are likely to be instrumental.
111
+ #
112
+ # @return [Integer, nil]
113
+ optional :max_mode, Integer
114
+
115
+ # @!attribute max_popularity
116
+ # For each tunable track attribute, a hard ceiling on the selected track
117
+ # attribute’s value can be provided. See tunable track attributes below for the
118
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
119
+ # out most tracks that are likely to be instrumental.
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :max_popularity, Integer
123
+
124
+ # @!attribute max_speechiness
125
+ # For each tunable track attribute, a hard ceiling on the selected track
126
+ # attribute’s value can be provided. See tunable track attributes below for the
127
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
128
+ # out most tracks that are likely to be instrumental.
129
+ #
130
+ # @return [Float, nil]
131
+ optional :max_speechiness, Float
132
+
133
+ # @!attribute max_tempo
134
+ # For each tunable track attribute, a hard ceiling on the selected track
135
+ # attribute’s value can be provided. See tunable track attributes below for the
136
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
137
+ # out most tracks that are likely to be instrumental.
138
+ #
139
+ # @return [Float, nil]
140
+ optional :max_tempo, Float
141
+
142
+ # @!attribute max_time_signature
143
+ # For each tunable track attribute, a hard ceiling on the selected track
144
+ # attribute’s value can be provided. See tunable track attributes below for the
145
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
146
+ # out most tracks that are likely to be instrumental.
147
+ #
148
+ # @return [Integer, nil]
149
+ optional :max_time_signature, Integer
150
+
151
+ # @!attribute max_valence
152
+ # For each tunable track attribute, a hard ceiling on the selected track
153
+ # attribute’s value can be provided. See tunable track attributes below for the
154
+ # list of available options. For example, `max_instrumentalness=0.35` would filter
155
+ # out most tracks that are likely to be instrumental.
156
+ #
157
+ # @return [Float, nil]
158
+ optional :max_valence, Float
159
+
160
+ # @!attribute min_acousticness
161
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
162
+ # value can be provided. See tunable track attributes below for the list of
163
+ # available options. For example, `min_tempo=140` would restrict results to only
164
+ # those tracks with a tempo of greater than 140 beats per minute.
165
+ #
166
+ # @return [Float, nil]
167
+ optional :min_acousticness, Float
168
+
169
+ # @!attribute min_danceability
170
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
171
+ # value can be provided. See tunable track attributes below for the list of
172
+ # available options. For example, `min_tempo=140` would restrict results to only
173
+ # those tracks with a tempo of greater than 140 beats per minute.
174
+ #
175
+ # @return [Float, nil]
176
+ optional :min_danceability, Float
177
+
178
+ # @!attribute min_duration_ms
179
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
180
+ # value can be provided. See tunable track attributes below for the list of
181
+ # available options. For example, `min_tempo=140` would restrict results to only
182
+ # those tracks with a tempo of greater than 140 beats per minute.
183
+ #
184
+ # @return [Integer, nil]
185
+ optional :min_duration_ms, Integer
186
+
187
+ # @!attribute min_energy
188
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
189
+ # value can be provided. See tunable track attributes below for the list of
190
+ # available options. For example, `min_tempo=140` would restrict results to only
191
+ # those tracks with a tempo of greater than 140 beats per minute.
192
+ #
193
+ # @return [Float, nil]
194
+ optional :min_energy, Float
195
+
196
+ # @!attribute min_instrumentalness
197
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
198
+ # value can be provided. See tunable track attributes below for the list of
199
+ # available options. For example, `min_tempo=140` would restrict results to only
200
+ # those tracks with a tempo of greater than 140 beats per minute.
201
+ #
202
+ # @return [Float, nil]
203
+ optional :min_instrumentalness, Float
204
+
205
+ # @!attribute min_key
206
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
207
+ # value can be provided. See tunable track attributes below for the list of
208
+ # available options. For example, `min_tempo=140` would restrict results to only
209
+ # those tracks with a tempo of greater than 140 beats per minute.
210
+ #
211
+ # @return [Integer, nil]
212
+ optional :min_key, Integer
213
+
214
+ # @!attribute min_liveness
215
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
216
+ # value can be provided. See tunable track attributes below for the list of
217
+ # available options. For example, `min_tempo=140` would restrict results to only
218
+ # those tracks with a tempo of greater than 140 beats per minute.
219
+ #
220
+ # @return [Float, nil]
221
+ optional :min_liveness, Float
222
+
223
+ # @!attribute min_loudness
224
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
225
+ # value can be provided. See tunable track attributes below for the list of
226
+ # available options. For example, `min_tempo=140` would restrict results to only
227
+ # those tracks with a tempo of greater than 140 beats per minute.
228
+ #
229
+ # @return [Float, nil]
230
+ optional :min_loudness, Float
231
+
232
+ # @!attribute min_mode
233
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
234
+ # value can be provided. See tunable track attributes below for the list of
235
+ # available options. For example, `min_tempo=140` would restrict results to only
236
+ # those tracks with a tempo of greater than 140 beats per minute.
237
+ #
238
+ # @return [Integer, nil]
239
+ optional :min_mode, Integer
240
+
241
+ # @!attribute min_popularity
242
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
243
+ # value can be provided. See tunable track attributes below for the list of
244
+ # available options. For example, `min_tempo=140` would restrict results to only
245
+ # those tracks with a tempo of greater than 140 beats per minute.
246
+ #
247
+ # @return [Integer, nil]
248
+ optional :min_popularity, Integer
249
+
250
+ # @!attribute min_speechiness
251
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
252
+ # value can be provided. See tunable track attributes below for the list of
253
+ # available options. For example, `min_tempo=140` would restrict results to only
254
+ # those tracks with a tempo of greater than 140 beats per minute.
255
+ #
256
+ # @return [Float, nil]
257
+ optional :min_speechiness, Float
258
+
259
+ # @!attribute min_tempo
260
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
261
+ # value can be provided. See tunable track attributes below for the list of
262
+ # available options. For example, `min_tempo=140` would restrict results to only
263
+ # those tracks with a tempo of greater than 140 beats per minute.
264
+ #
265
+ # @return [Float, nil]
266
+ optional :min_tempo, Float
267
+
268
+ # @!attribute min_time_signature
269
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
270
+ # value can be provided. See tunable track attributes below for the list of
271
+ # available options. For example, `min_tempo=140` would restrict results to only
272
+ # those tracks with a tempo of greater than 140 beats per minute.
273
+ #
274
+ # @return [Integer, nil]
275
+ optional :min_time_signature, Integer
276
+
277
+ # @!attribute min_valence
278
+ # For each tunable track attribute, a hard floor on the selected track attribute’s
279
+ # value can be provided. See tunable track attributes below for the list of
280
+ # available options. For example, `min_tempo=140` would restrict results to only
281
+ # those tracks with a tempo of greater than 140 beats per minute.
282
+ #
283
+ # @return [Float, nil]
284
+ optional :min_valence, Float
285
+
286
+ # @!attribute seed_artists
287
+ # A comma separated list of
288
+ # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for seed
289
+ # artists. Up to 5 seed values may be provided in any combination of
290
+ # `seed_artists`, `seed_tracks` and `seed_genres`.<br/> _**Note**: only required
291
+ # if `seed_genres` and `seed_tracks` are not set_.
292
+ #
293
+ # @return [String, nil]
294
+ optional :seed_artists, String
295
+
296
+ # @!attribute seed_genres
297
+ # A comma separated list of any genres in the set of
298
+ # [available genre seeds](/documentation/web-api/reference/get-recommendation-genres).
299
+ # Up to 5 seed values may be provided in any combination of `seed_artists`,
300
+ # `seed_tracks` and `seed_genres`.<br/> _**Note**: only required if `seed_artists`
301
+ # and `seed_tracks` are not set_.
302
+ #
303
+ # @return [String, nil]
304
+ optional :seed_genres, String
305
+
306
+ # @!attribute seed_tracks
307
+ # A comma separated list of
308
+ # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for a seed
309
+ # track. Up to 5 seed values may be provided in any combination of `seed_artists`,
310
+ # `seed_tracks` and `seed_genres`.<br/> _**Note**: only required if `seed_artists`
311
+ # and `seed_genres` are not set_.
312
+ #
313
+ # @return [String, nil]
314
+ optional :seed_tracks, String
315
+
316
+ # @!attribute target_acousticness
317
+ # For each of the tunable track attributes (below) a target value may be provided.
318
+ # Tracks with the attribute values nearest to the target values will be preferred.
319
+ # For example, you might request `target_energy=0.6` and
320
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
321
+ # results.
322
+ #
323
+ # @return [Float, nil]
324
+ optional :target_acousticness, Float
325
+
326
+ # @!attribute target_danceability
327
+ # For each of the tunable track attributes (below) a target value may be provided.
328
+ # Tracks with the attribute values nearest to the target values will be preferred.
329
+ # For example, you might request `target_energy=0.6` and
330
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
331
+ # results.
332
+ #
333
+ # @return [Float, nil]
334
+ optional :target_danceability, Float
335
+
336
+ # @!attribute target_duration_ms
337
+ # Target duration of the track (ms)
338
+ #
339
+ # @return [Integer, nil]
340
+ optional :target_duration_ms, Integer
341
+
342
+ # @!attribute target_energy
343
+ # For each of the tunable track attributes (below) a target value may be provided.
344
+ # Tracks with the attribute values nearest to the target values will be preferred.
345
+ # For example, you might request `target_energy=0.6` and
346
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
347
+ # results.
348
+ #
349
+ # @return [Float, nil]
350
+ optional :target_energy, Float
351
+
352
+ # @!attribute target_instrumentalness
353
+ # For each of the tunable track attributes (below) a target value may be provided.
354
+ # Tracks with the attribute values nearest to the target values will be preferred.
355
+ # For example, you might request `target_energy=0.6` and
356
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
357
+ # results.
358
+ #
359
+ # @return [Float, nil]
360
+ optional :target_instrumentalness, Float
361
+
362
+ # @!attribute target_key
363
+ # For each of the tunable track attributes (below) a target value may be provided.
364
+ # Tracks with the attribute values nearest to the target values will be preferred.
365
+ # For example, you might request `target_energy=0.6` and
366
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
367
+ # results.
368
+ #
369
+ # @return [Integer, nil]
370
+ optional :target_key, Integer
371
+
372
+ # @!attribute target_liveness
373
+ # For each of the tunable track attributes (below) a target value may be provided.
374
+ # Tracks with the attribute values nearest to the target values will be preferred.
375
+ # For example, you might request `target_energy=0.6` and
376
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
377
+ # results.
378
+ #
379
+ # @return [Float, nil]
380
+ optional :target_liveness, Float
381
+
382
+ # @!attribute target_loudness
383
+ # For each of the tunable track attributes (below) a target value may be provided.
384
+ # Tracks with the attribute values nearest to the target values will be preferred.
385
+ # For example, you might request `target_energy=0.6` and
386
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
387
+ # results.
388
+ #
389
+ # @return [Float, nil]
390
+ optional :target_loudness, Float
391
+
392
+ # @!attribute target_mode
393
+ # For each of the tunable track attributes (below) a target value may be provided.
394
+ # Tracks with the attribute values nearest to the target values will be preferred.
395
+ # For example, you might request `target_energy=0.6` and
396
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
397
+ # results.
398
+ #
399
+ # @return [Integer, nil]
400
+ optional :target_mode, Integer
401
+
402
+ # @!attribute target_popularity
403
+ # For each of the tunable track attributes (below) a target value may be provided.
404
+ # Tracks with the attribute values nearest to the target values will be preferred.
405
+ # For example, you might request `target_energy=0.6` and
406
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
407
+ # results.
408
+ #
409
+ # @return [Integer, nil]
410
+ optional :target_popularity, Integer
411
+
412
+ # @!attribute target_speechiness
413
+ # For each of the tunable track attributes (below) a target value may be provided.
414
+ # Tracks with the attribute values nearest to the target values will be preferred.
415
+ # For example, you might request `target_energy=0.6` and
416
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
417
+ # results.
418
+ #
419
+ # @return [Float, nil]
420
+ optional :target_speechiness, Float
421
+
422
+ # @!attribute target_tempo
423
+ # Target tempo (BPM)
424
+ #
425
+ # @return [Float, nil]
426
+ optional :target_tempo, Float
427
+
428
+ # @!attribute target_time_signature
429
+ # For each of the tunable track attributes (below) a target value may be provided.
430
+ # Tracks with the attribute values nearest to the target values will be preferred.
431
+ # For example, you might request `target_energy=0.6` and
432
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
433
+ # results.
434
+ #
435
+ # @return [Integer, nil]
436
+ optional :target_time_signature, Integer
437
+
438
+ # @!attribute target_valence
439
+ # For each of the tunable track attributes (below) a target value may be provided.
440
+ # Tracks with the attribute values nearest to the target values will be preferred.
441
+ # For example, you might request `target_energy=0.6` and
442
+ # `target_danceability=0.8`. All target values will be weighed equally in ranking
443
+ # results.
444
+ #
445
+ # @return [Float, nil]
446
+ optional :target_valence, Float
447
+
448
+ # @!method initialize(limit: nil, market: nil, max_acousticness: nil, max_danceability: nil, max_duration_ms: nil, max_energy: nil, max_instrumentalness: nil, max_key: nil, max_liveness: nil, max_loudness: nil, max_mode: nil, max_popularity: nil, max_speechiness: nil, max_tempo: nil, max_time_signature: nil, max_valence: nil, min_acousticness: nil, min_danceability: nil, min_duration_ms: nil, min_energy: nil, min_instrumentalness: nil, min_key: nil, min_liveness: nil, min_loudness: nil, min_mode: nil, min_popularity: nil, min_speechiness: nil, min_tempo: nil, min_time_signature: nil, min_valence: nil, seed_artists: nil, seed_genres: nil, seed_tracks: nil, target_acousticness: nil, target_danceability: nil, target_duration_ms: nil, target_energy: nil, target_instrumentalness: nil, target_key: nil, target_liveness: nil, target_loudness: nil, target_mode: nil, target_popularity: nil, target_speechiness: nil, target_tempo: nil, target_time_signature: nil, target_valence: nil, request_options: {})
449
+ # Some parameter documentations has been truncated, see
450
+ # {Spotted::Models::RecommendationGetParams} for more details.
451
+ #
452
+ # @param limit [Integer] The target size of the list of recommended tracks. For seeds with unusually smal
453
+ #
454
+ # @param market [String] An [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_al
455
+ #
456
+ # @param max_acousticness [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
457
+ #
458
+ # @param max_danceability [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
459
+ #
460
+ # @param max_duration_ms [Integer] For each tunable track attribute, a hard ceiling on the selected track attribute
461
+ #
462
+ # @param max_energy [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
463
+ #
464
+ # @param max_instrumentalness [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
465
+ #
466
+ # @param max_key [Integer] For each tunable track attribute, a hard ceiling on the selected track attribute
467
+ #
468
+ # @param max_liveness [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
469
+ #
470
+ # @param max_loudness [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
471
+ #
472
+ # @param max_mode [Integer] For each tunable track attribute, a hard ceiling on the selected track attribute
473
+ #
474
+ # @param max_popularity [Integer] For each tunable track attribute, a hard ceiling on the selected track attribute
475
+ #
476
+ # @param max_speechiness [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
477
+ #
478
+ # @param max_tempo [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
479
+ #
480
+ # @param max_time_signature [Integer] For each tunable track attribute, a hard ceiling on the selected track attribute
481
+ #
482
+ # @param max_valence [Float] For each tunable track attribute, a hard ceiling on the selected track attribute
483
+ #
484
+ # @param min_acousticness [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
485
+ #
486
+ # @param min_danceability [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
487
+ #
488
+ # @param min_duration_ms [Integer] For each tunable track attribute, a hard floor on the selected track attribute’s
489
+ #
490
+ # @param min_energy [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
491
+ #
492
+ # @param min_instrumentalness [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
493
+ #
494
+ # @param min_key [Integer] For each tunable track attribute, a hard floor on the selected track attribute’s
495
+ #
496
+ # @param min_liveness [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
497
+ #
498
+ # @param min_loudness [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
499
+ #
500
+ # @param min_mode [Integer] For each tunable track attribute, a hard floor on the selected track attribute’s
501
+ #
502
+ # @param min_popularity [Integer] For each tunable track attribute, a hard floor on the selected track attribute’s
503
+ #
504
+ # @param min_speechiness [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
505
+ #
506
+ # @param min_tempo [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
507
+ #
508
+ # @param min_time_signature [Integer] For each tunable track attribute, a hard floor on the selected track attribute’s
509
+ #
510
+ # @param min_valence [Float] For each tunable track attribute, a hard floor on the selected track attribute’s
511
+ #
512
+ # @param seed_artists [String] A comma separated list of [Spotify IDs](/documentation/web-api/concepts/spotify-
513
+ #
514
+ # @param seed_genres [String] A comma separated list of any genres in the set of [available genre seeds](/docu
515
+ #
516
+ # @param seed_tracks [String] A comma separated list of [Spotify IDs](/documentation/web-api/concepts/spotify-
517
+ #
518
+ # @param target_acousticness [Float] For each of the tunable track attributes (below) a target value may be provided.
519
+ #
520
+ # @param target_danceability [Float] For each of the tunable track attributes (below) a target value may be provided.
521
+ #
522
+ # @param target_duration_ms [Integer] Target duration of the track (ms)
523
+ #
524
+ # @param target_energy [Float] For each of the tunable track attributes (below) a target value may be provided.
525
+ #
526
+ # @param target_instrumentalness [Float] For each of the tunable track attributes (below) a target value may be provided.
527
+ #
528
+ # @param target_key [Integer] For each of the tunable track attributes (below) a target value may be provided.
529
+ #
530
+ # @param target_liveness [Float] For each of the tunable track attributes (below) a target value may be provided.
531
+ #
532
+ # @param target_loudness [Float] For each of the tunable track attributes (below) a target value may be provided.
533
+ #
534
+ # @param target_mode [Integer] For each of the tunable track attributes (below) a target value may be provided.
535
+ #
536
+ # @param target_popularity [Integer] For each of the tunable track attributes (below) a target value may be provided.
537
+ #
538
+ # @param target_speechiness [Float] For each of the tunable track attributes (below) a target value may be provided.
539
+ #
540
+ # @param target_tempo [Float] Target tempo (BPM)
541
+ #
542
+ # @param target_time_signature [Integer] For each of the tunable track attributes (below) a target value may be provided.
543
+ #
544
+ # @param target_valence [Float] For each of the tunable track attributes (below) a target value may be provided.
545
+ #
546
+ # @param request_options [Spotted::RequestOptions, Hash{Symbol=>Object}]
547
+ end
548
+ end
549
+ end
@@ -0,0 +1,86 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::Recommendations#get
6
+ class RecommendationGetResponse < Spotted::Internal::Type::BaseModel
7
+ # @!attribute seeds
8
+ # An array of recommendation seed objects.
9
+ #
10
+ # @return [Array<Spotted::Models::RecommendationGetResponse::Seed>]
11
+ required :seeds, -> { Spotted::Internal::Type::ArrayOf[Spotted::Models::RecommendationGetResponse::Seed] }
12
+
13
+ # @!attribute tracks
14
+ # An array of track objects ordered according to the parameters supplied.
15
+ #
16
+ # @return [Array<Spotted::Models::TrackObject>]
17
+ required :tracks, -> { Spotted::Internal::Type::ArrayOf[Spotted::TrackObject] }
18
+
19
+ # @!method initialize(seeds:, tracks:)
20
+ # Some parameter documentations has been truncated, see
21
+ # {Spotted::Models::RecommendationGetResponse} for more details.
22
+ #
23
+ # @param seeds [Array<Spotted::Models::RecommendationGetResponse::Seed>] An array of recommendation seed objects.
24
+ #
25
+ # @param tracks [Array<Spotted::Models::TrackObject>] An array of track objects ordered according to the parameters supplied.
26
+
27
+ class Seed < Spotted::Internal::Type::BaseModel
28
+ # @!attribute id
29
+ # The id used to select this seed. This will be the same as the string used in the
30
+ # `seed_artists`, `seed_tracks` or `seed_genres` parameter.
31
+ #
32
+ # @return [String, nil]
33
+ optional :id, String
34
+
35
+ # @!attribute after_filtering_size
36
+ # The number of tracks available after min\_\* and max\_\* filters have been
37
+ # applied.
38
+ #
39
+ # @return [Integer, nil]
40
+ optional :after_filtering_size, Integer, api_name: :afterFilteringSize
41
+
42
+ # @!attribute after_relinking_size
43
+ # The number of tracks available after relinking for regional availability.
44
+ #
45
+ # @return [Integer, nil]
46
+ optional :after_relinking_size, Integer, api_name: :afterRelinkingSize
47
+
48
+ # @!attribute href
49
+ # A link to the full track or artist data for this seed. For tracks this will be a
50
+ # link to a Track Object. For artists a link to an Artist Object. For genre seeds,
51
+ # this value will be `null`.
52
+ #
53
+ # @return [String, nil]
54
+ optional :href, String
55
+
56
+ # @!attribute initial_pool_size
57
+ # The number of recommended tracks available for this seed.
58
+ #
59
+ # @return [Integer, nil]
60
+ optional :initial_pool_size, Integer, api_name: :initialPoolSize
61
+
62
+ # @!attribute type
63
+ # The entity type of this seed. One of `artist`, `track` or `genre`.
64
+ #
65
+ # @return [String, nil]
66
+ optional :type, String
67
+
68
+ # @!method initialize(id: nil, after_filtering_size: nil, after_relinking_size: nil, href: nil, initial_pool_size: nil, type: nil)
69
+ # Some parameter documentations has been truncated, see
70
+ # {Spotted::Models::RecommendationGetResponse::Seed} for more details.
71
+ #
72
+ # @param id [String] The id used to select this seed. This will be the same as the string used in the
73
+ #
74
+ # @param after_filtering_size [Integer] The number of tracks available after min\_\* and max\_\* filters have been appli
75
+ #
76
+ # @param after_relinking_size [Integer] The number of tracks available after relinking for regional availability.
77
+ #
78
+ # @param href [String] A link to the full track or artist data for this seed. For tracks this will be a
79
+ #
80
+ # @param initial_pool_size [Integer] The number of recommended tracks available for this seed.
81
+ #
82
+ # @param type [String] The entity type of this seed. One of `artist`, `track` or `genre`.
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::Recommendations#list_available_genre_seeds
6
+ class RecommendationListAvailableGenreSeedsParams < Spotted::Internal::Type::BaseModel
7
+ extend Spotted::Internal::Type::RequestParameters::Converter
8
+ include Spotted::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Spotted::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::Recommendations#list_available_genre_seeds
6
+ class RecommendationListAvailableGenreSeedsResponse < Spotted::Internal::Type::BaseModel
7
+ # @!attribute genres
8
+ #
9
+ # @return [Array<String>]
10
+ required :genres, Spotted::Internal::Type::ArrayOf[String]
11
+
12
+ # @!method initialize(genres:)
13
+ # @param genres [Array<String>]
14
+ end
15
+ end
16
+ end