Resources¶
Low-level namespaces — one per API object (client.track, client.album, …).
Prefer High-level helpers for everyday use.
deezify.resources.album
¶
Album resource — https://developers.deezer.com/api/album.
AlbumResource
¶
Bases: Resource
Read an album and its connections; manage it in the user library.
Source code in deezify/resources/album.py
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | |
get(album_id, **params)
¶
Fetch one album by id (GET /album/{id}).
Source code in deezify/resources/album.py
15 16 17 | |
fans(album_id, *, index=None, limit=None)
¶
Fans of the album (GET /album/{id}/fans).
Source code in deezify/resources/album.py
19 20 21 22 23 24 25 | |
tracks(album_id, *, index=None, limit=None)
¶
Tracks of the album (GET /album/{id}/tracks).
Source code in deezify/resources/album.py
27 28 29 30 31 32 33 | |
add_to_library(user_id, album_ids)
¶
Add album(s) to a user's library (POST /user/{id}/albums).
Source code in deezify/resources/album.py
36 37 38 39 40 41 42 43 | |
remove_from_library(user_id, album_id)
¶
Remove an album from a user's library (DELETE /user/{id}/albums).
Source code in deezify/resources/album.py
45 46 47 48 49 | |
deezify.resources.artist
¶
Artist resource — https://developers.deezer.com/api/artist.
ArtistResource
¶
Bases: Resource
Read an artist and every documented artist/* connection.
Source code in deezify/resources/artist.py
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | |
get(artist_id, **params)
¶
Fetch one artist by id (GET /artist/{id}).
Source code in deezify/resources/artist.py
15 16 17 | |
top(artist_id, *, index=None, limit=None)
¶
Top tracks of the artist (GET /artist/{id}/top).
Source code in deezify/resources/artist.py
19 20 21 22 23 24 25 | |
albums(artist_id, *, index=None, limit=None)
¶
Albums of the artist (GET /artist/{id}/albums).
Source code in deezify/resources/artist.py
27 28 29 30 31 32 33 | |
fans(artist_id, *, index=None, limit=None)
¶
Fans of the artist (GET /artist/{id}/fans).
Source code in deezify/resources/artist.py
35 36 37 38 39 40 41 | |
related(artist_id, *, index=None, limit=None)
¶
Related artists (GET /artist/{id}/related).
Source code in deezify/resources/artist.py
43 44 45 46 47 48 49 | |
radio(artist_id, *, index=None, limit=None)
¶
Artist radio tracks (GET /artist/{id}/radio).
Source code in deezify/resources/artist.py
51 52 53 54 55 56 57 | |
playlists(artist_id, *, index=None, limit=None)
¶
Playlists featuring the artist (GET /artist/{id}/playlists).
Source code in deezify/resources/artist.py
59 60 61 62 63 64 65 | |
add_favorite(user_id, artist_ids)
¶
Add artist(s) to favorites (POST /user/{id}/artists).
Source code in deezify/resources/artist.py
68 69 70 71 72 73 74 75 | |
remove_favorite(user_id, artist_id)
¶
Remove an artist from favorites (DELETE /user/{id}/artists).
Source code in deezify/resources/artist.py
77 78 79 80 81 | |
deezify.resources.track
¶
Track resource — https://developers.deezer.com/api/track.
TrackResource
¶
Bases: Resource
Read tracks and manage personal tracks / playlist membership.
Source code in deezify/resources/track.py
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | |
get(track_id, **params)
¶
Fetch one track by id (GET /track/{id}).
Source code in deezify/resources/track.py
13 14 15 | |
update_personal(track_id, **fields)
¶
Update a personal (uploaded) track (POST /track/{id}).
Source code in deezify/resources/track.py
18 19 20 | |
delete_personal(track_id)
¶
Delete a personal track (DELETE /track/{id}).
Source code in deezify/resources/track.py
22 23 24 | |
add_favorite(user_id, track_ids)
¶
Add track(s) to favorites (POST /user/{id}/tracks).
Source code in deezify/resources/track.py
27 28 29 30 31 32 33 34 | |
remove_favorite(user_id, track_id)
¶
Remove a track from favorites (DELETE /user/{id}/tracks).
Source code in deezify/resources/track.py
36 37 38 39 40 | |
deezify.resources.playlist
¶
Playlist resource — https://developers.deezer.com/api/playlist.
PlaylistResource
¶
Bases: Resource
Read playlists and manage their tracks.
Source code in deezify/resources/playlist.py
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | |
get(playlist_id, **params)
¶
Fetch one playlist by id (GET /playlist/{id}).
Source code in deezify/resources/playlist.py
17 18 19 | |
fans(playlist_id, *, index=None, limit=None)
¶
Fans of the playlist (GET /playlist/{id}/fans).
Source code in deezify/resources/playlist.py
21 22 23 24 25 26 27 | |
tracks(playlist_id, *, index=None, limit=None)
¶
Tracks of the playlist (GET /playlist/{id}/tracks).
Source code in deezify/resources/playlist.py
29 30 31 32 33 34 35 | |
radio(playlist_id, *, index=None, limit=None)
¶
Recommended tracks for the playlist (GET /playlist/{id}/radio).
Source code in deezify/resources/playlist.py
37 38 39 40 41 42 43 | |
update(playlist_id, **fields)
¶
Update playlist attributes such as title/description
(POST /playlist/{id}).
Source code in deezify/resources/playlist.py
46 47 48 49 | |
delete(playlist_id)
¶
Delete a playlist (DELETE /playlist/{id}).
Source code in deezify/resources/playlist.py
51 52 53 | |
mark_seen(playlist_id)
¶
Mark a playlist as seen (POST /playlist/{id}/seen).
Source code in deezify/resources/playlist.py
55 56 57 | |
add_tracks(playlist_id, track_ids)
¶
Append tracks (POST /playlist/{id}/tracks, songs=...).
Source code in deezify/resources/playlist.py
59 60 61 62 63 64 65 66 67 | |
reorder_tracks(playlist_id, track_ids)
¶
Reorder tracks (POST /playlist/{id}/tracks, order=...).
Source code in deezify/resources/playlist.py
69 70 71 72 73 74 75 76 | |
remove_tracks(playlist_id, track_ids)
¶
Remove tracks (DELETE /playlist/{id}/tracks, songs=...).
Source code in deezify/resources/playlist.py
78 79 80 81 82 83 84 85 86 | |
add_favorite(user_id, playlist_ids)
¶
Add playlist(s) to favorites (POST /user/{id}/playlists).
Source code in deezify/resources/playlist.py
89 90 91 92 93 94 95 96 97 | |
remove_favorite(user_id, playlist_id)
¶
Remove a playlist from favorites (DELETE /user/{id}/playlists).
Source code in deezify/resources/playlist.py
99 100 101 102 103 104 105 | |
deezify.resources.podcast
¶
Podcast + episode resources.
- https://developers.deezer.com/api/podcast
- https://developers.deezer.com/api/episode
PodcastResource
¶
Bases: Resource
Read podcasts and manage podcast favorites.
Source code in deezify/resources/podcast.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | |
get(podcast_id, **params)
¶
Fetch one podcast by id (GET /podcast/{id}).
Source code in deezify/resources/podcast.py
19 20 21 | |
episodes(podcast_id, *, index=None, limit=None)
¶
Episodes of the podcast (GET /podcast/{id}/episodes).
Source code in deezify/resources/podcast.py
23 24 25 26 27 28 29 | |
add_favorite(user_id, podcast_id)
¶
Add a podcast to favorites (POST /user/{id}/podcasts).
Source code in deezify/resources/podcast.py
31 32 33 34 35 36 37 | |
remove_favorite(user_id, podcast_id)
¶
Remove a podcast from favorites (DELETE /user/{id}/podcasts).
Source code in deezify/resources/podcast.py
39 40 41 42 43 44 45 | |
EpisodeResource
¶
Bases: Resource
Read episodes and manage bookmarks (offset 0–100).
Source code in deezify/resources/podcast.py
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | |
get(episode_id, **params)
¶
Fetch one episode by id (GET /episode/{id}).
Source code in deezify/resources/podcast.py
51 52 53 | |
bookmark_info(episode_id)
¶
Current bookmark (GET /episode/{id}/bookmark).
Source code in deezify/resources/podcast.py
55 56 57 | |
set_bookmark(episode_id, offset)
¶
Set a bookmark (POST /episode/{id}/bookmark, offset 0–100).
Source code in deezify/resources/podcast.py
59 60 61 62 63 64 65 | |
remove_bookmark(episode_id)
¶
Remove the bookmark (DELETE /episode/{id}/bookmark).
Source code in deezify/resources/podcast.py
67 68 69 | |
deezify.resources.user
¶
User resource — https://developers.deezer.com/api/user.
user_id may be a numeric id or "me" (the access-token owner).
UserResource
¶
Bases: Resource
Read profiles, favorites, flow, history and manage relationships.
Source code in deezify/resources/user.py
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | |
get(user_id='me', **params)
¶
Fetch a user profile (GET /user/{id}).
Source code in deezify/resources/user.py
24 25 26 | |
me(**params)
¶
Fetch the access-token owner's profile (GET /user/me).
Source code in deezify/resources/user.py
28 29 30 | |
albums(user_id='me', *, index=None, limit=None)
¶
Favorite albums (GET /user/{id}/albums).
Source code in deezify/resources/user.py
40 41 42 | |
artists(user_id='me', *, index=None, limit=None)
¶
Favorite artists (GET /user/{id}/artists).
Source code in deezify/resources/user.py
44 45 46 | |
tracks(user_id='me', *, index=None, limit=None)
¶
Favorite tracks (GET /user/{id}/tracks).
Source code in deezify/resources/user.py
48 49 50 | |
playlists(user_id='me', *, index=None, limit=None)
¶
Playlists incl. private ones with permission (GET /user/{id}/playlists).
Source code in deezify/resources/user.py
52 53 54 | |
podcasts(user_id='me', *, index=None, limit=None)
¶
Favorite podcasts (GET /user/{id}/podcasts).
Source code in deezify/resources/user.py
56 57 58 | |
radios(user_id='me', *, index=None, limit=None)
¶
Favorite radios (GET /user/{id}/radios).
Source code in deezify/resources/user.py
60 61 62 | |
followings(user_id='me', *, index=None, limit=None)
¶
Users this user follows (GET /user/{id}/followings).
Source code in deezify/resources/user.py
64 65 66 | |
followers(user_id='me', *, index=None, limit=None)
¶
Followers of this user (GET /user/{id}/followers).
Source code in deezify/resources/user.py
68 69 70 | |
flow(user_id='me', *, index=None, limit=None)
¶
Flow tracks (GET /user/{id}/flow).
Source code in deezify/resources/user.py
72 73 74 | |
history(user_id='me', *, index=None, limit=None)
¶
Recently played tracks, needs listening_history
(GET /user/{id}/history).
Source code in deezify/resources/user.py
76 77 78 79 | |
personal_songs(user_id='me', *, index=None, limit=None)
¶
Uploaded personal songs (GET /user/{id}/personal_songs).
Source code in deezify/resources/user.py
81 82 83 84 85 | |
charts_albums(user_id='me', **params)
¶
GET /user/{id}/charts/albums.
Source code in deezify/resources/user.py
87 88 89 | |
charts_playlists(user_id='me', **params)
¶
GET /user/{id}/charts/playlists.
Source code in deezify/resources/user.py
91 92 93 | |
charts_tracks(user_id='me', **params)
¶
GET /user/{id}/charts/tracks.
Source code in deezify/resources/user.py
95 96 97 | |
recommendations(user_id='me', kind='tracks', **params)
¶
Recommendations feed (GET /user/{id}/recommendations/{kind}).
kind accepts a raw string or :class:~deezify.enums.RecommendationKind.
Source code in deezify/resources/user.py
99 100 101 102 103 104 105 | |
user_chart(user_id='me', kind='tracks', **params)
¶
User chart feed (GET /user/{id}/charts/{kind}).
kind accepts a raw string or :class:~deezify.enums.UserChartKind.
Source code in deezify/resources/user.py
107 108 109 110 111 112 113 | |
permissions(user_id='me')
¶
Permissions granted to the app (GET /user/{id}/permissions).
Source code in deezify/resources/user.py
115 116 117 | |
options(user_id='me', **params)
¶
Alias of /options (GET /user/{id}/options).
Source code in deezify/resources/user.py
119 120 121 | |
create_playlist(user_id, title)
¶
Create a playlist (POST /user/{id}/playlists, title=...).
Source code in deezify/resources/user.py
124 125 126 127 128 | |
follow(user_id, target_user_id)
¶
Follow a user (POST /user/{id}/followings).
Source code in deezify/resources/user.py
130 131 132 133 134 135 136 | |
unfollow(user_id, target_user_id)
¶
Unfollow a user (DELETE /user/{id}/followings).
Source code in deezify/resources/user.py
138 139 140 141 142 143 144 | |
add_notification(user_id, message)
¶
Push a notification into the user feed
(POST /user/{id}/notifications).
Source code in deezify/resources/user.py
146 147 148 149 | |
deezify.resources.search
¶
Search resource — https://developers.deezer.com/api/search.
Supports plain search, per-type search, advanced field syntax
(artist:"..." album:"..." track:"..." label:"..." dur_min:... etc.),
strict fuzzy toggle and order sorting.
SearchResource
¶
Bases: Resource
Full-text and advanced search across the Deezer catalogue.
Source code in deezify/resources/search.py
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | |
all(query, *, strict=None, order=None, index=None, limit=None)
¶
Cross-type search (GET /search?q=...).
Source code in deezify/resources/search.py
67 68 69 70 71 72 73 74 | |
tracks(query, **kwargs)
¶
Search tracks (GET /search/track?q=...).
Source code in deezify/resources/search.py
76 77 78 | |
albums(query, **kwargs)
¶
Search albums (GET /search/album?q=...).
Source code in deezify/resources/search.py
80 81 82 | |
artists(query, **kwargs)
¶
Search artists (GET /search/artist?q=...).
Source code in deezify/resources/search.py
84 85 86 | |
playlists(query, **kwargs)
¶
Search playlists (GET /search/playlist?q=...).
Source code in deezify/resources/search.py
88 89 90 | |
podcasts(query, **kwargs)
¶
Search podcasts (GET /search/podcast?q=...).
Source code in deezify/resources/search.py
92 93 94 | |
radios(query, **kwargs)
¶
Search radios (GET /search/radio?q=...).
Source code in deezify/resources/search.py
96 97 98 | |
users(query, **kwargs)
¶
Search users (GET /search/user?q=...).
Source code in deezify/resources/search.py
100 101 102 | |
advanced(path='search', *, strict=None, order=None, index=None, limit=None, **fields)
¶
Advanced field search, e.g. advanced(artist="Daft Punk").
path may be "search" or any "search/<type>" endpoint.
Source code in deezify/resources/search.py
104 105 106 107 108 109 110 111 112 | |
history(*, index=None, limit=None)
¶
Authenticated user's search history (GET /search/history).
Source code in deezify/resources/search.py
114 115 116 117 118 119 120 | |
build_advanced_query(**fields)
¶
Build an advanced-search q string from field keywords.
String values containing spaces are quoted, e.g.
build_advanced_query(artist="Aloe Blacc", track="I Need A Dollar") →
'artist:"Aloe Blacc" track:"I Need A Dollar"'.
Source code in deezify/resources/search.py
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | |
deezify.resources.catalog
¶
Radio, genre, chart, editorial, infos and options resources.
RadioResource
¶
Bases: Resource
Radios — https://developers.deezer.com/api/radio.
Source code in deezify/resources/catalog.py
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | |
list(**params)
¶
All radios (GET /radio).
Source code in deezify/resources/catalog.py
21 22 23 | |
top(radio_id=0, *, index=None, limit=None)
¶
Top radios (GET /radio/top; default 25).
Source code in deezify/resources/catalog.py
32 33 34 35 36 37 | |
tracks(radio_id, *, index=None, limit=None)
¶
First tracks of a radio (GET /radio/{id}/tracks).
Source code in deezify/resources/catalog.py
39 40 41 42 43 44 45 | |
lists(radio_id=0, *, index=None, limit=None)
¶
Personal (MIX) radios (GET /radio/lists).
Source code in deezify/resources/catalog.py
47 48 49 50 51 52 | |
GenreResource
¶
Bases: Resource
Genres — https://developers.deezer.com/api/genre.
Source code in deezify/resources/catalog.py
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | |
list(**params)
¶
All genres (GET /genre).
Source code in deezify/resources/catalog.py
71 72 73 | |
ChartResource
¶
Bases: Resource
Charts — https://developers.deezer.com/api/chart.
Note: /chart and /chart/{id} return a bundle dict with
tracks/albums/artists/playlists/podcasts sub-objects
(each holding data/total), not a flat list. The tracks() /
albums() / ... helpers below therefore fetch the bundle once and
return the corresponding sub-list as a :class:PaginatedList, so
client.chart.tracks(limit=10) behaves like every other collection.
Source code in deezify/resources/catalog.py
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 | |
get(chart_id=0, **params)
¶
Global chart bundle (GET /chart) or genre bundle
(GET /chart/{id}).
Source code in deezify/resources/catalog.py
108 109 110 111 112 | |
tracks(chart_id=0, *, index=None, limit=None)
¶
Top tracks (from the chart bundle's tracks sub-list).
Source code in deezify/resources/catalog.py
148 149 150 151 152 | |
albums(chart_id=0, *, index=None, limit=None)
¶
Top albums (from the chart bundle's albums sub-list).
Source code in deezify/resources/catalog.py
154 155 156 157 158 | |
artists(chart_id=0, *, index=None, limit=None)
¶
Top artists (from the chart bundle's artists sub-list).
Source code in deezify/resources/catalog.py
160 161 162 163 164 | |
playlists(chart_id=0, *, index=None, limit=None)
¶
Top playlists (from the chart bundle's playlists sub-list).
Source code in deezify/resources/catalog.py
166 167 168 169 170 | |
podcasts(chart_id=0, *, index=None, limit=None)
¶
Top podcasts (from the chart bundle's podcasts sub-list).
Source code in deezify/resources/catalog.py
172 173 174 175 176 | |
EditorialResource
¶
Bases: Resource
Editorial picks — https://developers.deezer.com/api/editorial.
Source code in deezify/resources/catalog.py
179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 | |
list(**params)
¶
All editorial choices (GET /editorial).
Source code in deezify/resources/catalog.py
186 187 188 | |
charts(editorial_id=0, *, index=None, limit=None)
¶
Top track/album/artist/playlist bundle for an editorial.
Source code in deezify/resources/catalog.py
200 201 202 203 204 205 206 207 | |
releases(editorial_id=0, *, index=None, limit=None)
¶
New releases per genre (GET /editorial/{id}/releases).
Source code in deezify/resources/catalog.py
209 210 211 212 213 214 215 216 217 218 | |
InfosResource
¶
Bases: Resource
Country/API information — https://developers.deezer.com/api/infos.
Source code in deezify/resources/catalog.py
221 222 223 224 225 | |
OptionsResource
¶
Bases: Resource
Current-user streaming options — https://developers.deezer.com/api/options.
Source code in deezify/resources/catalog.py
228 229 230 231 232 | |
deezify.resources.oembed
¶
oEmbed resource — https://developers.deezer.com/api/oembed.
OEmbedResource
¶
Bases: Resource
Embedded-player metadata for public Deezer URLs.
Compatible URLs: deezer.com album / episode / playlist / show /
track pages and deezer.page.link short links.
Source code in deezify/resources/oembed.py
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | |
get(url, *, maxwidth=None, maxheight=None, autoplay=None, radius=None, tracklist=None, format='json')
¶
Fetch the oEmbed document (GET /oembed?url=...).
Source code in deezify/resources/oembed.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | |