square.rb 26.0.0.20221214 → 26.2.0.20230315

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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/lib/square/api/apple_pay_api.rb +14 -30
  4. data/lib/square/api/bank_accounts_api.rb +40 -90
  5. data/lib/square/api/base_api.rb +42 -42
  6. data/lib/square/api/booking_custom_attributes_api.rb +164 -329
  7. data/lib/square/api/bookings_api.rb +135 -260
  8. data/lib/square/api/cards_api.rb +56 -118
  9. data/lib/square/api/cash_drawers_api.rb +47 -103
  10. data/lib/square/api/catalog_api.rb +197 -423
  11. data/lib/square/api/checkout_api.rb +85 -175
  12. data/lib/square/api/customer_custom_attributes_api.rb +150 -303
  13. data/lib/square/api/customer_groups_api.rb +69 -145
  14. data/lib/square/api/customer_segments_api.rb +26 -61
  15. data/lib/square/api/customers_api.rb +147 -294
  16. data/lib/square/api/devices_api.rb +42 -89
  17. data/lib/square/api/disputes_api.rb +130 -288
  18. data/lib/square/api/employees_api.rb +28 -63
  19. data/lib/square/api/gift_card_activities_api.rb +33 -65
  20. data/lib/square/api/gift_cards_api.rb +103 -202
  21. data/lib/square/api/inventory_api.rb +179 -366
  22. data/lib/square/api/invoices_api.rb +118 -237
  23. data/lib/square/api/labor_api.rb +223 -459
  24. data/lib/square/api/location_custom_attributes_api.rb +419 -0
  25. data/lib/square/api/locations_api.rb +54 -112
  26. data/lib/square/api/loyalty_api.rb +259 -512
  27. data/lib/square/api/merchants_api.rb +25 -60
  28. data/lib/square/api/mobile_authorization_api.rb +14 -30
  29. data/lib/square/api/o_auth_api.rb +54 -109
  30. data/lib/square/api/order_custom_attributes_api.rb +168 -333
  31. data/lib/square/api/orders_api.rb +115 -222
  32. data/lib/square/api/payments_api.rb +106 -208
  33. data/lib/square/api/payouts_api.rb +47 -100
  34. data/lib/square/api/refunds_api.rb +46 -93
  35. data/lib/square/api/sites_api.rb +11 -28
  36. data/lib/square/api/snippets_api.rb +42 -90
  37. data/lib/square/api/subscriptions_api.rb +150 -299
  38. data/lib/square/api/team_api.rb +114 -224
  39. data/lib/square/api/terminal_api.rb +162 -328
  40. data/lib/square/api/transactions_api.rb +62 -126
  41. data/lib/square/api/v1_transactions_api.rb +155 -296
  42. data/lib/square/api/vendors_api.rb +99 -192
  43. data/lib/square/api/webhook_subscriptions_api.rb +115 -235
  44. data/lib/square/api_helper.rb +1 -437
  45. data/lib/square/client.rb +82 -46
  46. data/lib/square/configuration.rb +28 -53
  47. data/lib/square/exceptions/api_exception.rb +1 -11
  48. data/lib/square/http/api_response.rb +13 -19
  49. data/lib/square/http/auth/o_auth2.rb +14 -7
  50. data/lib/square/http/http_call_back.rb +1 -15
  51. data/lib/square/http/http_method_enum.rb +1 -4
  52. data/lib/square/http/http_request.rb +1 -45
  53. data/lib/square/http/http_response.rb +1 -20
  54. data/lib/square/utilities/date_time_helper.rb +1 -146
  55. data/lib/square/utilities/file_wrapper.rb +5 -5
  56. data/lib/square.rb +7 -6
  57. data/spec/user_journey_spec.rb +2 -2
  58. data/test/api/api_test_base.rb +13 -5
  59. data/test/api/test_catalog_api.rb +5 -4
  60. data/test/api/test_customers_api.rb +3 -2
  61. data/test/api/test_employees_api.rb +4 -3
  62. data/test/api/test_labor_api.rb +6 -5
  63. data/test/api/test_locations_api.rb +3 -2
  64. data/test/api/test_merchants_api.rb +4 -3
  65. data/test/api/test_payments_api.rb +4 -3
  66. data/test/api/test_refunds_api.rb +4 -3
  67. metadata +12 -111
  68. data/lib/square/exceptions/validation_exception.rb +0 -13
  69. data/lib/square/http/faraday_client.rb +0 -93
  70. data/lib/square/http/http_client.rb +0 -118
  71. data/test/test_helper.rb +0 -89
@@ -1,10 +1,6 @@
1
1
  module Square
2
2
  # CustomersApi
3
3
  class CustomersApi < BaseApi
4
- def initialize(config, http_call_back: nil)
5
- super(config, http_call_back: http_call_back)
6
- end
7
-
8
4
  # Lists customer profiles associated with a Square account.
9
5
  # Under normal operating conditions, newly created or updated customer
10
6
  # profiles become available
@@ -35,37 +31,21 @@ module Square
35
31
  limit: nil,
36
32
  sort_field: nil,
37
33
  sort_order: nil)
38
- # Prepare query url.
39
- _query_builder = config.get_base_uri
40
- _query_builder << '/v2/customers'
41
- _query_builder = APIHelper.append_url_with_query_parameters(
42
- _query_builder,
43
- 'cursor' => cursor,
44
- 'limit' => limit,
45
- 'sort_field' => sort_field,
46
- 'sort_order' => sort_order
47
- )
48
- _query_url = APIHelper.clean_url _query_builder
49
-
50
- # Prepare headers.
51
- _headers = {
52
- 'accept' => 'application/json'
53
- }
54
-
55
- # Prepare and execute HttpRequest.
56
- _request = config.http_client.get(
57
- _query_url,
58
- headers: _headers
59
- )
60
- OAuth2.apply(config, _request)
61
- _response = execute_request(_request)
62
-
63
- # Return appropriate response type.
64
- decoded = APIHelper.json_deserialize(_response.raw_body)
65
- _errors = APIHelper.map_response(decoded, ['errors'])
66
- ApiResponse.new(
67
- _response, data: decoded, errors: _errors
68
- )
34
+ new_api_call_builder
35
+ .request(new_request_builder(HttpMethodEnum::GET,
36
+ '/v2/customers',
37
+ 'default')
38
+ .query_param(new_parameter(cursor, key: 'cursor'))
39
+ .query_param(new_parameter(limit, key: 'limit'))
40
+ .query_param(new_parameter(sort_field, key: 'sort_field'))
41
+ .query_param(new_parameter(sort_order, key: 'sort_order'))
42
+ .header_param(new_parameter('application/json', key: 'accept'))
43
+ .auth(Single.new('global')))
44
+ .response(new_response_handler
45
+ .deserializer(APIHelper.method(:json_deserialize))
46
+ .is_api_response(true)
47
+ .convertor(ApiResponse.method(:create)))
48
+ .execute
69
49
  end
70
50
 
71
51
  # Creates a new customer for a business.
@@ -82,32 +62,20 @@ module Square
82
62
  # object definition for field details.
83
63
  # @return [CreateCustomerResponse Hash] response from the API call
84
64
  def create_customer(body:)
85
- # Prepare query url.
86
- _query_builder = config.get_base_uri
87
- _query_builder << '/v2/customers'
88
- _query_url = APIHelper.clean_url _query_builder
89
-
90
- # Prepare headers.
91
- _headers = {
92
- 'accept' => 'application/json',
93
- 'Content-Type' => 'application/json'
94
- }
95
-
96
- # Prepare and execute HttpRequest.
97
- _request = config.http_client.post(
98
- _query_url,
99
- headers: _headers,
100
- parameters: body.to_json
101
- )
102
- OAuth2.apply(config, _request)
103
- _response = execute_request(_request)
104
-
105
- # Return appropriate response type.
106
- decoded = APIHelper.json_deserialize(_response.raw_body)
107
- _errors = APIHelper.map_response(decoded, ['errors'])
108
- ApiResponse.new(
109
- _response, data: decoded, errors: _errors
110
- )
65
+ new_api_call_builder
66
+ .request(new_request_builder(HttpMethodEnum::POST,
67
+ '/v2/customers',
68
+ 'default')
69
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
70
+ .body_param(new_parameter(body))
71
+ .header_param(new_parameter('application/json', key: 'accept'))
72
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
73
+ .auth(Single.new('global')))
74
+ .response(new_response_handler
75
+ .deserializer(APIHelper.method(:json_deserialize))
76
+ .is_api_response(true)
77
+ .convertor(ApiResponse.method(:create)))
78
+ .execute
111
79
  end
112
80
 
113
81
  # Searches the customer profiles associated with a Square account using one
@@ -126,32 +94,20 @@ module Square
126
94
  # object definition for field details.
127
95
  # @return [SearchCustomersResponse Hash] response from the API call
128
96
  def search_customers(body:)
129
- # Prepare query url.
130
- _query_builder = config.get_base_uri
131
- _query_builder << '/v2/customers/search'
132
- _query_url = APIHelper.clean_url _query_builder
133
-
134
- # Prepare headers.
135
- _headers = {
136
- 'accept' => 'application/json',
137
- 'Content-Type' => 'application/json'
138
- }
139
-
140
- # Prepare and execute HttpRequest.
141
- _request = config.http_client.post(
142
- _query_url,
143
- headers: _headers,
144
- parameters: body.to_json
145
- )
146
- OAuth2.apply(config, _request)
147
- _response = execute_request(_request)
148
-
149
- # Return appropriate response type.
150
- decoded = APIHelper.json_deserialize(_response.raw_body)
151
- _errors = APIHelper.map_response(decoded, ['errors'])
152
- ApiResponse.new(
153
- _response, data: decoded, errors: _errors
154
- )
97
+ new_api_call_builder
98
+ .request(new_request_builder(HttpMethodEnum::POST,
99
+ '/v2/customers/search',
100
+ 'default')
101
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
102
+ .body_param(new_parameter(body))
103
+ .header_param(new_parameter('application/json', key: 'accept'))
104
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
105
+ .auth(Single.new('global')))
106
+ .response(new_response_handler
107
+ .deserializer(APIHelper.method(:json_deserialize))
108
+ .is_api_response(true)
109
+ .convertor(ApiResponse.method(:create)))
110
+ .execute
155
111
  end
156
112
 
157
113
  # Deletes a customer profile from a business. This operation also unlinks
@@ -177,38 +133,20 @@ module Square
177
133
  # @return [DeleteCustomerResponse Hash] response from the API call
178
134
  def delete_customer(customer_id:,
179
135
  version: nil)
180
- # Prepare query url.
181
- _query_builder = config.get_base_uri
182
- _query_builder << '/v2/customers/{customer_id}'
183
- _query_builder = APIHelper.append_url_with_template_parameters(
184
- _query_builder,
185
- 'customer_id' => { 'value' => customer_id, 'encode' => true }
186
- )
187
- _query_builder = APIHelper.append_url_with_query_parameters(
188
- _query_builder,
189
- 'version' => version
190
- )
191
- _query_url = APIHelper.clean_url _query_builder
192
-
193
- # Prepare headers.
194
- _headers = {
195
- 'accept' => 'application/json'
196
- }
197
-
198
- # Prepare and execute HttpRequest.
199
- _request = config.http_client.delete(
200
- _query_url,
201
- headers: _headers
202
- )
203
- OAuth2.apply(config, _request)
204
- _response = execute_request(_request)
205
-
206
- # Return appropriate response type.
207
- decoded = APIHelper.json_deserialize(_response.raw_body)
208
- _errors = APIHelper.map_response(decoded, ['errors'])
209
- ApiResponse.new(
210
- _response, data: decoded, errors: _errors
211
- )
136
+ new_api_call_builder
137
+ .request(new_request_builder(HttpMethodEnum::DELETE,
138
+ '/v2/customers/{customer_id}',
139
+ 'default')
140
+ .template_param(new_parameter(customer_id, key: 'customer_id')
141
+ .should_encode(true))
142
+ .query_param(new_parameter(version, key: 'version'))
143
+ .header_param(new_parameter('application/json', key: 'accept'))
144
+ .auth(Single.new('global')))
145
+ .response(new_response_handler
146
+ .deserializer(APIHelper.method(:json_deserialize))
147
+ .is_api_response(true)
148
+ .convertor(ApiResponse.method(:create)))
149
+ .execute
212
150
  end
213
151
 
214
152
  # Returns details for a single customer.
@@ -216,34 +154,19 @@ module Square
216
154
  # retrieve.
217
155
  # @return [RetrieveCustomerResponse Hash] response from the API call
218
156
  def retrieve_customer(customer_id:)
219
- # Prepare query url.
220
- _query_builder = config.get_base_uri
221
- _query_builder << '/v2/customers/{customer_id}'
222
- _query_builder = APIHelper.append_url_with_template_parameters(
223
- _query_builder,
224
- 'customer_id' => { 'value' => customer_id, 'encode' => true }
225
- )
226
- _query_url = APIHelper.clean_url _query_builder
227
-
228
- # Prepare headers.
229
- _headers = {
230
- 'accept' => 'application/json'
231
- }
232
-
233
- # Prepare and execute HttpRequest.
234
- _request = config.http_client.get(
235
- _query_url,
236
- headers: _headers
237
- )
238
- OAuth2.apply(config, _request)
239
- _response = execute_request(_request)
240
-
241
- # Return appropriate response type.
242
- decoded = APIHelper.json_deserialize(_response.raw_body)
243
- _errors = APIHelper.map_response(decoded, ['errors'])
244
- ApiResponse.new(
245
- _response, data: decoded, errors: _errors
246
- )
157
+ new_api_call_builder
158
+ .request(new_request_builder(HttpMethodEnum::GET,
159
+ '/v2/customers/{customer_id}',
160
+ 'default')
161
+ .template_param(new_parameter(customer_id, key: 'customer_id')
162
+ .should_encode(true))
163
+ .header_param(new_parameter('application/json', key: 'accept'))
164
+ .auth(Single.new('global')))
165
+ .response(new_response_handler
166
+ .deserializer(APIHelper.method(:json_deserialize))
167
+ .is_api_response(true)
168
+ .convertor(ApiResponse.method(:create)))
169
+ .execute
247
170
  end
248
171
 
249
172
  # Updates a customer profile. This endpoint supports sparse updates, so only
@@ -269,36 +192,22 @@ module Square
269
192
  # @return [UpdateCustomerResponse Hash] response from the API call
270
193
  def update_customer(customer_id:,
271
194
  body:)
272
- # Prepare query url.
273
- _query_builder = config.get_base_uri
274
- _query_builder << '/v2/customers/{customer_id}'
275
- _query_builder = APIHelper.append_url_with_template_parameters(
276
- _query_builder,
277
- 'customer_id' => { 'value' => customer_id, 'encode' => true }
278
- )
279
- _query_url = APIHelper.clean_url _query_builder
280
-
281
- # Prepare headers.
282
- _headers = {
283
- 'accept' => 'application/json',
284
- 'Content-Type' => 'application/json'
285
- }
286
-
287
- # Prepare and execute HttpRequest.
288
- _request = config.http_client.put(
289
- _query_url,
290
- headers: _headers,
291
- parameters: body.to_json
292
- )
293
- OAuth2.apply(config, _request)
294
- _response = execute_request(_request)
295
-
296
- # Return appropriate response type.
297
- decoded = APIHelper.json_deserialize(_response.raw_body)
298
- _errors = APIHelper.map_response(decoded, ['errors'])
299
- ApiResponse.new(
300
- _response, data: decoded, errors: _errors
301
- )
195
+ new_api_call_builder
196
+ .request(new_request_builder(HttpMethodEnum::PUT,
197
+ '/v2/customers/{customer_id}',
198
+ 'default')
199
+ .template_param(new_parameter(customer_id, key: 'customer_id')
200
+ .should_encode(true))
201
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
202
+ .body_param(new_parameter(body))
203
+ .header_param(new_parameter('application/json', key: 'accept'))
204
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
205
+ .auth(Single.new('global')))
206
+ .response(new_response_handler
207
+ .deserializer(APIHelper.method(:json_deserialize))
208
+ .is_api_response(true)
209
+ .convertor(ApiResponse.method(:create)))
210
+ .execute
302
211
  end
303
212
 
304
213
  # Adds a card on file to an existing customer.
@@ -315,36 +224,22 @@ module Square
315
224
  def create_customer_card(customer_id:,
316
225
  body:)
317
226
  warn 'Endpoint create_customer_card in CustomersApi is deprecated'
318
- # Prepare query url.
319
- _query_builder = config.get_base_uri
320
- _query_builder << '/v2/customers/{customer_id}/cards'
321
- _query_builder = APIHelper.append_url_with_template_parameters(
322
- _query_builder,
323
- 'customer_id' => { 'value' => customer_id, 'encode' => true }
324
- )
325
- _query_url = APIHelper.clean_url _query_builder
326
-
327
- # Prepare headers.
328
- _headers = {
329
- 'accept' => 'application/json',
330
- 'Content-Type' => 'application/json'
331
- }
332
-
333
- # Prepare and execute HttpRequest.
334
- _request = config.http_client.post(
335
- _query_url,
336
- headers: _headers,
337
- parameters: body.to_json
338
- )
339
- OAuth2.apply(config, _request)
340
- _response = execute_request(_request)
341
-
342
- # Return appropriate response type.
343
- decoded = APIHelper.json_deserialize(_response.raw_body)
344
- _errors = APIHelper.map_response(decoded, ['errors'])
345
- ApiResponse.new(
346
- _response, data: decoded, errors: _errors
347
- )
227
+ new_api_call_builder
228
+ .request(new_request_builder(HttpMethodEnum::POST,
229
+ '/v2/customers/{customer_id}/cards',
230
+ 'default')
231
+ .template_param(new_parameter(customer_id, key: 'customer_id')
232
+ .should_encode(true))
233
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
234
+ .body_param(new_parameter(body))
235
+ .header_param(new_parameter('application/json', key: 'accept'))
236
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
237
+ .auth(Single.new('global')))
238
+ .response(new_response_handler
239
+ .deserializer(APIHelper.method(:json_deserialize))
240
+ .is_api_response(true)
241
+ .convertor(ApiResponse.method(:create)))
242
+ .execute
348
243
  end
349
244
 
350
245
  # Removes a card on file from a customer.
@@ -356,35 +251,21 @@ module Square
356
251
  def delete_customer_card(customer_id:,
357
252
  card_id:)
358
253
  warn 'Endpoint delete_customer_card in CustomersApi is deprecated'
359
- # Prepare query url.
360
- _query_builder = config.get_base_uri
361
- _query_builder << '/v2/customers/{customer_id}/cards/{card_id}'
362
- _query_builder = APIHelper.append_url_with_template_parameters(
363
- _query_builder,
364
- 'customer_id' => { 'value' => customer_id, 'encode' => true },
365
- 'card_id' => { 'value' => card_id, 'encode' => true }
366
- )
367
- _query_url = APIHelper.clean_url _query_builder
368
-
369
- # Prepare headers.
370
- _headers = {
371
- 'accept' => 'application/json'
372
- }
373
-
374
- # Prepare and execute HttpRequest.
375
- _request = config.http_client.delete(
376
- _query_url,
377
- headers: _headers
378
- )
379
- OAuth2.apply(config, _request)
380
- _response = execute_request(_request)
381
-
382
- # Return appropriate response type.
383
- decoded = APIHelper.json_deserialize(_response.raw_body)
384
- _errors = APIHelper.map_response(decoded, ['errors'])
385
- ApiResponse.new(
386
- _response, data: decoded, errors: _errors
387
- )
254
+ new_api_call_builder
255
+ .request(new_request_builder(HttpMethodEnum::DELETE,
256
+ '/v2/customers/{customer_id}/cards/{card_id}',
257
+ 'default')
258
+ .template_param(new_parameter(customer_id, key: 'customer_id')
259
+ .should_encode(true))
260
+ .template_param(new_parameter(card_id, key: 'card_id')
261
+ .should_encode(true))
262
+ .header_param(new_parameter('application/json', key: 'accept'))
263
+ .auth(Single.new('global')))
264
+ .response(new_response_handler
265
+ .deserializer(APIHelper.method(:json_deserialize))
266
+ .is_api_response(true)
267
+ .convertor(ApiResponse.method(:create)))
268
+ .execute
388
269
  end
389
270
 
390
271
  # Removes a group membership from a customer.
@@ -397,35 +278,21 @@ module Square
397
278
  # @return [RemoveGroupFromCustomerResponse Hash] response from the API call
398
279
  def remove_group_from_customer(customer_id:,
399
280
  group_id:)
400
- # Prepare query url.
401
- _query_builder = config.get_base_uri
402
- _query_builder << '/v2/customers/{customer_id}/groups/{group_id}'
403
- _query_builder = APIHelper.append_url_with_template_parameters(
404
- _query_builder,
405
- 'customer_id' => { 'value' => customer_id, 'encode' => true },
406
- 'group_id' => { 'value' => group_id, 'encode' => true }
407
- )
408
- _query_url = APIHelper.clean_url _query_builder
409
-
410
- # Prepare headers.
411
- _headers = {
412
- 'accept' => 'application/json'
413
- }
414
-
415
- # Prepare and execute HttpRequest.
416
- _request = config.http_client.delete(
417
- _query_url,
418
- headers: _headers
419
- )
420
- OAuth2.apply(config, _request)
421
- _response = execute_request(_request)
422
-
423
- # Return appropriate response type.
424
- decoded = APIHelper.json_deserialize(_response.raw_body)
425
- _errors = APIHelper.map_response(decoded, ['errors'])
426
- ApiResponse.new(
427
- _response, data: decoded, errors: _errors
428
- )
281
+ new_api_call_builder
282
+ .request(new_request_builder(HttpMethodEnum::DELETE,
283
+ '/v2/customers/{customer_id}/groups/{group_id}',
284
+ 'default')
285
+ .template_param(new_parameter(customer_id, key: 'customer_id')
286
+ .should_encode(true))
287
+ .template_param(new_parameter(group_id, key: 'group_id')
288
+ .should_encode(true))
289
+ .header_param(new_parameter('application/json', key: 'accept'))
290
+ .auth(Single.new('global')))
291
+ .response(new_response_handler
292
+ .deserializer(APIHelper.method(:json_deserialize))
293
+ .is_api_response(true)
294
+ .convertor(ApiResponse.method(:create)))
295
+ .execute
429
296
  end
430
297
 
431
298
  # Adds a group membership to a customer.
@@ -438,35 +305,21 @@ module Square
438
305
  # @return [AddGroupToCustomerResponse Hash] response from the API call
439
306
  def add_group_to_customer(customer_id:,
440
307
  group_id:)
441
- # Prepare query url.
442
- _query_builder = config.get_base_uri
443
- _query_builder << '/v2/customers/{customer_id}/groups/{group_id}'
444
- _query_builder = APIHelper.append_url_with_template_parameters(
445
- _query_builder,
446
- 'customer_id' => { 'value' => customer_id, 'encode' => true },
447
- 'group_id' => { 'value' => group_id, 'encode' => true }
448
- )
449
- _query_url = APIHelper.clean_url _query_builder
450
-
451
- # Prepare headers.
452
- _headers = {
453
- 'accept' => 'application/json'
454
- }
455
-
456
- # Prepare and execute HttpRequest.
457
- _request = config.http_client.put(
458
- _query_url,
459
- headers: _headers
460
- )
461
- OAuth2.apply(config, _request)
462
- _response = execute_request(_request)
463
-
464
- # Return appropriate response type.
465
- decoded = APIHelper.json_deserialize(_response.raw_body)
466
- _errors = APIHelper.map_response(decoded, ['errors'])
467
- ApiResponse.new(
468
- _response, data: decoded, errors: _errors
469
- )
308
+ new_api_call_builder
309
+ .request(new_request_builder(HttpMethodEnum::PUT,
310
+ '/v2/customers/{customer_id}/groups/{group_id}',
311
+ 'default')
312
+ .template_param(new_parameter(customer_id, key: 'customer_id')
313
+ .should_encode(true))
314
+ .template_param(new_parameter(group_id, key: 'group_id')
315
+ .should_encode(true))
316
+ .header_param(new_parameter('application/json', key: 'accept'))
317
+ .auth(Single.new('global')))
318
+ .response(new_response_handler
319
+ .deserializer(APIHelper.method(:json_deserialize))
320
+ .is_api_response(true)
321
+ .convertor(ApiResponse.method(:create)))
322
+ .execute
470
323
  end
471
324
  end
472
325
  end