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,628 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::AudioAnalysis#retrieve
6
+ class AudioAnalysisRetrieveResponse < Spotted::Internal::Type::BaseModel
7
+ # @!attribute bars
8
+ # The time intervals of the bars throughout the track. A bar (or measure) is a
9
+ # segment of time defined as a given number of beats.
10
+ #
11
+ # @return [Array<Spotted::Models::TimeIntervalObject>, nil]
12
+ optional :bars, -> { Spotted::Internal::Type::ArrayOf[Spotted::TimeIntervalObject] }
13
+
14
+ # @!attribute beats
15
+ # The time intervals of beats throughout the track. A beat is the basic time unit
16
+ # of a piece of music; for example, each tick of a metronome. Beats are typically
17
+ # multiples of tatums.
18
+ #
19
+ # @return [Array<Spotted::Models::TimeIntervalObject>, nil]
20
+ optional :beats, -> { Spotted::Internal::Type::ArrayOf[Spotted::TimeIntervalObject] }
21
+
22
+ # @!attribute meta
23
+ #
24
+ # @return [Spotted::Models::AudioAnalysisRetrieveResponse::Meta, nil]
25
+ optional :meta, -> { Spotted::Models::AudioAnalysisRetrieveResponse::Meta }
26
+
27
+ # @!attribute sections
28
+ # Sections are defined by large variations in rhythm or timbre, e.g. chorus,
29
+ # verse, bridge, guitar solo, etc. Each section contains its own descriptions of
30
+ # tempo, key, mode, time_signature, and loudness.
31
+ #
32
+ # @return [Array<Spotted::Models::AudioAnalysisRetrieveResponse::Section>, nil]
33
+ optional :sections,
34
+ -> { Spotted::Internal::Type::ArrayOf[Spotted::Models::AudioAnalysisRetrieveResponse::Section] }
35
+
36
+ # @!attribute segments
37
+ # Each segment contains a roughly conisistent sound throughout its duration.
38
+ #
39
+ # @return [Array<Spotted::Models::AudioAnalysisRetrieveResponse::Segment>, nil]
40
+ optional :segments,
41
+ -> { Spotted::Internal::Type::ArrayOf[Spotted::Models::AudioAnalysisRetrieveResponse::Segment] }
42
+
43
+ # @!attribute tatums
44
+ # A tatum represents the lowest regular pulse train that a listener intuitively
45
+ # infers from the timing of perceived musical events (segments).
46
+ #
47
+ # @return [Array<Spotted::Models::TimeIntervalObject>, nil]
48
+ optional :tatums, -> { Spotted::Internal::Type::ArrayOf[Spotted::TimeIntervalObject] }
49
+
50
+ # @!attribute track
51
+ #
52
+ # @return [Spotted::Models::AudioAnalysisRetrieveResponse::Track, nil]
53
+ optional :track, -> { Spotted::Models::AudioAnalysisRetrieveResponse::Track }
54
+
55
+ # @!method initialize(bars: nil, beats: nil, meta: nil, sections: nil, segments: nil, tatums: nil, track: nil)
56
+ # Some parameter documentations has been truncated, see
57
+ # {Spotted::Models::AudioAnalysisRetrieveResponse} for more details.
58
+ #
59
+ # @param bars [Array<Spotted::Models::TimeIntervalObject>] The time intervals of the bars throughout the track. A bar (or measure) is a seg
60
+ #
61
+ # @param beats [Array<Spotted::Models::TimeIntervalObject>] The time intervals of beats throughout the track. A beat is the basic time unit
62
+ #
63
+ # @param meta [Spotted::Models::AudioAnalysisRetrieveResponse::Meta]
64
+ #
65
+ # @param sections [Array<Spotted::Models::AudioAnalysisRetrieveResponse::Section>] Sections are defined by large variations in rhythm or timbre, e.g. chorus, verse
66
+ #
67
+ # @param segments [Array<Spotted::Models::AudioAnalysisRetrieveResponse::Segment>] Each segment contains a roughly conisistent sound throughout its duration.
68
+ #
69
+ # @param tatums [Array<Spotted::Models::TimeIntervalObject>] A tatum represents the lowest regular pulse train that a listener intuitively in
70
+ #
71
+ # @param track [Spotted::Models::AudioAnalysisRetrieveResponse::Track]
72
+
73
+ # @see Spotted::Models::AudioAnalysisRetrieveResponse#meta
74
+ class Meta < Spotted::Internal::Type::BaseModel
75
+ # @!attribute analysis_time
76
+ # The amount of time taken to analyze this track.
77
+ #
78
+ # @return [Float, nil]
79
+ optional :analysis_time, Float
80
+
81
+ # @!attribute analyzer_version
82
+ # The version of the Analyzer used to analyze this track.
83
+ #
84
+ # @return [String, nil]
85
+ optional :analyzer_version, String
86
+
87
+ # @!attribute detailed_status
88
+ # A detailed status code for this track. If analysis data is missing, this code
89
+ # may explain why.
90
+ #
91
+ # @return [String, nil]
92
+ optional :detailed_status, String
93
+
94
+ # @!attribute input_process
95
+ # The method used to read the track's audio data.
96
+ #
97
+ # @return [String, nil]
98
+ optional :input_process, String
99
+
100
+ # @!attribute platform
101
+ # The platform used to read the track's audio data.
102
+ #
103
+ # @return [String, nil]
104
+ optional :platform, String
105
+
106
+ # @!attribute status_code
107
+ # The return code of the analyzer process. 0 if successful, 1 if any errors
108
+ # occurred.
109
+ #
110
+ # @return [Integer, nil]
111
+ optional :status_code, Integer
112
+
113
+ # @!attribute timestamp
114
+ # The Unix timestamp (in seconds) at which this track was analyzed.
115
+ #
116
+ # @return [Integer, nil]
117
+ optional :timestamp, Integer
118
+
119
+ # @!method initialize(analysis_time: nil, analyzer_version: nil, detailed_status: nil, input_process: nil, platform: nil, status_code: nil, timestamp: nil)
120
+ # Some parameter documentations has been truncated, see
121
+ # {Spotted::Models::AudioAnalysisRetrieveResponse::Meta} for more details.
122
+ #
123
+ # @param analysis_time [Float] The amount of time taken to analyze this track.
124
+ #
125
+ # @param analyzer_version [String] The version of the Analyzer used to analyze this track.
126
+ #
127
+ # @param detailed_status [String] A detailed status code for this track. If analysis data is missing, this code ma
128
+ #
129
+ # @param input_process [String] The method used to read the track's audio data.
130
+ #
131
+ # @param platform [String] The platform used to read the track's audio data.
132
+ #
133
+ # @param status_code [Integer] The return code of the analyzer process. 0 if successful, 1 if any errors occurr
134
+ #
135
+ # @param timestamp [Integer] The Unix timestamp (in seconds) at which this track was analyzed.
136
+ end
137
+
138
+ class Section < Spotted::Internal::Type::BaseModel
139
+ # @!attribute confidence
140
+ # The confidence, from 0.0 to 1.0, of the reliability of the section's
141
+ # "designation".
142
+ #
143
+ # @return [Float, nil]
144
+ optional :confidence, Float
145
+
146
+ # @!attribute duration
147
+ # The duration (in seconds) of the section.
148
+ #
149
+ # @return [Float, nil]
150
+ optional :duration, Float
151
+
152
+ # @!attribute key
153
+ # The estimated overall key of the section. The values in this field ranging from
154
+ # 0 to 11 mapping to pitches using standard Pitch Class notation (E.g. 0 = C, 1 =
155
+ # C♯/D♭, 2 = D, and so on). If no key was detected, the value is -1.
156
+ #
157
+ # @return [Integer, nil]
158
+ optional :key, Integer
159
+
160
+ # @!attribute key_confidence
161
+ # The confidence, from 0.0 to 1.0, of the reliability of the key. Songs with many
162
+ # key changes may correspond to low values in this field.
163
+ #
164
+ # @return [Float, nil]
165
+ optional :key_confidence, Float
166
+
167
+ # @!attribute loudness
168
+ # The overall loudness of the section in decibels (dB). Loudness values are useful
169
+ # for comparing relative loudness of sections within tracks.
170
+ #
171
+ # @return [Float, nil]
172
+ optional :loudness, Float
173
+
174
+ # @!attribute mode
175
+ # Indicates the modality (major or minor) of a section, the type of scale from
176
+ # which its melodic content is derived. This field will contain a 0 for "minor", a
177
+ # 1 for "major", or a -1 for no result. Note that the major key (e.g. C major)
178
+ # could more likely be confused with the minor key at 3 semitones lower (e.g. A
179
+ # minor) as both keys carry the same pitches.
180
+ #
181
+ # @return [Float, Spotted::Models::AudioAnalysisRetrieveResponse::Section::Mode, nil]
182
+ optional :mode, enum: -> { Spotted::Models::AudioAnalysisRetrieveResponse::Section::Mode }
183
+
184
+ # @!attribute mode_confidence
185
+ # The confidence, from 0.0 to 1.0, of the reliability of the `mode`.
186
+ #
187
+ # @return [Float, nil]
188
+ optional :mode_confidence, Float
189
+
190
+ # @!attribute start
191
+ # The starting point (in seconds) of the section.
192
+ #
193
+ # @return [Float, nil]
194
+ optional :start, Float
195
+
196
+ # @!attribute tempo
197
+ # The overall estimated tempo of the section in beats per minute (BPM). In musical
198
+ # terminology, tempo is the speed or pace of a given piece and derives directly
199
+ # from the average beat duration.
200
+ #
201
+ # @return [Float, nil]
202
+ optional :tempo, Float
203
+
204
+ # @!attribute tempo_confidence
205
+ # The confidence, from 0.0 to 1.0, of the reliability of the tempo. Some tracks
206
+ # contain tempo changes or sounds which don't contain tempo (like pure speech)
207
+ # which would correspond to a low value in this field.
208
+ #
209
+ # @return [Float, nil]
210
+ optional :tempo_confidence, Float
211
+
212
+ # @!attribute time_signature
213
+ # An estimated time signature. The time signature (meter) is a notational
214
+ # convention to specify how many beats are in each bar (or measure). The time
215
+ # signature ranges from 3 to 7 indicating time signatures of "3/4", to "7/4".
216
+ #
217
+ # @return [Integer, nil]
218
+ optional :time_signature, Integer
219
+
220
+ # @!attribute time_signature_confidence
221
+ # The confidence, from 0.0 to 1.0, of the reliability of the `time_signature`.
222
+ # Sections with time signature changes may correspond to low values in this field.
223
+ #
224
+ # @return [Float, nil]
225
+ optional :time_signature_confidence, Float
226
+
227
+ # @!method initialize(confidence: nil, duration: nil, key: nil, key_confidence: nil, loudness: nil, mode: nil, mode_confidence: nil, start: nil, tempo: nil, tempo_confidence: nil, time_signature: nil, time_signature_confidence: nil)
228
+ # Some parameter documentations has been truncated, see
229
+ # {Spotted::Models::AudioAnalysisRetrieveResponse::Section} for more details.
230
+ #
231
+ # @param confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the section's "designatio
232
+ #
233
+ # @param duration [Float] The duration (in seconds) of the section.
234
+ #
235
+ # @param key [Integer] The estimated overall key of the section. The values in this field ranging from
236
+ #
237
+ # @param key_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the key. Songs with many
238
+ #
239
+ # @param loudness [Float] The overall loudness of the section in decibels (dB). Loudness values are useful
240
+ #
241
+ # @param mode [Float, Spotted::Models::AudioAnalysisRetrieveResponse::Section::Mode] Indicates the modality (major or minor) of a section, the type of scale from whi
242
+ #
243
+ # @param mode_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `mode`.
244
+ #
245
+ # @param start [Float] The starting point (in seconds) of the section.
246
+ #
247
+ # @param tempo [Float] The overall estimated tempo of the section in beats per minute (BPM). In musical
248
+ #
249
+ # @param tempo_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the tempo. Some tracks co
250
+ #
251
+ # @param time_signature [Integer] An estimated time signature. The time signature (meter) is a notational conventi
252
+ #
253
+ # @param time_signature_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `time_signature`. Sec
254
+
255
+ # Indicates the modality (major or minor) of a section, the type of scale from
256
+ # which its melodic content is derived. This field will contain a 0 for "minor", a
257
+ # 1 for "major", or a -1 for no result. Note that the major key (e.g. C major)
258
+ # could more likely be confused with the minor key at 3 semitones lower (e.g. A
259
+ # minor) as both keys carry the same pitches.
260
+ #
261
+ # @see Spotted::Models::AudioAnalysisRetrieveResponse::Section#mode
262
+ module Mode
263
+ extend Spotted::Internal::Type::Enum
264
+
265
+ MINUS_1 = -1
266
+ MODE_0 = 0
267
+ MODE_1 = 1
268
+
269
+ # @!method self.values
270
+ # @return [Array<Float>]
271
+ end
272
+ end
273
+
274
+ class Segment < Spotted::Internal::Type::BaseModel
275
+ # @!attribute confidence
276
+ # The confidence, from 0.0 to 1.0, of the reliability of the segmentation.
277
+ # Segments of the song which are difficult to logically segment (e.g: noise) may
278
+ # correspond to low values in this field.
279
+ #
280
+ # @return [Float, nil]
281
+ optional :confidence, Float
282
+
283
+ # @!attribute duration
284
+ # The duration (in seconds) of the segment.
285
+ #
286
+ # @return [Float, nil]
287
+ optional :duration, Float
288
+
289
+ # @!attribute loudness_end
290
+ # The offset loudness of the segment in decibels (dB). This value should be
291
+ # equivalent to the loudness_start of the following segment.
292
+ #
293
+ # @return [Float, nil]
294
+ optional :loudness_end, Float
295
+
296
+ # @!attribute loudness_max
297
+ # The peak loudness of the segment in decibels (dB). Combined with
298
+ # `loudness_start` and `loudness_max_time`, these components can be used to
299
+ # describe the "attack" of the segment.
300
+ #
301
+ # @return [Float, nil]
302
+ optional :loudness_max, Float
303
+
304
+ # @!attribute loudness_max_time
305
+ # The segment-relative offset of the segment peak loudness in seconds. Combined
306
+ # with `loudness_start` and `loudness_max`, these components can be used to
307
+ # desctibe the "attack" of the segment.
308
+ #
309
+ # @return [Float, nil]
310
+ optional :loudness_max_time, Float
311
+
312
+ # @!attribute loudness_start
313
+ # The onset loudness of the segment in decibels (dB). Combined with `loudness_max`
314
+ # and `loudness_max_time`, these components can be used to describe the "attack"
315
+ # of the segment.
316
+ #
317
+ # @return [Float, nil]
318
+ optional :loudness_start, Float
319
+
320
+ # @!attribute pitches
321
+ # Pitch content is given by a “chroma” vector, corresponding to the 12 pitch
322
+ # classes C, C#, D to B, with values ranging from 0 to 1 that describe the
323
+ # relative dominance of every pitch in the chromatic scale. For example a C Major
324
+ # chord would likely be represented by large values of C, E and G (i.e. classes 0,
325
+ # 4, and 7).
326
+ #
327
+ # Vectors are normalized to 1 by their strongest dimension, therefore noisy sounds
328
+ # are likely represented by values that are all close to 1, while pure tones are
329
+ # described by one value at 1 (the pitch) and others near 0. As can be seen below,
330
+ # the 12 vector indices are a combination of low-power spectrum values at their
331
+ # respective pitch frequencies. ![pitch vector](/assets/audio/Pitch_vector.png)
332
+ #
333
+ # @return [Array<Float>, nil]
334
+ optional :pitches, Spotted::Internal::Type::ArrayOf[Float]
335
+
336
+ # @!attribute start
337
+ # The starting point (in seconds) of the segment.
338
+ #
339
+ # @return [Float, nil]
340
+ optional :start, Float
341
+
342
+ # @!attribute timbre
343
+ # Timbre is the quality of a musical note or sound that distinguishes different
344
+ # types of musical instruments, or voices. It is a complex notion also referred to
345
+ # as sound color, texture, or tone quality, and is derived from the shape of a
346
+ # segment’s spectro-temporal surface, independently of pitch and loudness. The
347
+ # timbre feature is a vector that includes 12 unbounded values roughly centered
348
+ # around 0. Those values are high level abstractions of the spectral surface,
349
+ # ordered by degree of importance.
350
+ #
351
+ # For completeness however, the first dimension represents the average loudness of
352
+ # the segment; second emphasizes brightness; third is more closely correlated to
353
+ # the flatness of a sound; fourth to sounds with a stronger attack; etc. See an
354
+ # image below representing the 12 basis functions (i.e. template segments).
355
+ # ![timbre basis functions](/assets/audio/Timbre_basis_functions.png)
356
+ #
357
+ # The actual timbre of the segment is best described as a linear combination of
358
+ # these 12 basis functions weighted by the coefficient values: timbre = c1 x b1 +
359
+ # c2 x b2 + ... + c12 x b12, where c1 to c12 represent the 12 coefficients and b1
360
+ # to b12 the 12 basis functions as displayed below. Timbre vectors are best used
361
+ # in comparison with each other.
362
+ #
363
+ # @return [Array<Float>, nil]
364
+ optional :timbre, Spotted::Internal::Type::ArrayOf[Float]
365
+
366
+ # @!method initialize(confidence: nil, duration: nil, loudness_end: nil, loudness_max: nil, loudness_max_time: nil, loudness_start: nil, pitches: nil, start: nil, timbre: nil)
367
+ # Some parameter documentations has been truncated, see
368
+ # {Spotted::Models::AudioAnalysisRetrieveResponse::Segment} for more details.
369
+ #
370
+ # @param confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the segmentation. Segment
371
+ #
372
+ # @param duration [Float] The duration (in seconds) of the segment.
373
+ #
374
+ # @param loudness_end [Float] The offset loudness of the segment in decibels (dB). This value should be equiva
375
+ #
376
+ # @param loudness_max [Float] The peak loudness of the segment in decibels (dB). Combined with `loudness_start
377
+ #
378
+ # @param loudness_max_time [Float] The segment-relative offset of the segment peak loudness in seconds. Combined wi
379
+ #
380
+ # @param loudness_start [Float] The onset loudness of the segment in decibels (dB). Combined with `loudness_max`
381
+ #
382
+ # @param pitches [Array<Float>] Pitch content is given by a “chroma” vector, corresponding to the 12 pitch class
383
+ #
384
+ # @param start [Float] The starting point (in seconds) of the segment.
385
+ #
386
+ # @param timbre [Array<Float>] Timbre is the quality of a musical note or sound that distinguishes different ty
387
+ end
388
+
389
+ # @see Spotted::Models::AudioAnalysisRetrieveResponse#track
390
+ class Track < Spotted::Internal::Type::BaseModel
391
+ # @!attribute analysis_channels
392
+ # The number of channels used for analysis. If 1, all channels are summed together
393
+ # to mono before analysis.
394
+ #
395
+ # @return [Integer, nil]
396
+ optional :analysis_channels, Integer
397
+
398
+ # @!attribute analysis_sample_rate
399
+ # The sample rate used to decode and analyze this track. May differ from the
400
+ # actual sample rate of this track available on Spotify.
401
+ #
402
+ # @return [Integer, nil]
403
+ optional :analysis_sample_rate, Integer
404
+
405
+ # @!attribute code_version
406
+ # A version number for the Echo Nest Musical Fingerprint format used in the
407
+ # codestring field.
408
+ #
409
+ # @return [Float, nil]
410
+ optional :code_version, Float
411
+
412
+ # @!attribute codestring
413
+ # An
414
+ # [Echo Nest Musical Fingerprint (ENMFP)](https://academiccommons.columbia.edu/doi/10.7916/D8Q248M4)
415
+ # codestring for this track.
416
+ #
417
+ # @return [String, nil]
418
+ optional :codestring, String
419
+
420
+ # @!attribute duration
421
+ # Length of the track in seconds.
422
+ #
423
+ # @return [Float, nil]
424
+ optional :duration, Float
425
+
426
+ # @!attribute echoprint_version
427
+ # A version number for the EchoPrint format used in the echoprintstring field.
428
+ #
429
+ # @return [Float, nil]
430
+ optional :echoprint_version, Float
431
+
432
+ # @!attribute echoprintstring
433
+ # An [EchoPrint](https://github.com/spotify/echoprint-codegen) codestring for this
434
+ # track.
435
+ #
436
+ # @return [String, nil]
437
+ optional :echoprintstring, String
438
+
439
+ # @!attribute end_of_fade_in
440
+ # The time, in seconds, at which the track's fade-in period ends. If the track has
441
+ # no fade-in, this will be 0.0.
442
+ #
443
+ # @return [Float, nil]
444
+ optional :end_of_fade_in, Float
445
+
446
+ # @!attribute key
447
+ # The key the track is in. Integers map to pitches using standard
448
+ # [Pitch Class notation](https://en.wikipedia.org/wiki/Pitch_class). E.g. 0 = C, 1
449
+ # = C♯/D♭, 2 = D, and so on. If no key was detected, the value is -1.
450
+ #
451
+ # @return [Integer, nil]
452
+ optional :key, Integer
453
+
454
+ # @!attribute key_confidence
455
+ # The confidence, from 0.0 to 1.0, of the reliability of the `key`.
456
+ #
457
+ # @return [Float, nil]
458
+ optional :key_confidence, Float
459
+
460
+ # @!attribute loudness
461
+ # The overall loudness of a track in decibels (dB). Loudness values are averaged
462
+ # across the entire track and are useful for comparing relative loudness of
463
+ # tracks. Loudness is the quality of a sound that is the primary psychological
464
+ # correlate of physical strength (amplitude). Values typically range between -60
465
+ # and 0 db.
466
+ #
467
+ # @return [Float, nil]
468
+ optional :loudness, Float
469
+
470
+ # @!attribute mode
471
+ # Mode indicates the modality (major or minor) of a track, the type of scale from
472
+ # which its melodic content is derived. Major is represented by 1 and minor is 0.
473
+ #
474
+ # @return [Integer, nil]
475
+ optional :mode, Integer
476
+
477
+ # @!attribute mode_confidence
478
+ # The confidence, from 0.0 to 1.0, of the reliability of the `mode`.
479
+ #
480
+ # @return [Float, nil]
481
+ optional :mode_confidence, Float
482
+
483
+ # @!attribute num_samples
484
+ # The exact number of audio samples analyzed from this track. See also
485
+ # `analysis_sample_rate`.
486
+ #
487
+ # @return [Integer, nil]
488
+ optional :num_samples, Integer
489
+
490
+ # @!attribute offset_seconds
491
+ # An offset to the start of the region of the track that was analyzed. (As the
492
+ # entire track is analyzed, this should always be 0.)
493
+ #
494
+ # @return [Integer, nil]
495
+ optional :offset_seconds, Integer
496
+
497
+ # @!attribute rhythm_version
498
+ # A version number for the Rhythmstring used in the rhythmstring field.
499
+ #
500
+ # @return [Float, nil]
501
+ optional :rhythm_version, Float
502
+
503
+ # @!attribute rhythmstring
504
+ # A Rhythmstring for this track. The format of this string is similar to the
505
+ # Synchstring.
506
+ #
507
+ # @return [String, nil]
508
+ optional :rhythmstring, String
509
+
510
+ # @!attribute sample_md5
511
+ # This field will always contain the empty string.
512
+ #
513
+ # @return [String, nil]
514
+ optional :sample_md5, String
515
+
516
+ # @!attribute start_of_fade_out
517
+ # The time, in seconds, at which the track's fade-out period starts. If the track
518
+ # has no fade-out, this should match the track's length.
519
+ #
520
+ # @return [Float, nil]
521
+ optional :start_of_fade_out, Float
522
+
523
+ # @!attribute synch_version
524
+ # A version number for the Synchstring used in the synchstring field.
525
+ #
526
+ # @return [Float, nil]
527
+ optional :synch_version, Float
528
+
529
+ # @!attribute synchstring
530
+ # A [Synchstring](https://github.com/echonest/synchdata) for this track.
531
+ #
532
+ # @return [String, nil]
533
+ optional :synchstring, String
534
+
535
+ # @!attribute tempo
536
+ # The overall estimated tempo of a track in beats per minute (BPM). In musical
537
+ # terminology, tempo is the speed or pace of a given piece and derives directly
538
+ # from the average beat duration.
539
+ #
540
+ # @return [Float, nil]
541
+ optional :tempo, Float
542
+
543
+ # @!attribute tempo_confidence
544
+ # The confidence, from 0.0 to 1.0, of the reliability of the `tempo`.
545
+ #
546
+ # @return [Float, nil]
547
+ optional :tempo_confidence, Float
548
+
549
+ # @!attribute time_signature
550
+ # An estimated time signature. The time signature (meter) is a notational
551
+ # convention to specify how many beats are in each bar (or measure). The time
552
+ # signature ranges from 3 to 7 indicating time signatures of "3/4", to "7/4".
553
+ #
554
+ # @return [Integer, nil]
555
+ optional :time_signature, Integer
556
+
557
+ # @!attribute time_signature_confidence
558
+ # The confidence, from 0.0 to 1.0, of the reliability of the `time_signature`.
559
+ #
560
+ # @return [Float, nil]
561
+ optional :time_signature_confidence, Float
562
+
563
+ # @!attribute window_seconds
564
+ # The length of the region of the track was analyzed, if a subset of the track was
565
+ # analyzed. (As the entire track is analyzed, this should always be 0.)
566
+ #
567
+ # @return [Integer, nil]
568
+ optional :window_seconds, Integer
569
+
570
+ # @!method initialize(analysis_channels: nil, analysis_sample_rate: nil, code_version: nil, codestring: nil, duration: nil, echoprint_version: nil, echoprintstring: nil, end_of_fade_in: nil, key: nil, key_confidence: nil, loudness: nil, mode: nil, mode_confidence: nil, num_samples: nil, offset_seconds: nil, rhythm_version: nil, rhythmstring: nil, sample_md5: nil, start_of_fade_out: nil, synch_version: nil, synchstring: nil, tempo: nil, tempo_confidence: nil, time_signature: nil, time_signature_confidence: nil, window_seconds: nil)
571
+ # Some parameter documentations has been truncated, see
572
+ # {Spotted::Models::AudioAnalysisRetrieveResponse::Track} for more details.
573
+ #
574
+ # @param analysis_channels [Integer] The number of channels used for analysis. If 1, all channels are summed together
575
+ #
576
+ # @param analysis_sample_rate [Integer] The sample rate used to decode and analyze this track. May differ from the actua
577
+ #
578
+ # @param code_version [Float] A version number for the Echo Nest Musical Fingerprint format used in the codest
579
+ #
580
+ # @param codestring [String] An [Echo Nest Musical Fingerprint (ENMFP)](https://academiccommons.columbia.edu/
581
+ #
582
+ # @param duration [Float] Length of the track in seconds.
583
+ #
584
+ # @param echoprint_version [Float] A version number for the EchoPrint format used in the echoprintstring field.
585
+ #
586
+ # @param echoprintstring [String] An [EchoPrint](https://github.com/spotify/echoprint-codegen) codestring for this
587
+ #
588
+ # @param end_of_fade_in [Float] The time, in seconds, at which the track's fade-in period ends. If the track has
589
+ #
590
+ # @param key [Integer] The key the track is in. Integers map to pitches using standard [Pitch Class not
591
+ #
592
+ # @param key_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `key`.
593
+ #
594
+ # @param loudness [Float] The overall loudness of a track in decibels (dB). Loudness values are averaged a
595
+ #
596
+ # @param mode [Integer] Mode indicates the modality (major or minor) of a track, the type of scale from
597
+ #
598
+ # @param mode_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `mode`.
599
+ #
600
+ # @param num_samples [Integer] The exact number of audio samples analyzed from this track. See also `analysis_s
601
+ #
602
+ # @param offset_seconds [Integer] An offset to the start of the region of the track that was analyzed. (As the ent
603
+ #
604
+ # @param rhythm_version [Float] A version number for the Rhythmstring used in the rhythmstring field.
605
+ #
606
+ # @param rhythmstring [String] A Rhythmstring for this track. The format of this string is similar to the Synch
607
+ #
608
+ # @param sample_md5 [String] This field will always contain the empty string.
609
+ #
610
+ # @param start_of_fade_out [Float] The time, in seconds, at which the track's fade-out period starts. If the track
611
+ #
612
+ # @param synch_version [Float] A version number for the Synchstring used in the synchstring field.
613
+ #
614
+ # @param synchstring [String] A [Synchstring](https://github.com/echonest/synchdata) for this track.
615
+ #
616
+ # @param tempo [Float] The overall estimated tempo of a track in beats per minute (BPM). In musical ter
617
+ #
618
+ # @param tempo_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `tempo`.
619
+ #
620
+ # @param time_signature [Integer] An estimated time signature. The time signature (meter) is a notational conventi
621
+ #
622
+ # @param time_signature_confidence [Float] The confidence, from 0.0 to 1.0, of the reliability of the `time_signature`.
623
+ #
624
+ # @param window_seconds [Integer] The length of the region of the track was analyzed, if a subset of the track was
625
+ end
626
+ end
627
+ end
628
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotted
4
+ module Models
5
+ # @see Spotted::Resources::AudioFeatures#list
6
+ class AudioFeatureListParams < Spotted::Internal::Type::BaseModel
7
+ extend Spotted::Internal::Type::RequestParameters::Converter
8
+ include Spotted::Internal::Type::RequestParameters
9
+
10
+ # @!attribute ids
11
+ # A comma-separated list of the
12
+ # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the tracks.
13
+ # Maximum: 100 IDs.
14
+ #
15
+ # @return [String]
16
+ required :ids, String
17
+
18
+ # @!method initialize(ids:, request_options: {})
19
+ # Some parameter documentations has been truncated, see
20
+ # {Spotted::Models::AudioFeatureListParams} for more details.
21
+ #
22
+ # @param ids [String] A comma-separated list of the [Spotify IDs](/documentation/web-api/concepts/spot
23
+ #
24
+ # @param request_options [Spotted::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end