pinterest-ruby 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.rubocop.yml +63 -0
  4. data/.travis-gemfile +17 -0
  5. data/.travis.yml +12 -0
  6. data/.yardopts +1 -0
  7. data/CHANGELOG.md +3 -0
  8. data/Gemfile +24 -0
  9. data/README.md +34 -0
  10. data/Rakefile +44 -0
  11. data/docs/FaradayMiddleware/SafeOj.html +218 -0
  12. data/docs/FaradayMiddleware.html +125 -0
  13. data/docs/Pinterest/Board.html +410 -0
  14. data/docs/Pinterest/Client.html +1894 -0
  15. data/docs/Pinterest/Collection.html +1877 -0
  16. data/docs/Pinterest/Endpoints/Authentication.html +578 -0
  17. data/docs/Pinterest/Endpoints/Boards.html +1443 -0
  18. data/docs/Pinterest/Endpoints/Pins.html +1296 -0
  19. data/docs/Pinterest/Endpoints/Users.html +1220 -0
  20. data/docs/Pinterest/Endpoints.html +127 -0
  21. data/docs/Pinterest/Entity.html +473 -0
  22. data/docs/Pinterest/Errors/AuthorizationError.html +158 -0
  23. data/docs/Pinterest/Errors/BadRequestError.html +158 -0
  24. data/docs/Pinterest/Errors/BaseError.html +487 -0
  25. data/docs/Pinterest/Errors/MethodNotAllowedError.html +158 -0
  26. data/docs/Pinterest/Errors/NotFoundError.html +158 -0
  27. data/docs/Pinterest/Errors/NotImplementedError.html +158 -0
  28. data/docs/Pinterest/Errors/PermissionsError.html +158 -0
  29. data/docs/Pinterest/Errors/RateLimitError.html +158 -0
  30. data/docs/Pinterest/Errors/ServerError.html +158 -0
  31. data/docs/Pinterest/Errors/TimeoutError.html +158 -0
  32. data/docs/Pinterest/Errors.html +377 -0
  33. data/docs/Pinterest/Image.html +617 -0
  34. data/docs/Pinterest/Interest.html +402 -0
  35. data/docs/Pinterest/Pin.html +511 -0
  36. data/docs/Pinterest/User.html +408 -0
  37. data/docs/Pinterest/Version.html +187 -0
  38. data/docs/Pinterest.html +130 -0
  39. data/docs/_index.html +401 -0
  40. data/docs/class_list.html +51 -0
  41. data/docs/css/common.css +1 -0
  42. data/docs/css/full_list.css +58 -0
  43. data/docs/css/style.css +492 -0
  44. data/docs/file.README.html +106 -0
  45. data/docs/file_list.html +56 -0
  46. data/docs/frames.html +17 -0
  47. data/docs/index.html +106 -0
  48. data/docs/js/app.js +243 -0
  49. data/docs/js/full_list.js +216 -0
  50. data/docs/js/jquery.js +4 -0
  51. data/docs/method_list.html +643 -0
  52. data/docs/top-level-namespace.html +110 -0
  53. data/lib/pinterest/client.rb +146 -0
  54. data/lib/pinterest/collection.rb +97 -0
  55. data/lib/pinterest/endpoints/authentication.rb +99 -0
  56. data/lib/pinterest/endpoints/boards.rb +193 -0
  57. data/lib/pinterest/endpoints/pins.rb +187 -0
  58. data/lib/pinterest/endpoints/users.rb +158 -0
  59. data/lib/pinterest/errors.rb +94 -0
  60. data/lib/pinterest/models/board.rb +34 -0
  61. data/lib/pinterest/models/entity.rb +42 -0
  62. data/lib/pinterest/models/image.rb +49 -0
  63. data/lib/pinterest/models/interest.rb +30 -0
  64. data/lib/pinterest/models/pin.rb +43 -0
  65. data/lib/pinterest/models/user.rb +33 -0
  66. data/lib/pinterest/safe_oj.rb +25 -0
  67. data/lib/pinterest/version.rb +23 -0
  68. data/lib/pinterest.rb +31 -0
  69. data/pinterest.gemspec +32 -0
  70. data/spec/cassettes/Pinterest_Client/_perform_network_request_private_/should_correctly_handle_malformed_requests.yml +51 -0
  71. data/spec/cassettes/Pinterest_Endpoints_Authentication/_fetch_access_token/should_make_the_call_to_Pinterest_and_return_the_authorization_token_also_saving_it.yml +58 -0
  72. data/spec/cassettes/Pinterest_Endpoints_Authentication/_verify_access_token/should_return_an_exception_when_using_an_invalid_token.yml +52 -0
  73. data/spec/cassettes/Pinterest_Endpoints_Authentication/_verify_access_token/should_verify_the_token.yml +59 -0
  74. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_complain_for_invalid_boards.yml +48 -0
  75. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_get_the_current_informations.yml +63 -0
  76. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_restrict_to_requested_fields.yml +57 -0
  77. data/spec/cassettes/Pinterest_Endpoints_Boards/_boards/should_only_get_requested_fields.yml +57 -0
  78. data/spec/cassettes/Pinterest_Endpoints_Boards/_boards/should_return_a_list_of_boards.yml +74 -0
  79. data/spec/cassettes/Pinterest_Endpoints_Boards/_create_board/should_create_the_board_and_return_it_with_only_the_requested_fields.yml +56 -0
  80. data/spec/cassettes/Pinterest_Endpoints_Boards/_delete_board/should_perform_the_call_and_return_an_error.yml +48 -0
  81. data/spec/cassettes/Pinterest_Endpoints_Boards/_delete_board/should_perform_the_call_and_return_true.yml +109 -0
  82. data/spec/cassettes/Pinterest_Endpoints_Boards/_edit_board/should_edit_the_board_and_return_it_with_only_the_requested_fields.yml +56 -0
  83. data/spec/cassettes/Pinterest_Endpoints_Boards/_follow_board/should_complain_for_invalid_boards.yml +56 -0
  84. data/spec/cassettes/Pinterest_Endpoints_Boards/_follow_board/should_perform_the_call_and_return_true.yml +109 -0
  85. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_only_get_requested_fields.yml +59 -0
  86. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_paginate_correctly.yml +72 -0
  87. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_return_the_followed_boards.yml +72 -0
  88. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_only_get_requested_fields.yml +59 -0
  89. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_paginate_correctly.yml +66 -0
  90. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_search_boards.yml +75 -0
  91. data/spec/cassettes/Pinterest_Endpoints_Boards/_suggested_boards/should_return_the_suggested_boards_returning_only_the_requested_fields.yml +56 -0
  92. data/spec/cassettes/Pinterest_Endpoints_Boards/_unfollow_board/should_complain_for_invalid_boards.yml +56 -0
  93. data/spec/cassettes/Pinterest_Endpoints_Boards/_unfollow_board/should_perform_the_call_and_return_true.yml +109 -0
  94. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_only_get_requested_fields.yml +59 -0
  95. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_paginate_correctly.yml +85 -0
  96. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_return_the_pins_of_the_board.yml +85 -0
  97. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_create_a_pin_by_using_a_image_URL.yml +71 -0
  98. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_create_a_pin_by_using_a_image_file.yml +1997 -0
  99. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_return_a_pin_containing_only_requested_fields.yml +56 -0
  100. data/spec/cassettes/Pinterest_Endpoints_Pins/_delete_pin/should_perform_the_call_and_return_an_error.yml +56 -0
  101. data/spec/cassettes/Pinterest_Endpoints_Pins/_delete_pin/should_perform_the_call_and_return_true.yml +109 -0
  102. data/spec/cassettes/Pinterest_Endpoints_Pins/_edit_pin/should_edit_the_pin_and_return_it_with_only_the_requested_fields.yml +56 -0
  103. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_only_get_requested_fields.yml +58 -0
  104. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_paginate_correctly.yml +87 -0
  105. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_return_the_list_of_liked_pins.yml +85 -0
  106. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_complain_for_non_existent_pins.yml +56 -0
  107. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_get_the_current_informations.yml +71 -0
  108. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_restrict_to_requested_fields.yml +56 -0
  109. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_only_get_requested_fields.yml +59 -0
  110. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_paginate_correctly.yml +808 -0
  111. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_return_my_pins.yml +88 -0
  112. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_only_get_requested_fields.yml +61 -0
  113. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_paginate_correctly.yml +89 -0
  114. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_search_my_pins.yml +89 -0
  115. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_interest/should_perform_the_call_and_return_an_error.yml +48 -0
  116. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_user/should_complain_for_invalid_users.yml +56 -0
  117. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_user/should_perform_the_call_and_return_true.yml +109 -0
  118. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_only_get_requested_fields.yml +62 -0
  119. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_paginate_correctly.yml +62 -0
  120. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_return_a_list_of_followers.yml +62 -0
  121. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_only_get_requested_fields.yml +62 -0
  122. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_paginate_correctly.yml +131 -0
  123. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_return_a_list_of_followed_users.yml +66 -0
  124. data/spec/cassettes/Pinterest_Endpoints_Users/_interests/should_paginate_correctly.yml +112 -0
  125. data/spec/cassettes/Pinterest_Endpoints_Users/_interests/should_return_a_list_of_followed_interest.yml +58 -0
  126. data/spec/cassettes/Pinterest_Endpoints_Users/_me/should_get_the_current_informations.yml +62 -0
  127. data/spec/cassettes/Pinterest_Endpoints_Users/_me/should_restrict_to_requested_fields.yml +56 -0
  128. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_interest/should_perform_the_call_and_return_an_error.yml +48 -0
  129. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_user/should_complain_for_invalid_users.yml +56 -0
  130. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_user/should_perform_the_call_and_return_true.yml +109 -0
  131. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_complain_for_non_existent_users.yml +56 -0
  132. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_get_the_current_informations.yml +60 -0
  133. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_restrict_to_requested_fields.yml +56 -0
  134. data/spec/pinterest/client_spec.rb +70 -0
  135. data/spec/pinterest/collection_spec.rb +82 -0
  136. data/spec/pinterest/endpoints/authentication_spec.rb +81 -0
  137. data/spec/pinterest/endpoints/boards_spec.rb +209 -0
  138. data/spec/pinterest/endpoints/pins_spec.rb +239 -0
  139. data/spec/pinterest/endpoints/users_spec.rb +194 -0
  140. data/spec/pinterest/errors_spec.rb +59 -0
  141. data/spec/pinterest/fixtures/first.jpg +0 -0
  142. data/spec/pinterest/models/board_spec.rb +48 -0
  143. data/spec/pinterest/models/entity_spec.rb +35 -0
  144. data/spec/pinterest/models/image_spec.rb +50 -0
  145. data/spec/pinterest/models/interest_spec.rb +20 -0
  146. data/spec/pinterest/models/pin_spec.rb +55 -0
  147. data/spec/pinterest/models/user_spec.rb +45 -0
  148. data/spec/spec_helper.rb +49 -0
  149. data/tester.rb +19 -0
  150. metadata +341 -0
@@ -0,0 +1,1894 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Pinterest::Client
8
+
9
+ &mdash; Documentation by YARD 0.9.7
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Pinterest::Client";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (C)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span>
41
+ &raquo;
42
+ <span class="title">Client</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Pinterest::Client
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Pinterest::Client</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+ <dl>
91
+ <dt>Includes:</dt>
92
+ <dd><span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Endpoints::Authentication</a></span>, <span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Endpoints::Boards</a></span>, <span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Endpoints::Pins</a></span>, <span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Endpoints::Users</a></span></dd>
93
+ </dl>
94
+
95
+
96
+
97
+
98
+
99
+
100
+ <dl>
101
+ <dt>Defined in:</dt>
102
+ <dd>lib/pinterest/client.rb</dd>
103
+ </dl>
104
+
105
+ </div>
106
+
107
+ <h2>Overview</h2><div class="docstring">
108
+ <div class="discussion">
109
+ <p>A Pinterest API client.</p>
110
+
111
+
112
+ </div>
113
+ </div>
114
+ <div class="tags">
115
+
116
+
117
+ </div>
118
+ <h2>Constant Summary</h2>
119
+ <dl class="constants">
120
+
121
+ <dt id="API_URL-constant" class="">API_URL =
122
+ <div class="docstring">
123
+ <div class="discussion">
124
+ <p>The Pinterest API Root URL.</p>
125
+
126
+
127
+ </div>
128
+ </div>
129
+ <div class="tags">
130
+
131
+
132
+ </div>
133
+ </dt>
134
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https://api.pinterest.com</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
135
+
136
+ <dt id="API_VERSION-constant" class="">API_VERSION =
137
+ <div class="docstring">
138
+ <div class="discussion">
139
+ <p>The Pinterest API version.</p>
140
+
141
+
142
+ </div>
143
+ </div>
144
+ <div class="tags">
145
+
146
+
147
+ </div>
148
+ </dt>
149
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>v1</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
150
+
151
+ <dt id="SCOPES-constant" class="">SCOPES =
152
+ <div class="docstring">
153
+ <div class="discussion">
154
+ <p>The allowed authorization scopes.</p>
155
+
156
+
157
+ </div>
158
+ </div>
159
+ <div class="tags">
160
+
161
+
162
+ </div>
163
+ </dt>
164
+ <dd><pre class="code"><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_relationships</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_relationships</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
165
+
166
+ <dt id="DEFAULT_LIMIT-constant" class="">DEFAULT_LIMIT =
167
+ <div class="docstring">
168
+ <div class="discussion">
169
+ <p>The maximum number of results to return by default.</p>
170
+
171
+
172
+ </div>
173
+ </div>
174
+ <div class="tags">
175
+
176
+
177
+ </div>
178
+ </dt>
179
+ <dd><pre class="code"><span class='int'>50</span></pre></dd>
180
+
181
+ </dl>
182
+
183
+
184
+
185
+
186
+ <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
187
+ <ul class="summary">
188
+
189
+ <li class="public ">
190
+ <span class="summary_signature">
191
+
192
+ <a href="#access_token-instance_method" title="#access_token (instance method)">#<strong>access_token</strong> &#x21d2; String </a>
193
+
194
+
195
+
196
+ </span>
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+ <span class="summary_desc"><div class='inline'><p>The access token.</p>
210
+ </div></span>
211
+
212
+ </li>
213
+
214
+
215
+ <li class="public ">
216
+ <span class="summary_signature">
217
+
218
+ <a href="#client_id-instance_method" title="#client_id (instance method)">#<strong>client_id</strong> &#x21d2; Object </a>
219
+
220
+
221
+
222
+ </span>
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+ <span class="summary_desc"><div class='inline'><p>The client id.</p>
236
+ </div></span>
237
+
238
+ </li>
239
+
240
+
241
+ <li class="public ">
242
+ <span class="summary_signature">
243
+
244
+ <a href="#client_secret-instance_method" title="#client_secret (instance method)">#<strong>client_secret</strong> &#x21d2; Object </a>
245
+
246
+
247
+
248
+ </span>
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+ <span class="summary_desc"><div class='inline'><p>The client secret.</p>
262
+ </div></span>
263
+
264
+ </li>
265
+
266
+
267
+ <li class="public ">
268
+ <span class="summary_signature">
269
+
270
+ <a href="#connection-instance_method" title="#connection (instance method)">#<strong>connection</strong> &#x21d2; Object </a>
271
+
272
+
273
+
274
+ </span>
275
+
276
+
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+ <span class="summary_desc"><div class='inline'><p>Returns the value of attribute connection.</p>
288
+ </div></span>
289
+
290
+ </li>
291
+
292
+
293
+ <li class="public ">
294
+ <span class="summary_signature">
295
+
296
+ <a href="#connection_setup-instance_method" title="#connection_setup (instance method)">#<strong>connection_setup</strong> &#x21d2; Object </a>
297
+
298
+
299
+
300
+ </span>
301
+
302
+
303
+
304
+
305
+ <span class="note title readonly">readonly</span>
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+
315
+ <span class="summary_desc"><div class='inline'><p>Additional code to execute on the connection object.</p>
316
+ </div></span>
317
+
318
+ </li>
319
+
320
+
321
+ <li class="public ">
322
+ <span class="summary_signature">
323
+
324
+ <a href="#verbose-instance_method" title="#verbose (instance method)">#<strong>verbose</strong> &#x21d2; Object </a>
325
+
326
+
327
+
328
+ </span>
329
+
330
+
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+
341
+ <span class="summary_desc"><div class='inline'><p>Returns the value of attribute verbose.</p>
342
+ </div></span>
343
+
344
+ </li>
345
+
346
+
347
+ </ul>
348
+
349
+
350
+
351
+
352
+
353
+ <h2>
354
+ Instance Method Summary
355
+ <small><a href="#" class="summary_toggle">collapse</a></small>
356
+ </h2>
357
+
358
+ <ul class="summary">
359
+
360
+ <li class="public ">
361
+ <span class="summary_signature">
362
+
363
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(access_token: nil, client_id: nil, client_secret: nil, verbose: false, &amp;connection_setup) &#x21d2; Client </a>
364
+
365
+
366
+
367
+ </span>
368
+
369
+
370
+ <span class="note title constructor">constructor</span>
371
+
372
+
373
+
374
+
375
+
376
+
377
+
378
+
379
+ <span class="summary_desc"><div class='inline'><p>Creates a new client.</p>
380
+ </div></span>
381
+
382
+ </li>
383
+
384
+
385
+ </ul>
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+
395
+
396
+
397
+ <h3 class="inherited">Methods included from <span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Endpoints::Boards</a></span></h3>
398
+ <p class="inherited"><span class='object_link'><a href="Endpoints/Boards.html#board-instance_method" title="Pinterest::Endpoints::Boards#board (method)">#board</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#boards-instance_method" title="Pinterest::Endpoints::Boards#boards (method)">#boards</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#create_board-instance_method" title="Pinterest::Endpoints::Boards#create_board (method)">#create_board</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#delete_board-instance_method" title="Pinterest::Endpoints::Boards#delete_board (method)">#delete_board</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#edit_board-instance_method" title="Pinterest::Endpoints::Boards#edit_board (method)">#edit_board</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#follow_board-instance_method" title="Pinterest::Endpoints::Boards#follow_board (method)">#follow_board</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#following_boards-instance_method" title="Pinterest::Endpoints::Boards#following_boards (method)">#following_boards</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#search_my_boards-instance_method" title="Pinterest::Endpoints::Boards#search_my_boards (method)">#search_my_boards</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#suggested_boards-instance_method" title="Pinterest::Endpoints::Boards#suggested_boards (method)">#suggested_boards</a></span>, <span class='object_link'><a href="Endpoints/Boards.html#unfollow_board-instance_method" title="Pinterest::Endpoints::Boards#unfollow_board (method)">#unfollow_board</a></span></p>
399
+
400
+
401
+
402
+
403
+
404
+
405
+
406
+
407
+
408
+ <h3 class="inherited">Methods included from <span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Endpoints::Pins</a></span></h3>
409
+ <p class="inherited"><span class='object_link'><a href="Endpoints/Pins.html#board_pins-instance_method" title="Pinterest::Endpoints::Pins#board_pins (method)">#board_pins</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#create_pin-instance_method" title="Pinterest::Endpoints::Pins#create_pin (method)">#create_pin</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#delete_pin-instance_method" title="Pinterest::Endpoints::Pins#delete_pin (method)">#delete_pin</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#edit_pin-instance_method" title="Pinterest::Endpoints::Pins#edit_pin (method)">#edit_pin</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#likes-instance_method" title="Pinterest::Endpoints::Pins#likes (method)">#likes</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#pin-instance_method" title="Pinterest::Endpoints::Pins#pin (method)">#pin</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#pins-instance_method" title="Pinterest::Endpoints::Pins#pins (method)">#pins</a></span>, <span class='object_link'><a href="Endpoints/Pins.html#search_my_pins-instance_method" title="Pinterest::Endpoints::Pins#search_my_pins (method)">#search_my_pins</a></span></p>
410
+
411
+
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+ <h3 class="inherited">Methods included from <span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Endpoints::Users</a></span></h3>
420
+ <p class="inherited"><span class='object_link'><a href="Endpoints/Users.html#follow_interest-instance_method" title="Pinterest::Endpoints::Users#follow_interest (method)">#follow_interest</a></span>, <span class='object_link'><a href="Endpoints/Users.html#follow_user-instance_method" title="Pinterest::Endpoints::Users#follow_user (method)">#follow_user</a></span>, <span class='object_link'><a href="Endpoints/Users.html#followers-instance_method" title="Pinterest::Endpoints::Users#followers (method)">#followers</a></span>, <span class='object_link'><a href="Endpoints/Users.html#following_users-instance_method" title="Pinterest::Endpoints::Users#following_users (method)">#following_users</a></span>, <span class='object_link'><a href="Endpoints/Users.html#interests-instance_method" title="Pinterest::Endpoints::Users#interests (method)">#interests</a></span>, <span class='object_link'><a href="Endpoints/Users.html#me-instance_method" title="Pinterest::Endpoints::Users#me (method)">#me</a></span>, <span class='object_link'><a href="Endpoints/Users.html#unfollow_interest-instance_method" title="Pinterest::Endpoints::Users#unfollow_interest (method)">#unfollow_interest</a></span>, <span class='object_link'><a href="Endpoints/Users.html#unfollow_user-instance_method" title="Pinterest::Endpoints::Users#unfollow_user (method)">#unfollow_user</a></span>, <span class='object_link'><a href="Endpoints/Users.html#user-instance_method" title="Pinterest::Endpoints::Users#user (method)">#user</a></span></p>
421
+
422
+
423
+
424
+
425
+
426
+
427
+
428
+
429
+
430
+ <h3 class="inherited">Methods included from <span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Endpoints::Authentication</a></span></h3>
431
+ <p class="inherited"><span class='object_link'><a href="Endpoints/Authentication.html#authorization_state-instance_method" title="Pinterest::Endpoints::Authentication#authorization_state (method)">#authorization_state</a></span>, <span class='object_link'><a href="Endpoints/Authentication.html#authorization_url-instance_method" title="Pinterest::Endpoints::Authentication#authorization_url (method)">#authorization_url</a></span>, <span class='object_link'><a href="Endpoints/Authentication.html#fetch_access_token-instance_method" title="Pinterest::Endpoints::Authentication#fetch_access_token (method)">#fetch_access_token</a></span>, <span class='object_link'><a href="Endpoints/Authentication.html#verify_access_token-instance_method" title="Pinterest::Endpoints::Authentication#verify_access_token (method)">#verify_access_token</a></span></p>
432
+ <div id="constructor_details" class="method_details_list">
433
+ <h2>Constructor Details</h2>
434
+
435
+ <div class="method_details first">
436
+ <h3 class="signature first" id="initialize-instance_method">
437
+
438
+ #<strong>initialize</strong>(access_token: nil, client_id: nil, client_secret: nil, verbose: false, &amp;connection_setup) &#x21d2; <tt><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></tt>
439
+
440
+
441
+
442
+
443
+
444
+ </h3><div class="docstring">
445
+ <div class="discussion">
446
+ <p>Creates a new client.</p>
447
+
448
+
449
+ </div>
450
+ </div>
451
+ <div class="tags">
452
+ <p class="tag_title">Parameters:</p>
453
+ <ul class="param">
454
+
455
+ <li>
456
+
457
+ <span class='name'>access_token</span>
458
+
459
+
460
+ <span class='type'>(<tt>String</tt>)</span>
461
+
462
+
463
+
464
+ &mdash;
465
+ <div class='inline'><p>The access token.</p>
466
+ </div>
467
+
468
+ </li>
469
+
470
+ <li>
471
+
472
+ <span class='name'>client_id</span>
473
+
474
+
475
+ <span class='type'>(<tt>String</tt>)</span>
476
+
477
+
478
+
479
+ &mdash;
480
+ <div class='inline'><p>The client id.</p>
481
+ </div>
482
+
483
+ </li>
484
+
485
+ <li>
486
+
487
+ <span class='name'>client_secret</span>
488
+
489
+
490
+ <span class='type'>(<tt>String</tt>)</span>
491
+
492
+
493
+
494
+ &mdash;
495
+ <div class='inline'><p>The client secret.</p>
496
+ </div>
497
+
498
+ </li>
499
+
500
+ <li>
501
+
502
+ <span class='name'>verbose</span>
503
+
504
+
505
+ <span class='type'>(<tt>Boolean</tt>)</span>
506
+
507
+
508
+
509
+ &mdash;
510
+ <div class='inline'><p>If log requests.</p>
511
+ </div>
512
+
513
+ </li>
514
+
515
+ <li>
516
+
517
+ <span class='name'>connection_setup</span>
518
+
519
+
520
+ <span class='type'>(<tt>Proc</tt>)</span>
521
+
522
+
523
+
524
+ &mdash;
525
+ <div class='inline'><p>Additional code to execute on the connection object.</p>
526
+ </div>
527
+
528
+ </li>
529
+
530
+ </ul>
531
+
532
+
533
+ </div><table class="source_code">
534
+ <tr>
535
+ <td>
536
+ <pre class="lines">
537
+
538
+
539
+ 41
540
+ 42
541
+ 43
542
+ 44
543
+ 45
544
+ 46
545
+ 47
546
+ 48</pre>
547
+ </td>
548
+ <td>
549
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 41</span>
550
+
551
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>access_token:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_secret:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>verbose:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
552
+ <span class='ivar'>@client_id</span> <span class='op'>=</span> <span class='id identifier rubyid_client_id'>client_id</span>
553
+ <span class='ivar'>@client_secret</span> <span class='op'>=</span> <span class='id identifier rubyid_client_secret'>client_secret</span>
554
+ <span class='ivar'>@access_token</span> <span class='op'>=</span> <span class='id identifier rubyid_access_token'>access_token</span>
555
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_verbose'>verbose</span>
556
+
557
+ <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
558
+ <span class='kw'>end</span></pre>
559
+ </td>
560
+ </tr>
561
+ </table>
562
+ </div>
563
+
564
+ </div>
565
+
566
+ <div id="instance_attr_details" class="attr_details">
567
+ <h2>Instance Attribute Details</h2>
568
+
569
+
570
+ <span id="access_token=-instance_method"></span>
571
+ <div class="method_details first">
572
+ <h3 class="signature first" id="access_token-instance_method">
573
+
574
+ #<strong>access_token</strong> &#x21d2; <tt>String</tt>
575
+
576
+
577
+
578
+
579
+
580
+ </h3><div class="docstring">
581
+ <div class="discussion">
582
+ <p>Returns The access token.</p>
583
+
584
+
585
+ </div>
586
+ </div>
587
+ <div class="tags">
588
+
589
+ <p class="tag_title">Returns:</p>
590
+ <ul class="return">
591
+
592
+ <li>
593
+
594
+
595
+ <span class='type'>(<tt>String</tt>)</span>
596
+
597
+
598
+
599
+ &mdash;
600
+ <div class='inline'><p>The access token.</p>
601
+ </div>
602
+
603
+ </li>
604
+
605
+ </ul>
606
+
607
+ </div><table class="source_code">
608
+ <tr>
609
+ <td>
610
+ <pre class="lines">
611
+
612
+
613
+ 19
614
+ 20
615
+ 21
616
+ 22
617
+ 23
618
+ 24
619
+ 25
620
+ 26
621
+ 27
622
+ 28
623
+ 29
624
+ 30
625
+ 31
626
+ 32
627
+ 33
628
+ 34
629
+ 35
630
+ 36
631
+ 37
632
+ 38
633
+ 39
634
+ 40
635
+ 41
636
+ 42
637
+ 43
638
+ 44
639
+ 45
640
+ 46
641
+ 47
642
+ 48
643
+ 49
644
+ 50
645
+ 51
646
+ 52
647
+ 53
648
+ 54
649
+ 55
650
+ 56
651
+ 57
652
+ 58
653
+ 59
654
+ 60
655
+ 61
656
+ 62
657
+ 63
658
+ 64
659
+ 65
660
+ 66
661
+ 67
662
+ 68
663
+ 69
664
+ 70
665
+ 71
666
+ 72
667
+ 73
668
+ 74
669
+ 75
670
+ 76
671
+ 77
672
+ 78
673
+ 79
674
+ 80
675
+ 81
676
+ 82
677
+ 83
678
+ 84
679
+ 85
680
+ 86
681
+ 87
682
+ 88
683
+ 89
684
+ 90
685
+ 91
686
+ 92
687
+ 93
688
+ 94
689
+ 95
690
+ 96
691
+ 97
692
+ 98
693
+ 99
694
+ 100
695
+ 101
696
+ 102
697
+ 103
698
+ 104
699
+ 105
700
+ 106
701
+ 107
702
+ 108
703
+ 109
704
+ 110
705
+ 111
706
+ 112
707
+ 113
708
+ 114
709
+ 115
710
+ 116
711
+ 117
712
+ 118
713
+ 119
714
+ 120
715
+ 121
716
+ 122
717
+ 123
718
+ 124
719
+ 125
720
+ 126
721
+ 127
722
+ 128
723
+ 129
724
+ 130
725
+ 131
726
+ 132
727
+ 133
728
+ 134
729
+ 135
730
+ 136
731
+ 137
732
+ 138
733
+ 139
734
+ 140
735
+ 141
736
+ 142
737
+ 143
738
+ 144
739
+ 145</pre>
740
+ </td>
741
+ <td>
742
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 19</span>
743
+
744
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span>
745
+ <span class='comment'># The Pinterest API Root URL.
746
+ </span> <span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https://api.pinterest.com</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
747
+
748
+ <span class='comment'># The Pinterest API version.
749
+ </span> <span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>v1</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
750
+
751
+ <span class='comment'># The allowed authorization scopes.
752
+ </span> <span class='const'><span class='object_link'><a href="#SCOPES-constant" title="Pinterest::Client::SCOPES (constant)">SCOPES</a></span></span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_relationships</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_relationships</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
753
+
754
+ <span class='comment'># The maximum number of results to return by default.
755
+ </span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='op'>=</span> <span class='int'>50</span>
756
+
757
+ <span class='id identifier rubyid_attr_accessor'>attr_accessor</span> <span class='symbol'>:client_id</span><span class='comma'>,</span> <span class='symbol'>:client_secret</span><span class='comma'>,</span> <span class='symbol'>:access_token</span><span class='comma'>,</span> <span class='symbol'>:verbose</span><span class='comma'>,</span> <span class='symbol'>:connection</span>
758
+
759
+ <span class='comment'># Creates a new client.
760
+ </span> <span class='comment'>#
761
+ </span> <span class='comment'># @param access_token [String] The access token.
762
+ </span> <span class='comment'># @param client_id [String] The client id.
763
+ </span> <span class='comment'># @param client_secret [String] The client secret.
764
+ </span> <span class='comment'># @param verbose [Boolean] If log requests.
765
+ </span> <span class='comment'># @param connection_setup [Proc] Additional code to execute on the connection object.
766
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>access_token:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_secret:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>verbose:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
767
+ <span class='ivar'>@client_id</span> <span class='op'>=</span> <span class='id identifier rubyid_client_id'>client_id</span>
768
+ <span class='ivar'>@client_secret</span> <span class='op'>=</span> <span class='id identifier rubyid_client_secret'>client_secret</span>
769
+ <span class='ivar'>@access_token</span> <span class='op'>=</span> <span class='id identifier rubyid_access_token'>access_token</span>
770
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_verbose'>verbose</span>
771
+
772
+ <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
773
+ <span class='kw'>end</span>
774
+
775
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Authentication</a></span></span>
776
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Users</a></span></span>
777
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Pins</a></span></span>
778
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Boards</a></span></span>
779
+
780
+ <span class='id identifier rubyid_private'>private</span>
781
+
782
+ <span class='comment'># :nodoc:
783
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_setup'>setup</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
784
+ <span class='id identifier rubyid_setup'>setup</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
785
+ <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
786
+ <span class='kw'>end</span>
787
+
788
+ <span class='comment'># :nodoc:
789
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_array'>ensure_array</span><span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span><span class='comma'>,</span> <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span>
790
+ <span class='id identifier rubyid_subject'>subject</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span> <span class='op'>?</span> <span class='lbracket'>[</span><span class='id identifier rubyid_subject'>subject</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_default'>default</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_flatten'>flatten</span> <span class='kw'>unless</span> <span class='id identifier rubyid_subject'>subject</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Array</span><span class='rparen'>)</span>
791
+ <span class='id identifier rubyid_subject'>subject</span>
792
+ <span class='kw'>end</span>
793
+
794
+ <span class='comment'># :nodoc:
795
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
796
+ <span class='id identifier rubyid_valid'>valid</span> <span class='op'>=</span> <span class='id identifier rubyid_param'>param</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_param'>param</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
797
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_valid'>valid</span>
798
+ <span class='id identifier rubyid_valid'>valid</span>
799
+ <span class='kw'>end</span>
800
+
801
+ <span class='comment'># :nodoc:
802
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span>
803
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:multipart</span><span class='rparen'>)</span>
804
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:url_encoded</span><span class='rparen'>)</span>
805
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:safe_oj</span><span class='rparen'>)</span>
806
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:logger</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_verbose'>verbose</span>
807
+
808
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_use'>use</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../FaradayMiddleware.html" title="FaradayMiddleware (module)">FaradayMiddleware</a></span></span><span class='op'>::</span><span class='const'>FollowRedirects</span><span class='rparen'>)</span>
809
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_default_adapter'>default_adapter</span><span class='rparen'>)</span>
810
+ <span class='kw'>end</span>
811
+
812
+ <span class='comment'># :nodoc:
813
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_cleanup_params'>cleanup_params</span><span class='lparen'>(</span><span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
814
+ <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='op'>!</span><span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
815
+ <span class='kw'>end</span>
816
+
817
+ <span class='comment'># :nodoc:
818
+ </span> <span class='comment'># rubocop:disable Metrics/ParameterLists
819
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_network_request'>perform_network_request</span><span class='lparen'>(</span><span class='label'>method:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GET</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>url:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>body:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>authenticated:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>pagination:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_additional'>additional</span><span class='rparen'>)</span>
820
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_request'>request</span><span class='op'>|</span>
821
+ <span class='comment'># Setup URL and headers
822
+ </span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
823
+
824
+ <span class='comment'># Handle pagination
825
+ </span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_pagination'>pagination</span>
826
+
827
+ <span class='comment'># Add the body
828
+ </span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_body'>body</span>
829
+
830
+ <span class='comment'># Run user callback
831
+ </span> <span class='kw'>yield</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_additional'>additional</span>
832
+ <span class='kw'>end</span>
833
+
834
+ <span class='comment'># Perform the call
835
+ </span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_create'><span class='object_link'><a href="Errors.html#create-class_method" title="Pinterest::Errors.create (method)">create</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
836
+ <span class='id identifier rubyid_response'>response</span>
837
+ <span class='kw'>rescue</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>ParsingError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
838
+ <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
839
+ <span class='kw'>end</span>
840
+
841
+ <span class='comment'># :nodoc:
842
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
843
+ <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span>
844
+ <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>&lt;h1&gt;(.+?)&lt;\/h1&gt;</span><span class='regexp_end'>/mi</span></span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
845
+
846
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_class_for_code'><span class='object_link'><a href="Errors.html#class_for_code-class_method" title="Pinterest::Errors.class_for_code (method)">class_for_code</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span> <span class='op'>?</span> <span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid response from the server.</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span>
847
+ <span class='kw'>end</span>
848
+
849
+ <span class='comment'># :nodoc:
850
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
851
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
852
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='kw'>if</span> <span class='id identifier rubyid_limit'>limit</span> <span class='op'>&lt;</span> <span class='int'>1</span>
853
+
854
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span>
855
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
856
+ <span class='kw'>end</span>
857
+
858
+ <span class='comment'># :nodoc:
859
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
860
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
861
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Authorization</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Bearer </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_access_token'>access_token</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_authenticated'>authenticated</span>
862
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
863
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span>
864
+ <span class='kw'>end</span>
865
+
866
+ <span class='comment'># :nodoc:
867
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_versioned_url'>versioned_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
868
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
869
+ <span class='kw'>end</span>
870
+ <span class='kw'>end</span></pre>
871
+ </td>
872
+ </tr>
873
+ </table>
874
+ </div>
875
+
876
+
877
+ <span id="client_id=-instance_method"></span>
878
+ <div class="method_details ">
879
+ <h3 class="signature " id="client_id-instance_method">
880
+
881
+ #<strong>client_id</strong> &#x21d2; <tt>Object</tt>
882
+
883
+
884
+
885
+
886
+
887
+ </h3><div class="docstring">
888
+ <div class="discussion">
889
+ <p>Returns The client id.</p>
890
+
891
+
892
+ </div>
893
+ </div>
894
+ <div class="tags">
895
+
896
+ <p class="tag_title">Returns:</p>
897
+ <ul class="return">
898
+
899
+ <li>
900
+
901
+
902
+ <span class='type'></span>
903
+
904
+
905
+
906
+
907
+ <div class='inline'><p>The client id.</p>
908
+ </div>
909
+
910
+ </li>
911
+
912
+ </ul>
913
+
914
+ </div><table class="source_code">
915
+ <tr>
916
+ <td>
917
+ <pre class="lines">
918
+
919
+
920
+ 19
921
+ 20
922
+ 21
923
+ 22
924
+ 23
925
+ 24
926
+ 25
927
+ 26
928
+ 27
929
+ 28
930
+ 29
931
+ 30
932
+ 31
933
+ 32
934
+ 33
935
+ 34
936
+ 35
937
+ 36
938
+ 37
939
+ 38
940
+ 39
941
+ 40
942
+ 41
943
+ 42
944
+ 43
945
+ 44
946
+ 45
947
+ 46
948
+ 47
949
+ 48
950
+ 49
951
+ 50
952
+ 51
953
+ 52
954
+ 53
955
+ 54
956
+ 55
957
+ 56
958
+ 57
959
+ 58
960
+ 59
961
+ 60
962
+ 61
963
+ 62
964
+ 63
965
+ 64
966
+ 65
967
+ 66
968
+ 67
969
+ 68
970
+ 69
971
+ 70
972
+ 71
973
+ 72
974
+ 73
975
+ 74
976
+ 75
977
+ 76
978
+ 77
979
+ 78
980
+ 79
981
+ 80
982
+ 81
983
+ 82
984
+ 83
985
+ 84
986
+ 85
987
+ 86
988
+ 87
989
+ 88
990
+ 89
991
+ 90
992
+ 91
993
+ 92
994
+ 93
995
+ 94
996
+ 95
997
+ 96
998
+ 97
999
+ 98
1000
+ 99
1001
+ 100
1002
+ 101
1003
+ 102
1004
+ 103
1005
+ 104
1006
+ 105
1007
+ 106
1008
+ 107
1009
+ 108
1010
+ 109
1011
+ 110
1012
+ 111
1013
+ 112
1014
+ 113
1015
+ 114
1016
+ 115
1017
+ 116
1018
+ 117
1019
+ 118
1020
+ 119
1021
+ 120
1022
+ 121
1023
+ 122
1024
+ 123
1025
+ 124
1026
+ 125
1027
+ 126
1028
+ 127
1029
+ 128
1030
+ 129
1031
+ 130
1032
+ 131
1033
+ 132
1034
+ 133
1035
+ 134
1036
+ 135
1037
+ 136
1038
+ 137
1039
+ 138
1040
+ 139
1041
+ 140
1042
+ 141
1043
+ 142
1044
+ 143
1045
+ 144
1046
+ 145</pre>
1047
+ </td>
1048
+ <td>
1049
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 19</span>
1050
+
1051
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span>
1052
+ <span class='comment'># The Pinterest API Root URL.
1053
+ </span> <span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https://api.pinterest.com</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1054
+
1055
+ <span class='comment'># The Pinterest API version.
1056
+ </span> <span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>v1</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1057
+
1058
+ <span class='comment'># The allowed authorization scopes.
1059
+ </span> <span class='const'><span class='object_link'><a href="#SCOPES-constant" title="Pinterest::Client::SCOPES (constant)">SCOPES</a></span></span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_relationships</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_relationships</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1060
+
1061
+ <span class='comment'># The maximum number of results to return by default.
1062
+ </span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='op'>=</span> <span class='int'>50</span>
1063
+
1064
+ <span class='id identifier rubyid_attr_accessor'>attr_accessor</span> <span class='symbol'>:client_id</span><span class='comma'>,</span> <span class='symbol'>:client_secret</span><span class='comma'>,</span> <span class='symbol'>:access_token</span><span class='comma'>,</span> <span class='symbol'>:verbose</span><span class='comma'>,</span> <span class='symbol'>:connection</span>
1065
+
1066
+ <span class='comment'># Creates a new client.
1067
+ </span> <span class='comment'>#
1068
+ </span> <span class='comment'># @param access_token [String] The access token.
1069
+ </span> <span class='comment'># @param client_id [String] The client id.
1070
+ </span> <span class='comment'># @param client_secret [String] The client secret.
1071
+ </span> <span class='comment'># @param verbose [Boolean] If log requests.
1072
+ </span> <span class='comment'># @param connection_setup [Proc] Additional code to execute on the connection object.
1073
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>access_token:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_secret:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>verbose:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1074
+ <span class='ivar'>@client_id</span> <span class='op'>=</span> <span class='id identifier rubyid_client_id'>client_id</span>
1075
+ <span class='ivar'>@client_secret</span> <span class='op'>=</span> <span class='id identifier rubyid_client_secret'>client_secret</span>
1076
+ <span class='ivar'>@access_token</span> <span class='op'>=</span> <span class='id identifier rubyid_access_token'>access_token</span>
1077
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_verbose'>verbose</span>
1078
+
1079
+ <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1080
+ <span class='kw'>end</span>
1081
+
1082
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Authentication</a></span></span>
1083
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Users</a></span></span>
1084
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Pins</a></span></span>
1085
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Boards</a></span></span>
1086
+
1087
+ <span class='id identifier rubyid_private'>private</span>
1088
+
1089
+ <span class='comment'># :nodoc:
1090
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_setup'>setup</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1091
+ <span class='id identifier rubyid_setup'>setup</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1092
+ <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
1093
+ <span class='kw'>end</span>
1094
+
1095
+ <span class='comment'># :nodoc:
1096
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_array'>ensure_array</span><span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span><span class='comma'>,</span> <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1097
+ <span class='id identifier rubyid_subject'>subject</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span> <span class='op'>?</span> <span class='lbracket'>[</span><span class='id identifier rubyid_subject'>subject</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_default'>default</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_flatten'>flatten</span> <span class='kw'>unless</span> <span class='id identifier rubyid_subject'>subject</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Array</span><span class='rparen'>)</span>
1098
+ <span class='id identifier rubyid_subject'>subject</span>
1099
+ <span class='kw'>end</span>
1100
+
1101
+ <span class='comment'># :nodoc:
1102
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1103
+ <span class='id identifier rubyid_valid'>valid</span> <span class='op'>=</span> <span class='id identifier rubyid_param'>param</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_param'>param</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1104
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_valid'>valid</span>
1105
+ <span class='id identifier rubyid_valid'>valid</span>
1106
+ <span class='kw'>end</span>
1107
+
1108
+ <span class='comment'># :nodoc:
1109
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span>
1110
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:multipart</span><span class='rparen'>)</span>
1111
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:url_encoded</span><span class='rparen'>)</span>
1112
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:safe_oj</span><span class='rparen'>)</span>
1113
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:logger</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_verbose'>verbose</span>
1114
+
1115
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_use'>use</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../FaradayMiddleware.html" title="FaradayMiddleware (module)">FaradayMiddleware</a></span></span><span class='op'>::</span><span class='const'>FollowRedirects</span><span class='rparen'>)</span>
1116
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_default_adapter'>default_adapter</span><span class='rparen'>)</span>
1117
+ <span class='kw'>end</span>
1118
+
1119
+ <span class='comment'># :nodoc:
1120
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_cleanup_params'>cleanup_params</span><span class='lparen'>(</span><span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
1121
+ <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='op'>!</span><span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1122
+ <span class='kw'>end</span>
1123
+
1124
+ <span class='comment'># :nodoc:
1125
+ </span> <span class='comment'># rubocop:disable Metrics/ParameterLists
1126
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_network_request'>perform_network_request</span><span class='lparen'>(</span><span class='label'>method:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GET</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>url:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>body:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>authenticated:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>pagination:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_additional'>additional</span><span class='rparen'>)</span>
1127
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_request'>request</span><span class='op'>|</span>
1128
+ <span class='comment'># Setup URL and headers
1129
+ </span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1130
+
1131
+ <span class='comment'># Handle pagination
1132
+ </span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_pagination'>pagination</span>
1133
+
1134
+ <span class='comment'># Add the body
1135
+ </span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_body'>body</span>
1136
+
1137
+ <span class='comment'># Run user callback
1138
+ </span> <span class='kw'>yield</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_additional'>additional</span>
1139
+ <span class='kw'>end</span>
1140
+
1141
+ <span class='comment'># Perform the call
1142
+ </span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_create'><span class='object_link'><a href="Errors.html#create-class_method" title="Pinterest::Errors.create (method)">create</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
1143
+ <span class='id identifier rubyid_response'>response</span>
1144
+ <span class='kw'>rescue</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>ParsingError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
1145
+ <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1146
+ <span class='kw'>end</span>
1147
+
1148
+ <span class='comment'># :nodoc:
1149
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1150
+ <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span>
1151
+ <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>&lt;h1&gt;(.+?)&lt;\/h1&gt;</span><span class='regexp_end'>/mi</span></span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
1152
+
1153
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_class_for_code'><span class='object_link'><a href="Errors.html#class_for_code-class_method" title="Pinterest::Errors.class_for_code (method)">class_for_code</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span> <span class='op'>?</span> <span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid response from the server.</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span>
1154
+ <span class='kw'>end</span>
1155
+
1156
+ <span class='comment'># :nodoc:
1157
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1158
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
1159
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='kw'>if</span> <span class='id identifier rubyid_limit'>limit</span> <span class='op'>&lt;</span> <span class='int'>1</span>
1160
+
1161
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span>
1162
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
1163
+ <span class='kw'>end</span>
1164
+
1165
+ <span class='comment'># :nodoc:
1166
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1167
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1168
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Authorization</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Bearer </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_access_token'>access_token</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_authenticated'>authenticated</span>
1169
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1170
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span>
1171
+ <span class='kw'>end</span>
1172
+
1173
+ <span class='comment'># :nodoc:
1174
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_versioned_url'>versioned_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1175
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1176
+ <span class='kw'>end</span>
1177
+ <span class='kw'>end</span></pre>
1178
+ </td>
1179
+ </tr>
1180
+ </table>
1181
+ </div>
1182
+
1183
+
1184
+ <span id="client_secret=-instance_method"></span>
1185
+ <div class="method_details ">
1186
+ <h3 class="signature " id="client_secret-instance_method">
1187
+
1188
+ #<strong>client_secret</strong> &#x21d2; <tt>Object</tt>
1189
+
1190
+
1191
+
1192
+
1193
+
1194
+ </h3><div class="docstring">
1195
+ <div class="discussion">
1196
+ <p>Returns The client secret.</p>
1197
+
1198
+
1199
+ </div>
1200
+ </div>
1201
+ <div class="tags">
1202
+
1203
+ <p class="tag_title">Returns:</p>
1204
+ <ul class="return">
1205
+
1206
+ <li>
1207
+
1208
+
1209
+ <span class='type'></span>
1210
+
1211
+
1212
+
1213
+
1214
+ <div class='inline'><p>The client secret.</p>
1215
+ </div>
1216
+
1217
+ </li>
1218
+
1219
+ </ul>
1220
+
1221
+ </div><table class="source_code">
1222
+ <tr>
1223
+ <td>
1224
+ <pre class="lines">
1225
+
1226
+
1227
+ 19
1228
+ 20
1229
+ 21
1230
+ 22
1231
+ 23
1232
+ 24
1233
+ 25
1234
+ 26
1235
+ 27
1236
+ 28
1237
+ 29
1238
+ 30
1239
+ 31
1240
+ 32
1241
+ 33
1242
+ 34
1243
+ 35
1244
+ 36
1245
+ 37
1246
+ 38
1247
+ 39
1248
+ 40
1249
+ 41
1250
+ 42
1251
+ 43
1252
+ 44
1253
+ 45
1254
+ 46
1255
+ 47
1256
+ 48
1257
+ 49
1258
+ 50
1259
+ 51
1260
+ 52
1261
+ 53
1262
+ 54
1263
+ 55
1264
+ 56
1265
+ 57
1266
+ 58
1267
+ 59
1268
+ 60
1269
+ 61
1270
+ 62
1271
+ 63
1272
+ 64
1273
+ 65
1274
+ 66
1275
+ 67
1276
+ 68
1277
+ 69
1278
+ 70
1279
+ 71
1280
+ 72
1281
+ 73
1282
+ 74
1283
+ 75
1284
+ 76
1285
+ 77
1286
+ 78
1287
+ 79
1288
+ 80
1289
+ 81
1290
+ 82
1291
+ 83
1292
+ 84
1293
+ 85
1294
+ 86
1295
+ 87
1296
+ 88
1297
+ 89
1298
+ 90
1299
+ 91
1300
+ 92
1301
+ 93
1302
+ 94
1303
+ 95
1304
+ 96
1305
+ 97
1306
+ 98
1307
+ 99
1308
+ 100
1309
+ 101
1310
+ 102
1311
+ 103
1312
+ 104
1313
+ 105
1314
+ 106
1315
+ 107
1316
+ 108
1317
+ 109
1318
+ 110
1319
+ 111
1320
+ 112
1321
+ 113
1322
+ 114
1323
+ 115
1324
+ 116
1325
+ 117
1326
+ 118
1327
+ 119
1328
+ 120
1329
+ 121
1330
+ 122
1331
+ 123
1332
+ 124
1333
+ 125
1334
+ 126
1335
+ 127
1336
+ 128
1337
+ 129
1338
+ 130
1339
+ 131
1340
+ 132
1341
+ 133
1342
+ 134
1343
+ 135
1344
+ 136
1345
+ 137
1346
+ 138
1347
+ 139
1348
+ 140
1349
+ 141
1350
+ 142
1351
+ 143
1352
+ 144
1353
+ 145</pre>
1354
+ </td>
1355
+ <td>
1356
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 19</span>
1357
+
1358
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span>
1359
+ <span class='comment'># The Pinterest API Root URL.
1360
+ </span> <span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https://api.pinterest.com</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1361
+
1362
+ <span class='comment'># The Pinterest API version.
1363
+ </span> <span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>v1</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1364
+
1365
+ <span class='comment'># The allowed authorization scopes.
1366
+ </span> <span class='const'><span class='object_link'><a href="#SCOPES-constant" title="Pinterest::Client::SCOPES (constant)">SCOPES</a></span></span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_relationships</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_relationships</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1367
+
1368
+ <span class='comment'># The maximum number of results to return by default.
1369
+ </span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='op'>=</span> <span class='int'>50</span>
1370
+
1371
+ <span class='id identifier rubyid_attr_accessor'>attr_accessor</span> <span class='symbol'>:client_id</span><span class='comma'>,</span> <span class='symbol'>:client_secret</span><span class='comma'>,</span> <span class='symbol'>:access_token</span><span class='comma'>,</span> <span class='symbol'>:verbose</span><span class='comma'>,</span> <span class='symbol'>:connection</span>
1372
+
1373
+ <span class='comment'># Creates a new client.
1374
+ </span> <span class='comment'>#
1375
+ </span> <span class='comment'># @param access_token [String] The access token.
1376
+ </span> <span class='comment'># @param client_id [String] The client id.
1377
+ </span> <span class='comment'># @param client_secret [String] The client secret.
1378
+ </span> <span class='comment'># @param verbose [Boolean] If log requests.
1379
+ </span> <span class='comment'># @param connection_setup [Proc] Additional code to execute on the connection object.
1380
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>access_token:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_secret:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>verbose:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1381
+ <span class='ivar'>@client_id</span> <span class='op'>=</span> <span class='id identifier rubyid_client_id'>client_id</span>
1382
+ <span class='ivar'>@client_secret</span> <span class='op'>=</span> <span class='id identifier rubyid_client_secret'>client_secret</span>
1383
+ <span class='ivar'>@access_token</span> <span class='op'>=</span> <span class='id identifier rubyid_access_token'>access_token</span>
1384
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_verbose'>verbose</span>
1385
+
1386
+ <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1387
+ <span class='kw'>end</span>
1388
+
1389
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Authentication</a></span></span>
1390
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Users</a></span></span>
1391
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Pins</a></span></span>
1392
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Boards</a></span></span>
1393
+
1394
+ <span class='id identifier rubyid_private'>private</span>
1395
+
1396
+ <span class='comment'># :nodoc:
1397
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_setup'>setup</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1398
+ <span class='id identifier rubyid_setup'>setup</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1399
+ <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
1400
+ <span class='kw'>end</span>
1401
+
1402
+ <span class='comment'># :nodoc:
1403
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_array'>ensure_array</span><span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span><span class='comma'>,</span> <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1404
+ <span class='id identifier rubyid_subject'>subject</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span> <span class='op'>?</span> <span class='lbracket'>[</span><span class='id identifier rubyid_subject'>subject</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_default'>default</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_flatten'>flatten</span> <span class='kw'>unless</span> <span class='id identifier rubyid_subject'>subject</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Array</span><span class='rparen'>)</span>
1405
+ <span class='id identifier rubyid_subject'>subject</span>
1406
+ <span class='kw'>end</span>
1407
+
1408
+ <span class='comment'># :nodoc:
1409
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1410
+ <span class='id identifier rubyid_valid'>valid</span> <span class='op'>=</span> <span class='id identifier rubyid_param'>param</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_param'>param</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1411
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_valid'>valid</span>
1412
+ <span class='id identifier rubyid_valid'>valid</span>
1413
+ <span class='kw'>end</span>
1414
+
1415
+ <span class='comment'># :nodoc:
1416
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span>
1417
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:multipart</span><span class='rparen'>)</span>
1418
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:url_encoded</span><span class='rparen'>)</span>
1419
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:safe_oj</span><span class='rparen'>)</span>
1420
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:logger</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_verbose'>verbose</span>
1421
+
1422
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_use'>use</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../FaradayMiddleware.html" title="FaradayMiddleware (module)">FaradayMiddleware</a></span></span><span class='op'>::</span><span class='const'>FollowRedirects</span><span class='rparen'>)</span>
1423
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_default_adapter'>default_adapter</span><span class='rparen'>)</span>
1424
+ <span class='kw'>end</span>
1425
+
1426
+ <span class='comment'># :nodoc:
1427
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_cleanup_params'>cleanup_params</span><span class='lparen'>(</span><span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
1428
+ <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='op'>!</span><span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1429
+ <span class='kw'>end</span>
1430
+
1431
+ <span class='comment'># :nodoc:
1432
+ </span> <span class='comment'># rubocop:disable Metrics/ParameterLists
1433
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_network_request'>perform_network_request</span><span class='lparen'>(</span><span class='label'>method:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GET</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>url:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>body:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>authenticated:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>pagination:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_additional'>additional</span><span class='rparen'>)</span>
1434
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_request'>request</span><span class='op'>|</span>
1435
+ <span class='comment'># Setup URL and headers
1436
+ </span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1437
+
1438
+ <span class='comment'># Handle pagination
1439
+ </span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_pagination'>pagination</span>
1440
+
1441
+ <span class='comment'># Add the body
1442
+ </span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_body'>body</span>
1443
+
1444
+ <span class='comment'># Run user callback
1445
+ </span> <span class='kw'>yield</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_additional'>additional</span>
1446
+ <span class='kw'>end</span>
1447
+
1448
+ <span class='comment'># Perform the call
1449
+ </span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_create'><span class='object_link'><a href="Errors.html#create-class_method" title="Pinterest::Errors.create (method)">create</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
1450
+ <span class='id identifier rubyid_response'>response</span>
1451
+ <span class='kw'>rescue</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>ParsingError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
1452
+ <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1453
+ <span class='kw'>end</span>
1454
+
1455
+ <span class='comment'># :nodoc:
1456
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1457
+ <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span>
1458
+ <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>&lt;h1&gt;(.+?)&lt;\/h1&gt;</span><span class='regexp_end'>/mi</span></span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
1459
+
1460
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_class_for_code'><span class='object_link'><a href="Errors.html#class_for_code-class_method" title="Pinterest::Errors.class_for_code (method)">class_for_code</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span> <span class='op'>?</span> <span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid response from the server.</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span>
1461
+ <span class='kw'>end</span>
1462
+
1463
+ <span class='comment'># :nodoc:
1464
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1465
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
1466
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='kw'>if</span> <span class='id identifier rubyid_limit'>limit</span> <span class='op'>&lt;</span> <span class='int'>1</span>
1467
+
1468
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span>
1469
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
1470
+ <span class='kw'>end</span>
1471
+
1472
+ <span class='comment'># :nodoc:
1473
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1474
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1475
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Authorization</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Bearer </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_access_token'>access_token</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_authenticated'>authenticated</span>
1476
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1477
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span>
1478
+ <span class='kw'>end</span>
1479
+
1480
+ <span class='comment'># :nodoc:
1481
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_versioned_url'>versioned_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1482
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1483
+ <span class='kw'>end</span>
1484
+ <span class='kw'>end</span></pre>
1485
+ </td>
1486
+ </tr>
1487
+ </table>
1488
+ </div>
1489
+
1490
+
1491
+ <span id="connection=-instance_method"></span>
1492
+ <div class="method_details ">
1493
+ <h3 class="signature " id="connection-instance_method">
1494
+
1495
+ #<strong>connection</strong> &#x21d2; <tt>Object</tt>
1496
+
1497
+
1498
+
1499
+
1500
+
1501
+ </h3><div class="docstring">
1502
+ <div class="discussion">
1503
+ <p>Returns the value of attribute connection</p>
1504
+
1505
+
1506
+ </div>
1507
+ </div>
1508
+ <div class="tags">
1509
+
1510
+
1511
+ </div><table class="source_code">
1512
+ <tr>
1513
+ <td>
1514
+ <pre class="lines">
1515
+
1516
+
1517
+ 32
1518
+ 33
1519
+ 34</pre>
1520
+ </td>
1521
+ <td>
1522
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 32</span>
1523
+
1524
+ <span class='kw'>def</span> <span class='id identifier rubyid_connection'>connection</span>
1525
+ <span class='ivar'>@connection</span>
1526
+ <span class='kw'>end</span></pre>
1527
+ </td>
1528
+ </tr>
1529
+ </table>
1530
+ </div>
1531
+
1532
+
1533
+ <span id=""></span>
1534
+ <div class="method_details ">
1535
+ <h3 class="signature " id="connection_setup-instance_method">
1536
+
1537
+ #<strong>connection_setup</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
1538
+
1539
+
1540
+
1541
+
1542
+
1543
+ </h3><div class="docstring">
1544
+ <div class="discussion">
1545
+ <p>Returns Additional code to execute on the connection object.</p>
1546
+
1547
+
1548
+ </div>
1549
+ </div>
1550
+ <div class="tags">
1551
+
1552
+ <p class="tag_title">Returns:</p>
1553
+ <ul class="return">
1554
+
1555
+ <li>
1556
+
1557
+
1558
+ <span class='type'></span>
1559
+
1560
+
1561
+
1562
+
1563
+ <div class='inline'><p>Additional code to execute on the connection object.</p>
1564
+ </div>
1565
+
1566
+ </li>
1567
+
1568
+ </ul>
1569
+
1570
+ </div><table class="source_code">
1571
+ <tr>
1572
+ <td>
1573
+ <pre class="lines">
1574
+
1575
+
1576
+ 19
1577
+ 20
1578
+ 21
1579
+ 22
1580
+ 23
1581
+ 24
1582
+ 25
1583
+ 26
1584
+ 27
1585
+ 28
1586
+ 29
1587
+ 30
1588
+ 31
1589
+ 32
1590
+ 33
1591
+ 34
1592
+ 35
1593
+ 36
1594
+ 37
1595
+ 38
1596
+ 39
1597
+ 40
1598
+ 41
1599
+ 42
1600
+ 43
1601
+ 44
1602
+ 45
1603
+ 46
1604
+ 47
1605
+ 48
1606
+ 49
1607
+ 50
1608
+ 51
1609
+ 52
1610
+ 53
1611
+ 54
1612
+ 55
1613
+ 56
1614
+ 57
1615
+ 58
1616
+ 59
1617
+ 60
1618
+ 61
1619
+ 62
1620
+ 63
1621
+ 64
1622
+ 65
1623
+ 66
1624
+ 67
1625
+ 68
1626
+ 69
1627
+ 70
1628
+ 71
1629
+ 72
1630
+ 73
1631
+ 74
1632
+ 75
1633
+ 76
1634
+ 77
1635
+ 78
1636
+ 79
1637
+ 80
1638
+ 81
1639
+ 82
1640
+ 83
1641
+ 84
1642
+ 85
1643
+ 86
1644
+ 87
1645
+ 88
1646
+ 89
1647
+ 90
1648
+ 91
1649
+ 92
1650
+ 93
1651
+ 94
1652
+ 95
1653
+ 96
1654
+ 97
1655
+ 98
1656
+ 99
1657
+ 100
1658
+ 101
1659
+ 102
1660
+ 103
1661
+ 104
1662
+ 105
1663
+ 106
1664
+ 107
1665
+ 108
1666
+ 109
1667
+ 110
1668
+ 111
1669
+ 112
1670
+ 113
1671
+ 114
1672
+ 115
1673
+ 116
1674
+ 117
1675
+ 118
1676
+ 119
1677
+ 120
1678
+ 121
1679
+ 122
1680
+ 123
1681
+ 124
1682
+ 125
1683
+ 126
1684
+ 127
1685
+ 128
1686
+ 129
1687
+ 130
1688
+ 131
1689
+ 132
1690
+ 133
1691
+ 134
1692
+ 135
1693
+ 136
1694
+ 137
1695
+ 138
1696
+ 139
1697
+ 140
1698
+ 141
1699
+ 142
1700
+ 143
1701
+ 144
1702
+ 145</pre>
1703
+ </td>
1704
+ <td>
1705
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 19</span>
1706
+
1707
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span>
1708
+ <span class='comment'># The Pinterest API Root URL.
1709
+ </span> <span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https://api.pinterest.com</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1710
+
1711
+ <span class='comment'># The Pinterest API version.
1712
+ </span> <span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>v1</span><span class='tstring_end'>&quot;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1713
+
1714
+ <span class='comment'># The allowed authorization scopes.
1715
+ </span> <span class='const'><span class='object_link'><a href="#SCOPES-constant" title="Pinterest::Client::SCOPES (constant)">SCOPES</a></span></span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_public</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>read_relationships</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>write_relationships</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1716
+
1717
+ <span class='comment'># The maximum number of results to return by default.
1718
+ </span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='op'>=</span> <span class='int'>50</span>
1719
+
1720
+ <span class='id identifier rubyid_attr_accessor'>attr_accessor</span> <span class='symbol'>:client_id</span><span class='comma'>,</span> <span class='symbol'>:client_secret</span><span class='comma'>,</span> <span class='symbol'>:access_token</span><span class='comma'>,</span> <span class='symbol'>:verbose</span><span class='comma'>,</span> <span class='symbol'>:connection</span>
1721
+
1722
+ <span class='comment'># Creates a new client.
1723
+ </span> <span class='comment'>#
1724
+ </span> <span class='comment'># @param access_token [String] The access token.
1725
+ </span> <span class='comment'># @param client_id [String] The client id.
1726
+ </span> <span class='comment'># @param client_secret [String] The client secret.
1727
+ </span> <span class='comment'># @param verbose [Boolean] If log requests.
1728
+ </span> <span class='comment'># @param connection_setup [Proc] Additional code to execute on the connection object.
1729
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>access_token:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>client_secret:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>verbose:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1730
+ <span class='ivar'>@client_id</span> <span class='op'>=</span> <span class='id identifier rubyid_client_id'>client_id</span>
1731
+ <span class='ivar'>@client_secret</span> <span class='op'>=</span> <span class='id identifier rubyid_client_secret'>client_secret</span>
1732
+ <span class='ivar'>@access_token</span> <span class='op'>=</span> <span class='id identifier rubyid_access_token'>access_token</span>
1733
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_verbose'>verbose</span>
1734
+
1735
+ <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_connection_setup'>connection_setup</span><span class='rparen'>)</span>
1736
+ <span class='kw'>end</span>
1737
+
1738
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Authentication.html" title="Pinterest::Endpoints::Authentication (module)">Authentication</a></span></span>
1739
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Users.html" title="Pinterest::Endpoints::Users (module)">Users</a></span></span>
1740
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Pins.html" title="Pinterest::Endpoints::Pins (module)">Pins</a></span></span>
1741
+ <span class='id identifier rubyid_include'>include</span> <span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints.html" title="Pinterest::Endpoints (module)">Endpoints</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Endpoints/Boards.html" title="Pinterest::Endpoints::Boards (module)">Boards</a></span></span>
1742
+
1743
+ <span class='id identifier rubyid_private'>private</span>
1744
+
1745
+ <span class='comment'># :nodoc:
1746
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_connection'>ensure_connection</span><span class='lparen'>(</span><span class='id identifier rubyid_setup'>setup</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1747
+ <span class='id identifier rubyid_setup'>setup</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1748
+ <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_URL-constant" title="Pinterest::Client::API_URL (constant)">API_URL</a></span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
1749
+ <span class='kw'>end</span>
1750
+
1751
+ <span class='comment'># :nodoc:
1752
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_array'>ensure_array</span><span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span><span class='comma'>,</span> <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1753
+ <span class='id identifier rubyid_subject'>subject</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_subject'>subject</span> <span class='op'>?</span> <span class='lbracket'>[</span><span class='id identifier rubyid_subject'>subject</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_default'>default</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_flatten'>flatten</span> <span class='kw'>unless</span> <span class='id identifier rubyid_subject'>subject</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Array</span><span class='rparen'>)</span>
1754
+ <span class='id identifier rubyid_subject'>subject</span>
1755
+ <span class='kw'>end</span>
1756
+
1757
+ <span class='comment'># :nodoc:
1758
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1759
+ <span class='id identifier rubyid_valid'>valid</span> <span class='op'>=</span> <span class='id identifier rubyid_param'>param</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_param'>param</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1760
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='id identifier rubyid_error'>error</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_error'>error</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_valid'>valid</span>
1761
+ <span class='id identifier rubyid_valid'>valid</span>
1762
+ <span class='kw'>end</span>
1763
+
1764
+ <span class='comment'># :nodoc:
1765
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_default_connection_setup'>default_connection_setup</span><span class='lparen'>(</span><span class='id identifier rubyid_c'>c</span><span class='rparen'>)</span>
1766
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:multipart</span><span class='rparen'>)</span>
1767
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:url_encoded</span><span class='rparen'>)</span>
1768
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:safe_oj</span><span class='rparen'>)</span>
1769
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='lparen'>(</span><span class='symbol'>:logger</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_verbose'>verbose</span>
1770
+
1771
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_use'>use</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../FaradayMiddleware.html" title="FaradayMiddleware (module)">FaradayMiddleware</a></span></span><span class='op'>::</span><span class='const'>FollowRedirects</span><span class='rparen'>)</span>
1772
+ <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_default_adapter'>default_adapter</span><span class='rparen'>)</span>
1773
+ <span class='kw'>end</span>
1774
+
1775
+ <span class='comment'># :nodoc:
1776
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_cleanup_params'>cleanup_params</span><span class='lparen'>(</span><span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
1777
+ <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='op'>!</span><span class='id identifier rubyid_ensure_param'>ensure_param</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
1778
+ <span class='kw'>end</span>
1779
+
1780
+ <span class='comment'># :nodoc:
1781
+ </span> <span class='comment'># rubocop:disable Metrics/ParameterLists
1782
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_perform_network_request'>perform_network_request</span><span class='lparen'>(</span><span class='label'>method:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GET</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>url:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>body:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>authenticated:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>pagination:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_additional'>additional</span><span class='rparen'>)</span>
1783
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_request'>request</span><span class='op'>|</span>
1784
+ <span class='comment'># Setup URL and headers
1785
+ </span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1786
+
1787
+ <span class='comment'># Handle pagination
1788
+ </span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_pagination'>pagination</span>
1789
+
1790
+ <span class='comment'># Add the body
1791
+ </span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_body'>body</span>
1792
+
1793
+ <span class='comment'># Run user callback
1794
+ </span> <span class='kw'>yield</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_additional'>additional</span>
1795
+ <span class='kw'>end</span>
1796
+
1797
+ <span class='comment'># Perform the call
1798
+ </span> <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_create'><span class='object_link'><a href="Errors.html#create-class_method" title="Pinterest::Errors.create (method)">create</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
1799
+ <span class='id identifier rubyid_response'>response</span>
1800
+ <span class='kw'>rescue</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>ParsingError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
1801
+ <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1802
+ <span class='kw'>end</span>
1803
+
1804
+ <span class='comment'># :nodoc:
1805
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_network_error'>handle_network_error</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1806
+ <span class='id identifier rubyid_code'>code</span> <span class='op'>=</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span>
1807
+ <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>&lt;h1&gt;(.+?)&lt;\/h1&gt;</span><span class='regexp_end'>/mi</span></span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
1808
+
1809
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Errors.html" title="Pinterest::Errors (module)">Errors</a></span></span><span class='period'>.</span><span class='id identifier rubyid_class_for_code'><span class='object_link'><a href="Errors.html#class_for_code-class_method" title="Pinterest::Errors.class_for_code (method)">class_for_code</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span> <span class='op'>?</span> <span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid response from the server.</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span><span class='rparen'>)</span>
1810
+ <span class='kw'>end</span>
1811
+
1812
+ <span class='comment'># :nodoc:
1813
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_handle_pagination'>handle_pagination</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1814
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
1815
+ <span class='id identifier rubyid_limit'>limit</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#DEFAULT_LIMIT-constant" title="Pinterest::Client::DEFAULT_LIMIT (constant)">DEFAULT_LIMIT</a></span></span> <span class='kw'>if</span> <span class='id identifier rubyid_limit'>limit</span> <span class='op'>&lt;</span> <span class='int'>1</span>
1816
+
1817
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='symbol'>:cursor</span><span class='rbracket'>]</span>
1818
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='lbracket'>[</span><span class='symbol'>:limit</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
1819
+ <span class='kw'>end</span>
1820
+
1821
+ <span class='comment'># :nodoc:
1822
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_setup_headers'>setup_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='comma'>,</span> <span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_authenticated'>authenticated</span><span class='rparen'>)</span>
1823
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1824
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Authorization</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Bearer </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_access_token'>access_token</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_authenticated'>authenticated</span>
1825
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1826
+ <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span>
1827
+ <span class='kw'>end</span>
1828
+
1829
+ <span class='comment'># :nodoc:
1830
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_versioned_url'>versioned_url</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1831
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="Pinterest::Client (class)">Client</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#API_VERSION-constant" title="Pinterest::Client::API_VERSION (constant)">API_VERSION</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1832
+ <span class='kw'>end</span>
1833
+ <span class='kw'>end</span></pre>
1834
+ </td>
1835
+ </tr>
1836
+ </table>
1837
+ </div>
1838
+
1839
+
1840
+ <span id="verbose=-instance_method"></span>
1841
+ <div class="method_details ">
1842
+ <h3 class="signature " id="verbose-instance_method">
1843
+
1844
+ #<strong>verbose</strong> &#x21d2; <tt>Object</tt>
1845
+
1846
+
1847
+
1848
+
1849
+
1850
+ </h3><div class="docstring">
1851
+ <div class="discussion">
1852
+ <p>Returns the value of attribute verbose</p>
1853
+
1854
+
1855
+ </div>
1856
+ </div>
1857
+ <div class="tags">
1858
+
1859
+
1860
+ </div><table class="source_code">
1861
+ <tr>
1862
+ <td>
1863
+ <pre class="lines">
1864
+
1865
+
1866
+ 32
1867
+ 33
1868
+ 34</pre>
1869
+ </td>
1870
+ <td>
1871
+ <pre class="code"><span class="info file"># File 'lib/pinterest/client.rb', line 32</span>
1872
+
1873
+ <span class='kw'>def</span> <span class='id identifier rubyid_verbose'>verbose</span>
1874
+ <span class='ivar'>@verbose</span>
1875
+ <span class='kw'>end</span></pre>
1876
+ </td>
1877
+ </tr>
1878
+ </table>
1879
+ </div>
1880
+
1881
+ </div>
1882
+
1883
+
1884
+ </div>
1885
+
1886
+ <div id="footer">
1887
+ Generated on Thu Jan 12 16:28:12 2017 by
1888
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1889
+ 0.9.7 (ruby-2.3.0).
1890
+ </div>
1891
+
1892
+ </div>
1893
+ </body>
1894
+ </html>