spotify-apimatic-sdk 1.0.0__py3-none-any.whl
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.
- spotify_apimatic_sdk-1.0.0.dist-info/METADATA +150 -0
- spotify_apimatic_sdk-1.0.0.dist-info/RECORD +186 -0
- spotify_apimatic_sdk-1.0.0.dist-info/WHEEL +5 -0
- spotify_apimatic_sdk-1.0.0.dist-info/licenses/LICENSE +30 -0
- spotify_apimatic_sdk-1.0.0.dist-info/top_level.txt +1 -0
- spotifywebapi/__init__.py +12 -0
- spotifywebapi/api_helper.py +19 -0
- spotifywebapi/configuration.py +318 -0
- spotifywebapi/controllers/__init__.py +20 -0
- spotifywebapi/controllers/albums_controller.py +498 -0
- spotifywebapi/controllers/artists_controller.py +327 -0
- spotifywebapi/controllers/audiobooks_controller.py +441 -0
- spotifywebapi/controllers/base_controller.py +67 -0
- spotifywebapi/controllers/categories_controller.py +161 -0
- spotifywebapi/controllers/chapters_controller.py +157 -0
- spotifywebapi/controllers/episodes_controller.py +390 -0
- spotifywebapi/controllers/genres_controller.py +84 -0
- spotifywebapi/controllers/markets_controller.py +82 -0
- spotifywebapi/controllers/o_auth_authorization_controller.py +156 -0
- spotifywebapi/controllers/player_controller.py +807 -0
- spotifywebapi/controllers/playlists_controller.py +851 -0
- spotifywebapi/controllers/search_controller.py +123 -0
- spotifywebapi/controllers/shows_controller.py +439 -0
- spotifywebapi/controllers/tracks_controller.py +821 -0
- spotifywebapi/controllers/users_controller.py +649 -0
- spotifywebapi/exceptions/__init__.py +11 -0
- spotifywebapi/exceptions/api_exception.py +36 -0
- spotifywebapi/exceptions/bad_request_exception.py +56 -0
- spotifywebapi/exceptions/forbidden_exception.py +56 -0
- spotifywebapi/exceptions/not_found_exception.py +56 -0
- spotifywebapi/exceptions/o_auth_provider_exception.py +73 -0
- spotifywebapi/exceptions/too_many_requests_exception.py +56 -0
- spotifywebapi/exceptions/unauthorized_exception.py +56 -0
- spotifywebapi/http/__init__.py +11 -0
- spotifywebapi/http/api_response.py +67 -0
- spotifywebapi/http/auth/__init__.py +5 -0
- spotifywebapi/http/auth/o_auth_2.py +336 -0
- spotifywebapi/http/http_call_back.py +20 -0
- spotifywebapi/http/http_client_provider.py +23 -0
- spotifywebapi/http/http_method_enum.py +25 -0
- spotifywebapi/http/http_request.py +55 -0
- spotifywebapi/http/http_response.py +45 -0
- spotifywebapi/http/proxy_settings.py +50 -0
- spotifywebapi/models/__init__.py +142 -0
- spotifywebapi/models/album_base.py +264 -0
- spotifywebapi/models/album_group_enum.py +51 -0
- spotifywebapi/models/album_object.py +375 -0
- spotifywebapi/models/album_restriction_object.py +109 -0
- spotifywebapi/models/album_type_enum.py +62 -0
- spotifywebapi/models/artist_discography_album_object.py +298 -0
- spotifywebapi/models/artist_object.py +335 -0
- spotifywebapi/models/audio_analysis_object.py +266 -0
- spotifywebapi/models/audio_features_object.py +518 -0
- spotifywebapi/models/audiobook_base.py +353 -0
- spotifywebapi/models/audiobook_object.py +369 -0
- spotifywebapi/models/author_object.py +85 -0
- spotifywebapi/models/categories.py +162 -0
- spotifywebapi/models/category_object.py +117 -0
- spotifywebapi/models/chapter_base.py +392 -0
- spotifywebapi/models/chapter_object.py +408 -0
- spotifywebapi/models/chapter_restriction_object.py +113 -0
- spotifywebapi/models/context_object.py +181 -0
- spotifywebapi/models/copyright_object.py +130 -0
- spotifywebapi/models/currently_playing_context_object.py +314 -0
- spotifywebapi/models/currently_playing_object.py +241 -0
- spotifywebapi/models/cursor_object.py +108 -0
- spotifywebapi/models/cursor_paged_artists.py +75 -0
- spotifywebapi/models/cursor_paging_object.py +183 -0
- spotifywebapi/models/cursor_paging_play_history_object.py +214 -0
- spotifywebapi/models/cursor_paging_simplified_artist_object.py +213 -0
- spotifywebapi/models/device_object.py +278 -0
- spotifywebapi/models/disallows_object.py +314 -0
- spotifywebapi/models/episode_base.py +394 -0
- spotifywebapi/models/episode_object.py +665 -0
- spotifywebapi/models/episode_restriction_object.py +112 -0
- spotifywebapi/models/error_object.py +85 -0
- spotifywebapi/models/explicit_content_settings_object.py +110 -0
- spotifywebapi/models/external_id_object.py +156 -0
- spotifywebapi/models/external_url_object.py +107 -0
- spotifywebapi/models/followers_object.py +134 -0
- spotifywebapi/models/image_object.py +168 -0
- spotifywebapi/models/include_external_enum.py +45 -0
- spotifywebapi/models/item_type_1_enum.py +56 -0
- spotifywebapi/models/item_type_2_enum.py +45 -0
- spotifywebapi/models/item_type_3_enum.py +45 -0
- spotifywebapi/models/item_type_enum.py +58 -0
- spotifywebapi/models/linked_track_object.py +205 -0
- spotifywebapi/models/many_albums.py +76 -0
- spotifywebapi/models/many_artists.py +76 -0
- spotifywebapi/models/many_audio_features.py +77 -0
- spotifywebapi/models/many_audiobooks.py +77 -0
- spotifywebapi/models/many_chapters.py +77 -0
- spotifywebapi/models/many_devices.py +76 -0
- spotifywebapi/models/many_episodes.py +77 -0
- spotifywebapi/models/many_genres.py +69 -0
- spotifywebapi/models/many_simplified_shows.py +74 -0
- spotifywebapi/models/many_tracks.py +76 -0
- spotifywebapi/models/markets.py +85 -0
- spotifywebapi/models/me_albums_request.py +90 -0
- spotifywebapi/models/me_episodes_request.py +73 -0
- spotifywebapi/models/me_episodes_request_1.py +89 -0
- spotifywebapi/models/me_following_request.py +74 -0
- spotifywebapi/models/me_following_request_1.py +90 -0
- spotifywebapi/models/me_player_play_request.py +165 -0
- spotifywebapi/models/me_player_request.py +103 -0
- spotifywebapi/models/me_shows_request.py +89 -0
- spotifywebapi/models/me_tracks_request.py +74 -0
- spotifywebapi/models/me_tracks_request_1.py +90 -0
- spotifywebapi/models/meta.py +227 -0
- spotifywebapi/models/mode_enum.py +52 -0
- spotifywebapi/models/narrator_object.py +85 -0
- spotifywebapi/models/o_auth_provider_error_enum.py +67 -0
- spotifywebapi/models/o_auth_scope_enum.py +98 -0
- spotifywebapi/models/o_auth_token.py +113 -0
- spotifywebapi/models/paged_albums.py +75 -0
- spotifywebapi/models/paged_categories.py +74 -0
- spotifywebapi/models/paging_artist_discography_album_object.py +163 -0
- spotifywebapi/models/paging_artist_object.py +162 -0
- spotifywebapi/models/paging_featured_playlist_object.py +113 -0
- spotifywebapi/models/paging_object.py +142 -0
- spotifywebapi/models/paging_playlist_object.py +163 -0
- spotifywebapi/models/paging_playlist_track_object.py +163 -0
- spotifywebapi/models/paging_saved_album_object.py +163 -0
- spotifywebapi/models/paging_saved_audiobook_object.py +163 -0
- spotifywebapi/models/paging_saved_episode_object.py +163 -0
- spotifywebapi/models/paging_saved_show_object.py +163 -0
- spotifywebapi/models/paging_saved_track_object.py +163 -0
- spotifywebapi/models/paging_simplified_album_object.py +163 -0
- spotifywebapi/models/paging_simplified_audiobook_object.py +162 -0
- spotifywebapi/models/paging_simplified_chapter_object.py +162 -0
- spotifywebapi/models/paging_simplified_episode_object.py +162 -0
- spotifywebapi/models/paging_simplified_show_object.py +160 -0
- spotifywebapi/models/paging_simplified_track_object.py +163 -0
- spotifywebapi/models/paging_track_object.py +162 -0
- spotifywebapi/models/play_history_object.py +141 -0
- spotifywebapi/models/playlist_object.py +425 -0
- spotifywebapi/models/playlist_owner_object.py +238 -0
- spotifywebapi/models/playlist_snapshot_id.py +85 -0
- spotifywebapi/models/playlist_track_object.py +171 -0
- spotifywebapi/models/playlist_tracks_ref_object.py +109 -0
- spotifywebapi/models/playlist_user_object.py +231 -0
- spotifywebapi/models/playlists_followers_request.py +86 -0
- spotifywebapi/models/playlists_request.py +160 -0
- spotifywebapi/models/playlists_tracks_request.py +121 -0
- spotifywebapi/models/playlists_tracks_request_1.py +188 -0
- spotifywebapi/models/playlists_tracks_request_2.py +109 -0
- spotifywebapi/models/private_user_object.py +379 -0
- spotifywebapi/models/public_user_object.py +268 -0
- spotifywebapi/models/queue_object.py +118 -0
- spotifywebapi/models/reason_enum.py +65 -0
- spotifywebapi/models/recommendation_seed_object.py +208 -0
- spotifywebapi/models/recommendations_object.py +96 -0
- spotifywebapi/models/release_date_precision_enum.py +62 -0
- spotifywebapi/models/resume_point_object.py +131 -0
- spotifywebapi/models/saved_album_object.py +118 -0
- spotifywebapi/models/saved_audiobook_object.py +118 -0
- spotifywebapi/models/saved_episode_object.py +116 -0
- spotifywebapi/models/saved_show_object.py +116 -0
- spotifywebapi/models/saved_track_object.py +118 -0
- spotifywebapi/models/search_items.py +256 -0
- spotifywebapi/models/section_object.py +362 -0
- spotifywebapi/models/segment_object.py +307 -0
- spotifywebapi/models/show_base.py +550 -0
- spotifywebapi/models/show_object.py +319 -0
- spotifywebapi/models/simplified_album_object.py +468 -0
- spotifywebapi/models/simplified_artist_object.py +228 -0
- spotifywebapi/models/simplified_playlist_object.py +398 -0
- spotifywebapi/models/simplified_track_object.py +494 -0
- spotifywebapi/models/time_interval_object.py +132 -0
- spotifywebapi/models/track.py +697 -0
- spotifywebapi/models/track_1.py +85 -0
- spotifywebapi/models/track_object.py +605 -0
- spotifywebapi/models/track_restriction_object.py +112 -0
- spotifywebapi/models/type_2_enum.py +56 -0
- spotifywebapi/models/type_3_enum.py +56 -0
- spotifywebapi/models/type_4_enum.py +56 -0
- spotifywebapi/models/type_5_enum.py +56 -0
- spotifywebapi/models/type_6_enum.py +56 -0
- spotifywebapi/models/type_8_enum.py +42 -0
- spotifywebapi/models/type_9_enum.py +42 -0
- spotifywebapi/models/type_enum.py +56 -0
- spotifywebapi/models/users_playlists_request.py +154 -0
- spotifywebapi/spotifywebapi_client.py +198 -0
- spotifywebapi/utilities/__init__.py +6 -0
- spotifywebapi/utilities/file_wrapper.py +45 -0
- spotifywebapi/utilities/union_type_lookup.py +113 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"""spotifywebapi.
|
|
2
|
+
|
|
3
|
+
This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# ruff: noqa: E501
|
|
7
|
+
from spotifywebapi.models.artist_object import (
|
|
8
|
+
ArtistObject,
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class PagingArtistObject(object):
|
|
13
|
+
"""Implementation of the 'PagingArtistObject' model.
|
|
14
|
+
|
|
15
|
+
Attributes:
|
|
16
|
+
href (str): A link to the Web API endpoint returning the full result of the
|
|
17
|
+
request
|
|
18
|
+
limit (int): The maximum number of items in the response (as set in the query
|
|
19
|
+
or by default).
|
|
20
|
+
next (str): URL to the next page of items. ( `null` if none)
|
|
21
|
+
offset (int): The offset of the items returned (as set in the query or by
|
|
22
|
+
default)
|
|
23
|
+
previous (str): URL to the previous page of items. ( `null` if none)
|
|
24
|
+
total (int): The total number of items available to return.
|
|
25
|
+
items (List[ArtistObject]): The model property of type List[ArtistObject].
|
|
26
|
+
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
# Create a mapping from Model property names to API property names
|
|
30
|
+
_names = {
|
|
31
|
+
"href": "href",
|
|
32
|
+
"limit": "limit",
|
|
33
|
+
"next": "next",
|
|
34
|
+
"offset": "offset",
|
|
35
|
+
"previous": "previous",
|
|
36
|
+
"total": "total",
|
|
37
|
+
"items": "items",
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
_nullables = [
|
|
41
|
+
"next",
|
|
42
|
+
"previous",
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
def __init__(
|
|
46
|
+
self,
|
|
47
|
+
href=None,
|
|
48
|
+
limit=None,
|
|
49
|
+
next=None,
|
|
50
|
+
offset=None,
|
|
51
|
+
previous=None,
|
|
52
|
+
total=None,
|
|
53
|
+
items=None):
|
|
54
|
+
"""Initialize a PagingArtistObject instance."""
|
|
55
|
+
# Initialize members of the class
|
|
56
|
+
self.href = href
|
|
57
|
+
self.limit = limit
|
|
58
|
+
self.next = next
|
|
59
|
+
self.offset = offset
|
|
60
|
+
self.previous = previous
|
|
61
|
+
self.total = total
|
|
62
|
+
self.items = items
|
|
63
|
+
|
|
64
|
+
@classmethod
|
|
65
|
+
def from_dictionary(cls,
|
|
66
|
+
dictionary):
|
|
67
|
+
"""Create an instance of this model from a dictionary
|
|
68
|
+
|
|
69
|
+
Args:
|
|
70
|
+
dictionary (dictionary): A dictionary representation of the object
|
|
71
|
+
as obtained from the deserialization of the server's response. The
|
|
72
|
+
keys MUST match property names in the API description.
|
|
73
|
+
|
|
74
|
+
Returns:
|
|
75
|
+
object: An instance of this structure class.
|
|
76
|
+
|
|
77
|
+
"""
|
|
78
|
+
if not isinstance(dictionary, dict) or dictionary is None:
|
|
79
|
+
return None
|
|
80
|
+
|
|
81
|
+
# Extract variables from the dictionary
|
|
82
|
+
href =\
|
|
83
|
+
dictionary.get("href")\
|
|
84
|
+
if dictionary.get("href")\
|
|
85
|
+
else None
|
|
86
|
+
limit =\
|
|
87
|
+
dictionary.get("limit")\
|
|
88
|
+
if dictionary.get("limit")\
|
|
89
|
+
else None
|
|
90
|
+
next =\
|
|
91
|
+
dictionary.get("next")\
|
|
92
|
+
if dictionary.get("next")\
|
|
93
|
+
else None
|
|
94
|
+
offset =\
|
|
95
|
+
dictionary.get("offset")\
|
|
96
|
+
if dictionary.get("offset")\
|
|
97
|
+
else None
|
|
98
|
+
previous =\
|
|
99
|
+
dictionary.get("previous")\
|
|
100
|
+
if dictionary.get("previous")\
|
|
101
|
+
else None
|
|
102
|
+
total =\
|
|
103
|
+
dictionary.get("total")\
|
|
104
|
+
if dictionary.get("total")\
|
|
105
|
+
else None
|
|
106
|
+
items = None
|
|
107
|
+
if dictionary.get("items") is not None:
|
|
108
|
+
items = [
|
|
109
|
+
ArtistObject.from_dictionary(x)
|
|
110
|
+
for x in dictionary.get("items")
|
|
111
|
+
]
|
|
112
|
+
|
|
113
|
+
# Return an object of this model
|
|
114
|
+
return cls(href,
|
|
115
|
+
limit,
|
|
116
|
+
next,
|
|
117
|
+
offset,
|
|
118
|
+
previous,
|
|
119
|
+
total,
|
|
120
|
+
items)
|
|
121
|
+
|
|
122
|
+
def __repr__(self):
|
|
123
|
+
"""Return a unambiguous string representation."""
|
|
124
|
+
_href=self.href
|
|
125
|
+
_limit=self.limit
|
|
126
|
+
_next=self.next
|
|
127
|
+
_offset=self.offset
|
|
128
|
+
_previous=self.previous
|
|
129
|
+
_total=self.total
|
|
130
|
+
_items=self.items
|
|
131
|
+
return (
|
|
132
|
+
f"{self.__class__.__name__}("
|
|
133
|
+
f"href={_href!r}, "
|
|
134
|
+
f"limit={_limit!r}, "
|
|
135
|
+
f"next={_next!r}, "
|
|
136
|
+
f"offset={_offset!r}, "
|
|
137
|
+
f"previous={_previous!r}, "
|
|
138
|
+
f"total={_total!r}, "
|
|
139
|
+
f"items={_items!r}, "
|
|
140
|
+
f")"
|
|
141
|
+
)
|
|
142
|
+
|
|
143
|
+
def __str__(self):
|
|
144
|
+
"""Return a human-readable string representation."""
|
|
145
|
+
_href=self.href
|
|
146
|
+
_limit=self.limit
|
|
147
|
+
_next=self.next
|
|
148
|
+
_offset=self.offset
|
|
149
|
+
_previous=self.previous
|
|
150
|
+
_total=self.total
|
|
151
|
+
_items=self.items
|
|
152
|
+
return (
|
|
153
|
+
f"{self.__class__.__name__}("
|
|
154
|
+
f"href={_href!s}, "
|
|
155
|
+
f"limit={_limit!s}, "
|
|
156
|
+
f"next={_next!s}, "
|
|
157
|
+
f"offset={_offset!s}, "
|
|
158
|
+
f"previous={_previous!s}, "
|
|
159
|
+
f"total={_total!s}, "
|
|
160
|
+
f"items={_items!s}, "
|
|
161
|
+
f")"
|
|
162
|
+
)
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"""spotifywebapi.
|
|
2
|
+
|
|
3
|
+
This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# ruff: noqa: E501
|
|
7
|
+
from spotifywebapi.api_helper import APIHelper
|
|
8
|
+
from spotifywebapi.models.paging_playlist_object import (
|
|
9
|
+
PagingPlaylistObject,
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class PagingFeaturedPlaylistObject(object):
|
|
14
|
+
"""Implementation of the 'PagingFeaturedPlaylistObject' model.
|
|
15
|
+
|
|
16
|
+
Attributes:
|
|
17
|
+
message (str): The localized message of a playlist.
|
|
18
|
+
playlists (PagingPlaylistObject): The model property of type
|
|
19
|
+
PagingPlaylistObject.
|
|
20
|
+
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
# Create a mapping from Model property names to API property names
|
|
24
|
+
_names = {
|
|
25
|
+
"message": "message",
|
|
26
|
+
"playlists": "playlists",
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
_optionals = [
|
|
30
|
+
"message",
|
|
31
|
+
"playlists",
|
|
32
|
+
]
|
|
33
|
+
|
|
34
|
+
def __init__(
|
|
35
|
+
self,
|
|
36
|
+
message=APIHelper.SKIP,
|
|
37
|
+
playlists=APIHelper.SKIP):
|
|
38
|
+
"""Initialize a PagingFeaturedPlaylistObject instance."""
|
|
39
|
+
# Initialize members of the class
|
|
40
|
+
if message is not APIHelper.SKIP:
|
|
41
|
+
self.message = message
|
|
42
|
+
if playlists is not APIHelper.SKIP:
|
|
43
|
+
self.playlists = playlists
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_dictionary(cls,
|
|
47
|
+
dictionary):
|
|
48
|
+
"""Create an instance of this model from a dictionary
|
|
49
|
+
|
|
50
|
+
Args:
|
|
51
|
+
dictionary (dictionary): A dictionary representation of the object
|
|
52
|
+
as obtained from the deserialization of the server's response. The
|
|
53
|
+
keys MUST match property names in the API description.
|
|
54
|
+
|
|
55
|
+
Returns:
|
|
56
|
+
object: An instance of this structure class.
|
|
57
|
+
|
|
58
|
+
"""
|
|
59
|
+
if not isinstance(dictionary, dict) or dictionary is None:
|
|
60
|
+
return None
|
|
61
|
+
|
|
62
|
+
# Extract variables from the dictionary
|
|
63
|
+
message =\
|
|
64
|
+
dictionary.get("message")\
|
|
65
|
+
if dictionary.get("message")\
|
|
66
|
+
else APIHelper.SKIP
|
|
67
|
+
playlists =\
|
|
68
|
+
PagingPlaylistObject.from_dictionary(
|
|
69
|
+
dictionary.get("playlists"))\
|
|
70
|
+
if "playlists" in dictionary.keys()\
|
|
71
|
+
else APIHelper.SKIP
|
|
72
|
+
|
|
73
|
+
# Return an object of this model
|
|
74
|
+
return cls(message,
|
|
75
|
+
playlists)
|
|
76
|
+
|
|
77
|
+
def __repr__(self):
|
|
78
|
+
"""Return a unambiguous string representation."""
|
|
79
|
+
_message=(
|
|
80
|
+
self.message
|
|
81
|
+
if hasattr(self, "message")
|
|
82
|
+
else None
|
|
83
|
+
)
|
|
84
|
+
_playlists=(
|
|
85
|
+
self.playlists
|
|
86
|
+
if hasattr(self, "playlists")
|
|
87
|
+
else None
|
|
88
|
+
)
|
|
89
|
+
return (
|
|
90
|
+
f"{self.__class__.__name__}("
|
|
91
|
+
f"message={_message!r}, "
|
|
92
|
+
f"playlists={_playlists!r}, "
|
|
93
|
+
f")"
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
def __str__(self):
|
|
97
|
+
"""Return a human-readable string representation."""
|
|
98
|
+
_message=(
|
|
99
|
+
self.message
|
|
100
|
+
if hasattr(self, "message")
|
|
101
|
+
else None
|
|
102
|
+
)
|
|
103
|
+
_playlists=(
|
|
104
|
+
self.playlists
|
|
105
|
+
if hasattr(self, "playlists")
|
|
106
|
+
else None
|
|
107
|
+
)
|
|
108
|
+
return (
|
|
109
|
+
f"{self.__class__.__name__}("
|
|
110
|
+
f"message={_message!s}, "
|
|
111
|
+
f"playlists={_playlists!s}, "
|
|
112
|
+
f")"
|
|
113
|
+
)
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"""spotifywebapi.
|
|
2
|
+
|
|
3
|
+
This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# ruff: noqa: E501
|
|
7
|
+
class PagingObject(object):
|
|
8
|
+
"""Implementation of the 'PagingObject' model.
|
|
9
|
+
|
|
10
|
+
Attributes:
|
|
11
|
+
href (str): A link to the Web API endpoint returning the full result of the
|
|
12
|
+
request
|
|
13
|
+
limit (int): The maximum number of items in the response (as set in the query
|
|
14
|
+
or by default).
|
|
15
|
+
next (str): URL to the next page of items. ( `null` if none)
|
|
16
|
+
offset (int): The offset of the items returned (as set in the query or by
|
|
17
|
+
default)
|
|
18
|
+
previous (str): URL to the previous page of items. ( `null` if none)
|
|
19
|
+
total (int): The total number of items available to return.
|
|
20
|
+
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
# Create a mapping from Model property names to API property names
|
|
24
|
+
_names = {
|
|
25
|
+
"href": "href",
|
|
26
|
+
"limit": "limit",
|
|
27
|
+
"next": "next",
|
|
28
|
+
"offset": "offset",
|
|
29
|
+
"previous": "previous",
|
|
30
|
+
"total": "total",
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
_nullables = [
|
|
34
|
+
"next",
|
|
35
|
+
"previous",
|
|
36
|
+
]
|
|
37
|
+
|
|
38
|
+
def __init__(
|
|
39
|
+
self,
|
|
40
|
+
href=None,
|
|
41
|
+
limit=None,
|
|
42
|
+
next=None,
|
|
43
|
+
offset=None,
|
|
44
|
+
previous=None,
|
|
45
|
+
total=None):
|
|
46
|
+
"""Initialize a PagingObject instance."""
|
|
47
|
+
# Initialize members of the class
|
|
48
|
+
self.href = href
|
|
49
|
+
self.limit = limit
|
|
50
|
+
self.next = next
|
|
51
|
+
self.offset = offset
|
|
52
|
+
self.previous = previous
|
|
53
|
+
self.total = total
|
|
54
|
+
|
|
55
|
+
@classmethod
|
|
56
|
+
def from_dictionary(cls,
|
|
57
|
+
dictionary):
|
|
58
|
+
"""Create an instance of this model from a dictionary
|
|
59
|
+
|
|
60
|
+
Args:
|
|
61
|
+
dictionary (dictionary): A dictionary representation of the object
|
|
62
|
+
as obtained from the deserialization of the server's response. The
|
|
63
|
+
keys MUST match property names in the API description.
|
|
64
|
+
|
|
65
|
+
Returns:
|
|
66
|
+
object: An instance of this structure class.
|
|
67
|
+
|
|
68
|
+
"""
|
|
69
|
+
if not isinstance(dictionary, dict) or dictionary is None:
|
|
70
|
+
return None
|
|
71
|
+
|
|
72
|
+
# Extract variables from the dictionary
|
|
73
|
+
href =\
|
|
74
|
+
dictionary.get("href")\
|
|
75
|
+
if dictionary.get("href")\
|
|
76
|
+
else None
|
|
77
|
+
limit =\
|
|
78
|
+
dictionary.get("limit")\
|
|
79
|
+
if dictionary.get("limit")\
|
|
80
|
+
else None
|
|
81
|
+
next =\
|
|
82
|
+
dictionary.get("next")\
|
|
83
|
+
if dictionary.get("next")\
|
|
84
|
+
else None
|
|
85
|
+
offset =\
|
|
86
|
+
dictionary.get("offset")\
|
|
87
|
+
if dictionary.get("offset")\
|
|
88
|
+
else None
|
|
89
|
+
previous =\
|
|
90
|
+
dictionary.get("previous")\
|
|
91
|
+
if dictionary.get("previous")\
|
|
92
|
+
else None
|
|
93
|
+
total =\
|
|
94
|
+
dictionary.get("total")\
|
|
95
|
+
if dictionary.get("total")\
|
|
96
|
+
else None
|
|
97
|
+
|
|
98
|
+
# Return an object of this model
|
|
99
|
+
return cls(href,
|
|
100
|
+
limit,
|
|
101
|
+
next,
|
|
102
|
+
offset,
|
|
103
|
+
previous,
|
|
104
|
+
total)
|
|
105
|
+
|
|
106
|
+
def __repr__(self):
|
|
107
|
+
"""Return a unambiguous string representation."""
|
|
108
|
+
_href=self.href
|
|
109
|
+
_limit=self.limit
|
|
110
|
+
_next=self.next
|
|
111
|
+
_offset=self.offset
|
|
112
|
+
_previous=self.previous
|
|
113
|
+
_total=self.total
|
|
114
|
+
return (
|
|
115
|
+
f"{self.__class__.__name__}("
|
|
116
|
+
f"href={_href!r}, "
|
|
117
|
+
f"limit={_limit!r}, "
|
|
118
|
+
f"next={_next!r}, "
|
|
119
|
+
f"offset={_offset!r}, "
|
|
120
|
+
f"previous={_previous!r}, "
|
|
121
|
+
f"total={_total!r}, "
|
|
122
|
+
f")"
|
|
123
|
+
)
|
|
124
|
+
|
|
125
|
+
def __str__(self):
|
|
126
|
+
"""Return a human-readable string representation."""
|
|
127
|
+
_href=self.href
|
|
128
|
+
_limit=self.limit
|
|
129
|
+
_next=self.next
|
|
130
|
+
_offset=self.offset
|
|
131
|
+
_previous=self.previous
|
|
132
|
+
_total=self.total
|
|
133
|
+
return (
|
|
134
|
+
f"{self.__class__.__name__}("
|
|
135
|
+
f"href={_href!s}, "
|
|
136
|
+
f"limit={_limit!s}, "
|
|
137
|
+
f"next={_next!s}, "
|
|
138
|
+
f"offset={_offset!s}, "
|
|
139
|
+
f"previous={_previous!s}, "
|
|
140
|
+
f"total={_total!s}, "
|
|
141
|
+
f")"
|
|
142
|
+
)
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"""spotifywebapi.
|
|
2
|
+
|
|
3
|
+
This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# ruff: noqa: E501
|
|
7
|
+
from spotifywebapi.models.simplified_playlist_object import (
|
|
8
|
+
SimplifiedPlaylistObject,
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class PagingPlaylistObject(object):
|
|
13
|
+
"""Implementation of the 'PagingPlaylistObject' model.
|
|
14
|
+
|
|
15
|
+
Attributes:
|
|
16
|
+
href (str): A link to the Web API endpoint returning the full result of the
|
|
17
|
+
request
|
|
18
|
+
limit (int): The maximum number of items in the response (as set in the query
|
|
19
|
+
or by default).
|
|
20
|
+
next (str): URL to the next page of items. ( `null` if none)
|
|
21
|
+
offset (int): The offset of the items returned (as set in the query or by
|
|
22
|
+
default)
|
|
23
|
+
previous (str): URL to the previous page of items. ( `null` if none)
|
|
24
|
+
total (int): The total number of items available to return.
|
|
25
|
+
items (List[SimplifiedPlaylistObject]): The model property of type
|
|
26
|
+
List[SimplifiedPlaylistObject].
|
|
27
|
+
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
# Create a mapping from Model property names to API property names
|
|
31
|
+
_names = {
|
|
32
|
+
"href": "href",
|
|
33
|
+
"limit": "limit",
|
|
34
|
+
"next": "next",
|
|
35
|
+
"offset": "offset",
|
|
36
|
+
"previous": "previous",
|
|
37
|
+
"total": "total",
|
|
38
|
+
"items": "items",
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
_nullables = [
|
|
42
|
+
"next",
|
|
43
|
+
"previous",
|
|
44
|
+
]
|
|
45
|
+
|
|
46
|
+
def __init__(
|
|
47
|
+
self,
|
|
48
|
+
href=None,
|
|
49
|
+
limit=None,
|
|
50
|
+
next=None,
|
|
51
|
+
offset=None,
|
|
52
|
+
previous=None,
|
|
53
|
+
total=None,
|
|
54
|
+
items=None):
|
|
55
|
+
"""Initialize a PagingPlaylistObject instance."""
|
|
56
|
+
# Initialize members of the class
|
|
57
|
+
self.href = href
|
|
58
|
+
self.limit = limit
|
|
59
|
+
self.next = next
|
|
60
|
+
self.offset = offset
|
|
61
|
+
self.previous = previous
|
|
62
|
+
self.total = total
|
|
63
|
+
self.items = items
|
|
64
|
+
|
|
65
|
+
@classmethod
|
|
66
|
+
def from_dictionary(cls,
|
|
67
|
+
dictionary):
|
|
68
|
+
"""Create an instance of this model from a dictionary
|
|
69
|
+
|
|
70
|
+
Args:
|
|
71
|
+
dictionary (dictionary): A dictionary representation of the object
|
|
72
|
+
as obtained from the deserialization of the server's response. The
|
|
73
|
+
keys MUST match property names in the API description.
|
|
74
|
+
|
|
75
|
+
Returns:
|
|
76
|
+
object: An instance of this structure class.
|
|
77
|
+
|
|
78
|
+
"""
|
|
79
|
+
if not isinstance(dictionary, dict) or dictionary is None:
|
|
80
|
+
return None
|
|
81
|
+
|
|
82
|
+
# Extract variables from the dictionary
|
|
83
|
+
href =\
|
|
84
|
+
dictionary.get("href")\
|
|
85
|
+
if dictionary.get("href")\
|
|
86
|
+
else None
|
|
87
|
+
limit =\
|
|
88
|
+
dictionary.get("limit")\
|
|
89
|
+
if dictionary.get("limit")\
|
|
90
|
+
else None
|
|
91
|
+
next =\
|
|
92
|
+
dictionary.get("next")\
|
|
93
|
+
if dictionary.get("next")\
|
|
94
|
+
else None
|
|
95
|
+
offset =\
|
|
96
|
+
dictionary.get("offset")\
|
|
97
|
+
if dictionary.get("offset")\
|
|
98
|
+
else None
|
|
99
|
+
previous =\
|
|
100
|
+
dictionary.get("previous")\
|
|
101
|
+
if dictionary.get("previous")\
|
|
102
|
+
else None
|
|
103
|
+
total =\
|
|
104
|
+
dictionary.get("total")\
|
|
105
|
+
if dictionary.get("total")\
|
|
106
|
+
else None
|
|
107
|
+
items = None
|
|
108
|
+
if dictionary.get("items") is not None:
|
|
109
|
+
items = [
|
|
110
|
+
SimplifiedPlaylistObject.from_dictionary(x)
|
|
111
|
+
for x in dictionary.get("items")
|
|
112
|
+
]
|
|
113
|
+
|
|
114
|
+
# Return an object of this model
|
|
115
|
+
return cls(href,
|
|
116
|
+
limit,
|
|
117
|
+
next,
|
|
118
|
+
offset,
|
|
119
|
+
previous,
|
|
120
|
+
total,
|
|
121
|
+
items)
|
|
122
|
+
|
|
123
|
+
def __repr__(self):
|
|
124
|
+
"""Return a unambiguous string representation."""
|
|
125
|
+
_href=self.href
|
|
126
|
+
_limit=self.limit
|
|
127
|
+
_next=self.next
|
|
128
|
+
_offset=self.offset
|
|
129
|
+
_previous=self.previous
|
|
130
|
+
_total=self.total
|
|
131
|
+
_items=self.items
|
|
132
|
+
return (
|
|
133
|
+
f"{self.__class__.__name__}("
|
|
134
|
+
f"href={_href!r}, "
|
|
135
|
+
f"limit={_limit!r}, "
|
|
136
|
+
f"next={_next!r}, "
|
|
137
|
+
f"offset={_offset!r}, "
|
|
138
|
+
f"previous={_previous!r}, "
|
|
139
|
+
f"total={_total!r}, "
|
|
140
|
+
f"items={_items!r}, "
|
|
141
|
+
f")"
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
def __str__(self):
|
|
145
|
+
"""Return a human-readable string representation."""
|
|
146
|
+
_href=self.href
|
|
147
|
+
_limit=self.limit
|
|
148
|
+
_next=self.next
|
|
149
|
+
_offset=self.offset
|
|
150
|
+
_previous=self.previous
|
|
151
|
+
_total=self.total
|
|
152
|
+
_items=self.items
|
|
153
|
+
return (
|
|
154
|
+
f"{self.__class__.__name__}("
|
|
155
|
+
f"href={_href!s}, "
|
|
156
|
+
f"limit={_limit!s}, "
|
|
157
|
+
f"next={_next!s}, "
|
|
158
|
+
f"offset={_offset!s}, "
|
|
159
|
+
f"previous={_previous!s}, "
|
|
160
|
+
f"total={_total!s}, "
|
|
161
|
+
f"items={_items!s}, "
|
|
162
|
+
f")"
|
|
163
|
+
)
|