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.
- checksums.yaml +7 -0
 - data/.ignore +2 -0
 - data/CHANGELOG.md +25 -0
 - data/README.md +236 -0
 - data/SECURITY.md +27 -0
 - data/lib/spotted/client.rb +169 -0
 - data/lib/spotted/errors.rb +228 -0
 - data/lib/spotted/file_part.rb +58 -0
 - data/lib/spotted/internal/cursor_url_page.rb +86 -0
 - data/lib/spotted/internal/oauth2.rb +87 -0
 - data/lib/spotted/internal/transport/base_client.rb +567 -0
 - data/lib/spotted/internal/transport/pooled_net_requester.rb +204 -0
 - data/lib/spotted/internal/type/array_of.rb +168 -0
 - data/lib/spotted/internal/type/base_model.rb +529 -0
 - data/lib/spotted/internal/type/base_page.rb +55 -0
 - data/lib/spotted/internal/type/boolean.rb +77 -0
 - data/lib/spotted/internal/type/converter.rb +327 -0
 - data/lib/spotted/internal/type/enum.rb +131 -0
 - data/lib/spotted/internal/type/file_input.rb +111 -0
 - data/lib/spotted/internal/type/hash_of.rb +188 -0
 - data/lib/spotted/internal/type/request_parameters.rb +42 -0
 - data/lib/spotted/internal/type/union.rb +237 -0
 - data/lib/spotted/internal/type/unknown.rb +81 -0
 - data/lib/spotted/internal/util.rb +915 -0
 - data/lib/spotted/internal.rb +20 -0
 - data/lib/spotted/models/album_list_params.rb +43 -0
 - data/lib/spotted/models/album_list_response.rb +297 -0
 - data/lib/spotted/models/album_list_tracks_params.rb +50 -0
 - data/lib/spotted/models/album_restriction_object.rb +39 -0
 - data/lib/spotted/models/album_retrieve_params.rb +33 -0
 - data/lib/spotted/models/album_retrieve_response.rb +287 -0
 - data/lib/spotted/models/artist_list_albums_params.rb +61 -0
 - data/lib/spotted/models/artist_list_albums_response.rb +195 -0
 - data/lib/spotted/models/artist_list_params.rb +27 -0
 - data/lib/spotted/models/artist_list_related_artists_params.rb +14 -0
 - data/lib/spotted/models/artist_list_related_artists_response.rb +16 -0
 - data/lib/spotted/models/artist_list_response.rb +16 -0
 - data/lib/spotted/models/artist_list_top_tracks_params.rb +33 -0
 - data/lib/spotted/models/artist_list_top_tracks_response.rb +16 -0
 - data/lib/spotted/models/artist_object.rb +108 -0
 - data/lib/spotted/models/artist_retrieve_params.rb +14 -0
 - data/lib/spotted/models/audio_analysis_retrieve_params.rb +14 -0
 - data/lib/spotted/models/audio_analysis_retrieve_response.rb +628 -0
 - data/lib/spotted/models/audio_feature_list_params.rb +27 -0
 - data/lib/spotted/models/audio_feature_list_response.rb +214 -0
 - data/lib/spotted/models/audio_feature_retrieve_params.rb +14 -0
 - data/lib/spotted/models/audio_feature_retrieve_response.rb +203 -0
 - data/lib/spotted/models/audiobook_list_chapters_params.rb +50 -0
 - data/lib/spotted/models/audiobook_list_params.rb +43 -0
 - data/lib/spotted/models/audiobook_list_response.rb +266 -0
 - data/lib/spotted/models/audiobook_retrieve_params.rb +33 -0
 - data/lib/spotted/models/audiobook_retrieve_response.rb +255 -0
 - data/lib/spotted/models/author_object.rb +19 -0
 - data/lib/spotted/models/browse/category_get_playlists_params.rb +36 -0
 - data/lib/spotted/models/browse/category_get_playlists_response.rb +29 -0
 - data/lib/spotted/models/browse/category_list_params.rb +51 -0
 - data/lib/spotted/models/browse/category_list_response.rb +121 -0
 - data/lib/spotted/models/browse/category_retrieve_params.rb +34 -0
 - data/lib/spotted/models/browse/category_retrieve_response.rb +47 -0
 - data/lib/spotted/models/browse_get_featured_playlists_params.rb +49 -0
 - data/lib/spotted/models/browse_get_featured_playlists_response.rb +27 -0
 - data/lib/spotted/models/browse_get_new_releases_params.rb +34 -0
 - data/lib/spotted/models/browse_get_new_releases_response.rb +245 -0
 - data/lib/spotted/models/chapter_list_params.rb +43 -0
 - data/lib/spotted/models/chapter_list_response.rb +408 -0
 - data/lib/spotted/models/chapter_restriction_object.rb +29 -0
 - data/lib/spotted/models/chapter_retrieve_params.rb +33 -0
 - data/lib/spotted/models/chapter_retrieve_response.rb +398 -0
 - data/lib/spotted/models/copyright_object.rb +28 -0
 - data/lib/spotted/models/episode_list_params.rb +43 -0
 - data/lib/spotted/models/episode_list_response.rb +16 -0
 - data/lib/spotted/models/episode_object.rb +382 -0
 - data/lib/spotted/models/episode_restriction_object.rb +28 -0
 - data/lib/spotted/models/episode_retrieve_params.rb +33 -0
 - data/lib/spotted/models/external_id_object.rb +35 -0
 - data/lib/spotted/models/external_url_object.rb +20 -0
 - data/lib/spotted/models/followers_object.rb +28 -0
 - data/lib/spotted/models/image_object.rb +35 -0
 - data/lib/spotted/models/linked_track_object.rb +53 -0
 - data/lib/spotted/models/market_list_params.rb +14 -0
 - data/lib/spotted/models/market_list_response.rb +16 -0
 - data/lib/spotted/models/me/album_check_params.rb +29 -0
 - data/lib/spotted/models/me/album_check_response.rb +10 -0
 - data/lib/spotted/models/me/album_list_params.rb +52 -0
 - data/lib/spotted/models/me/album_list_response.rb +318 -0
 - data/lib/spotted/models/me/album_remove_params.rb +31 -0
 - data/lib/spotted/models/me/album_save_params.rb +31 -0
 - data/lib/spotted/models/me/audiobook_check_params.rb +29 -0
 - data/lib/spotted/models/me/audiobook_check_response.rb +10 -0
 - data/lib/spotted/models/me/audiobook_list_params.rb +36 -0
 - data/lib/spotted/models/me/audiobook_list_response.rb +287 -0
 - data/lib/spotted/models/me/audiobook_remove_params.rb +29 -0
 - data/lib/spotted/models/me/audiobook_save_params.rb +29 -0
 - data/lib/spotted/models/me/context_object.rb +46 -0
 - data/lib/spotted/models/me/device_object.rb +82 -0
 - data/lib/spotted/models/me/episode_check_params.rb +29 -0
 - data/lib/spotted/models/me/episode_check_response.rb +10 -0
 - data/lib/spotted/models/me/episode_list_params.rb +52 -0
 - data/lib/spotted/models/me/episode_list_response.rb +32 -0
 - data/lib/spotted/models/me/episode_remove_params.rb +31 -0
 - data/lib/spotted/models/me/episode_save_params.rb +31 -0
 - data/lib/spotted/models/me/following_check_params.rb +49 -0
 - data/lib/spotted/models/me/following_check_response.rb +10 -0
 - data/lib/spotted/models/me/following_follow_params.rb +50 -0
 - data/lib/spotted/models/me/following_list_params.rb +53 -0
 - data/lib/spotted/models/me/following_list_response.rb +94 -0
 - data/lib/spotted/models/me/following_unfollow_params.rb +50 -0
 - data/lib/spotted/models/me/player/queue_add_params.rb +38 -0
 - data/lib/spotted/models/me/player/queue_get_params.rb +18 -0
 - data/lib/spotted/models/me/player/queue_get_response.rb +59 -0
 - data/lib/spotted/models/me/player_get_currently_playing_params.rb +48 -0
 - data/lib/spotted/models/me/player_get_currently_playing_response.rb +175 -0
 - data/lib/spotted/models/me/player_get_devices_params.rb +16 -0
 - data/lib/spotted/models/me/player_get_devices_response.rb +18 -0
 - data/lib/spotted/models/me/player_get_state_params.rb +48 -0
 - data/lib/spotted/models/me/player_get_state_response.rb +200 -0
 - data/lib/spotted/models/me/player_list_recently_played_params.rb +45 -0
 - data/lib/spotted/models/me/player_list_recently_played_response.rb +35 -0
 - data/lib/spotted/models/me/player_pause_playback_params.rb +28 -0
 - data/lib/spotted/models/me/player_seek_to_position_params.rb +38 -0
 - data/lib/spotted/models/me/player_set_repeat_mode_params.rb +38 -0
 - data/lib/spotted/models/me/player_set_volume_params.rb +36 -0
 - data/lib/spotted/models/me/player_skip_next_params.rb +28 -0
 - data/lib/spotted/models/me/player_skip_previous_params.rb +28 -0
 - data/lib/spotted/models/me/player_start_playback_params.rb +68 -0
 - data/lib/spotted/models/me/player_toggle_shuffle_params.rb +37 -0
 - data/lib/spotted/models/me/player_transfer_params.rb +40 -0
 - data/lib/spotted/models/me/playlist_list_params.rb +36 -0
 - data/lib/spotted/models/me/show_check_params.rb +29 -0
 - data/lib/spotted/models/me/show_check_response.rb +10 -0
 - data/lib/spotted/models/me/show_list_params.rb +36 -0
 - data/lib/spotted/models/me/show_list_response.rb +197 -0
 - data/lib/spotted/models/me/show_remove_params.rb +47 -0
 - data/lib/spotted/models/me/show_save_params.rb +31 -0
 - data/lib/spotted/models/me/top_list_top_artists_params.rb +47 -0
 - data/lib/spotted/models/me/top_list_top_tracks_params.rb +47 -0
 - data/lib/spotted/models/me/track_check_params.rb +29 -0
 - data/lib/spotted/models/me/track_check_response.rb +10 -0
 - data/lib/spotted/models/me/track_list_params.rb +52 -0
 - data/lib/spotted/models/me/track_list_response.rb +34 -0
 - data/lib/spotted/models/me/track_remove_params.rb +31 -0
 - data/lib/spotted/models/me/track_save_params.rb +74 -0
 - data/lib/spotted/models/me_retrieve_params.rb +14 -0
 - data/lib/spotted/models/me_retrieve_response.rb +157 -0
 - data/lib/spotted/models/narrator_object.rb +19 -0
 - data/lib/spotted/models/paging_playlist_object.rb +66 -0
 - data/lib/spotted/models/playlist_retrieve_params.rb +63 -0
 - data/lib/spotted/models/playlist_retrieve_response.rb +217 -0
 - data/lib/spotted/models/playlist_track_object.rb +64 -0
 - data/lib/spotted/models/playlist_tracks_ref_object.rb +28 -0
 - data/lib/spotted/models/playlist_update_params.rb +56 -0
 - data/lib/spotted/models/playlist_user_object.rb +65 -0
 - data/lib/spotted/models/playlists/follower_check_params.rb +29 -0
 - data/lib/spotted/models/playlists/follower_check_response.rb +10 -0
 - data/lib/spotted/models/playlists/follower_follow_params.rb +30 -0
 - data/lib/spotted/models/playlists/follower_unfollow_params.rb +16 -0
 - data/lib/spotted/models/playlists/image_list_params.rb +16 -0
 - data/lib/spotted/models/playlists/image_list_response.rb +10 -0
 - data/lib/spotted/models/playlists/image_update_params.rb +24 -0
 - data/lib/spotted/models/playlists/track_add_params.rb +45 -0
 - data/lib/spotted/models/playlists/track_add_response.rb +18 -0
 - data/lib/spotted/models/playlists/track_list_params.rb +82 -0
 - data/lib/spotted/models/playlists/track_remove_params.rb +52 -0
 - data/lib/spotted/models/playlists/track_remove_response.rb +18 -0
 - data/lib/spotted/models/playlists/track_update_params.rb +67 -0
 - data/lib/spotted/models/playlists/track_update_response.rb +18 -0
 - data/lib/spotted/models/recommendation_get_params.rb +549 -0
 - data/lib/spotted/models/recommendation_get_response.rb +86 -0
 - data/lib/spotted/models/recommendation_list_available_genre_seeds_params.rb +14 -0
 - data/lib/spotted/models/recommendation_list_available_genre_seeds_response.rb +16 -0
 - data/lib/spotted/models/resume_point_object.rb +27 -0
 - data/lib/spotted/models/search_retrieve_params.rb +120 -0
 - data/lib/spotted/models/search_retrieve_response.rb +930 -0
 - data/lib/spotted/models/show_list_episodes_params.rb +50 -0
 - data/lib/spotted/models/show_list_params.rb +43 -0
 - data/lib/spotted/models/show_list_response.rb +176 -0
 - data/lib/spotted/models/show_retrieve_params.rb +33 -0
 - data/lib/spotted/models/show_retrieve_response.rb +238 -0
 - data/lib/spotted/models/simplified_artist_object.rb +73 -0
 - data/lib/spotted/models/simplified_chapter_object.rb +209 -0
 - data/lib/spotted/models/simplified_episode_object.rb +211 -0
 - data/lib/spotted/models/simplified_playlist_object.rb +147 -0
 - data/lib/spotted/models/simplified_track_object.rb +161 -0
 - data/lib/spotted/models/time_interval_object.rb +32 -0
 - data/lib/spotted/models/track_list_params.rb +43 -0
 - data/lib/spotted/models/track_list_response.rb +16 -0
 - data/lib/spotted/models/track_object.rb +375 -0
 - data/lib/spotted/models/track_restriction_object.rb +28 -0
 - data/lib/spotted/models/track_retrieve_params.rb +33 -0
 - data/lib/spotted/models/user_retrieve_profile_params.rb +14 -0
 - data/lib/spotted/models/user_retrieve_profile_response.rb +90 -0
 - data/lib/spotted/models/users/playlist_create_params.rb +65 -0
 - data/lib/spotted/models/users/playlist_create_response.rb +219 -0
 - data/lib/spotted/models/users/playlist_list_params.rb +36 -0
 - data/lib/spotted/models.rb +168 -0
 - data/lib/spotted/request_options.rb +77 -0
 - data/lib/spotted/resources/albums.rb +102 -0
 - data/lib/spotted/resources/artists.rb +150 -0
 - data/lib/spotted/resources/audio_analysis.rb +41 -0
 - data/lib/spotted/resources/audio_features.rb +67 -0
 - data/lib/spotted/resources/audiobooks.rb +105 -0
 - data/lib/spotted/resources/browse/categories.rb +105 -0
 - data/lib/spotted/resources/browse.rb +78 -0
 - data/lib/spotted/resources/chapters.rb +72 -0
 - data/lib/spotted/resources/episodes.rb +69 -0
 - data/lib/spotted/resources/markets.rb +32 -0
 - data/lib/spotted/resources/me/albums.rb +127 -0
 - data/lib/spotted/resources/me/audiobooks.rb +121 -0
 - data/lib/spotted/resources/me/episodes.rb +138 -0
 - data/lib/spotted/resources/me/following.rb +133 -0
 - data/lib/spotted/resources/me/player/queue.rb +65 -0
 - data/lib/spotted/resources/me/player.rb +382 -0
 - data/lib/spotted/resources/me/playlists.rb +44 -0
 - data/lib/spotted/resources/me/shows.rb +127 -0
 - data/lib/spotted/resources/me/top.rb +76 -0
 - data/lib/spotted/resources/me/tracks.rb +121 -0
 - data/lib/spotted/resources/me.rb +69 -0
 - data/lib/spotted/resources/playlists/followers.rb +93 -0
 - data/lib/spotted/resources/playlists/images.rb +67 -0
 - data/lib/spotted/resources/playlists/tracks.rb +157 -0
 - data/lib/spotted/resources/playlists.rb +91 -0
 - data/lib/spotted/resources/recommendations.rb +160 -0
 - data/lib/spotted/resources/search.rb +51 -0
 - data/lib/spotted/resources/shows.rb +102 -0
 - data/lib/spotted/resources/tracks.rb +69 -0
 - data/lib/spotted/resources/users/playlists.rb +82 -0
 - data/lib/spotted/resources/users.rb +41 -0
 - data/lib/spotted/version.rb +5 -0
 - data/lib/spotted.rb +257 -0
 - data/manifest.yaml +15 -0
 - data/rbi/spotted/client.rbi +104 -0
 - data/rbi/spotted/errors.rbi +205 -0
 - data/rbi/spotted/file_part.rbi +37 -0
 - data/rbi/spotted/internal/cursor_url_page.rbi +22 -0
 - data/rbi/spotted/internal/oauth2.rbi +34 -0
 - data/rbi/spotted/internal/transport/base_client.rbi +292 -0
 - data/rbi/spotted/internal/transport/pooled_net_requester.rbi +79 -0
 - data/rbi/spotted/internal/type/array_of.rbi +104 -0
 - data/rbi/spotted/internal/type/base_model.rbi +302 -0
 - data/rbi/spotted/internal/type/base_page.rbi +42 -0
 - data/rbi/spotted/internal/type/boolean.rbi +58 -0
 - data/rbi/spotted/internal/type/converter.rbi +216 -0
 - data/rbi/spotted/internal/type/enum.rbi +82 -0
 - data/rbi/spotted/internal/type/file_input.rbi +59 -0
 - data/rbi/spotted/internal/type/hash_of.rbi +104 -0
 - data/rbi/spotted/internal/type/request_parameters.rbi +29 -0
 - data/rbi/spotted/internal/type/union.rbi +128 -0
 - data/rbi/spotted/internal/type/unknown.rbi +58 -0
 - data/rbi/spotted/internal/util.rbi +484 -0
 - data/rbi/spotted/internal.rbi +16 -0
 - data/rbi/spotted/models/album_list_params.rbi +74 -0
 - data/rbi/spotted/models/album_list_response.rbi +479 -0
 - data/rbi/spotted/models/album_list_tracks_params.rbi +86 -0
 - data/rbi/spotted/models/album_restriction_object.rbi +82 -0
 - data/rbi/spotted/models/album_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/album_retrieve_response.rbi +439 -0
 - data/rbi/spotted/models/artist_list_albums_params.rbi +103 -0
 - data/rbi/spotted/models/artist_list_albums_response.rbi +338 -0
 - data/rbi/spotted/models/artist_list_params.rbi +44 -0
 - data/rbi/spotted/models/artist_list_related_artists_params.rbi +30 -0
 - data/rbi/spotted/models/artist_list_related_artists_response.rbi +30 -0
 - data/rbi/spotted/models/artist_list_response.rbi +27 -0
 - data/rbi/spotted/models/artist_list_top_tracks_params.rbi +59 -0
 - data/rbi/spotted/models/artist_list_top_tracks_response.rbi +30 -0
 - data/rbi/spotted/models/artist_object.rbi +166 -0
 - data/rbi/spotted/models/artist_retrieve_params.rbi +27 -0
 - data/rbi/spotted/models/audio_analysis_retrieve_params.rbi +30 -0
 - data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +1080 -0
 - data/rbi/spotted/models/audio_feature_list_params.rbi +44 -0
 - data/rbi/spotted/models/audio_feature_list_response.rbi +382 -0
 - data/rbi/spotted/models/audio_feature_retrieve_params.rbi +27 -0
 - data/rbi/spotted/models/audio_feature_retrieve_response.rbi +338 -0
 - data/rbi/spotted/models/audiobook_list_chapters_params.rbi +89 -0
 - data/rbi/spotted/models/audiobook_list_params.rbi +74 -0
 - data/rbi/spotted/models/audiobook_list_response.rbi +377 -0
 - data/rbi/spotted/models/audiobook_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/audiobook_retrieve_response.rbi +332 -0
 - data/rbi/spotted/models/author_object.rbi +30 -0
 - data/rbi/spotted/models/browse/category_get_playlists_params.rbi +64 -0
 - data/rbi/spotted/models/browse/category_get_playlists_response.rbi +51 -0
 - data/rbi/spotted/models/browse/category_list_params.rbi +89 -0
 - data/rbi/spotted/models/browse/category_list_response.rbi +204 -0
 - data/rbi/spotted/models/browse/category_retrieve_params.rbi +62 -0
 - data/rbi/spotted/models/browse/category_retrieve_response.rbi +68 -0
 - data/rbi/spotted/models/browse_get_featured_playlists_params.rbi +87 -0
 - data/rbi/spotted/models/browse_get_featured_playlists_response.rbi +49 -0
 - data/rbi/spotted/models/browse_get_new_releases_params.rbi +59 -0
 - data/rbi/spotted/models/browse_get_new_releases_response.rbi +423 -0
 - data/rbi/spotted/models/chapter_list_params.rbi +74 -0
 - data/rbi/spotted/models/chapter_list_response.rbi +588 -0
 - data/rbi/spotted/models/chapter_restriction_object.rbi +50 -0
 - data/rbi/spotted/models/chapter_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/chapter_retrieve_response.rbi +551 -0
 - data/rbi/spotted/models/copyright_object.rbi +41 -0
 - data/rbi/spotted/models/episode_list_params.rbi +74 -0
 - data/rbi/spotted/models/episode_list_response.rbi +30 -0
 - data/rbi/spotted/models/episode_object.rbi +485 -0
 - data/rbi/spotted/models/episode_restriction_object.rbi +48 -0
 - data/rbi/spotted/models/episode_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/external_id_object.rbi +50 -0
 - data/rbi/spotted/models/external_url_object.rbi +32 -0
 - data/rbi/spotted/models/followers_object.rbi +42 -0
 - data/rbi/spotted/models/image_object.rbi +47 -0
 - data/rbi/spotted/models/linked_track_object.rbi +88 -0
 - data/rbi/spotted/models/market_list_params.rbi +27 -0
 - data/rbi/spotted/models/market_list_response.rbi +26 -0
 - data/rbi/spotted/models/me/album_check_params.rbi +46 -0
 - data/rbi/spotted/models/me/album_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/album_list_params.rbi +88 -0
 - data/rbi/spotted/models/me/album_list_response.rbi +529 -0
 - data/rbi/spotted/models/me/album_remove_params.rbi +56 -0
 - data/rbi/spotted/models/me/album_save_params.rbi +56 -0
 - data/rbi/spotted/models/me/audiobook_check_params.rbi +46 -0
 - data/rbi/spotted/models/me/audiobook_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/audiobook_list_params.rbi +61 -0
 - data/rbi/spotted/models/me/audiobook_list_response.rbi +414 -0
 - data/rbi/spotted/models/me/audiobook_remove_params.rbi +49 -0
 - data/rbi/spotted/models/me/audiobook_save_params.rbi +46 -0
 - data/rbi/spotted/models/me/context_object.rbi +77 -0
 - data/rbi/spotted/models/me/device_object.rbi +123 -0
 - data/rbi/spotted/models/me/episode_check_params.rbi +46 -0
 - data/rbi/spotted/models/me/episode_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/episode_list_params.rbi +88 -0
 - data/rbi/spotted/models/me/episode_list_response.rbi +55 -0
 - data/rbi/spotted/models/me/episode_remove_params.rbi +56 -0
 - data/rbi/spotted/models/me/episode_save_params.rbi +53 -0
 - data/rbi/spotted/models/me/following_check_params.rbi +86 -0
 - data/rbi/spotted/models/me/following_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/following_follow_params.rbi +91 -0
 - data/rbi/spotted/models/me/following_list_params.rbi +89 -0
 - data/rbi/spotted/models/me/following_list_response.rbi +187 -0
 - data/rbi/spotted/models/me/following_unfollow_params.rbi +97 -0
 - data/rbi/spotted/models/me/player/queue_add_params.rbi +63 -0
 - data/rbi/spotted/models/me/player/queue_get_params.rbi +34 -0
 - data/rbi/spotted/models/me/player/queue_get_response.rbi +143 -0
 - data/rbi/spotted/models/me/player_get_currently_playing_params.rbi +88 -0
 - data/rbi/spotted/models/me/player_get_currently_playing_response.rbi +304 -0
 - data/rbi/spotted/models/me/player_get_devices_params.rbi +32 -0
 - data/rbi/spotted/models/me/player_get_devices_response.rbi +34 -0
 - data/rbi/spotted/models/me/player_get_state_params.rbi +85 -0
 - data/rbi/spotted/models/me/player_get_state_response.rbi +335 -0
 - data/rbi/spotted/models/me/player_list_recently_played_params.rbi +77 -0
 - data/rbi/spotted/models/me/player_list_recently_played_response.rbi +67 -0
 - data/rbi/spotted/models/me/player_pause_playback_params.rbi +50 -0
 - data/rbi/spotted/models/me/player_seek_to_position_params.rbi +65 -0
 - data/rbi/spotted/models/me/player_set_repeat_mode_params.rbi +65 -0
 - data/rbi/spotted/models/me/player_set_volume_params.rbi +61 -0
 - data/rbi/spotted/models/me/player_skip_next_params.rbi +47 -0
 - data/rbi/spotted/models/me/player_skip_previous_params.rbi +50 -0
 - data/rbi/spotted/models/me/player_start_playback_params.rbi +113 -0
 - data/rbi/spotted/models/me/player_toggle_shuffle_params.rbi +63 -0
 - data/rbi/spotted/models/me/player_transfer_params.rbi +66 -0
 - data/rbi/spotted/models/me/playlist_list_params.rbi +61 -0
 - data/rbi/spotted/models/me/show_check_params.rbi +46 -0
 - data/rbi/spotted/models/me/show_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/show_list_params.rbi +61 -0
 - data/rbi/spotted/models/me/show_list_response.rbi +277 -0
 - data/rbi/spotted/models/me/show_remove_params.rbi +83 -0
 - data/rbi/spotted/models/me/show_save_params.rbi +56 -0
 - data/rbi/spotted/models/me/top_list_top_artists_params.rbi +81 -0
 - data/rbi/spotted/models/me/top_list_top_tracks_params.rbi +81 -0
 - data/rbi/spotted/models/me/track_check_params.rbi +46 -0
 - data/rbi/spotted/models/me/track_check_response.rbi +13 -0
 - data/rbi/spotted/models/me/track_list_params.rbi +88 -0
 - data/rbi/spotted/models/me/track_list_response.rbi +58 -0
 - data/rbi/spotted/models/me/track_remove_params.rbi +56 -0
 - data/rbi/spotted/models/me/track_save_params.rbi +130 -0
 - data/rbi/spotted/models/me_retrieve_params.rbi +27 -0
 - data/rbi/spotted/models/me_retrieve_response.rbi +257 -0
 - data/rbi/spotted/models/narrator_object.rbi +30 -0
 - data/rbi/spotted/models/paging_playlist_object.rbi +83 -0
 - data/rbi/spotted/models/playlist_retrieve_params.rbi +112 -0
 - data/rbi/spotted/models/playlist_retrieve_response.rbi +327 -0
 - data/rbi/spotted/models/playlist_track_object.rbi +101 -0
 - data/rbi/spotted/models/playlist_tracks_ref_object.rbi +41 -0
 - data/rbi/spotted/models/playlist_update_params.rbi +93 -0
 - data/rbi/spotted/models/playlist_user_object.rbi +109 -0
 - data/rbi/spotted/models/playlists/follower_check_params.rbi +52 -0
 - data/rbi/spotted/models/playlists/follower_check_response.rbi +13 -0
 - data/rbi/spotted/models/playlists/follower_follow_params.rbi +54 -0
 - data/rbi/spotted/models/playlists/follower_unfollow_params.rbi +32 -0
 - data/rbi/spotted/models/playlists/image_list_params.rbi +32 -0
 - data/rbi/spotted/models/playlists/image_list_response.rbi +13 -0
 - data/rbi/spotted/models/playlists/image_update_params.rbi +45 -0
 - data/rbi/spotted/models/playlists/track_add_params.rbi +82 -0
 - data/rbi/spotted/models/playlists/track_add_response.rbi +31 -0
 - data/rbi/spotted/models/playlists/track_list_params.rbi +141 -0
 - data/rbi/spotted/models/playlists/track_remove_params.rbi +100 -0
 - data/rbi/spotted/models/playlists/track_remove_response.rbi +31 -0
 - data/rbi/spotted/models/playlists/track_update_params.rbi +111 -0
 - data/rbi/spotted/models/playlists/track_update_response.rbi +31 -0
 - data/rbi/spotted/models/recommendation_get_params.rbi +864 -0
 - data/rbi/spotted/models/recommendation_get_response.rbi +152 -0
 - data/rbi/spotted/models/recommendation_list_available_genre_seeds_params.rbi +30 -0
 - data/rbi/spotted/models/recommendation_list_available_genre_seeds_response.rbi +26 -0
 - data/rbi/spotted/models/resume_point_object.rbi +47 -0
 - data/rbi/spotted/models/search_retrieve_params.rbi +218 -0
 - data/rbi/spotted/models/search_retrieve_response.rbi +1381 -0
 - data/rbi/spotted/models/show_list_episodes_params.rbi +86 -0
 - data/rbi/spotted/models/show_list_params.rbi +74 -0
 - data/rbi/spotted/models/show_list_response.rbi +238 -0
 - data/rbi/spotted/models/show_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/show_retrieve_response.rbi +305 -0
 - data/rbi/spotted/models/simplified_artist_object.rbi +121 -0
 - data/rbi/spotted/models/simplified_chapter_object.rbi +287 -0
 - data/rbi/spotted/models/simplified_episode_object.rbi +289 -0
 - data/rbi/spotted/models/simplified_playlist_object.rbi +230 -0
 - data/rbi/spotted/models/simplified_track_object.rbi +239 -0
 - data/rbi/spotted/models/time_interval_object.rbi +54 -0
 - data/rbi/spotted/models/track_list_params.rbi +74 -0
 - data/rbi/spotted/models/track_list_response.rbi +27 -0
 - data/rbi/spotted/models/track_object.rbi +556 -0
 - data/rbi/spotted/models/track_restriction_object.rbi +48 -0
 - data/rbi/spotted/models/track_retrieve_params.rbi +59 -0
 - data/rbi/spotted/models/user_retrieve_profile_params.rbi +27 -0
 - data/rbi/spotted/models/user_retrieve_profile_response.rbi +159 -0
 - data/rbi/spotted/models/users/playlist_create_params.rbi +107 -0
 - data/rbi/spotted/models/users/playlist_create_response.rbi +336 -0
 - data/rbi/spotted/models/users/playlist_list_params.rbi +64 -0
 - data/rbi/spotted/models.rbi +132 -0
 - data/rbi/spotted/request_options.rbi +57 -0
 - data/rbi/spotted/resources/albums.rbi +100 -0
 - data/rbi/spotted/resources/artists.rbi +129 -0
 - data/rbi/spotted/resources/audio_analysis.rbi +29 -0
 - data/rbi/spotted/resources/audio_features.rbi +44 -0
 - data/rbi/spotted/resources/audiobooks.rbi +105 -0
 - data/rbi/spotted/resources/browse/categories.rbi +91 -0
 - data/rbi/spotted/resources/browse.rbi +63 -0
 - data/rbi/spotted/resources/chapters.rbi +69 -0
 - data/rbi/spotted/resources/episodes.rbi +66 -0
 - data/rbi/spotted/resources/markets.rbi +21 -0
 - data/rbi/spotted/resources/me/albums.rbi +101 -0
 - data/rbi/spotted/resources/me/audiobooks.rbi +86 -0
 - data/rbi/spotted/resources/me/episodes.rbi +112 -0
 - data/rbi/spotted/resources/me/following.rbi +99 -0
 - data/rbi/spotted/resources/me/player/queue.rbi +45 -0
 - data/rbi/spotted/resources/me/player.rbi +315 -0
 - data/rbi/spotted/resources/me/playlists.rbi +34 -0
 - data/rbi/spotted/resources/me/shows.rbi +101 -0
 - data/rbi/spotted/resources/me/top.rbi +62 -0
 - data/rbi/spotted/resources/me/tracks.rbi +112 -0
 - data/rbi/spotted/resources/me.rbi +49 -0
 - data/rbi/spotted/resources/playlists/followers.rbi +70 -0
 - data/rbi/spotted/resources/playlists/images.rbi +47 -0
 - data/rbi/spotted/resources/playlists/tracks.rbi +177 -0
 - data/rbi/spotted/resources/playlists.rbi +102 -0
 - data/rbi/spotted/resources/recommendations.rbi +336 -0
 - data/rbi/spotted/resources/search.rbi +71 -0
 - data/rbi/spotted/resources/shows.rbi +100 -0
 - data/rbi/spotted/resources/tracks.rbi +66 -0
 - data/rbi/spotted/resources/users/playlists.rbi +78 -0
 - data/rbi/spotted/resources/users.rbi +29 -0
 - data/rbi/spotted/version.rbi +5 -0
 - data/sig/spotted/client.rbs +62 -0
 - data/sig/spotted/errors.rbs +117 -0
 - data/sig/spotted/file_part.rbs +21 -0
 - data/sig/spotted/internal/cursor_url_page.rbs +13 -0
 - data/sig/spotted/internal/oauth2.rbs +19 -0
 - data/sig/spotted/internal/transport/base_client.rbs +131 -0
 - data/sig/spotted/internal/transport/pooled_net_requester.rbs +45 -0
 - data/sig/spotted/internal/type/array_of.rbs +48 -0
 - data/sig/spotted/internal/type/base_model.rbs +102 -0
 - data/sig/spotted/internal/type/base_page.rbs +24 -0
 - data/sig/spotted/internal/type/boolean.rbs +26 -0
 - data/sig/spotted/internal/type/converter.rbs +79 -0
 - data/sig/spotted/internal/type/enum.rbs +32 -0
 - data/sig/spotted/internal/type/file_input.rbs +25 -0
 - data/sig/spotted/internal/type/hash_of.rbs +48 -0
 - data/sig/spotted/internal/type/request_parameters.rbs +17 -0
 - data/sig/spotted/internal/type/union.rbs +52 -0
 - data/sig/spotted/internal/type/unknown.rbs +26 -0
 - data/sig/spotted/internal/util.rbs +185 -0
 - data/sig/spotted/internal.rbs +9 -0
 - data/sig/spotted/models/album_list_params.rbs +30 -0
 - data/sig/spotted/models/album_list_response.rbs +237 -0
 - data/sig/spotted/models/album_list_tracks_params.rbs +38 -0
 - data/sig/spotted/models/album_restriction_object.rbs +34 -0
 - data/sig/spotted/models/album_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/album_retrieve_response.rbs +222 -0
 - data/sig/spotted/models/artist_list_albums_params.rbs +49 -0
 - data/sig/spotted/models/artist_list_albums_response.rbs +141 -0
 - data/sig/spotted/models/artist_list_params.rbs +20 -0
 - data/sig/spotted/models/artist_list_related_artists_params.rbs +15 -0
 - data/sig/spotted/models/artist_list_related_artists_response.rbs +14 -0
 - data/sig/spotted/models/artist_list_response.rbs +13 -0
 - data/sig/spotted/models/artist_list_top_tracks_params.rbs +25 -0
 - data/sig/spotted/models/artist_list_top_tracks_response.rbs +14 -0
 - data/sig/spotted/models/artist_object.rbs +101 -0
 - data/sig/spotted/models/artist_retrieve_params.rbs +15 -0
 - data/sig/spotted/models/audio_analysis_retrieve_params.rbs +15 -0
 - data/sig/spotted/models/audio_analysis_retrieve_response.rbs +518 -0
 - data/sig/spotted/models/audio_feature_list_params.rbs +20 -0
 - data/sig/spotted/models/audio_feature_list_response.rbs +170 -0
 - data/sig/spotted/models/audio_feature_retrieve_params.rbs +15 -0
 - data/sig/spotted/models/audio_feature_retrieve_response.rbs +153 -0
 - data/sig/spotted/models/audiobook_list_chapters_params.rbs +38 -0
 - data/sig/spotted/models/audiobook_list_params.rbs +30 -0
 - data/sig/spotted/models/audiobook_list_response.rbs +189 -0
 - data/sig/spotted/models/audiobook_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/audiobook_retrieve_response.rbs +174 -0
 - data/sig/spotted/models/author_object.rbs +15 -0
 - data/sig/spotted/models/browse/category_get_playlists_params.rbs +34 -0
 - data/sig/spotted/models/browse/category_get_playlists_response.rbs +30 -0
 - data/sig/spotted/models/browse/category_list_params.rbs +40 -0
 - data/sig/spotted/models/browse/category_list_response.rbs +101 -0
 - data/sig/spotted/models/browse/category_retrieve_params.rbs +27 -0
 - data/sig/spotted/models/browse/category_retrieve_response.rbs +37 -0
 - data/sig/spotted/models/browse_get_featured_playlists_params.rbs +38 -0
 - data/sig/spotted/models/browse_get_featured_playlists_response.rbs +28 -0
 - data/sig/spotted/models/browse_get_new_releases_params.rbs +32 -0
 - data/sig/spotted/models/browse_get_new_releases_response.rbs +185 -0
 - data/sig/spotted/models/chapter_list_params.rbs +30 -0
 - data/sig/spotted/models/chapter_list_response.rbs +286 -0
 - data/sig/spotted/models/chapter_restriction_object.rbs +15 -0
 - data/sig/spotted/models/chapter_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/chapter_retrieve_response.rbs +271 -0
 - data/sig/spotted/models/copyright_object.rbs +19 -0
 - data/sig/spotted/models/episode_list_params.rbs +30 -0
 - data/sig/spotted/models/episode_list_response.rbs +13 -0
 - data/sig/spotted/models/episode_object.rbs +259 -0
 - data/sig/spotted/models/episode_restriction_object.rbs +15 -0
 - data/sig/spotted/models/episode_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/external_id_object.rbs +23 -0
 - data/sig/spotted/models/external_url_object.rbs +15 -0
 - data/sig/spotted/models/followers_object.rbs +17 -0
 - data/sig/spotted/models/image_object.rbs +17 -0
 - data/sig/spotted/models/linked_track_object.rbs +52 -0
 - data/sig/spotted/models/market_list_params.rbs +14 -0
 - data/sig/spotted/models/market_list_response.rbs +15 -0
 - data/sig/spotted/models/me/album_check_params.rbs +25 -0
 - data/sig/spotted/models/me/album_check_response.rbs +9 -0
 - data/sig/spotted/models/me/album_list_params.rbs +40 -0
 - data/sig/spotted/models/me/album_list_response.rbs +249 -0
 - data/sig/spotted/models/me/album_remove_params.rbs +28 -0
 - data/sig/spotted/models/me/album_save_params.rbs +28 -0
 - data/sig/spotted/models/me/audiobook_check_params.rbs +25 -0
 - data/sig/spotted/models/me/audiobook_check_response.rbs +9 -0
 - data/sig/spotted/models/me/audiobook_list_params.rbs +34 -0
 - data/sig/spotted/models/me/audiobook_list_response.rbs +204 -0
 - data/sig/spotted/models/me/audiobook_remove_params.rbs +25 -0
 - data/sig/spotted/models/me/audiobook_save_params.rbs +25 -0
 - data/sig/spotted/models/me/context_object.rbs +47 -0
 - data/sig/spotted/models/me/device_object.rbs +69 -0
 - data/sig/spotted/models/me/episode_check_params.rbs +25 -0
 - data/sig/spotted/models/me/episode_check_response.rbs +9 -0
 - data/sig/spotted/models/me/episode_list_params.rbs +40 -0
 - data/sig/spotted/models/me/episode_list_response.rbs +25 -0
 - data/sig/spotted/models/me/episode_remove_params.rbs +28 -0
 - data/sig/spotted/models/me/episode_save_params.rbs +26 -0
 - data/sig/spotted/models/me/following_check_params.rbs +41 -0
 - data/sig/spotted/models/me/following_check_response.rbs +9 -0
 - data/sig/spotted/models/me/following_follow_params.rbs +44 -0
 - data/sig/spotted/models/me/following_list_params.rbs +52 -0
 - data/sig/spotted/models/me/following_list_response.rbs +94 -0
 - data/sig/spotted/models/me/following_unfollow_params.rbs +46 -0
 - data/sig/spotted/models/me/player/queue_add_params.rbs +34 -0
 - data/sig/spotted/models/me/player/queue_get_params.rbs +19 -0
 - data/sig/spotted/models/me/player/queue_get_response.rbs +53 -0
 - data/sig/spotted/models/me/player_get_currently_playing_params.rbs +34 -0
 - data/sig/spotted/models/me/player_get_currently_playing_response.rbs +160 -0
 - data/sig/spotted/models/me/player_get_devices_params.rbs +17 -0
 - data/sig/spotted/models/me/player_get_devices_response.rbs +16 -0
 - data/sig/spotted/models/me/player_get_state_params.rbs +34 -0
 - data/sig/spotted/models/me/player_get_state_response.rbs +181 -0
 - data/sig/spotted/models/me/player_list_recently_played_params.rbs +40 -0
 - data/sig/spotted/models/me/player_list_recently_played_response.rbs +38 -0
 - data/sig/spotted/models/me/player_pause_playback_params.rbs +27 -0
 - data/sig/spotted/models/me/player_seek_to_position_params.rbs +32 -0
 - data/sig/spotted/models/me/player_set_repeat_mode_params.rbs +32 -0
 - data/sig/spotted/models/me/player_set_volume_params.rbs +32 -0
 - data/sig/spotted/models/me/player_skip_next_params.rbs +27 -0
 - data/sig/spotted/models/me/player_skip_previous_params.rbs +27 -0
 - data/sig/spotted/models/me/player_start_playback_params.rbs +58 -0
 - data/sig/spotted/models/me/player_toggle_shuffle_params.rbs +32 -0
 - data/sig/spotted/models/me/player_transfer_params.rbs +32 -0
 - data/sig/spotted/models/me/playlist_list_params.rbs +34 -0
 - data/sig/spotted/models/me/show_check_params.rbs +25 -0
 - data/sig/spotted/models/me/show_check_response.rbs +9 -0
 - data/sig/spotted/models/me/show_list_params.rbs +34 -0
 - data/sig/spotted/models/me/show_list_response.rbs +137 -0
 - data/sig/spotted/models/me/show_remove_params.rbs +34 -0
 - data/sig/spotted/models/me/show_save_params.rbs +28 -0
 - data/sig/spotted/models/me/top_list_top_artists_params.rbs +40 -0
 - data/sig/spotted/models/me/top_list_top_tracks_params.rbs +40 -0
 - data/sig/spotted/models/me/track_check_params.rbs +25 -0
 - data/sig/spotted/models/me/track_check_response.rbs +9 -0
 - data/sig/spotted/models/me/track_list_params.rbs +40 -0
 - data/sig/spotted/models/me/track_list_response.rbs +21 -0
 - data/sig/spotted/models/me/track_remove_params.rbs +28 -0
 - data/sig/spotted/models/me/track_save_params.rbs +49 -0
 - data/sig/spotted/models/me_retrieve_params.rbs +14 -0
 - data/sig/spotted/models/me_retrieve_response.rbs +121 -0
 - data/sig/spotted/models/narrator_object.rbs +15 -0
 - data/sig/spotted/models/paging_playlist_object.rbs +50 -0
 - data/sig/spotted/models/playlist_retrieve_params.rbs +38 -0
 - data/sig/spotted/models/playlist_retrieve_response.rbs +178 -0
 - data/sig/spotted/models/playlist_track_object.rbs +55 -0
 - data/sig/spotted/models/playlist_tracks_ref_object.rbs +19 -0
 - data/sig/spotted/models/playlist_update_params.rbs +44 -0
 - data/sig/spotted/models/playlist_user_object.rbs +64 -0
 - data/sig/spotted/models/playlists/follower_check_params.rbs +27 -0
 - data/sig/spotted/models/playlists/follower_check_response.rbs +9 -0
 - data/sig/spotted/models/playlists/follower_follow_params.rbs +27 -0
 - data/sig/spotted/models/playlists/follower_unfollow_params.rbs +17 -0
 - data/sig/spotted/models/playlists/image_list_params.rbs +17 -0
 - data/sig/spotted/models/playlists/image_list_response.rbs +9 -0
 - data/sig/spotted/models/playlists/image_update_params.rbs +25 -0
 - data/sig/spotted/models/playlists/track_add_params.rbs +34 -0
 - data/sig/spotted/models/playlists/track_add_response.rbs +17 -0
 - data/sig/spotted/models/playlists/track_list_params.rbs +58 -0
 - data/sig/spotted/models/playlists/track_remove_params.rbs +47 -0
 - data/sig/spotted/models/playlists/track_remove_response.rbs +17 -0
 - data/sig/spotted/models/playlists/track_update_params.rbs +58 -0
 - data/sig/spotted/models/playlists/track_update_response.rbs +17 -0
 - data/sig/spotted/models/recommendation_get_params.rbs +350 -0
 - data/sig/spotted/models/recommendation_get_response.rbs +79 -0
 - data/sig/spotted/models/recommendation_list_available_genre_seeds_params.rbs +15 -0
 - data/sig/spotted/models/recommendation_list_available_genre_seeds_response.rbs +14 -0
 - data/sig/spotted/models/resume_point_object.rbs +23 -0
 - data/sig/spotted/models/search_retrieve_params.rbs +88 -0
 - data/sig/spotted/models/search_retrieve_response.rbs +706 -0
 - data/sig/spotted/models/show_list_episodes_params.rbs +38 -0
 - data/sig/spotted/models/show_list_params.rbs +30 -0
 - data/sig/spotted/models/show_list_response.rbs +125 -0
 - data/sig/spotted/models/show_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/show_retrieve_response.rbs +162 -0
 - data/sig/spotted/models/simplified_artist_object.rbs +71 -0
 - data/sig/spotted/models/simplified_chapter_object.rbs +147 -0
 - data/sig/spotted/models/simplified_episode_object.rbs +147 -0
 - data/sig/spotted/models/simplified_playlist_object.rbs +126 -0
 - data/sig/spotted/models/simplified_track_object.rbs +140 -0
 - data/sig/spotted/models/time_interval_object.rbs +28 -0
 - data/sig/spotted/models/track_list_params.rbs +30 -0
 - data/sig/spotted/models/track_list_response.rbs +13 -0
 - data/sig/spotted/models/track_object.rbs +295 -0
 - data/sig/spotted/models/track_restriction_object.rbs +15 -0
 - data/sig/spotted/models/track_retrieve_params.rbs +25 -0
 - data/sig/spotted/models/user_retrieve_profile_params.rbs +15 -0
 - data/sig/spotted/models/user_retrieve_profile_response.rbs +85 -0
 - data/sig/spotted/models/users/playlist_create_params.rbs +44 -0
 - data/sig/spotted/models/users/playlist_create_response.rbs +180 -0
 - data/sig/spotted/models/users/playlist_list_params.rbs +34 -0
 - data/sig/spotted/models.rbs +127 -0
 - data/sig/spotted/request_options.rbs +34 -0
 - data/sig/spotted/resources/albums.rbs +27 -0
 - data/sig/spotted/resources/artists.rbs +37 -0
 - data/sig/spotted/resources/audio_analysis.rbs +12 -0
 - data/sig/spotted/resources/audio_features.rbs +17 -0
 - data/sig/spotted/resources/audiobooks.rbs +27 -0
 - data/sig/spotted/resources/browse/categories.rbs +29 -0
 - data/sig/spotted/resources/browse.rbs +22 -0
 - data/sig/spotted/resources/chapters.rbs +19 -0
 - data/sig/spotted/resources/episodes.rbs +19 -0
 - data/sig/spotted/resources/markets.rbs +11 -0
 - data/sig/spotted/resources/me/albums.rbs +31 -0
 - data/sig/spotted/resources/me/audiobooks.rbs +27 -0
 - data/sig/spotted/resources/me/episodes.rbs +31 -0
 - data/sig/spotted/resources/me/following.rbs +34 -0
 - data/sig/spotted/resources/me/player/queue.rbs +21 -0
 - data/sig/spotted/resources/me/player.rbs +88 -0
 - data/sig/spotted/resources/me/playlists.rbs +15 -0
 - data/sig/spotted/resources/me/shows.rbs +31 -0
 - data/sig/spotted/resources/me/top.rbs +23 -0
 - data/sig/spotted/resources/me/tracks.rbs +32 -0
 - data/sig/spotted/resources/me.rbs +29 -0
 - data/sig/spotted/resources/playlists/followers.rbs +26 -0
 - data/sig/spotted/resources/playlists/images.rbs +20 -0
 - data/sig/spotted/resources/playlists/tracks.rbs +43 -0
 - data/sig/spotted/resources/playlists.rbs +30 -0
 - data/sig/spotted/resources/recommendations.rbs +62 -0
 - data/sig/spotted/resources/search.rbs +17 -0
 - data/sig/spotted/resources/shows.rbs +27 -0
 - data/sig/spotted/resources/tracks.rbs +19 -0
 - data/sig/spotted/resources/users/playlists.rbs +25 -0
 - data/sig/spotted/resources/users.rbs +14 -0
 - data/sig/spotted/version.rbs +3 -0
 - metadata +734 -0
 
| 
         @@ -0,0 +1,336 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # typed: strong
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Spotted
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Resources
         
     | 
| 
      
 5 
     | 
    
         
            +
                class Recommendations
         
     | 
| 
      
 6 
     | 
    
         
            +
                  # Recommendations are generated based on the available information for a given
         
     | 
| 
      
 7 
     | 
    
         
            +
                  # seed entity and matched against similar artists and tracks. If there is
         
     | 
| 
      
 8 
     | 
    
         
            +
                  # sufficient information about the provided seeds, a list of tracks will be
         
     | 
| 
      
 9 
     | 
    
         
            +
                  # returned together with pool size details.
         
     | 
| 
      
 10 
     | 
    
         
            +
                  #
         
     | 
| 
      
 11 
     | 
    
         
            +
                  # For artists and tracks that are very new or obscure there might not be enough
         
     | 
| 
      
 12 
     | 
    
         
            +
                  # data to generate a list of tracks.
         
     | 
| 
      
 13 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 14 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 15 
     | 
    
         
            +
                      limit: Integer,
         
     | 
| 
      
 16 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 17 
     | 
    
         
            +
                      max_acousticness: Float,
         
     | 
| 
      
 18 
     | 
    
         
            +
                      max_danceability: Float,
         
     | 
| 
      
 19 
     | 
    
         
            +
                      max_duration_ms: Integer,
         
     | 
| 
      
 20 
     | 
    
         
            +
                      max_energy: Float,
         
     | 
| 
      
 21 
     | 
    
         
            +
                      max_instrumentalness: Float,
         
     | 
| 
      
 22 
     | 
    
         
            +
                      max_key: Integer,
         
     | 
| 
      
 23 
     | 
    
         
            +
                      max_liveness: Float,
         
     | 
| 
      
 24 
     | 
    
         
            +
                      max_loudness: Float,
         
     | 
| 
      
 25 
     | 
    
         
            +
                      max_mode: Integer,
         
     | 
| 
      
 26 
     | 
    
         
            +
                      max_popularity: Integer,
         
     | 
| 
      
 27 
     | 
    
         
            +
                      max_speechiness: Float,
         
     | 
| 
      
 28 
     | 
    
         
            +
                      max_tempo: Float,
         
     | 
| 
      
 29 
     | 
    
         
            +
                      max_time_signature: Integer,
         
     | 
| 
      
 30 
     | 
    
         
            +
                      max_valence: Float,
         
     | 
| 
      
 31 
     | 
    
         
            +
                      min_acousticness: Float,
         
     | 
| 
      
 32 
     | 
    
         
            +
                      min_danceability: Float,
         
     | 
| 
      
 33 
     | 
    
         
            +
                      min_duration_ms: Integer,
         
     | 
| 
      
 34 
     | 
    
         
            +
                      min_energy: Float,
         
     | 
| 
      
 35 
     | 
    
         
            +
                      min_instrumentalness: Float,
         
     | 
| 
      
 36 
     | 
    
         
            +
                      min_key: Integer,
         
     | 
| 
      
 37 
     | 
    
         
            +
                      min_liveness: Float,
         
     | 
| 
      
 38 
     | 
    
         
            +
                      min_loudness: Float,
         
     | 
| 
      
 39 
     | 
    
         
            +
                      min_mode: Integer,
         
     | 
| 
      
 40 
     | 
    
         
            +
                      min_popularity: Integer,
         
     | 
| 
      
 41 
     | 
    
         
            +
                      min_speechiness: Float,
         
     | 
| 
      
 42 
     | 
    
         
            +
                      min_tempo: Float,
         
     | 
| 
      
 43 
     | 
    
         
            +
                      min_time_signature: Integer,
         
     | 
| 
      
 44 
     | 
    
         
            +
                      min_valence: Float,
         
     | 
| 
      
 45 
     | 
    
         
            +
                      seed_artists: String,
         
     | 
| 
      
 46 
     | 
    
         
            +
                      seed_genres: String,
         
     | 
| 
      
 47 
     | 
    
         
            +
                      seed_tracks: String,
         
     | 
| 
      
 48 
     | 
    
         
            +
                      target_acousticness: Float,
         
     | 
| 
      
 49 
     | 
    
         
            +
                      target_danceability: Float,
         
     | 
| 
      
 50 
     | 
    
         
            +
                      target_duration_ms: Integer,
         
     | 
| 
      
 51 
     | 
    
         
            +
                      target_energy: Float,
         
     | 
| 
      
 52 
     | 
    
         
            +
                      target_instrumentalness: Float,
         
     | 
| 
      
 53 
     | 
    
         
            +
                      target_key: Integer,
         
     | 
| 
      
 54 
     | 
    
         
            +
                      target_liveness: Float,
         
     | 
| 
      
 55 
     | 
    
         
            +
                      target_loudness: Float,
         
     | 
| 
      
 56 
     | 
    
         
            +
                      target_mode: Integer,
         
     | 
| 
      
 57 
     | 
    
         
            +
                      target_popularity: Integer,
         
     | 
| 
      
 58 
     | 
    
         
            +
                      target_speechiness: Float,
         
     | 
| 
      
 59 
     | 
    
         
            +
                      target_tempo: Float,
         
     | 
| 
      
 60 
     | 
    
         
            +
                      target_time_signature: Integer,
         
     | 
| 
      
 61 
     | 
    
         
            +
                      target_valence: Float,
         
     | 
| 
      
 62 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 63 
     | 
    
         
            +
                    ).returns(Spotted::Models::RecommendationGetResponse)
         
     | 
| 
      
 64 
     | 
    
         
            +
                  end
         
     | 
| 
      
 65 
     | 
    
         
            +
                  def get(
         
     | 
| 
      
 66 
     | 
    
         
            +
                    # The target size of the list of recommended tracks. For seeds with unusually
         
     | 
| 
      
 67 
     | 
    
         
            +
                    # small pools or when highly restrictive filtering is applied, it may be
         
     | 
| 
      
 68 
     | 
    
         
            +
                    # impossible to generate the requested number of recommended tracks. Debugging
         
     | 
| 
      
 69 
     | 
    
         
            +
                    # information for such cases is available in the response. Default: 20\. Minimum:
         
     | 
| 
      
 70 
     | 
    
         
            +
                    # 1\. Maximum: 100.
         
     | 
| 
      
 71 
     | 
    
         
            +
                    limit: nil,
         
     | 
| 
      
 72 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 73 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 74 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 75 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 76 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 77 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 78 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 79 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 80 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 81 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 82 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 83 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 84 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 85 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 86 
     | 
    
         
            +
                    max_acousticness: nil,
         
     | 
| 
      
 87 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 88 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 89 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 90 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 91 
     | 
    
         
            +
                    max_danceability: nil,
         
     | 
| 
      
 92 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 93 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 94 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 95 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 96 
     | 
    
         
            +
                    max_duration_ms: nil,
         
     | 
| 
      
 97 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 98 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 99 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 100 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 101 
     | 
    
         
            +
                    max_energy: nil,
         
     | 
| 
      
 102 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 103 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 104 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 105 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 106 
     | 
    
         
            +
                    max_instrumentalness: nil,
         
     | 
| 
      
 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 
     | 
    
         
            +
                    max_key: nil,
         
     | 
| 
      
 112 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 113 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 114 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 115 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 116 
     | 
    
         
            +
                    max_liveness: nil,
         
     | 
| 
      
 117 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 118 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 119 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 120 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 121 
     | 
    
         
            +
                    max_loudness: nil,
         
     | 
| 
      
 122 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 123 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 124 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 125 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 126 
     | 
    
         
            +
                    max_mode: nil,
         
     | 
| 
      
 127 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 128 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 129 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 130 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 131 
     | 
    
         
            +
                    max_popularity: nil,
         
     | 
| 
      
 132 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 133 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 134 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 135 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 136 
     | 
    
         
            +
                    max_speechiness: nil,
         
     | 
| 
      
 137 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 138 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 139 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 140 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 141 
     | 
    
         
            +
                    max_tempo: nil,
         
     | 
| 
      
 142 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 143 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 144 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 145 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 146 
     | 
    
         
            +
                    max_time_signature: nil,
         
     | 
| 
      
 147 
     | 
    
         
            +
                    # For each tunable track attribute, a hard ceiling on the selected track
         
     | 
| 
      
 148 
     | 
    
         
            +
                    # attribute’s value can be provided. See tunable track attributes below for the
         
     | 
| 
      
 149 
     | 
    
         
            +
                    # list of available options. For example, `max_instrumentalness=0.35` would filter
         
     | 
| 
      
 150 
     | 
    
         
            +
                    # out most tracks that are likely to be instrumental.
         
     | 
| 
      
 151 
     | 
    
         
            +
                    max_valence: nil,
         
     | 
| 
      
 152 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 153 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 154 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 155 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 156 
     | 
    
         
            +
                    min_acousticness: nil,
         
     | 
| 
      
 157 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 158 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 159 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 160 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 161 
     | 
    
         
            +
                    min_danceability: nil,
         
     | 
| 
      
 162 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 163 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 164 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 165 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 166 
     | 
    
         
            +
                    min_duration_ms: nil,
         
     | 
| 
      
 167 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 168 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 169 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 170 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 171 
     | 
    
         
            +
                    min_energy: nil,
         
     | 
| 
      
 172 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 173 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 174 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 175 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 176 
     | 
    
         
            +
                    min_instrumentalness: nil,
         
     | 
| 
      
 177 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 178 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 179 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 180 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 181 
     | 
    
         
            +
                    min_key: nil,
         
     | 
| 
      
 182 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 183 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 184 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 185 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 186 
     | 
    
         
            +
                    min_liveness: nil,
         
     | 
| 
      
 187 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 188 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 189 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 190 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 191 
     | 
    
         
            +
                    min_loudness: nil,
         
     | 
| 
      
 192 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 193 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 194 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 195 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 196 
     | 
    
         
            +
                    min_mode: nil,
         
     | 
| 
      
 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 
     | 
    
         
            +
                    min_popularity: nil,
         
     | 
| 
      
 202 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 203 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 204 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 205 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 206 
     | 
    
         
            +
                    min_speechiness: nil,
         
     | 
| 
      
 207 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 208 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 209 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 210 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 211 
     | 
    
         
            +
                    min_tempo: nil,
         
     | 
| 
      
 212 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 213 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 214 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 215 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 216 
     | 
    
         
            +
                    min_time_signature: nil,
         
     | 
| 
      
 217 
     | 
    
         
            +
                    # For each tunable track attribute, a hard floor on the selected track attribute’s
         
     | 
| 
      
 218 
     | 
    
         
            +
                    # value can be provided. See tunable track attributes below for the list of
         
     | 
| 
      
 219 
     | 
    
         
            +
                    # available options. For example, `min_tempo=140` would restrict results to only
         
     | 
| 
      
 220 
     | 
    
         
            +
                    # those tracks with a tempo of greater than 140 beats per minute.
         
     | 
| 
      
 221 
     | 
    
         
            +
                    min_valence: nil,
         
     | 
| 
      
 222 
     | 
    
         
            +
                    # A comma separated list of
         
     | 
| 
      
 223 
     | 
    
         
            +
                    # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for seed
         
     | 
| 
      
 224 
     | 
    
         
            +
                    # artists. Up to 5 seed values may be provided in any combination of
         
     | 
| 
      
 225 
     | 
    
         
            +
                    # `seed_artists`, `seed_tracks` and `seed_genres`.<br/> _**Note**: only required
         
     | 
| 
      
 226 
     | 
    
         
            +
                    # if `seed_genres` and `seed_tracks` are not set_.
         
     | 
| 
      
 227 
     | 
    
         
            +
                    seed_artists: nil,
         
     | 
| 
      
 228 
     | 
    
         
            +
                    # A comma separated list of any genres in the set of
         
     | 
| 
      
 229 
     | 
    
         
            +
                    # [available genre seeds](/documentation/web-api/reference/get-recommendation-genres).
         
     | 
| 
      
 230 
     | 
    
         
            +
                    # Up to 5 seed values may be provided in any combination of `seed_artists`,
         
     | 
| 
      
 231 
     | 
    
         
            +
                    # `seed_tracks` and `seed_genres`.<br/> _**Note**: only required if `seed_artists`
         
     | 
| 
      
 232 
     | 
    
         
            +
                    # and `seed_tracks` are not set_.
         
     | 
| 
      
 233 
     | 
    
         
            +
                    seed_genres: nil,
         
     | 
| 
      
 234 
     | 
    
         
            +
                    # A comma separated list of
         
     | 
| 
      
 235 
     | 
    
         
            +
                    # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for a seed
         
     | 
| 
      
 236 
     | 
    
         
            +
                    # track. Up to 5 seed values may be provided in any combination of `seed_artists`,
         
     | 
| 
      
 237 
     | 
    
         
            +
                    # `seed_tracks` and `seed_genres`.<br/> _**Note**: only required if `seed_artists`
         
     | 
| 
      
 238 
     | 
    
         
            +
                    # and `seed_genres` are not set_.
         
     | 
| 
      
 239 
     | 
    
         
            +
                    seed_tracks: nil,
         
     | 
| 
      
 240 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 241 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 242 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 243 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 244 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 245 
     | 
    
         
            +
                    target_acousticness: nil,
         
     | 
| 
      
 246 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 247 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 248 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 249 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 250 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 251 
     | 
    
         
            +
                    target_danceability: nil,
         
     | 
| 
      
 252 
     | 
    
         
            +
                    # Target duration of the track (ms)
         
     | 
| 
      
 253 
     | 
    
         
            +
                    target_duration_ms: nil,
         
     | 
| 
      
 254 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 255 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 256 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 257 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 258 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 259 
     | 
    
         
            +
                    target_energy: nil,
         
     | 
| 
      
 260 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 261 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 262 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 263 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 264 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 265 
     | 
    
         
            +
                    target_instrumentalness: nil,
         
     | 
| 
      
 266 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 267 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 268 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 269 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 270 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 271 
     | 
    
         
            +
                    target_key: nil,
         
     | 
| 
      
 272 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 273 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 274 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 275 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 276 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 277 
     | 
    
         
            +
                    target_liveness: nil,
         
     | 
| 
      
 278 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 279 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 280 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 281 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 282 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 283 
     | 
    
         
            +
                    target_loudness: nil,
         
     | 
| 
      
 284 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 285 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 286 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 287 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 288 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 289 
     | 
    
         
            +
                    target_mode: nil,
         
     | 
| 
      
 290 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 291 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 292 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 293 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 294 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 295 
     | 
    
         
            +
                    target_popularity: nil,
         
     | 
| 
      
 296 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 297 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 298 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 299 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 300 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 301 
     | 
    
         
            +
                    target_speechiness: nil,
         
     | 
| 
      
 302 
     | 
    
         
            +
                    # Target tempo (BPM)
         
     | 
| 
      
 303 
     | 
    
         
            +
                    target_tempo: nil,
         
     | 
| 
      
 304 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 305 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 306 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 307 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 308 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 309 
     | 
    
         
            +
                    target_time_signature: nil,
         
     | 
| 
      
 310 
     | 
    
         
            +
                    # For each of the tunable track attributes (below) a target value may be provided.
         
     | 
| 
      
 311 
     | 
    
         
            +
                    # Tracks with the attribute values nearest to the target values will be preferred.
         
     | 
| 
      
 312 
     | 
    
         
            +
                    # For example, you might request `target_energy=0.6` and
         
     | 
| 
      
 313 
     | 
    
         
            +
                    # `target_danceability=0.8`. All target values will be weighed equally in ranking
         
     | 
| 
      
 314 
     | 
    
         
            +
                    # results.
         
     | 
| 
      
 315 
     | 
    
         
            +
                    target_valence: nil,
         
     | 
| 
      
 316 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 317 
     | 
    
         
            +
                  )
         
     | 
| 
      
 318 
     | 
    
         
            +
                  end
         
     | 
| 
      
 319 
     | 
    
         
            +
             
     | 
| 
      
 320 
     | 
    
         
            +
                  # Retrieve a list of available genres seed parameter values for
         
     | 
| 
      
 321 
     | 
    
         
            +
                  # [recommendations](/documentation/web-api/reference/get-recommendations).
         
     | 
| 
      
 322 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 323 
     | 
    
         
            +
                    params(request_options: Spotted::RequestOptions::OrHash).returns(
         
     | 
| 
      
 324 
     | 
    
         
            +
                      Spotted::Models::RecommendationListAvailableGenreSeedsResponse
         
     | 
| 
      
 325 
     | 
    
         
            +
                    )
         
     | 
| 
      
 326 
     | 
    
         
            +
                  end
         
     | 
| 
      
 327 
     | 
    
         
            +
                  def list_available_genre_seeds(request_options: {})
         
     | 
| 
      
 328 
     | 
    
         
            +
                  end
         
     | 
| 
      
 329 
     | 
    
         
            +
             
     | 
| 
      
 330 
     | 
    
         
            +
                  # @api private
         
     | 
| 
      
 331 
     | 
    
         
            +
                  sig { params(client: Spotted::Client).returns(T.attached_class) }
         
     | 
| 
      
 332 
     | 
    
         
            +
                  def self.new(client:)
         
     | 
| 
      
 333 
     | 
    
         
            +
                  end
         
     | 
| 
      
 334 
     | 
    
         
            +
                end
         
     | 
| 
      
 335 
     | 
    
         
            +
              end
         
     | 
| 
      
 336 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,71 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # typed: strong
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Spotted
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Resources
         
     | 
| 
      
 5 
     | 
    
         
            +
                class Search
         
     | 
| 
      
 6 
     | 
    
         
            +
                  # Get Spotify catalog information about albums, artists, playlists, tracks, shows,
         
     | 
| 
      
 7 
     | 
    
         
            +
                  # episodes or audiobooks that match a keyword string. Audiobooks are only
         
     | 
| 
      
 8 
     | 
    
         
            +
                  # available within the US, UK, Canada, Ireland, New Zealand and Australia markets.
         
     | 
| 
      
 9 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 10 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 11 
     | 
    
         
            +
                      q: String,
         
     | 
| 
      
 12 
     | 
    
         
            +
                      type: T::Array[Spotted::SearchRetrieveParams::Type::OrSymbol],
         
     | 
| 
      
 13 
     | 
    
         
            +
                      include_external:
         
     | 
| 
      
 14 
     | 
    
         
            +
                        Spotted::SearchRetrieveParams::IncludeExternal::OrSymbol,
         
     | 
| 
      
 15 
     | 
    
         
            +
                      limit: Integer,
         
     | 
| 
      
 16 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 17 
     | 
    
         
            +
                      offset: Integer,
         
     | 
| 
      
 18 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 19 
     | 
    
         
            +
                    ).returns(Spotted::Models::SearchRetrieveResponse)
         
     | 
| 
      
 20 
     | 
    
         
            +
                  end
         
     | 
| 
      
 21 
     | 
    
         
            +
                  def retrieve(
         
     | 
| 
      
 22 
     | 
    
         
            +
                    # Your search query.
         
     | 
| 
      
 23 
     | 
    
         
            +
                    #
         
     | 
| 
      
 24 
     | 
    
         
            +
                    # You can narrow down your search using field filters. The available filters are
         
     | 
| 
      
 25 
     | 
    
         
            +
                    # `album`, `artist`, `track`, `year`, `upc`, `tag:hipster`, `tag:new`, `isrc`, and
         
     | 
| 
      
 26 
     | 
    
         
            +
                    # `genre`. Each field filter only applies to certain result types.
         
     | 
| 
      
 27 
     | 
    
         
            +
                    #
         
     | 
| 
      
 28 
     | 
    
         
            +
                    # The `artist` and `year` filters can be used while searching albums, artists and
         
     | 
| 
      
 29 
     | 
    
         
            +
                    # tracks. You can filter on a single `year` or a range (e.g. 1955-1960).<br /> The
         
     | 
| 
      
 30 
     | 
    
         
            +
                    # `album` filter can be used while searching albums and tracks.<br /> The `genre`
         
     | 
| 
      
 31 
     | 
    
         
            +
                    # filter can be used while searching artists and tracks.<br /> The `isrc` and
         
     | 
| 
      
 32 
     | 
    
         
            +
                    # `track` filters can be used while searching tracks.<br /> The `upc`, `tag:new`
         
     | 
| 
      
 33 
     | 
    
         
            +
                    # and `tag:hipster` filters can only be used while searching albums. The `tag:new`
         
     | 
| 
      
 34 
     | 
    
         
            +
                    # filter will return albums released in the past two weeks and `tag:hipster` can
         
     | 
| 
      
 35 
     | 
    
         
            +
                    # be used to return only albums with the lowest 10% popularity.<br />
         
     | 
| 
      
 36 
     | 
    
         
            +
                    q:,
         
     | 
| 
      
 37 
     | 
    
         
            +
                    # A comma-separated list of item types to search across. Search results include
         
     | 
| 
      
 38 
     | 
    
         
            +
                    # hits from all the specified item types. For example: `q=abacab&type=album,track`
         
     | 
| 
      
 39 
     | 
    
         
            +
                    # returns both albums and tracks matching "abacab".
         
     | 
| 
      
 40 
     | 
    
         
            +
                    type:,
         
     | 
| 
      
 41 
     | 
    
         
            +
                    # If `include_external=audio` is specified it signals that the client can play
         
     | 
| 
      
 42 
     | 
    
         
            +
                    # externally hosted audio content, and marks the content as playable in the
         
     | 
| 
      
 43 
     | 
    
         
            +
                    # response. By default externally hosted audio content is marked as unplayable in
         
     | 
| 
      
 44 
     | 
    
         
            +
                    # the response.
         
     | 
| 
      
 45 
     | 
    
         
            +
                    include_external: nil,
         
     | 
| 
      
 46 
     | 
    
         
            +
                    # The maximum number of results to return in each item type.
         
     | 
| 
      
 47 
     | 
    
         
            +
                    limit: nil,
         
     | 
| 
      
 48 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 49 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 50 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 51 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 52 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 53 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 54 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 55 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 56 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 57 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 58 
     | 
    
         
            +
                    # The index of the first result to return. Use with limit to get the next page of
         
     | 
| 
      
 59 
     | 
    
         
            +
                    # search results.
         
     | 
| 
      
 60 
     | 
    
         
            +
                    offset: nil,
         
     | 
| 
      
 61 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 62 
     | 
    
         
            +
                  )
         
     | 
| 
      
 63 
     | 
    
         
            +
                  end
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
                  # @api private
         
     | 
| 
      
 66 
     | 
    
         
            +
                  sig { params(client: Spotted::Client).returns(T.attached_class) }
         
     | 
| 
      
 67 
     | 
    
         
            +
                  def self.new(client:)
         
     | 
| 
      
 68 
     | 
    
         
            +
                  end
         
     | 
| 
      
 69 
     | 
    
         
            +
                end
         
     | 
| 
      
 70 
     | 
    
         
            +
              end
         
     | 
| 
      
 71 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,100 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # typed: strong
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Spotted
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Resources
         
     | 
| 
      
 5 
     | 
    
         
            +
                class Shows
         
     | 
| 
      
 6 
     | 
    
         
            +
                  # Get Spotify catalog information for a single show identified by its unique
         
     | 
| 
      
 7 
     | 
    
         
            +
                  # Spotify ID.
         
     | 
| 
      
 8 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 9 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 10 
     | 
    
         
            +
                      id: String,
         
     | 
| 
      
 11 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 12 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 13 
     | 
    
         
            +
                    ).returns(Spotted::Models::ShowRetrieveResponse)
         
     | 
| 
      
 14 
     | 
    
         
            +
                  end
         
     | 
| 
      
 15 
     | 
    
         
            +
                  def retrieve(
         
     | 
| 
      
 16 
     | 
    
         
            +
                    # The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the show.
         
     | 
| 
      
 17 
     | 
    
         
            +
                    id,
         
     | 
| 
      
 18 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 19 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 20 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 21 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 22 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 23 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 24 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 25 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 26 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 27 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 28 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 29 
     | 
    
         
            +
                  )
         
     | 
| 
      
 30 
     | 
    
         
            +
                  end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                  # Get Spotify catalog information for several shows based on their Spotify IDs.
         
     | 
| 
      
 33 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 34 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 35 
     | 
    
         
            +
                      ids: String,
         
     | 
| 
      
 36 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 37 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 38 
     | 
    
         
            +
                    ).returns(Spotted::Models::ShowListResponse)
         
     | 
| 
      
 39 
     | 
    
         
            +
                  end
         
     | 
| 
      
 40 
     | 
    
         
            +
                  def list(
         
     | 
| 
      
 41 
     | 
    
         
            +
                    # A comma-separated list of the
         
     | 
| 
      
 42 
     | 
    
         
            +
                    # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the shows.
         
     | 
| 
      
 43 
     | 
    
         
            +
                    # Maximum: 50 IDs.
         
     | 
| 
      
 44 
     | 
    
         
            +
                    ids:,
         
     | 
| 
      
 45 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 46 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 47 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 48 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 49 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 50 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 51 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 52 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 53 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 54 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 55 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 56 
     | 
    
         
            +
                  )
         
     | 
| 
      
 57 
     | 
    
         
            +
                  end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                  # Get Spotify catalog information about an show’s episodes. Optional parameters
         
     | 
| 
      
 60 
     | 
    
         
            +
                  # can be used to limit the number of episodes returned.
         
     | 
| 
      
 61 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 62 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 63 
     | 
    
         
            +
                      id: String,
         
     | 
| 
      
 64 
     | 
    
         
            +
                      limit: Integer,
         
     | 
| 
      
 65 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 66 
     | 
    
         
            +
                      offset: Integer,
         
     | 
| 
      
 67 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 68 
     | 
    
         
            +
                    ).returns(
         
     | 
| 
      
 69 
     | 
    
         
            +
                      Spotted::Internal::CursorURLPage[Spotted::SimplifiedEpisodeObject]
         
     | 
| 
      
 70 
     | 
    
         
            +
                    )
         
     | 
| 
      
 71 
     | 
    
         
            +
                  end
         
     | 
| 
      
 72 
     | 
    
         
            +
                  def list_episodes(
         
     | 
| 
      
 73 
     | 
    
         
            +
                    # The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the show.
         
     | 
| 
      
 74 
     | 
    
         
            +
                    id,
         
     | 
| 
      
 75 
     | 
    
         
            +
                    # The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
         
     | 
| 
      
 76 
     | 
    
         
            +
                    limit: nil,
         
     | 
| 
      
 77 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 78 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 79 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 80 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 81 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 82 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 83 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 84 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 85 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 86 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 87 
     | 
    
         
            +
                    # The index of the first item to return. Default: 0 (the first item). Use with
         
     | 
| 
      
 88 
     | 
    
         
            +
                    # limit to get the next set of items.
         
     | 
| 
      
 89 
     | 
    
         
            +
                    offset: nil,
         
     | 
| 
      
 90 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 91 
     | 
    
         
            +
                  )
         
     | 
| 
      
 92 
     | 
    
         
            +
                  end
         
     | 
| 
      
 93 
     | 
    
         
            +
             
     | 
| 
      
 94 
     | 
    
         
            +
                  # @api private
         
     | 
| 
      
 95 
     | 
    
         
            +
                  sig { params(client: Spotted::Client).returns(T.attached_class) }
         
     | 
| 
      
 96 
     | 
    
         
            +
                  def self.new(client:)
         
     | 
| 
      
 97 
     | 
    
         
            +
                  end
         
     | 
| 
      
 98 
     | 
    
         
            +
                end
         
     | 
| 
      
 99 
     | 
    
         
            +
              end
         
     | 
| 
      
 100 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,66 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # typed: strong
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Spotted
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Resources
         
     | 
| 
      
 5 
     | 
    
         
            +
                class Tracks
         
     | 
| 
      
 6 
     | 
    
         
            +
                  # Get Spotify catalog information for a single track identified by its unique
         
     | 
| 
      
 7 
     | 
    
         
            +
                  # Spotify ID.
         
     | 
| 
      
 8 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 9 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 10 
     | 
    
         
            +
                      id: String,
         
     | 
| 
      
 11 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 12 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 13 
     | 
    
         
            +
                    ).returns(Spotted::TrackObject)
         
     | 
| 
      
 14 
     | 
    
         
            +
                  end
         
     | 
| 
      
 15 
     | 
    
         
            +
                  def retrieve(
         
     | 
| 
      
 16 
     | 
    
         
            +
                    # The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
         
     | 
| 
      
 17 
     | 
    
         
            +
                    # track.
         
     | 
| 
      
 18 
     | 
    
         
            +
                    id,
         
     | 
| 
      
 19 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 20 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 21 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 22 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 23 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 24 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 25 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 26 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 27 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 28 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 29 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 30 
     | 
    
         
            +
                  )
         
     | 
| 
      
 31 
     | 
    
         
            +
                  end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                  # Get Spotify catalog information for multiple tracks based on their Spotify IDs.
         
     | 
| 
      
 34 
     | 
    
         
            +
                  sig do
         
     | 
| 
      
 35 
     | 
    
         
            +
                    params(
         
     | 
| 
      
 36 
     | 
    
         
            +
                      ids: String,
         
     | 
| 
      
 37 
     | 
    
         
            +
                      market: String,
         
     | 
| 
      
 38 
     | 
    
         
            +
                      request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 39 
     | 
    
         
            +
                    ).returns(Spotted::Models::TrackListResponse)
         
     | 
| 
      
 40 
     | 
    
         
            +
                  end
         
     | 
| 
      
 41 
     | 
    
         
            +
                  def list(
         
     | 
| 
      
 42 
     | 
    
         
            +
                    # A comma-separated list of the
         
     | 
| 
      
 43 
     | 
    
         
            +
                    # [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
         
     | 
| 
      
 44 
     | 
    
         
            +
                    # `ids=4iV5W9uYEdYUVa79Axb7Rh,1301WleyT98MSxVHPZCA6M`. Maximum: 50 IDs.
         
     | 
| 
      
 45 
     | 
    
         
            +
                    ids:,
         
     | 
| 
      
 46 
     | 
    
         
            +
                    # An
         
     | 
| 
      
 47 
     | 
    
         
            +
                    # [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
         
     | 
| 
      
 48 
     | 
    
         
            +
                    # If a country code is specified, only content that is available in that market
         
     | 
| 
      
 49 
     | 
    
         
            +
                    # will be returned.<br/> If a valid user access token is specified in the request
         
     | 
| 
      
 50 
     | 
    
         
            +
                    # header, the country associated with the user account will take priority over
         
     | 
| 
      
 51 
     | 
    
         
            +
                    # this parameter.<br/> _**Note**: If neither market or user country are provided,
         
     | 
| 
      
 52 
     | 
    
         
            +
                    # the content is considered unavailable for the client._<br/> Users can view the
         
     | 
| 
      
 53 
     | 
    
         
            +
                    # country that is associated with their account in the
         
     | 
| 
      
 54 
     | 
    
         
            +
                    # [account settings](https://www.spotify.com/account/overview/).
         
     | 
| 
      
 55 
     | 
    
         
            +
                    market: nil,
         
     | 
| 
      
 56 
     | 
    
         
            +
                    request_options: {}
         
     | 
| 
      
 57 
     | 
    
         
            +
                  )
         
     | 
| 
      
 58 
     | 
    
         
            +
                  end
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
                  # @api private
         
     | 
| 
      
 61 
     | 
    
         
            +
                  sig { params(client: Spotted::Client).returns(T.attached_class) }
         
     | 
| 
      
 62 
     | 
    
         
            +
                  def self.new(client:)
         
     | 
| 
      
 63 
     | 
    
         
            +
                  end
         
     | 
| 
      
 64 
     | 
    
         
            +
                end
         
     | 
| 
      
 65 
     | 
    
         
            +
              end
         
     | 
| 
      
 66 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,78 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # typed: strong
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Spotted
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Resources
         
     | 
| 
      
 5 
     | 
    
         
            +
                class Users
         
     | 
| 
      
 6 
     | 
    
         
            +
                  class Playlists
         
     | 
| 
      
 7 
     | 
    
         
            +
                    # Create a playlist for a Spotify user. (The playlist will be empty until you
         
     | 
| 
      
 8 
     | 
    
         
            +
                    # [add tracks](/documentation/web-api/reference/add-tracks-to-playlist).) Each
         
     | 
| 
      
 9 
     | 
    
         
            +
                    # user is generally limited to a maximum of 11000 playlists.
         
     | 
| 
      
 10 
     | 
    
         
            +
                    sig do
         
     | 
| 
      
 11 
     | 
    
         
            +
                      params(
         
     | 
| 
      
 12 
     | 
    
         
            +
                        user_id: String,
         
     | 
| 
      
 13 
     | 
    
         
            +
                        name: String,
         
     | 
| 
      
 14 
     | 
    
         
            +
                        collaborative: T::Boolean,
         
     | 
| 
      
 15 
     | 
    
         
            +
                        description: String,
         
     | 
| 
      
 16 
     | 
    
         
            +
                        public: T::Boolean,
         
     | 
| 
      
 17 
     | 
    
         
            +
                        request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 18 
     | 
    
         
            +
                      ).returns(Spotted::Models::Users::PlaylistCreateResponse)
         
     | 
| 
      
 19 
     | 
    
         
            +
                    end
         
     | 
| 
      
 20 
     | 
    
         
            +
                    def create(
         
     | 
| 
      
 21 
     | 
    
         
            +
                      # The user's [Spotify user ID](/documentation/web-api/concepts/spotify-uris-ids).
         
     | 
| 
      
 22 
     | 
    
         
            +
                      user_id,
         
     | 
| 
      
 23 
     | 
    
         
            +
                      # The name for the new playlist, for example `"Your Coolest Playlist"`. This name
         
     | 
| 
      
 24 
     | 
    
         
            +
                      # does not need to be unique; a user may have several playlists with the same
         
     | 
| 
      
 25 
     | 
    
         
            +
                      # name.
         
     | 
| 
      
 26 
     | 
    
         
            +
                      name:,
         
     | 
| 
      
 27 
     | 
    
         
            +
                      # Defaults to `false`. If `true` the playlist will be collaborative. _**Note**: to
         
     | 
| 
      
 28 
     | 
    
         
            +
                      # create a collaborative playlist you must also set `public` to `false`. To create
         
     | 
| 
      
 29 
     | 
    
         
            +
                      # collaborative playlists you must have granted `playlist-modify-private` and
         
     | 
| 
      
 30 
     | 
    
         
            +
                      # `playlist-modify-public`
         
     | 
| 
      
 31 
     | 
    
         
            +
                      # [scopes](/documentation/web-api/concepts/scopes/#list-of-scopes)._
         
     | 
| 
      
 32 
     | 
    
         
            +
                      collaborative: nil,
         
     | 
| 
      
 33 
     | 
    
         
            +
                      # value for playlist description as displayed in Spotify Clients and in the Web
         
     | 
| 
      
 34 
     | 
    
         
            +
                      # API.
         
     | 
| 
      
 35 
     | 
    
         
            +
                      description: nil,
         
     | 
| 
      
 36 
     | 
    
         
            +
                      # Defaults to `true`. The playlist's public/private status (if it should be added
         
     | 
| 
      
 37 
     | 
    
         
            +
                      # to the user's profile or not): `true` the playlist will be public, `false` the
         
     | 
| 
      
 38 
     | 
    
         
            +
                      # playlist will be private. To be able to create private playlists, the user must
         
     | 
| 
      
 39 
     | 
    
         
            +
                      # have granted the `playlist-modify-private`
         
     | 
| 
      
 40 
     | 
    
         
            +
                      # [scope](/documentation/web-api/concepts/scopes/#list-of-scopes). For more about
         
     | 
| 
      
 41 
     | 
    
         
            +
                      # public/private status, see
         
     | 
| 
      
 42 
     | 
    
         
            +
                      # [Working with Playlists](/documentation/web-api/concepts/playlists)
         
     | 
| 
      
 43 
     | 
    
         
            +
                      public: nil,
         
     | 
| 
      
 44 
     | 
    
         
            +
                      request_options: {}
         
     | 
| 
      
 45 
     | 
    
         
            +
                    )
         
     | 
| 
      
 46 
     | 
    
         
            +
                    end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                    # Get a list of the playlists owned or followed by a Spotify user.
         
     | 
| 
      
 49 
     | 
    
         
            +
                    sig do
         
     | 
| 
      
 50 
     | 
    
         
            +
                      params(
         
     | 
| 
      
 51 
     | 
    
         
            +
                        user_id: String,
         
     | 
| 
      
 52 
     | 
    
         
            +
                        limit: Integer,
         
     | 
| 
      
 53 
     | 
    
         
            +
                        offset: Integer,
         
     | 
| 
      
 54 
     | 
    
         
            +
                        request_options: Spotted::RequestOptions::OrHash
         
     | 
| 
      
 55 
     | 
    
         
            +
                      ).returns(
         
     | 
| 
      
 56 
     | 
    
         
            +
                        Spotted::Internal::CursorURLPage[Spotted::SimplifiedPlaylistObject]
         
     | 
| 
      
 57 
     | 
    
         
            +
                      )
         
     | 
| 
      
 58 
     | 
    
         
            +
                    end
         
     | 
| 
      
 59 
     | 
    
         
            +
                    def list(
         
     | 
| 
      
 60 
     | 
    
         
            +
                      # The user's [Spotify user ID](/documentation/web-api/concepts/spotify-uris-ids).
         
     | 
| 
      
 61 
     | 
    
         
            +
                      user_id,
         
     | 
| 
      
 62 
     | 
    
         
            +
                      # The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
         
     | 
| 
      
 63 
     | 
    
         
            +
                      limit: nil,
         
     | 
| 
      
 64 
     | 
    
         
            +
                      # The index of the first playlist to return. Default: 0 (the first object).
         
     | 
| 
      
 65 
     | 
    
         
            +
                      # Maximum offset: 100.000\. Use with `limit` to get the next set of playlists.
         
     | 
| 
      
 66 
     | 
    
         
            +
                      offset: nil,
         
     | 
| 
      
 67 
     | 
    
         
            +
                      request_options: {}
         
     | 
| 
      
 68 
     | 
    
         
            +
                    )
         
     | 
| 
      
 69 
     | 
    
         
            +
                    end
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
                    # @api private
         
     | 
| 
      
 72 
     | 
    
         
            +
                    sig { params(client: Spotted::Client).returns(T.attached_class) }
         
     | 
| 
      
 73 
     | 
    
         
            +
                    def self.new(client:)
         
     | 
| 
      
 74 
     | 
    
         
            +
                    end
         
     | 
| 
      
 75 
     | 
    
         
            +
                  end
         
     | 
| 
      
 76 
     | 
    
         
            +
                end
         
     | 
| 
      
 77 
     | 
    
         
            +
              end
         
     | 
| 
      
 78 
     | 
    
         
            +
            end
         
     |