spotted 0.24.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/spotted/internal/type/base_model.rb +1 -0
  5. data/lib/spotted/models/album_bulk_retrieve_response.rb +26 -2
  6. data/lib/spotted/models/album_restriction_object.rb +13 -1
  7. data/lib/spotted/models/album_retrieve_response.rb +26 -2
  8. data/lib/spotted/models/artist_list_albums_response.rb +13 -1
  9. data/lib/spotted/models/artist_object.rb +13 -1
  10. data/lib/spotted/models/audio_analysis_retrieve_response.rb +39 -3
  11. data/lib/spotted/models/audio_feature_bulk_retrieve_response.rb +13 -1
  12. data/lib/spotted/models/audio_feature_retrieve_response.rb +13 -1
  13. data/lib/spotted/models/audiobook_base.rb +13 -1
  14. data/lib/spotted/models/audiobook_bulk_retrieve_response.rb +13 -1
  15. data/lib/spotted/models/audiobook_retrieve_response.rb +13 -1
  16. data/lib/spotted/models/author_object.rb +13 -1
  17. data/lib/spotted/models/browse/category_get_playlists_response.rb +13 -1
  18. data/lib/spotted/models/browse/category_list_response.rb +26 -2
  19. data/lib/spotted/models/browse/category_retrieve_response.rb +13 -1
  20. data/lib/spotted/models/browse_get_featured_playlists_response.rb +13 -1
  21. data/lib/spotted/models/browse_get_new_releases_response.rb +26 -2
  22. data/lib/spotted/models/chapter_bulk_retrieve_response.rb +13 -1
  23. data/lib/spotted/models/chapter_restriction_object.rb +13 -1
  24. data/lib/spotted/models/chapter_retrieve_response.rb +13 -1
  25. data/lib/spotted/models/copyright_object.rb +13 -1
  26. data/lib/spotted/models/episode_object.rb +13 -1
  27. data/lib/spotted/models/episode_restriction_object.rb +13 -1
  28. data/lib/spotted/models/external_id_object.rb +13 -1
  29. data/lib/spotted/models/external_url_object.rb +13 -1
  30. data/lib/spotted/models/followers_object.rb +13 -1
  31. data/lib/spotted/models/image_object.rb +13 -1
  32. data/lib/spotted/models/linked_track_object.rb +13 -1
  33. data/lib/spotted/models/me/album_list_response.rb +39 -3
  34. data/lib/spotted/models/me/album_remove_params.rb +13 -1
  35. data/lib/spotted/models/me/album_save_params.rb +13 -1
  36. data/lib/spotted/models/me/audiobook_list_response.rb +26 -2
  37. data/lib/spotted/models/me/context_object.rb +13 -1
  38. data/lib/spotted/models/me/device_object.rb +13 -1
  39. data/lib/spotted/models/me/episode_list_response.rb +13 -1
  40. data/lib/spotted/models/me/episode_remove_params.rb +13 -1
  41. data/lib/spotted/models/me/episode_save_params.rb +13 -1
  42. data/lib/spotted/models/me/following_bulk_retrieve_response.rb +30 -2
  43. data/lib/spotted/models/me/following_follow_params.rb +13 -1
  44. data/lib/spotted/models/me/following_unfollow_params.rb +13 -1
  45. data/lib/spotted/models/me/player/queue_get_response.rb +16 -1
  46. data/lib/spotted/models/me/player_get_currently_playing_response.rb +30 -2
  47. data/lib/spotted/models/me/player_get_state_response.rb +29 -2
  48. data/lib/spotted/models/me/player_list_recently_played_response.rb +16 -1
  49. data/lib/spotted/models/me/player_start_playback_params.rb +13 -1
  50. data/lib/spotted/models/me/player_transfer_params.rb +13 -1
  51. data/lib/spotted/models/me/show_list_response.rb +13 -1
  52. data/lib/spotted/models/me/show_remove_params.rb +13 -1
  53. data/lib/spotted/models/me/show_save_params.rb +13 -1
  54. data/lib/spotted/models/me/track_list_response.rb +13 -1
  55. data/lib/spotted/models/me/track_remove_params.rb +13 -1
  56. data/lib/spotted/models/me/track_save_params.rb +13 -1
  57. data/lib/spotted/models/me_retrieve_response.rb +26 -2
  58. data/lib/spotted/models/narrator_object.rb +13 -1
  59. data/lib/spotted/models/paging_playlist_object.rb +13 -1
  60. data/lib/spotted/models/playlist_retrieve_response.rb +18 -5
  61. data/lib/spotted/models/playlist_track_object.rb +13 -1
  62. data/lib/spotted/models/playlist_tracks_ref_object.rb +13 -1
  63. data/lib/spotted/models/playlist_update_params.rb +13 -1
  64. data/lib/spotted/models/playlist_user_object.rb +13 -1
  65. data/lib/spotted/models/playlists/follower_follow_params.rb +13 -1
  66. data/lib/spotted/models/playlists/track_add_params.rb +13 -1
  67. data/lib/spotted/models/playlists/track_remove_params.rb +13 -1
  68. data/lib/spotted/models/playlists/track_update_params.rb +13 -1
  69. data/lib/spotted/models/recommendation_get_response.rb +26 -2
  70. data/lib/spotted/models/resume_point_object.rb +13 -1
  71. data/lib/spotted/models/search_query_response.rb +91 -7
  72. data/lib/spotted/models/show_base.rb +13 -1
  73. data/lib/spotted/models/show_retrieve_response.rb +13 -1
  74. data/lib/spotted/models/simplified_artist_object.rb +13 -1
  75. data/lib/spotted/models/simplified_chapter_object.rb +13 -1
  76. data/lib/spotted/models/simplified_episode_object.rb +13 -1
  77. data/lib/spotted/models/simplified_playlist_object.rb +5 -4
  78. data/lib/spotted/models/simplified_track_object.rb +13 -1
  79. data/lib/spotted/models/time_interval_object.rb +16 -1
  80. data/lib/spotted/models/track_object.rb +26 -2
  81. data/lib/spotted/models/track_restriction_object.rb +13 -1
  82. data/lib/spotted/models/user_retrieve_profile_response.rb +13 -1
  83. data/lib/spotted/models/users/playlist_create_params.rb +13 -1
  84. data/lib/spotted/models/users/playlist_create_response.rb +18 -5
  85. data/lib/spotted/resources/me/albums.rb +6 -2
  86. data/lib/spotted/resources/me/episodes.rb +6 -2
  87. data/lib/spotted/resources/me/following.rb +6 -2
  88. data/lib/spotted/resources/me/player.rb +6 -2
  89. data/lib/spotted/resources/me/shows.rb +6 -2
  90. data/lib/spotted/resources/me/tracks.rb +6 -2
  91. data/lib/spotted/resources/playlists/followers.rb +3 -1
  92. data/lib/spotted/resources/playlists/tracks.rb +9 -3
  93. data/lib/spotted/resources/playlists.rb +3 -1
  94. data/lib/spotted/resources/users/playlists.rb +3 -1
  95. data/lib/spotted/version.rb +1 -1
  96. data/rbi/spotted/models/album_bulk_retrieve_response.rbi +41 -3
  97. data/rbi/spotted/models/album_restriction_object.rbi +22 -1
  98. data/rbi/spotted/models/album_retrieve_response.rbi +41 -3
  99. data/rbi/spotted/models/artist_list_albums_response.rbi +19 -0
  100. data/rbi/spotted/models/artist_object.rbi +19 -0
  101. data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +57 -0
  102. data/rbi/spotted/models/audio_feature_bulk_retrieve_response.rbi +19 -0
  103. data/rbi/spotted/models/audio_feature_retrieve_response.rbi +19 -0
  104. data/rbi/spotted/models/audiobook_base.rbi +20 -1
  105. data/rbi/spotted/models/audiobook_bulk_retrieve_response.rbi +22 -3
  106. data/rbi/spotted/models/audiobook_retrieve_response.rbi +22 -3
  107. data/rbi/spotted/models/author_object.rbi +22 -3
  108. data/rbi/spotted/models/browse/category_get_playlists_response.rbi +25 -3
  109. data/rbi/spotted/models/browse/category_list_response.rbi +44 -6
  110. data/rbi/spotted/models/browse/category_retrieve_response.rbi +22 -3
  111. data/rbi/spotted/models/browse_get_featured_playlists_response.rbi +25 -3
  112. data/rbi/spotted/models/browse_get_new_releases_response.rbi +41 -3
  113. data/rbi/spotted/models/chapter_bulk_retrieve_response.rbi +19 -0
  114. data/rbi/spotted/models/chapter_restriction_object.rbi +21 -2
  115. data/rbi/spotted/models/chapter_retrieve_response.rbi +19 -0
  116. data/rbi/spotted/models/copyright_object.rbi +25 -2
  117. data/rbi/spotted/models/episode_object.rbi +19 -0
  118. data/rbi/spotted/models/episode_restriction_object.rbi +21 -2
  119. data/rbi/spotted/models/external_id_object.rbi +28 -2
  120. data/rbi/spotted/models/external_url_object.rbi +21 -2
  121. data/rbi/spotted/models/followers_object.rbi +27 -4
  122. data/rbi/spotted/models/image_object.rbi +26 -3
  123. data/rbi/spotted/models/linked_track_object.rbi +19 -0
  124. data/rbi/spotted/models/me/album_list_response.rbi +63 -6
  125. data/rbi/spotted/models/me/album_remove_params.rbi +23 -1
  126. data/rbi/spotted/models/me/album_save_params.rbi +23 -1
  127. data/rbi/spotted/models/me/audiobook_list_response.rbi +44 -6
  128. data/rbi/spotted/models/me/context_object.rbi +19 -0
  129. data/rbi/spotted/models/me/device_object.rbi +19 -0
  130. data/rbi/spotted/models/me/episode_list_response.rbi +27 -3
  131. data/rbi/spotted/models/me/episode_remove_params.rbi +23 -1
  132. data/rbi/spotted/models/me/episode_save_params.rbi +23 -1
  133. data/rbi/spotted/models/me/following_bulk_retrieve_response.rbi +47 -3
  134. data/rbi/spotted/models/me/following_follow_params.rbi +23 -1
  135. data/rbi/spotted/models/me/following_unfollow_params.rbi +23 -1
  136. data/rbi/spotted/models/me/player/queue_get_response.rbi +19 -0
  137. data/rbi/spotted/models/me/player_get_currently_playing_response.rbi +38 -0
  138. data/rbi/spotted/models/me/player_get_state_response.rbi +38 -0
  139. data/rbi/spotted/models/me/player_list_recently_played_response.rbi +19 -0
  140. data/rbi/spotted/models/me/player_start_playback_params.rbi +19 -0
  141. data/rbi/spotted/models/me/player_transfer_params.rbi +19 -0
  142. data/rbi/spotted/models/me/show_list_response.rbi +27 -4
  143. data/rbi/spotted/models/me/show_remove_params.rbi +23 -1
  144. data/rbi/spotted/models/me/show_save_params.rbi +23 -1
  145. data/rbi/spotted/models/me/track_list_response.rbi +29 -4
  146. data/rbi/spotted/models/me/track_remove_params.rbi +23 -1
  147. data/rbi/spotted/models/me/track_save_params.rbi +19 -0
  148. data/rbi/spotted/models/me_retrieve_response.rbi +47 -5
  149. data/rbi/spotted/models/narrator_object.rbi +22 -3
  150. data/rbi/spotted/models/paging_playlist_object.rbi +22 -3
  151. data/rbi/spotted/models/playlist_retrieve_response.rbi +30 -9
  152. data/rbi/spotted/models/playlist_track_object.rbi +19 -0
  153. data/rbi/spotted/models/playlist_tracks_ref_object.rbi +27 -2
  154. data/rbi/spotted/models/playlist_update_params.rbi +19 -0
  155. data/rbi/spotted/models/playlist_user_object.rbi +19 -0
  156. data/rbi/spotted/models/playlists/follower_follow_params.rbi +23 -1
  157. data/rbi/spotted/models/playlists/track_add_params.rbi +19 -0
  158. data/rbi/spotted/models/playlists/track_remove_params.rbi +19 -0
  159. data/rbi/spotted/models/playlists/track_update_params.rbi +19 -0
  160. data/rbi/spotted/models/recommendation_get_response.rbi +41 -3
  161. data/rbi/spotted/models/resume_point_object.rbi +27 -4
  162. data/rbi/spotted/models/search_query_response.rbi +151 -18
  163. data/rbi/spotted/models/show_base.rbi +20 -1
  164. data/rbi/spotted/models/show_retrieve_response.rbi +22 -3
  165. data/rbi/spotted/models/simplified_artist_object.rbi +19 -0
  166. data/rbi/spotted/models/simplified_chapter_object.rbi +19 -0
  167. data/rbi/spotted/models/simplified_episode_object.rbi +19 -0
  168. data/rbi/spotted/models/simplified_playlist_object.rbi +8 -6
  169. data/rbi/spotted/models/simplified_track_object.rbi +19 -0
  170. data/rbi/spotted/models/time_interval_object.rbi +31 -4
  171. data/rbi/spotted/models/track_object.rbi +38 -0
  172. data/rbi/spotted/models/track_restriction_object.rbi +21 -2
  173. data/rbi/spotted/models/user_retrieve_profile_response.rbi +19 -0
  174. data/rbi/spotted/models/users/playlist_create_params.rbi +19 -0
  175. data/rbi/spotted/models/users/playlist_create_response.rbi +30 -9
  176. data/rbi/spotted/resources/me/albums.rbi +14 -0
  177. data/rbi/spotted/resources/me/episodes.rbi +14 -0
  178. data/rbi/spotted/resources/me/following.rbi +14 -0
  179. data/rbi/spotted/resources/me/player.rbi +14 -0
  180. data/rbi/spotted/resources/me/shows.rbi +14 -0
  181. data/rbi/spotted/resources/me/tracks.rbi +14 -0
  182. data/rbi/spotted/resources/playlists/followers.rbi +7 -0
  183. data/rbi/spotted/resources/playlists/tracks.rbi +21 -0
  184. data/rbi/spotted/resources/playlists.rbi +7 -0
  185. data/rbi/spotted/resources/users/playlists.rbi +7 -0
  186. data/sig/spotted/models/album_bulk_retrieve_response.rbs +17 -3
  187. data/sig/spotted/models/album_restriction_object.rbs +10 -1
  188. data/sig/spotted/models/album_retrieve_response.rbs +17 -3
  189. data/sig/spotted/models/artist_list_albums_response.rbs +7 -0
  190. data/sig/spotted/models/artist_object.rbs +7 -0
  191. data/sig/spotted/models/audio_analysis_retrieve_response.rbs +21 -0
  192. data/sig/spotted/models/audio_feature_bulk_retrieve_response.rbs +7 -0
  193. data/sig/spotted/models/audio_feature_retrieve_response.rbs +7 -0
  194. data/sig/spotted/models/audiobook_base.rbs +9 -2
  195. data/sig/spotted/models/audiobook_bulk_retrieve_response.rbs +10 -3
  196. data/sig/spotted/models/audiobook_retrieve_response.rbs +10 -3
  197. data/sig/spotted/models/author_object.rbs +7 -3
  198. data/sig/spotted/models/browse/category_get_playlists_response.rbs +13 -3
  199. data/sig/spotted/models/browse/category_list_response.rbs +20 -6
  200. data/sig/spotted/models/browse/category_retrieve_response.rbs +10 -3
  201. data/sig/spotted/models/browse_get_featured_playlists_response.rbs +13 -3
  202. data/sig/spotted/models/browse_get_new_releases_response.rbs +17 -3
  203. data/sig/spotted/models/chapter_bulk_retrieve_response.rbs +7 -0
  204. data/sig/spotted/models/chapter_restriction_object.rbs +7 -3
  205. data/sig/spotted/models/chapter_retrieve_response.rbs +7 -0
  206. data/sig/spotted/models/copyright_object.rbs +7 -3
  207. data/sig/spotted/models/episode_object.rbs +7 -0
  208. data/sig/spotted/models/episode_restriction_object.rbs +7 -3
  209. data/sig/spotted/models/external_id_object.rbs +19 -4
  210. data/sig/spotted/models/external_url_object.rbs +7 -3
  211. data/sig/spotted/models/followers_object.rbs +11 -3
  212. data/sig/spotted/models/image_object.rbs +18 -3
  213. data/sig/spotted/models/linked_track_object.rbs +7 -0
  214. data/sig/spotted/models/me/album_list_response.rbs +30 -6
  215. data/sig/spotted/models/me/album_remove_params.rbs +8 -1
  216. data/sig/spotted/models/me/album_save_params.rbs +8 -1
  217. data/sig/spotted/models/me/audiobook_list_response.rbs +20 -6
  218. data/sig/spotted/models/me/context_object.rbs +7 -0
  219. data/sig/spotted/models/me/device_object.rbs +7 -0
  220. data/sig/spotted/models/me/episode_list_response.rbs +12 -3
  221. data/sig/spotted/models/me/episode_remove_params.rbs +8 -1
  222. data/sig/spotted/models/me/episode_save_params.rbs +8 -1
  223. data/sig/spotted/models/me/following_bulk_retrieve_response.rbs +18 -3
  224. data/sig/spotted/models/me/following_follow_params.rbs +8 -1
  225. data/sig/spotted/models/me/following_unfollow_params.rbs +8 -1
  226. data/sig/spotted/models/me/player/queue_get_response.rbs +7 -0
  227. data/sig/spotted/models/me/player_get_currently_playing_response.rbs +14 -0
  228. data/sig/spotted/models/me/player_get_state_response.rbs +14 -0
  229. data/sig/spotted/models/me/player_list_recently_played_response.rbs +7 -0
  230. data/sig/spotted/models/me/player_start_playback_params.rbs +7 -0
  231. data/sig/spotted/models/me/player_transfer_params.rbs +7 -1
  232. data/sig/spotted/models/me/show_list_response.rbs +16 -3
  233. data/sig/spotted/models/me/show_remove_params.rbs +8 -1
  234. data/sig/spotted/models/me/show_save_params.rbs +8 -1
  235. data/sig/spotted/models/me/track_list_response.rbs +16 -3
  236. data/sig/spotted/models/me/track_remove_params.rbs +8 -1
  237. data/sig/spotted/models/me/track_save_params.rbs +7 -0
  238. data/sig/spotted/models/me_retrieve_response.rbs +23 -3
  239. data/sig/spotted/models/narrator_object.rbs +7 -3
  240. data/sig/spotted/models/paging_playlist_object.rbs +10 -3
  241. data/sig/spotted/models/playlist_retrieve_response.rbs +10 -3
  242. data/sig/spotted/models/playlist_track_object.rbs +7 -0
  243. data/sig/spotted/models/playlist_tracks_ref_object.rbs +8 -3
  244. data/sig/spotted/models/playlist_update_params.rbs +13 -1
  245. data/sig/spotted/models/playlist_user_object.rbs +7 -0
  246. data/sig/spotted/models/playlists/follower_follow_params.rbs +8 -1
  247. data/sig/spotted/models/playlists/track_add_params.rbs +7 -1
  248. data/sig/spotted/models/playlists/track_remove_params.rbs +7 -0
  249. data/sig/spotted/models/playlists/track_update_params.rbs +7 -0
  250. data/sig/spotted/models/recommendation_get_response.rbs +17 -3
  251. data/sig/spotted/models/resume_point_object.rbs +11 -2
  252. data/sig/spotted/models/search_query_response.rbs +67 -18
  253. data/sig/spotted/models/show_base.rbs +9 -2
  254. data/sig/spotted/models/show_retrieve_response.rbs +10 -3
  255. data/sig/spotted/models/simplified_artist_object.rbs +7 -0
  256. data/sig/spotted/models/simplified_chapter_object.rbs +7 -0
  257. data/sig/spotted/models/simplified_episode_object.rbs +7 -0
  258. data/sig/spotted/models/simplified_track_object.rbs +7 -0
  259. data/sig/spotted/models/time_interval_object.rbs +12 -2
  260. data/sig/spotted/models/track_object.rbs +14 -0
  261. data/sig/spotted/models/track_restriction_object.rbs +7 -3
  262. data/sig/spotted/models/user_retrieve_profile_response.rbs +7 -0
  263. data/sig/spotted/models/users/playlist_create_params.rbs +13 -1
  264. data/sig/spotted/models/users/playlist_create_response.rbs +10 -3
  265. data/sig/spotted/resources/me/albums.rbs +2 -0
  266. data/sig/spotted/resources/me/episodes.rbs +2 -0
  267. data/sig/spotted/resources/me/following.rbs +2 -0
  268. data/sig/spotted/resources/me/player.rbs +2 -0
  269. data/sig/spotted/resources/me/shows.rbs +2 -0
  270. data/sig/spotted/resources/me/tracks.rbs +2 -0
  271. data/sig/spotted/resources/playlists/followers.rbs +1 -0
  272. data/sig/spotted/resources/playlists/tracks.rbs +3 -0
  273. data/sig/spotted/resources/playlists.rbs +1 -0
  274. data/sig/spotted/resources/users/playlists.rbs +1 -0
  275. metadata +2 -2
@@ -82,6 +82,17 @@ module Spotted
82
82
  end
83
83
  attr_writer :items
84
84
 
85
+ # The playlist's public/private status (if it should be added to the user's
86
+ # profile or not): `true` the playlist will be public, `false` the playlist will
87
+ # be private, `null` the playlist status is not relevant. For more about
88
+ # public/private status, see
89
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
90
+ sig { returns(T.nilable(T::Boolean)) }
91
+ attr_reader :published
92
+
93
+ sig { params(published: T::Boolean).void }
94
+ attr_writer :published
95
+
85
96
  # The episodes of the show.
86
97
  sig do
87
98
  params(
@@ -91,7 +102,8 @@ module Spotted
91
102
  offset: Integer,
92
103
  previous: T.nilable(String),
93
104
  total: Integer,
94
- items: T::Array[Spotted::SimplifiedEpisodeObject::OrHash]
105
+ items: T::Array[Spotted::SimplifiedEpisodeObject::OrHash],
106
+ published: T::Boolean
95
107
  ).returns(T.attached_class)
96
108
  end
97
109
  def self.new(
@@ -107,7 +119,13 @@ module Spotted
107
119
  previous:,
108
120
  # The total number of items available to return.
109
121
  total:,
110
- items: nil
122
+ items: nil,
123
+ # The playlist's public/private status (if it should be added to the user's
124
+ # profile or not): `true` the playlist will be public, `false` the playlist will
125
+ # be private, `null` the playlist status is not relevant. For more about
126
+ # public/private status, see
127
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
128
+ published: nil
111
129
  )
112
130
  end
113
131
 
@@ -120,7 +138,8 @@ module Spotted
120
138
  offset: Integer,
121
139
  previous: T.nilable(String),
122
140
  total: Integer,
123
- items: T::Array[Spotted::SimplifiedEpisodeObject]
141
+ items: T::Array[Spotted::SimplifiedEpisodeObject],
142
+ published: T::Boolean
124
143
  }
125
144
  )
126
145
  end
@@ -37,6 +37,17 @@ module Spotted
37
37
  sig { params(name: String).void }
38
38
  attr_writer :name
39
39
 
40
+ # The playlist's public/private status (if it should be added to the user's
41
+ # profile or not): `true` the playlist will be public, `false` the playlist will
42
+ # be private, `null` the playlist status is not relevant. For more about
43
+ # public/private status, see
44
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
45
+ sig { returns(T.nilable(T::Boolean)) }
46
+ attr_reader :published
47
+
48
+ sig { params(published: T::Boolean).void }
49
+ attr_writer :published
50
+
40
51
  # The object type.
41
52
  sig do
42
53
  returns(T.nilable(Spotted::SimplifiedArtistObject::Type::TaggedSymbol))
@@ -60,6 +71,7 @@ module Spotted
60
71
  external_urls: Spotted::ExternalURLObject::OrHash,
61
72
  href: String,
62
73
  name: String,
74
+ published: T::Boolean,
63
75
  type: Spotted::SimplifiedArtistObject::Type::OrSymbol,
64
76
  uri: String
65
77
  ).returns(T.attached_class)
@@ -74,6 +86,12 @@ module Spotted
74
86
  href: nil,
75
87
  # The name of the artist.
76
88
  name: nil,
89
+ # The playlist's public/private status (if it should be added to the user's
90
+ # profile or not): `true` the playlist will be public, `false` the playlist will
91
+ # be private, `null` the playlist status is not relevant. For more about
92
+ # public/private status, see
93
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
94
+ published: nil,
77
95
  # The object type.
78
96
  type: nil,
79
97
  # The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
@@ -89,6 +107,7 @@ module Spotted
89
107
  external_urls: Spotted::ExternalURLObject,
90
108
  href: String,
91
109
  name: String,
110
+ published: T::Boolean,
92
111
  type: Spotted::SimplifiedArtistObject::Type::TaggedSymbol,
93
112
  uri: String
94
113
  }
@@ -98,6 +98,17 @@ module Spotted
98
98
  sig { params(available_markets: T::Array[String]).void }
99
99
  attr_writer :available_markets
100
100
 
101
+ # The playlist's public/private status (if it should be added to the user's
102
+ # profile or not): `true` the playlist will be public, `false` the playlist will
103
+ # be private, `null` the playlist status is not relevant. For more about
104
+ # public/private status, see
105
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
106
+ sig { returns(T.nilable(T::Boolean)) }
107
+ attr_reader :published
108
+
109
+ sig { params(published: T::Boolean).void }
110
+ attr_writer :published
111
+
101
112
  # Included in the response when a content restriction is applied.
102
113
  sig { returns(T.nilable(Spotted::ChapterRestrictionObject)) }
103
114
  attr_reader :restrictions
@@ -135,6 +146,7 @@ module Spotted
135
146
  Spotted::SimplifiedChapterObject::ReleaseDatePrecision::OrSymbol,
136
147
  uri: String,
137
148
  available_markets: T::Array[String],
149
+ published: T::Boolean,
138
150
  restrictions: Spotted::ChapterRestrictionObject::OrHash,
139
151
  resume_point: Spotted::ResumePointObject::OrHash,
140
152
  type: Symbol
@@ -183,6 +195,12 @@ module Spotted
183
195
  # A list of the countries in which the chapter can be played, identified by their
184
196
  # [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.
185
197
  available_markets: nil,
198
+ # The playlist's public/private status (if it should be added to the user's
199
+ # profile or not): `true` the playlist will be public, `false` the playlist will
200
+ # be private, `null` the playlist status is not relevant. For more about
201
+ # public/private status, see
202
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
203
+ published: nil,
186
204
  # Included in the response when a content restriction is applied.
187
205
  restrictions: nil,
188
206
  # The user's most recent position in the chapter. Set if the supplied access token
@@ -215,6 +233,7 @@ module Spotted
215
233
  type: Symbol,
216
234
  uri: String,
217
235
  available_markets: T::Array[String],
236
+ published: T::Boolean,
218
237
  restrictions: Spotted::ChapterRestrictionObject,
219
238
  resume_point: Spotted::ResumePointObject
220
239
  }
@@ -99,6 +99,17 @@ module Spotted
99
99
  sig { params(language: String).void }
100
100
  attr_writer :language
101
101
 
102
+ # The playlist's public/private status (if it should be added to the user's
103
+ # profile or not): `true` the playlist will be public, `false` the playlist will
104
+ # be private, `null` the playlist status is not relevant. For more about
105
+ # public/private status, see
106
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
107
+ sig { returns(T.nilable(T::Boolean)) }
108
+ attr_reader :published
109
+
110
+ sig { params(published: T::Boolean).void }
111
+ attr_writer :published
112
+
102
113
  # Included in the response when a content restriction is applied.
103
114
  sig { returns(T.nilable(Spotted::EpisodeRestrictionObject)) }
104
115
  attr_reader :restrictions
@@ -136,6 +147,7 @@ module Spotted
136
147
  Spotted::SimplifiedEpisodeObject::ReleaseDatePrecision::OrSymbol,
137
148
  uri: String,
138
149
  language: String,
150
+ published: T::Boolean,
139
151
  restrictions: Spotted::EpisodeRestrictionObject::OrHash,
140
152
  resume_point: Spotted::ResumePointObject::OrHash,
141
153
  type: Symbol
@@ -185,6 +197,12 @@ module Spotted
185
197
  # [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code. This field is deprecated
186
198
  # and might be removed in the future. Please use the `languages` field instead.
187
199
  language: nil,
200
+ # The playlist's public/private status (if it should be added to the user's
201
+ # profile or not): `true` the playlist will be public, `false` the playlist will
202
+ # be private, `null` the playlist status is not relevant. For more about
203
+ # public/private status, see
204
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
205
+ published: nil,
188
206
  # Included in the response when a content restriction is applied.
189
207
  restrictions: nil,
190
208
  # The user's most recent position in the episode. Set if the supplied access token
@@ -217,6 +235,7 @@ module Spotted
217
235
  type: Symbol,
218
236
  uri: String,
219
237
  language: String,
238
+ published: T::Boolean,
220
239
  restrictions: Spotted::EpisodeRestrictionObject,
221
240
  resume_point: Spotted::ResumePointObject
222
241
  }
@@ -72,9 +72,10 @@ module Spotted
72
72
  end
73
73
  attr_writer :owner
74
74
 
75
- # The playlist's public/private status (if it is added to the user's profile):
76
- # `true` the playlist is public, `false` the playlist is private, `null` the
77
- # playlist status is not relevant. For more about public/private status, see
75
+ # The playlist's public/private status (if it should be added to the user's
76
+ # profile or not): `true` the playlist will be public, `false` the playlist will
77
+ # be private, `null` the playlist status is not relevant. For more about
78
+ # public/private status, see
78
79
  # [Working with Playlists](/documentation/web-api/concepts/playlists)
79
80
  sig { returns(T.nilable(T::Boolean)) }
80
81
  attr_reader :published
@@ -155,9 +156,10 @@ module Spotted
155
156
  name: nil,
156
157
  # The user who owns the playlist
157
158
  owner: nil,
158
- # The playlist's public/private status (if it is added to the user's profile):
159
- # `true` the playlist is public, `false` the playlist is private, `null` the
160
- # playlist status is not relevant. For more about public/private status, see
159
+ # The playlist's public/private status (if it should be added to the user's
160
+ # profile or not): `true` the playlist will be public, `false` the playlist will
161
+ # be private, `null` the playlist status is not relevant. For more about
162
+ # public/private status, see
161
163
  # [Working with Playlists](/documentation/web-api/concepts/playlists)
162
164
  published: nil,
163
165
  # The version identifier for the current playlist. Can be supplied in other
@@ -108,6 +108,17 @@ module Spotted
108
108
  sig { returns(T.nilable(String)) }
109
109
  attr_accessor :preview_url
110
110
 
111
+ # The playlist's public/private status (if it should be added to the user's
112
+ # profile or not): `true` the playlist will be public, `false` the playlist will
113
+ # be private, `null` the playlist status is not relevant. For more about
114
+ # public/private status, see
115
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
116
+ sig { returns(T.nilable(T::Boolean)) }
117
+ attr_reader :published
118
+
119
+ sig { params(published: T::Boolean).void }
120
+ attr_writer :published
121
+
111
122
  # Included in the response when a content restriction is applied.
112
123
  sig { returns(T.nilable(Spotted::TrackRestrictionObject)) }
113
124
  attr_reader :restrictions
@@ -153,6 +164,7 @@ module Spotted
153
164
  linked_from: Spotted::LinkedTrackObject::OrHash,
154
165
  name: String,
155
166
  preview_url: T.nilable(String),
167
+ published: T::Boolean,
156
168
  restrictions: Spotted::TrackRestrictionObject::OrHash,
157
169
  track_number: Integer,
158
170
  type: String,
@@ -196,6 +208,12 @@ module Spotted
196
208
  name: nil,
197
209
  # A URL to a 30 second preview (MP3 format) of the track.
198
210
  preview_url: nil,
211
+ # The playlist's public/private status (if it should be added to the user's
212
+ # profile or not): `true` the playlist will be public, `false` the playlist will
213
+ # be private, `null` the playlist status is not relevant. For more about
214
+ # public/private status, see
215
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
216
+ published: nil,
199
217
  # Included in the response when a content restriction is applied.
200
218
  restrictions: nil,
201
219
  # The number of the track. If an album has several discs, the track number is the
@@ -225,6 +243,7 @@ module Spotted
225
243
  linked_from: Spotted::LinkedTrackObject,
226
244
  name: String,
227
245
  preview_url: T.nilable(String),
246
+ published: T::Boolean,
228
247
  restrictions: Spotted::TrackRestrictionObject,
229
248
  track_number: Integer,
230
249
  type: String,
@@ -22,6 +22,17 @@ module Spotted
22
22
  sig { params(duration: Float).void }
23
23
  attr_writer :duration
24
24
 
25
+ # The playlist's public/private status (if it should be added to the user's
26
+ # profile or not): `true` the playlist will be public, `false` the playlist will
27
+ # be private, `null` the playlist status is not relevant. For more about
28
+ # public/private status, see
29
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
30
+ sig { returns(T.nilable(T::Boolean)) }
31
+ attr_reader :published
32
+
33
+ sig { params(published: T::Boolean).void }
34
+ attr_writer :published
35
+
25
36
  # The starting point (in seconds) of the time interval.
26
37
  sig { returns(T.nilable(Float)) }
27
38
  attr_reader :start
@@ -30,22 +41,38 @@ module Spotted
30
41
  attr_writer :start
31
42
 
32
43
  sig do
33
- params(confidence: Float, duration: Float, start: Float).returns(
34
- T.attached_class
35
- )
44
+ params(
45
+ confidence: Float,
46
+ duration: Float,
47
+ published: T::Boolean,
48
+ start: Float
49
+ ).returns(T.attached_class)
36
50
  end
37
51
  def self.new(
38
52
  # The confidence, from 0.0 to 1.0, of the reliability of the interval.
39
53
  confidence: nil,
40
54
  # The duration (in seconds) of the time interval.
41
55
  duration: nil,
56
+ # The playlist's public/private status (if it should be added to the user's
57
+ # profile or not): `true` the playlist will be public, `false` the playlist will
58
+ # be private, `null` the playlist status is not relevant. For more about
59
+ # public/private status, see
60
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
61
+ published: nil,
42
62
  # The starting point (in seconds) of the time interval.
43
63
  start: nil
44
64
  )
45
65
  end
46
66
 
47
67
  sig do
48
- override.returns({ confidence: Float, duration: Float, start: Float })
68
+ override.returns(
69
+ {
70
+ confidence: Float,
71
+ duration: Float,
72
+ published: T::Boolean,
73
+ start: Float
74
+ }
75
+ )
49
76
  end
50
77
  def to_hash
51
78
  end
@@ -136,6 +136,17 @@ module Spotted
136
136
  sig { returns(T.nilable(String)) }
137
137
  attr_accessor :preview_url
138
138
 
139
+ # The playlist's public/private status (if it should be added to the user's
140
+ # profile or not): `true` the playlist will be public, `false` the playlist will
141
+ # be private, `null` the playlist status is not relevant. For more about
142
+ # public/private status, see
143
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
144
+ sig { returns(T.nilable(T::Boolean)) }
145
+ attr_reader :published
146
+
147
+ sig { params(published: T::Boolean).void }
148
+ attr_writer :published
149
+
139
150
  # Included in the response when a content restriction is applied.
140
151
  sig { returns(T.nilable(Spotted::TrackRestrictionObject)) }
141
152
  attr_reader :restrictions
@@ -184,6 +195,7 @@ module Spotted
184
195
  name: String,
185
196
  popularity: Integer,
186
197
  preview_url: T.nilable(String),
198
+ published: T::Boolean,
187
199
  restrictions: Spotted::TrackRestrictionObject::OrHash,
188
200
  track_number: Integer,
189
201
  type: Spotted::TrackObject::Type::OrSymbol,
@@ -242,6 +254,12 @@ module Spotted
242
254
  popularity: nil,
243
255
  # A link to a 30 second preview (MP3 format) of the track. Can be `null`
244
256
  preview_url: nil,
257
+ # The playlist's public/private status (if it should be added to the user's
258
+ # profile or not): `true` the playlist will be public, `false` the playlist will
259
+ # be private, `null` the playlist status is not relevant. For more about
260
+ # public/private status, see
261
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
262
+ published: nil,
245
263
  # Included in the response when a content restriction is applied.
246
264
  restrictions: nil,
247
265
  # The number of the track. If an album has several discs, the track number is the
@@ -274,6 +292,7 @@ module Spotted
274
292
  name: String,
275
293
  popularity: Integer,
276
294
  preview_url: T.nilable(String),
295
+ published: T::Boolean,
277
296
  restrictions: Spotted::TrackRestrictionObject,
278
297
  track_number: Integer,
279
298
  type: Spotted::TrackObject::Type::TaggedSymbol,
@@ -356,6 +375,17 @@ module Spotted
356
375
  sig { returns(String) }
357
376
  attr_accessor :uri
358
377
 
378
+ # The playlist's public/private status (if it should be added to the user's
379
+ # profile or not): `true` the playlist will be public, `false` the playlist will
380
+ # be private, `null` the playlist status is not relevant. For more about
381
+ # public/private status, see
382
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
383
+ sig { returns(T.nilable(T::Boolean)) }
384
+ attr_reader :published
385
+
386
+ sig { params(published: T::Boolean).void }
387
+ attr_writer :published
388
+
359
389
  # Included in the response when a content restriction is applied.
360
390
  sig { returns(T.nilable(Spotted::AlbumRestrictionObject)) }
361
391
  attr_reader :restrictions
@@ -382,6 +412,7 @@ module Spotted
382
412
  Spotted::TrackObject::Album::ReleaseDatePrecision::OrSymbol,
383
413
  total_tracks: Integer,
384
414
  uri: String,
415
+ published: T::Boolean,
385
416
  restrictions: Spotted::AlbumRestrictionObject::OrHash,
386
417
  type: Symbol
387
418
  ).returns(T.attached_class)
@@ -418,6 +449,12 @@ module Spotted
418
449
  # The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
419
450
  # album.
420
451
  uri:,
452
+ # The playlist's public/private status (if it should be added to the user's
453
+ # profile or not): `true` the playlist will be public, `false` the playlist will
454
+ # be private, `null` the playlist status is not relevant. For more about
455
+ # public/private status, see
456
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
457
+ published: nil,
421
458
  # Included in the response when a content restriction is applied.
422
459
  restrictions: nil,
423
460
  # The object type.
@@ -442,6 +479,7 @@ module Spotted
442
479
  total_tracks: Integer,
443
480
  type: Symbol,
444
481
  uri: String,
482
+ published: T::Boolean,
445
483
  restrictions: Spotted::AlbumRestrictionObject
446
484
  }
447
485
  )
@@ -8,6 +8,17 @@ module Spotted
8
8
  T.any(Spotted::TrackRestrictionObject, Spotted::Internal::AnyHash)
9
9
  end
10
10
 
11
+ # The playlist's public/private status (if it should be added to the user's
12
+ # profile or not): `true` the playlist will be public, `false` the playlist will
13
+ # be private, `null` the playlist status is not relevant. For more about
14
+ # public/private status, see
15
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
16
+ sig { returns(T.nilable(T::Boolean)) }
17
+ attr_reader :published
18
+
19
+ sig { params(published: T::Boolean).void }
20
+ attr_writer :published
21
+
11
22
  # The reason for the restriction. Supported values:
12
23
  #
13
24
  # - `market` - The content item is not available in the given market.
@@ -24,8 +35,16 @@ module Spotted
24
35
  sig { params(reason: String).void }
25
36
  attr_writer :reason
26
37
 
27
- sig { params(reason: String).returns(T.attached_class) }
38
+ sig do
39
+ params(published: T::Boolean, reason: String).returns(T.attached_class)
40
+ end
28
41
  def self.new(
42
+ # The playlist's public/private status (if it should be added to the user's
43
+ # profile or not): `true` the playlist will be public, `false` the playlist will
44
+ # be private, `null` the playlist status is not relevant. For more about
45
+ # public/private status, see
46
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
47
+ published: nil,
29
48
  # The reason for the restriction. Supported values:
30
49
  #
31
50
  # - `market` - The content item is not available in the given market.
@@ -40,7 +59,7 @@ module Spotted
40
59
  )
41
60
  end
42
61
 
43
- sig { override.returns({ reason: String }) }
62
+ sig { override.returns({ published: T::Boolean, reason: String }) }
44
63
  def to_hash
45
64
  end
46
65
  end
@@ -51,6 +51,17 @@ module Spotted
51
51
  sig { params(images: T::Array[Spotted::ImageObject::OrHash]).void }
52
52
  attr_writer :images
53
53
 
54
+ # The playlist's public/private status (if it should be added to the user's
55
+ # profile or not): `true` the playlist will be public, `false` the playlist will
56
+ # be private, `null` the playlist status is not relevant. For more about
57
+ # public/private status, see
58
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
59
+ sig { returns(T.nilable(T::Boolean)) }
60
+ attr_reader :published
61
+
62
+ sig { params(published: T::Boolean).void }
63
+ attr_writer :published
64
+
54
65
  # The object type.
55
66
  sig do
56
67
  returns(
@@ -84,6 +95,7 @@ module Spotted
84
95
  followers: Spotted::FollowersObject::OrHash,
85
96
  href: String,
86
97
  images: T::Array[Spotted::ImageObject::OrHash],
98
+ published: T::Boolean,
87
99
  type: Spotted::Models::UserRetrieveProfileResponse::Type::OrSymbol,
88
100
  uri: String
89
101
  ).returns(T.attached_class)
@@ -102,6 +114,12 @@ module Spotted
102
114
  href: nil,
103
115
  # The user's profile image.
104
116
  images: nil,
117
+ # The playlist's public/private status (if it should be added to the user's
118
+ # profile or not): `true` the playlist will be public, `false` the playlist will
119
+ # be private, `null` the playlist status is not relevant. For more about
120
+ # public/private status, see
121
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
122
+ published: nil,
105
123
  # The object type.
106
124
  type: nil,
107
125
  # The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for this
@@ -119,6 +137,7 @@ module Spotted
119
137
  followers: Spotted::FollowersObject,
120
138
  href: String,
121
139
  images: T::Array[Spotted::ImageObject],
140
+ published: T::Boolean,
122
141
  type:
123
142
  Spotted::Models::UserRetrieveProfileResponse::Type::TaggedSymbol,
124
143
  uri: String
@@ -53,12 +53,24 @@ module Spotted
53
53
  sig { params(public: T::Boolean).void }
54
54
  attr_writer :public
55
55
 
56
+ # The playlist's public/private status (if it should be added to the user's
57
+ # profile or not): `true` the playlist will be public, `false` the playlist will
58
+ # be private, `null` the playlist status is not relevant. For more about
59
+ # public/private status, see
60
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
61
+ sig { returns(T.nilable(T::Boolean)) }
62
+ attr_reader :published
63
+
64
+ sig { params(published: T::Boolean).void }
65
+ attr_writer :published
66
+
56
67
  sig do
57
68
  params(
58
69
  name: String,
59
70
  collaborative: T::Boolean,
60
71
  description: String,
61
72
  public: T::Boolean,
73
+ published: T::Boolean,
62
74
  request_options: Spotted::RequestOptions::OrHash
63
75
  ).returns(T.attached_class)
64
76
  end
@@ -84,6 +96,12 @@ module Spotted
84
96
  # public/private status, see
85
97
  # [Working with Playlists](/documentation/web-api/concepts/playlists)
86
98
  public: nil,
99
+ # The playlist's public/private status (if it should be added to the user's
100
+ # profile or not): `true` the playlist will be public, `false` the playlist will
101
+ # be private, `null` the playlist status is not relevant. For more about
102
+ # public/private status, see
103
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
104
+ published: nil,
87
105
  request_options: {}
88
106
  )
89
107
  end
@@ -95,6 +113,7 @@ module Spotted
95
113
  collaborative: T::Boolean,
96
114
  description: String,
97
115
  public: T::Boolean,
116
+ published: T::Boolean,
98
117
  request_options: Spotted::RequestOptions
99
118
  }
100
119
  )
@@ -86,9 +86,10 @@ module Spotted
86
86
  end
87
87
  attr_writer :owner
88
88
 
89
- # The playlist's public/private status (if it is added to the user's profile):
90
- # `true` the playlist is public, `false` the playlist is private, `null` the
91
- # playlist status is not relevant. For more about public/private status, see
89
+ # The playlist's public/private status (if it should be added to the user's
90
+ # profile or not): `true` the playlist will be public, `false` the playlist will
91
+ # be private, `null` the playlist status is not relevant. For more about
92
+ # public/private status, see
92
93
  # [Working with Playlists](/documentation/web-api/concepts/playlists)
93
94
  sig { returns(T.nilable(T::Boolean)) }
94
95
  attr_reader :published
@@ -180,9 +181,10 @@ module Spotted
180
181
  name: nil,
181
182
  # The user who owns the playlist
182
183
  owner: nil,
183
- # The playlist's public/private status (if it is added to the user's profile):
184
- # `true` the playlist is public, `false` the playlist is private, `null` the
185
- # playlist status is not relevant. For more about public/private status, see
184
+ # The playlist's public/private status (if it should be added to the user's
185
+ # profile or not): `true` the playlist will be public, `false` the playlist will
186
+ # be private, `null` the playlist status is not relevant. For more about
187
+ # public/private status, see
186
188
  # [Working with Playlists](/documentation/web-api/concepts/playlists)
187
189
  published: nil,
188
190
  # The version identifier for the current playlist. Can be supplied in other
@@ -290,6 +292,17 @@ module Spotted
290
292
  end
291
293
  attr_writer :items
292
294
 
295
+ # The playlist's public/private status (if it should be added to the user's
296
+ # profile or not): `true` the playlist will be public, `false` the playlist will
297
+ # be private, `null` the playlist status is not relevant. For more about
298
+ # public/private status, see
299
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
300
+ sig { returns(T.nilable(T::Boolean)) }
301
+ attr_reader :published
302
+
303
+ sig { params(published: T::Boolean).void }
304
+ attr_writer :published
305
+
293
306
  # The tracks of the playlist.
294
307
  sig do
295
308
  params(
@@ -299,7 +312,8 @@ module Spotted
299
312
  offset: Integer,
300
313
  previous: T.nilable(String),
301
314
  total: Integer,
302
- items: T::Array[Spotted::PlaylistTrackObject::OrHash]
315
+ items: T::Array[Spotted::PlaylistTrackObject::OrHash],
316
+ published: T::Boolean
303
317
  ).returns(T.attached_class)
304
318
  end
305
319
  def self.new(
@@ -315,7 +329,13 @@ module Spotted
315
329
  previous:,
316
330
  # The total number of items available to return.
317
331
  total:,
318
- items: nil
332
+ items: nil,
333
+ # The playlist's public/private status (if it should be added to the user's
334
+ # profile or not): `true` the playlist will be public, `false` the playlist will
335
+ # be private, `null` the playlist status is not relevant. For more about
336
+ # public/private status, see
337
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
338
+ published: nil
319
339
  )
320
340
  end
321
341
 
@@ -328,7 +348,8 @@ module Spotted
328
348
  offset: Integer,
329
349
  previous: T.nilable(String),
330
350
  total: Integer,
331
- items: T::Array[Spotted::PlaylistTrackObject]
351
+ items: T::Array[Spotted::PlaylistTrackObject],
352
+ published: T::Boolean
332
353
  }
333
354
  )
334
355
  end