pinterest-ruby 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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>