tidal 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +164 -9
- data/Rakefile +9 -0
- data/docs/README_md.html +299 -0
- data/docs/Tidal/ClientV1.html +721 -0
- data/docs/Tidal/Error.html +97 -0
- data/docs/Tidal.html +100 -0
- data/docs/created.rid +5 -0
- data/docs/css/fonts.css +167 -0
- data/docs/css/rdoc.css +687 -0
- data/docs/fonts/Lato-Light.ttf +0 -0
- data/docs/fonts/Lato-LightItalic.ttf +0 -0
- data/docs/fonts/Lato-Regular.ttf +0 -0
- data/docs/fonts/Lato-RegularItalic.ttf +0 -0
- data/docs/fonts/SourceCodePro-Bold.ttf +0 -0
- data/docs/fonts/SourceCodePro-Regular.ttf +0 -0
- data/docs/images/add.png +0 -0
- data/docs/images/arrow_up.png +0 -0
- data/docs/images/brick.png +0 -0
- data/docs/images/brick_link.png +0 -0
- data/docs/images/bug.png +0 -0
- data/docs/images/bullet_black.png +0 -0
- data/docs/images/bullet_toggle_minus.png +0 -0
- data/docs/images/bullet_toggle_plus.png +0 -0
- data/docs/images/date.png +0 -0
- data/docs/images/delete.png +0 -0
- data/docs/images/find.png +0 -0
- data/docs/images/loadingAnimation.gif +0 -0
- data/docs/images/macFFBgHack.png +0 -0
- data/docs/images/package.png +0 -0
- data/docs/images/page_green.png +0 -0
- data/docs/images/page_white_text.png +0 -0
- data/docs/images/page_white_width.png +0 -0
- data/docs/images/plugin.png +0 -0
- data/docs/images/ruby.png +0 -0
- data/docs/images/tag_blue.png +0 -0
- data/docs/images/tag_green.png +0 -0
- data/docs/images/transparent.png +0 -0
- data/docs/images/wrench.png +0 -0
- data/docs/images/wrench_orange.png +0 -0
- data/docs/images/zoom.png +0 -0
- data/docs/index.html +259 -0
- data/docs/js/darkfish.js +97 -0
- data/docs/js/navigation.js +105 -0
- data/docs/js/navigation.js.gz +0 -0
- data/docs/js/search.js +110 -0
- data/docs/js/search_index.js +1 -0
- data/docs/js/search_index.js.gz +0 -0
- data/docs/js/searcher.js +229 -0
- data/docs/js/searcher.js.gz +0 -0
- data/docs/table_of_contents.html +176 -0
- data/lib/tidal/client_v1.rb +111 -1
- data/lib/tidal/version.rb +1 -1
- metadata +63 -1
@@ -0,0 +1,721 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta charset="UTF-8">
|
6
|
+
|
7
|
+
<title>class Tidal::ClientV1 - Tidal API Client Documentation</title>
|
8
|
+
|
9
|
+
<script type="text/javascript">
|
10
|
+
var rdoc_rel_prefix = "../";
|
11
|
+
var index_rel_prefix = "../";
|
12
|
+
</script>
|
13
|
+
|
14
|
+
<script src="../js/navigation.js" defer></script>
|
15
|
+
<script src="../js/search.js" defer></script>
|
16
|
+
<script src="../js/search_index.js" defer></script>
|
17
|
+
<script src="../js/searcher.js" defer></script>
|
18
|
+
<script src="../js/darkfish.js" defer></script>
|
19
|
+
|
20
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
21
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
22
|
+
|
23
|
+
|
24
|
+
<body id="top" role="document" class="class">
|
25
|
+
<nav role="navigation">
|
26
|
+
<div id="project-navigation">
|
27
|
+
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
28
|
+
<h2>
|
29
|
+
<a href="../index.html" rel="home">Home</a>
|
30
|
+
</h2>
|
31
|
+
|
32
|
+
<div id="table-of-contents-navigation">
|
33
|
+
<a href="../table_of_contents.html#pages">Pages</a>
|
34
|
+
<a href="../table_of_contents.html#classes">Classes</a>
|
35
|
+
<a href="../table_of_contents.html#methods">Methods</a>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
|
39
|
+
<div id="search-section" role="search" class="project-section initially-hidden">
|
40
|
+
<form action="#" method="get" accept-charset="utf-8">
|
41
|
+
<div id="search-field-wrapper">
|
42
|
+
<input id="search-field" role="combobox" aria-label="Search"
|
43
|
+
aria-autocomplete="list" aria-controls="search-results"
|
44
|
+
type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
|
45
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<ul id="search-results" aria-label="Search Results"
|
49
|
+
aria-busy="false" aria-expanded="false"
|
50
|
+
aria-atomic="false" class="initially-hidden"></ul>
|
51
|
+
</form>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
</div>
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
<div id="class-metadata">
|
59
|
+
|
60
|
+
|
61
|
+
<div id="parent-class-section" class="nav-section">
|
62
|
+
<h3>Parent</h3>
|
63
|
+
|
64
|
+
<p class="link">Object
|
65
|
+
</div>
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
<!-- Method Quickref -->
|
71
|
+
<div id="method-list-section" class="nav-section">
|
72
|
+
<h3>Methods</h3>
|
73
|
+
|
74
|
+
<ul class="link-list" role="directory">
|
75
|
+
<li ><a href="#method-c-new">::new</a>
|
76
|
+
<li ><a href="#method-i-get_album_items">#get_album_items</a>
|
77
|
+
<li ><a href="#method-i-get_albums_by_artist">#get_albums_by_artist</a>
|
78
|
+
<li ><a href="#method-i-get_albums_by_barcode_id">#get_albums_by_barcode_id</a>
|
79
|
+
<li ><a href="#method-i-get_multiple_albums">#get_multiple_albums</a>
|
80
|
+
<li ><a href="#method-i-get_multiple_artists">#get_multiple_artists</a>
|
81
|
+
<li ><a href="#method-i-get_multiple_tracks">#get_multiple_tracks</a>
|
82
|
+
<li ><a href="#method-i-get_multiple_videos">#get_multiple_videos</a>
|
83
|
+
<li ><a href="#method-i-get_search">#get_search</a>
|
84
|
+
<li ><a href="#method-i-get_similar_albums">#get_similar_albums</a>
|
85
|
+
<li ><a href="#method-i-get_similar_artists">#get_similar_artists</a>
|
86
|
+
<li ><a href="#method-i-get_similar_tracks">#get_similar_tracks</a>
|
87
|
+
<li ><a href="#method-i-get_single_album">#get_single_album</a>
|
88
|
+
<li ><a href="#method-i-get_single_artist">#get_single_artist</a>
|
89
|
+
<li ><a href="#method-i-get_single_track">#get_single_track</a>
|
90
|
+
<li ><a href="#method-i-get_single_video">#get_single_video</a>
|
91
|
+
<li ><a href="#method-i-get_tracks_by_artist">#get_tracks_by_artist</a>
|
92
|
+
<li ><a href="#method-i-get_tracks_by_isrc">#get_tracks_by_isrc</a>
|
93
|
+
</ul>
|
94
|
+
</div>
|
95
|
+
|
96
|
+
</div>
|
97
|
+
</nav>
|
98
|
+
|
99
|
+
<main role="main" aria-labelledby="class-Tidal::ClientV1">
|
100
|
+
<h1 id="class-Tidal::ClientV1" class="class">
|
101
|
+
class Tidal::ClientV1
|
102
|
+
</h1>
|
103
|
+
|
104
|
+
<section class="description">
|
105
|
+
|
106
|
+
</section>
|
107
|
+
|
108
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
109
|
+
|
110
|
+
|
111
|
+
<section class="constants-list">
|
112
|
+
<header>
|
113
|
+
<h3>Constants</h3>
|
114
|
+
</header>
|
115
|
+
<dl>
|
116
|
+
<dt id="BASE_URL">BASE_URL
|
117
|
+
<dd>
|
118
|
+
<dt id="TOKEN_URL">TOKEN_URL
|
119
|
+
<dd>
|
120
|
+
</dl>
|
121
|
+
</section>
|
122
|
+
|
123
|
+
<section class="attribute-method-details" class="method-section">
|
124
|
+
<header>
|
125
|
+
<h3>Attributes</h3>
|
126
|
+
</header>
|
127
|
+
|
128
|
+
<div id="attribute-i-access_token" class="method-detail">
|
129
|
+
<div class="method-heading attribute-method-heading">
|
130
|
+
<span class="method-name">access_token</span><span
|
131
|
+
class="attribute-access-type">[R]</span>
|
132
|
+
</div>
|
133
|
+
|
134
|
+
<div class="method-description">
|
135
|
+
|
136
|
+
</div>
|
137
|
+
</div>
|
138
|
+
</section>
|
139
|
+
|
140
|
+
|
141
|
+
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
142
|
+
<header>
|
143
|
+
<h3>Public Class Methods</h3>
|
144
|
+
</header>
|
145
|
+
|
146
|
+
<div id="method-c-new" class="method-detail ">
|
147
|
+
<div class="method-header">
|
148
|
+
<div class="method-heading">
|
149
|
+
<span class="method-name">new</span><span
|
150
|
+
class="method-args">(client_id, client_secret)</span>
|
151
|
+
<span class="method-click-advice">click to toggle source</span>
|
152
|
+
</div>
|
153
|
+
</div>
|
154
|
+
|
155
|
+
<div class="method-description">
|
156
|
+
<p>Initialize the <a href="../Tidal.html"><code>Tidal</code></a> client</p>
|
157
|
+
|
158
|
+
<p>@param client_id [String] The client ID for the <a href="../Tidal.html"><code>Tidal</code></a> API @param client_secret [String] The client secret for the <a href="../Tidal.html"><code>Tidal</code></a> API</p>
|
159
|
+
|
160
|
+
<div class="method-source-code" id="new-source">
|
161
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 15</span>
|
162
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">client_id</span>, <span class="ruby-identifier">client_secret</span>)
|
163
|
+
<span class="ruby-ivar">@client_id</span> = <span class="ruby-identifier">client_id</span>
|
164
|
+
<span class="ruby-ivar">@client_secret</span> = <span class="ruby-identifier">client_secret</span>
|
165
|
+
<span class="ruby-ivar">@client</span> = <span class="ruby-constant">OAuth2</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@client_id</span>, <span class="ruby-ivar">@client_secret</span>, <span class="ruby-value">site:</span> <span class="ruby-constant">BASE_URL</span>, <span class="ruby-value">token_url:</span> <span class="ruby-constant">TOKEN_URL</span>)
|
166
|
+
<span class="ruby-ivar">@access_token</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">client_credentials</span>.<span class="ruby-identifier">get_token</span>.<span class="ruby-identifier">token</span>
|
167
|
+
<span class="ruby-keyword">end</span></pre>
|
168
|
+
</div>
|
169
|
+
</div>
|
170
|
+
|
171
|
+
|
172
|
+
</div>
|
173
|
+
|
174
|
+
</section>
|
175
|
+
|
176
|
+
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
177
|
+
<header>
|
178
|
+
<h3>Public Instance Methods</h3>
|
179
|
+
</header>
|
180
|
+
|
181
|
+
<div id="method-i-get_album_items" class="method-detail ">
|
182
|
+
<div class="method-header">
|
183
|
+
<div class="method-heading">
|
184
|
+
<span class="method-name">get_album_items</span><span
|
185
|
+
class="method-args">(album_id, country_code, offset = nil, limit = nil)</span>
|
186
|
+
<span class="method-click-advice">click to toggle source</span>
|
187
|
+
</div>
|
188
|
+
</div>
|
189
|
+
|
190
|
+
<div class="method-description">
|
191
|
+
<p>Get album items</p>
|
192
|
+
|
193
|
+
<p>@param album_id [String] The album ID @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of album items</p>
|
194
|
+
|
195
|
+
<div class="method-source-code" id="get_album_items-source">
|
196
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 57</span>
|
197
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_album_items</span>(<span class="ruby-identifier">album_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
198
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/albums/#{album_id}/items"</span>)
|
199
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
200
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
201
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
202
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
203
|
+
|
204
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
205
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
206
|
+
<span class="ruby-keyword">end</span></pre>
|
207
|
+
</div>
|
208
|
+
</div>
|
209
|
+
|
210
|
+
|
211
|
+
</div>
|
212
|
+
|
213
|
+
<div id="method-i-get_albums_by_artist" class="method-detail ">
|
214
|
+
<div class="method-header">
|
215
|
+
<div class="method-heading">
|
216
|
+
<span class="method-name">get_albums_by_artist</span><span
|
217
|
+
class="method-args">(artist_id, country_code, offset = nil, limit = nil)</span>
|
218
|
+
<span class="method-click-advice">click to toggle source</span>
|
219
|
+
</div>
|
220
|
+
</div>
|
221
|
+
|
222
|
+
<div class="method-description">
|
223
|
+
<p>Get albums by artist</p>
|
224
|
+
|
225
|
+
<p>@param artist_id [String] The artist ID @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of albums by the artist</p>
|
226
|
+
|
227
|
+
<div class="method-source-code" id="get_albums_by_artist-source">
|
228
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 107</span>
|
229
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_albums_by_artist</span>(<span class="ruby-identifier">artist_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
230
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/artists/#{artist_id}/albums"</span>)
|
231
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
232
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
233
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
234
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
235
|
+
|
236
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
237
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
238
|
+
<span class="ruby-keyword">end</span></pre>
|
239
|
+
</div>
|
240
|
+
</div>
|
241
|
+
|
242
|
+
|
243
|
+
</div>
|
244
|
+
|
245
|
+
<div id="method-i-get_albums_by_barcode_id" class="method-detail ">
|
246
|
+
<div class="method-header">
|
247
|
+
<div class="method-heading">
|
248
|
+
<span class="method-name">get_albums_by_barcode_id</span><span
|
249
|
+
class="method-args">(barcode_id, country_code)</span>
|
250
|
+
<span class="method-click-advice">click to toggle source</span>
|
251
|
+
</div>
|
252
|
+
</div>
|
253
|
+
|
254
|
+
<div class="method-description">
|
255
|
+
<p>Get albums by barcode ID</p>
|
256
|
+
|
257
|
+
<p>@param barcode_id [String] The barcode ID @param country_code [String] The country code @return [Array] The list of albums</p>
|
258
|
+
|
259
|
+
<div class="method-source-code" id="get_albums_by_barcode_id-source">
|
260
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 27</span>
|
261
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_albums_by_barcode_id</span>(<span class="ruby-identifier">barcode_id</span>, <span class="ruby-identifier">country_code</span>)
|
262
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/albums/byBarcodeId"</span>)
|
263
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">barcodeId:</span> <span class="ruby-identifier">barcode_id</span>, <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
264
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
265
|
+
|
266
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
267
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
268
|
+
<span class="ruby-keyword">end</span></pre>
|
269
|
+
</div>
|
270
|
+
</div>
|
271
|
+
|
272
|
+
|
273
|
+
</div>
|
274
|
+
|
275
|
+
<div id="method-i-get_multiple_albums" class="method-detail ">
|
276
|
+
<div class="method-header">
|
277
|
+
<div class="method-heading">
|
278
|
+
<span class="method-name">get_multiple_albums</span><span
|
279
|
+
class="method-args">(ids, country_code)</span>
|
280
|
+
<span class="method-click-advice">click to toggle source</span>
|
281
|
+
</div>
|
282
|
+
</div>
|
283
|
+
|
284
|
+
<div class="method-description">
|
285
|
+
<p>Get multiple albums</p>
|
286
|
+
|
287
|
+
<p>@param ids [Array] The array of album IDs @param country_code [String] The country code @return [Array] The list of albums</p>
|
288
|
+
|
289
|
+
<div class="method-source-code" id="get_multiple_albums-source">
|
290
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 41</span>
|
291
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_multiple_albums</span>(<span class="ruby-identifier">ids</span>, <span class="ruby-identifier">country_code</span>)
|
292
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/albums/byIds"</span>)
|
293
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">ids:</span> <span class="ruby-identifier">ids</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">','</span>), <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
294
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
295
|
+
|
296
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
297
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
298
|
+
<span class="ruby-keyword">end</span></pre>
|
299
|
+
</div>
|
300
|
+
</div>
|
301
|
+
|
302
|
+
|
303
|
+
</div>
|
304
|
+
|
305
|
+
<div id="method-i-get_multiple_artists" class="method-detail ">
|
306
|
+
<div class="method-header">
|
307
|
+
<div class="method-heading">
|
308
|
+
<span class="method-name">get_multiple_artists</span><span
|
309
|
+
class="method-args">(ids, country_code)</span>
|
310
|
+
<span class="method-click-advice">click to toggle source</span>
|
311
|
+
</div>
|
312
|
+
</div>
|
313
|
+
|
314
|
+
<div class="method-description">
|
315
|
+
<p>Get multiple artists</p>
|
316
|
+
|
317
|
+
<p>@param ids [Array] The array of artist IDs @param country_code [String] The country code @return [Array] The list of artists</p>
|
318
|
+
|
319
|
+
<div class="method-source-code" id="get_multiple_artists-source">
|
320
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 123</span>
|
321
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_multiple_artists</span>(<span class="ruby-identifier">ids</span>, <span class="ruby-identifier">country_code</span>)
|
322
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/artists"</span>)
|
323
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">ids:</span> <span class="ruby-identifier">ids</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">','</span>), <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
324
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
325
|
+
|
326
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
327
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
328
|
+
<span class="ruby-keyword">end</span></pre>
|
329
|
+
</div>
|
330
|
+
</div>
|
331
|
+
|
332
|
+
|
333
|
+
</div>
|
334
|
+
|
335
|
+
<div id="method-i-get_multiple_tracks" class="method-detail ">
|
336
|
+
<div class="method-header">
|
337
|
+
<div class="method-heading">
|
338
|
+
<span class="method-name">get_multiple_tracks</span><span
|
339
|
+
class="method-args">(ids, country_code)</span>
|
340
|
+
<span class="method-click-advice">click to toggle source</span>
|
341
|
+
</div>
|
342
|
+
</div>
|
343
|
+
|
344
|
+
<div class="method-description">
|
345
|
+
<p>Get multiple tracks</p>
|
346
|
+
|
347
|
+
<p>@param ids [Array] The array of track IDs @param country_code [String] The country code @return [Array] The list of tracks</p>
|
348
|
+
|
349
|
+
<div class="method-source-code" id="get_multiple_tracks-source">
|
350
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 189</span>
|
351
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_multiple_tracks</span>(<span class="ruby-identifier">ids</span>, <span class="ruby-identifier">country_code</span>)
|
352
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/tracks"</span>)
|
353
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">ids:</span> <span class="ruby-identifier">ids</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">','</span>), <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
354
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
355
|
+
|
356
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
357
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
358
|
+
<span class="ruby-keyword">end</span></pre>
|
359
|
+
</div>
|
360
|
+
</div>
|
361
|
+
|
362
|
+
|
363
|
+
</div>
|
364
|
+
|
365
|
+
<div id="method-i-get_multiple_videos" class="method-detail ">
|
366
|
+
<div class="method-header">
|
367
|
+
<div class="method-heading">
|
368
|
+
<span class="method-name">get_multiple_videos</span><span
|
369
|
+
class="method-args">(ids, country_code)</span>
|
370
|
+
<span class="method-click-advice">click to toggle source</span>
|
371
|
+
</div>
|
372
|
+
</div>
|
373
|
+
|
374
|
+
<div class="method-description">
|
375
|
+
<p>Get multiple videos</p>
|
376
|
+
|
377
|
+
<p>@param ids [Array] The array of video IDs @param country_code [String] The country code @return [Array] The list of videos</p>
|
378
|
+
|
379
|
+
<div class="method-source-code" id="get_multiple_videos-source">
|
380
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 253</span>
|
381
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_multiple_videos</span>(<span class="ruby-identifier">ids</span>, <span class="ruby-identifier">country_code</span>)
|
382
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/videos"</span>)
|
383
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">ids:</span> <span class="ruby-identifier">ids</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">','</span>), <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
384
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
385
|
+
|
386
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
387
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
388
|
+
<span class="ruby-keyword">end</span></pre>
|
389
|
+
</div>
|
390
|
+
</div>
|
391
|
+
|
392
|
+
|
393
|
+
</div>
|
394
|
+
|
395
|
+
<div id="method-i-get_search" class="method-detail ">
|
396
|
+
<div class="method-header">
|
397
|
+
<div class="method-heading">
|
398
|
+
<span class="method-name">get_search</span><span
|
399
|
+
class="method-args">(query, country_code, type = nil, popularity = nil, offset = nil, limit = nil)</span>
|
400
|
+
<span class="method-click-advice">click to toggle source</span>
|
401
|
+
</div>
|
402
|
+
</div>
|
403
|
+
|
404
|
+
<div class="method-description">
|
405
|
+
<p>Search for content</p>
|
406
|
+
|
407
|
+
<p>@param query [String] The search query @param country_code [String] The country code @param type [String, nil] The type of content to search for @param popularity [String, nil] The popularity filter @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Hash] The search results</p>
|
408
|
+
|
409
|
+
<div class="method-source-code" id="get_search-source">
|
410
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 285</span>
|
411
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_search</span>(<span class="ruby-identifier">query</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">type</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">popularity</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
412
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/search"</span>)
|
413
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">query:</span> <span class="ruby-identifier">query</span>, <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
414
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:type</span>] = <span class="ruby-identifier">type</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span>
|
415
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:popularity</span>] = <span class="ruby-identifier">popularity</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">popularity</span>
|
416
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
417
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
418
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
419
|
+
|
420
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
421
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
422
|
+
<span class="ruby-keyword">end</span></pre>
|
423
|
+
</div>
|
424
|
+
</div>
|
425
|
+
|
426
|
+
|
427
|
+
</div>
|
428
|
+
|
429
|
+
<div id="method-i-get_similar_albums" class="method-detail ">
|
430
|
+
<div class="method-header">
|
431
|
+
<div class="method-heading">
|
432
|
+
<span class="method-name">get_similar_albums</span><span
|
433
|
+
class="method-args">(album_id, country_code, offset = nil, limit = nil)</span>
|
434
|
+
<span class="method-click-advice">click to toggle source</span>
|
435
|
+
</div>
|
436
|
+
</div>
|
437
|
+
|
438
|
+
<div class="method-description">
|
439
|
+
<p>Get similar albums</p>
|
440
|
+
|
441
|
+
<p>@param album_id [String] The album ID @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of similar albums</p>
|
442
|
+
|
443
|
+
<div class="method-source-code" id="get_similar_albums-source">
|
444
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 75</span>
|
445
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_similar_albums</span>(<span class="ruby-identifier">album_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
446
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/albums/#{album_id}/similar"</span>)
|
447
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
448
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
449
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
450
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
451
|
+
|
452
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
453
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
454
|
+
<span class="ruby-keyword">end</span></pre>
|
455
|
+
</div>
|
456
|
+
</div>
|
457
|
+
|
458
|
+
|
459
|
+
</div>
|
460
|
+
|
461
|
+
<div id="method-i-get_similar_artists" class="method-detail ">
|
462
|
+
<div class="method-header">
|
463
|
+
<div class="method-heading">
|
464
|
+
<span class="method-name">get_similar_artists</span><span
|
465
|
+
class="method-args">(artist_id, country_code, offset = nil, limit = nil)</span>
|
466
|
+
<span class="method-click-advice">click to toggle source</span>
|
467
|
+
</div>
|
468
|
+
</div>
|
469
|
+
|
470
|
+
<div class="method-description">
|
471
|
+
<p>Get similar artists</p>
|
472
|
+
|
473
|
+
<p>@param artist_id [String] The artist ID @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of similar artists</p>
|
474
|
+
|
475
|
+
<div class="method-source-code" id="get_similar_artists-source">
|
476
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 139</span>
|
477
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_similar_artists</span>(<span class="ruby-identifier">artist_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
478
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/artists/#{artist_id}/similar"</span>)
|
479
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
480
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
481
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
482
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
483
|
+
|
484
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
485
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
486
|
+
<span class="ruby-keyword">end</span></pre>
|
487
|
+
</div>
|
488
|
+
</div>
|
489
|
+
|
490
|
+
|
491
|
+
</div>
|
492
|
+
|
493
|
+
<div id="method-i-get_similar_tracks" class="method-detail ">
|
494
|
+
<div class="method-header">
|
495
|
+
<div class="method-heading">
|
496
|
+
<span class="method-name">get_similar_tracks</span><span
|
497
|
+
class="method-args">(track_id, country_code, offset = nil, limit = nil)</span>
|
498
|
+
<span class="method-click-advice">click to toggle source</span>
|
499
|
+
</div>
|
500
|
+
</div>
|
501
|
+
|
502
|
+
<div class="method-description">
|
503
|
+
<p>Get similar tracks</p>
|
504
|
+
|
505
|
+
<p>@param track_id [String] The track ID @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of similar tracks</p>
|
506
|
+
|
507
|
+
<div class="method-source-code" id="get_similar_tracks-source">
|
508
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 237</span>
|
509
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_similar_tracks</span>(<span class="ruby-identifier">track_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
510
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/tracks/#{track_id}/similar"</span>)
|
511
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
512
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
513
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
514
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
515
|
+
|
516
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
517
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
518
|
+
<span class="ruby-keyword">end</span></pre>
|
519
|
+
</div>
|
520
|
+
</div>
|
521
|
+
|
522
|
+
|
523
|
+
</div>
|
524
|
+
|
525
|
+
<div id="method-i-get_single_album" class="method-detail ">
|
526
|
+
<div class="method-header">
|
527
|
+
<div class="method-heading">
|
528
|
+
<span class="method-name">get_single_album</span><span
|
529
|
+
class="method-args">(album_id, country_code)</span>
|
530
|
+
<span class="method-click-advice">click to toggle source</span>
|
531
|
+
</div>
|
532
|
+
</div>
|
533
|
+
|
534
|
+
<div class="method-description">
|
535
|
+
<p>Get a single album</p>
|
536
|
+
|
537
|
+
<p>@param album_id [String] The album ID @param country_code [String] The country code @return [Hash] The album data</p>
|
538
|
+
|
539
|
+
<div class="method-source-code" id="get_single_album-source">
|
540
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 91</span>
|
541
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_single_album</span>(<span class="ruby-identifier">album_id</span>, <span class="ruby-identifier">country_code</span>)
|
542
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/albums/#{album_id}"</span>)
|
543
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
544
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
545
|
+
|
546
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
547
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
548
|
+
<span class="ruby-keyword">end</span></pre>
|
549
|
+
</div>
|
550
|
+
</div>
|
551
|
+
|
552
|
+
|
553
|
+
</div>
|
554
|
+
|
555
|
+
<div id="method-i-get_single_artist" class="method-detail ">
|
556
|
+
<div class="method-header">
|
557
|
+
<div class="method-heading">
|
558
|
+
<span class="method-name">get_single_artist</span><span
|
559
|
+
class="method-args">(artist_id, country_code)</span>
|
560
|
+
<span class="method-click-advice">click to toggle source</span>
|
561
|
+
</div>
|
562
|
+
</div>
|
563
|
+
|
564
|
+
<div class="method-description">
|
565
|
+
<p>Get a single artist</p>
|
566
|
+
|
567
|
+
<p>@param artist_id [String] The artist ID @param country_code [String] The country code @return [Hash] The artist data</p>
|
568
|
+
|
569
|
+
<div class="method-source-code" id="get_single_artist-source">
|
570
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 155</span>
|
571
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_single_artist</span>(<span class="ruby-identifier">artist_id</span>, <span class="ruby-identifier">country_code</span>)
|
572
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/artists/#{artist_id}"</span>)
|
573
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
574
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
575
|
+
|
576
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
577
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
578
|
+
<span class="ruby-keyword">end</span></pre>
|
579
|
+
</div>
|
580
|
+
</div>
|
581
|
+
|
582
|
+
|
583
|
+
</div>
|
584
|
+
|
585
|
+
<div id="method-i-get_single_track" class="method-detail ">
|
586
|
+
<div class="method-header">
|
587
|
+
<div class="method-heading">
|
588
|
+
<span class="method-name">get_single_track</span><span
|
589
|
+
class="method-args">(artist_id, country_code)</span>
|
590
|
+
<span class="method-click-advice">click to toggle source</span>
|
591
|
+
</div>
|
592
|
+
</div>
|
593
|
+
|
594
|
+
<div class="method-description">
|
595
|
+
<p>Get a single track</p>
|
596
|
+
|
597
|
+
<p>@param artist_id [String] The artist ID @param country_code [String] The country code @return [Hash] The track data</p>
|
598
|
+
|
599
|
+
<div class="method-source-code" id="get_single_track-source">
|
600
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 221</span>
|
601
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_single_track</span>(<span class="ruby-identifier">artist_id</span>, <span class="ruby-identifier">country_code</span>)
|
602
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/tracks/#{artist_id}"</span>)
|
603
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
604
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
605
|
+
|
606
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
607
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
608
|
+
<span class="ruby-keyword">end</span></pre>
|
609
|
+
</div>
|
610
|
+
</div>
|
611
|
+
|
612
|
+
|
613
|
+
</div>
|
614
|
+
|
615
|
+
<div id="method-i-get_single_video" class="method-detail ">
|
616
|
+
<div class="method-header">
|
617
|
+
<div class="method-heading">
|
618
|
+
<span class="method-name">get_single_video</span><span
|
619
|
+
class="method-args">(video_id, country_code)</span>
|
620
|
+
<span class="method-click-advice">click to toggle source</span>
|
621
|
+
</div>
|
622
|
+
</div>
|
623
|
+
|
624
|
+
<div class="method-description">
|
625
|
+
<p>Get a single video</p>
|
626
|
+
|
627
|
+
<p>@param video_id [String] The video ID @param country_code [String] The country code @return [Hash] The video data</p>
|
628
|
+
|
629
|
+
<div class="method-source-code" id="get_single_video-source">
|
630
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 267</span>
|
631
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_single_video</span>(<span class="ruby-identifier">video_id</span>, <span class="ruby-identifier">country_code</span>)
|
632
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/videos/#{video_id}"</span>)
|
633
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
634
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
635
|
+
|
636
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
637
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
638
|
+
<span class="ruby-keyword">end</span></pre>
|
639
|
+
</div>
|
640
|
+
</div>
|
641
|
+
|
642
|
+
|
643
|
+
</div>
|
644
|
+
|
645
|
+
<div id="method-i-get_tracks_by_artist" class="method-detail ">
|
646
|
+
<div class="method-header">
|
647
|
+
<div class="method-heading">
|
648
|
+
<span class="method-name">get_tracks_by_artist</span><span
|
649
|
+
class="method-args">(artist_id, country_code, collapse_by = nil, offset = nil, limit = nil)</span>
|
650
|
+
<span class="method-click-advice">click to toggle source</span>
|
651
|
+
</div>
|
652
|
+
</div>
|
653
|
+
|
654
|
+
<div class="method-description">
|
655
|
+
<p>Get tracks by artist</p>
|
656
|
+
|
657
|
+
<p>@param artist_id [String] The artist ID @param country_code [String] The country code @param collapse_by [String, nil] The collapse criteria @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of tracks by the artist</p>
|
658
|
+
|
659
|
+
<div class="method-source-code" id="get_tracks_by_artist-source">
|
660
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 172</span>
|
661
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_tracks_by_artist</span>(<span class="ruby-identifier">artist_id</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">collapse_by</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
662
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/artists/#{artist_id}/tracks"</span>)
|
663
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
664
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:collapseBy</span>] = <span class="ruby-identifier">collapse_by</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">collapse_by</span>
|
665
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
666
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
667
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
668
|
+
|
669
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
670
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
671
|
+
<span class="ruby-keyword">end</span></pre>
|
672
|
+
</div>
|
673
|
+
</div>
|
674
|
+
|
675
|
+
|
676
|
+
</div>
|
677
|
+
|
678
|
+
<div id="method-i-get_tracks_by_isrc" class="method-detail ">
|
679
|
+
<div class="method-header">
|
680
|
+
<div class="method-heading">
|
681
|
+
<span class="method-name">get_tracks_by_isrc</span><span
|
682
|
+
class="method-args">(isrc, country_code, offset = nil, limit = nil)</span>
|
683
|
+
<span class="method-click-advice">click to toggle source</span>
|
684
|
+
</div>
|
685
|
+
</div>
|
686
|
+
|
687
|
+
<div class="method-description">
|
688
|
+
<p>Get tracks by ISRC</p>
|
689
|
+
|
690
|
+
<p>@param isrc [String] The ISRC code @param country_code [String] The country code @param offset [Integer, nil] The offset for pagination @param limit [Integer, nil] The limit for pagination @return [Array] The list of tracks by ISRC</p>
|
691
|
+
|
692
|
+
<div class="method-source-code" id="get_tracks_by_isrc-source">
|
693
|
+
<pre><span class="ruby-comment"># File lib/tidal/client_v1.rb, line 205</span>
|
694
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_tracks_by_isrc</span>(<span class="ruby-identifier">isrc</span>, <span class="ruby-identifier">country_code</span>, <span class="ruby-identifier">offset</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">limit</span> = <span class="ruby-keyword">nil</span>)
|
695
|
+
<span class="ruby-identifier">uri</span> = <span class="ruby-constant">URI</span>(<span class="ruby-node">"#{BASE_URL}/tracks/byIsrc"</span>)
|
696
|
+
<span class="ruby-identifier">params</span> = { <span class="ruby-value">isrc:</span> <span class="ruby-identifier">isrc</span>, <span class="ruby-value">countryCode:</span> <span class="ruby-identifier">country_code</span> }
|
697
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:offset</span>] = <span class="ruby-identifier">offset</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">offset</span>
|
698
|
+
<span class="ruby-identifier">params</span>[<span class="ruby-value">:limit</span>] = <span class="ruby-identifier">limit</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">limit</span>
|
699
|
+
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">params</span>)
|
700
|
+
|
701
|
+
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-value">:get</span>, <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">headers:</span> <span class="ruby-identifier">default_headers</span>)
|
702
|
+
<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
703
|
+
<span class="ruby-keyword">end</span></pre>
|
704
|
+
</div>
|
705
|
+
</div>
|
706
|
+
|
707
|
+
|
708
|
+
</div>
|
709
|
+
|
710
|
+
</section>
|
711
|
+
|
712
|
+
</section>
|
713
|
+
</main>
|
714
|
+
|
715
|
+
|
716
|
+
<footer id="validator-badges" role="contentinfo">
|
717
|
+
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
718
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
|
719
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
720
|
+
</footer>
|
721
|
+
|