mundi_api 0.9.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 (123) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +2186 -0
  4. data/lib/mundi_api.rb +137 -0
  5. data/lib/mundi_api/api_helper.rb +209 -0
  6. data/lib/mundi_api/configuration.rb +25 -0
  7. data/lib/mundi_api/controllers/base_controller.rb +61 -0
  8. data/lib/mundi_api/controllers/charges_controller.rb +359 -0
  9. data/lib/mundi_api/controllers/customers_controller.rb +758 -0
  10. data/lib/mundi_api/controllers/invoices_controller.rb +184 -0
  11. data/lib/mundi_api/controllers/orders_controller.rb +171 -0
  12. data/lib/mundi_api/controllers/plans_controller.rb +387 -0
  13. data/lib/mundi_api/controllers/subscriptions_controller.rb +648 -0
  14. data/lib/mundi_api/controllers/tokens_controller.rb +87 -0
  15. data/lib/mundi_api/exceptions/api_exception.rb +18 -0
  16. data/lib/mundi_api/exceptions/error_exception.rb +37 -0
  17. data/lib/mundi_api/http/auth/basic_auth.rb +20 -0
  18. data/lib/mundi_api/http/faraday_client.rb +55 -0
  19. data/lib/mundi_api/http/http_call_back.rb +22 -0
  20. data/lib/mundi_api/http/http_client.rb +92 -0
  21. data/lib/mundi_api/http/http_context.rb +18 -0
  22. data/lib/mundi_api/http/http_method_enum.rb +11 -0
  23. data/lib/mundi_api/http/http_request.rb +48 -0
  24. data/lib/mundi_api/http/http_response.rb +21 -0
  25. data/lib/mundi_api/models/base_model.rb +34 -0
  26. data/lib/mundi_api/models/create_access_token_request.rb +35 -0
  27. data/lib/mundi_api/models/create_address_request.rb +108 -0
  28. data/lib/mundi_api/models/create_bank_transfer_payment_request.rb +44 -0
  29. data/lib/mundi_api/models/create_boleto_payment_request.rb +83 -0
  30. data/lib/mundi_api/models/create_cancel_charge_request.rb +35 -0
  31. data/lib/mundi_api/models/create_cancel_subscription_request.rb +35 -0
  32. data/lib/mundi_api/models/create_capture_charge_request.rb +45 -0
  33. data/lib/mundi_api/models/create_card_options_request.rb +36 -0
  34. data/lib/mundi_api/models/create_card_request.rb +136 -0
  35. data/lib/mundi_api/models/create_card_token_request.rb +80 -0
  36. data/lib/mundi_api/models/create_charge_request.rb +92 -0
  37. data/lib/mundi_api/models/create_checkout_boleto_payment_request.rb +54 -0
  38. data/lib/mundi_api/models/create_checkout_card_installment_option_request.rb +44 -0
  39. data/lib/mundi_api/models/create_checkout_card_payment_request.rb +51 -0
  40. data/lib/mundi_api/models/create_checkout_payment_request.rb +82 -0
  41. data/lib/mundi_api/models/create_credit_card_payment_request.rb +108 -0
  42. data/lib/mundi_api/models/create_customer_request.rb +108 -0
  43. data/lib/mundi_api/models/create_discount_request.rb +62 -0
  44. data/lib/mundi_api/models/create_order_item_request.rb +71 -0
  45. data/lib/mundi_api/models/create_order_request.rb +114 -0
  46. data/lib/mundi_api/models/create_payment_request.rb +121 -0
  47. data/lib/mundi_api/models/create_phone_request.rb +53 -0
  48. data/lib/mundi_api/models/create_phones_request.rb +46 -0
  49. data/lib/mundi_api/models/create_plan_item_request.rb +81 -0
  50. data/lib/mundi_api/models/create_plan_request.rb +199 -0
  51. data/lib/mundi_api/models/create_price_bracket_request.rb +62 -0
  52. data/lib/mundi_api/models/create_pricing_scheme_request.rb +69 -0
  53. data/lib/mundi_api/models/create_seller_request.rb +90 -0
  54. data/lib/mundi_api/models/create_setup_request.rb +55 -0
  55. data/lib/mundi_api/models/create_shipping_request.rb +81 -0
  56. data/lib/mundi_api/models/create_subscription_item_request.rb +106 -0
  57. data/lib/mundi_api/models/create_subscription_request.rb +269 -0
  58. data/lib/mundi_api/models/create_token_request.rb +44 -0
  59. data/lib/mundi_api/models/create_usage_request.rb +54 -0
  60. data/lib/mundi_api/models/create_voucher_payment_request.rb +72 -0
  61. data/lib/mundi_api/models/get_access_token_response.rb +73 -0
  62. data/lib/mundi_api/models/get_address_response.rb +163 -0
  63. data/lib/mundi_api/models/get_bank_transfer_transaction_response.rb +118 -0
  64. data/lib/mundi_api/models/get_billing_address_response.rb +98 -0
  65. data/lib/mundi_api/models/get_boleto_transaction_response.rb +137 -0
  66. data/lib/mundi_api/models/get_card_response.rb +164 -0
  67. data/lib/mundi_api/models/get_card_token_response.rb +89 -0
  68. data/lib/mundi_api/models/get_charge_response.rb +184 -0
  69. data/lib/mundi_api/models/get_checkout_payment_settings_response.rb +99 -0
  70. data/lib/mundi_api/models/get_credit_card_transaction_response.rb +163 -0
  71. data/lib/mundi_api/models/get_customer_response.rb +145 -0
  72. data/lib/mundi_api/models/get_discount_response.rb +100 -0
  73. data/lib/mundi_api/models/get_invoice_item_response.rb +73 -0
  74. data/lib/mundi_api/models/get_invoice_response.rb +210 -0
  75. data/lib/mundi_api/models/get_order_item_response.rb +63 -0
  76. data/lib/mundi_api/models/get_order_response.rb +167 -0
  77. data/lib/mundi_api/models/get_period_response.rb +73 -0
  78. data/lib/mundi_api/models/get_phone_response.rb +53 -0
  79. data/lib/mundi_api/models/get_phones_response.rb +46 -0
  80. data/lib/mundi_api/models/get_plan_item_response.rb +127 -0
  81. data/lib/mundi_api/models/get_plan_response.rb +223 -0
  82. data/lib/mundi_api/models/get_price_bracket_response.rb +62 -0
  83. data/lib/mundi_api/models/get_pricing_scheme_response.rb +69 -0
  84. data/lib/mundi_api/models/get_safety_pay_transaction_response.rb +109 -0
  85. data/lib/mundi_api/models/get_seller_response.rb +126 -0
  86. data/lib/mundi_api/models/get_setup_response.rb +62 -0
  87. data/lib/mundi_api/models/get_shipping_response.rb +72 -0
  88. data/lib/mundi_api/models/get_subscription_item_response.rb +135 -0
  89. data/lib/mundi_api/models/get_subscription_response.rb +261 -0
  90. data/lib/mundi_api/models/get_token_response.rb +72 -0
  91. data/lib/mundi_api/models/get_transaction_response.rb +136 -0
  92. data/lib/mundi_api/models/get_usage_response.rb +82 -0
  93. data/lib/mundi_api/models/get_voucher_transaction_response.rb +163 -0
  94. data/lib/mundi_api/models/list_access_tokens_response.rb +51 -0
  95. data/lib/mundi_api/models/list_addresses_response.rb +51 -0
  96. data/lib/mundi_api/models/list_cards_response.rb +51 -0
  97. data/lib/mundi_api/models/list_charges_response.rb +51 -0
  98. data/lib/mundi_api/models/list_customers_response.rb +51 -0
  99. data/lib/mundi_api/models/list_invoices_response.rb +51 -0
  100. data/lib/mundi_api/models/list_order_response.rb +51 -0
  101. data/lib/mundi_api/models/list_plans_response.rb +51 -0
  102. data/lib/mundi_api/models/list_subscription_items_response.rb +51 -0
  103. data/lib/mundi_api/models/list_subscriptions_response.rb +51 -0
  104. data/lib/mundi_api/models/list_transactions_response.rb +51 -0
  105. data/lib/mundi_api/models/list_usages_response.rb +51 -0
  106. data/lib/mundi_api/models/paging_response.rb +53 -0
  107. data/lib/mundi_api/models/update_address_request.rb +53 -0
  108. data/lib/mundi_api/models/update_card_request.rb +81 -0
  109. data/lib/mundi_api/models/update_charge_card_request.rb +62 -0
  110. data/lib/mundi_api/models/update_charge_due_date_request.rb +36 -0
  111. data/lib/mundi_api/models/update_charge_payment_method_request.rb +74 -0
  112. data/lib/mundi_api/models/update_customer_request.rb +90 -0
  113. data/lib/mundi_api/models/update_metadata_request.rb +35 -0
  114. data/lib/mundi_api/models/update_plan_item_request.rb +81 -0
  115. data/lib/mundi_api/models/update_plan_request.rb +161 -0
  116. data/lib/mundi_api/models/update_price_bracket_request.rb +62 -0
  117. data/lib/mundi_api/models/update_pricing_scheme_request.rb +69 -0
  118. data/lib/mundi_api/models/update_subscription_billing_date_request.rb +37 -0
  119. data/lib/mundi_api/models/update_subscription_card_request.rb +44 -0
  120. data/lib/mundi_api/models/update_subscription_item_request.rb +81 -0
  121. data/lib/mundi_api/models/update_subscription_payment_method_request.rb +53 -0
  122. data/lib/mundi_api/mundi_api_client.rb +63 -0
  123. metadata +246 -0
@@ -0,0 +1,758 @@
1
+ # This file was automatically generated by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MundiApi
5
+ # CustomersController
6
+ class CustomersController < BaseController
7
+ @instance = CustomersController.new
8
+
9
+ class << self
10
+ attr_accessor :instance
11
+ end
12
+
13
+ def instance
14
+ self.class.instance
15
+ end
16
+
17
+ # Creates a new customer
18
+ # @param [CreateCustomerRequest] request Required parameter: Request for
19
+ # creating a customer
20
+ # @return GetCustomerResponse response from the API call
21
+ def create_customer(request)
22
+ # Prepare query url.
23
+ _query_builder = Configuration.base_uri.dup
24
+ _query_builder << '/customers'
25
+ _query_url = APIHelper.clean_url _query_builder
26
+
27
+ # Prepare headers.
28
+ _headers = {
29
+ 'accept' => 'application/json',
30
+ 'content-type' => 'application/json; charset=utf-8'
31
+ }
32
+
33
+ # Prepare and execute HttpRequest.
34
+ _request = @http_client.post(
35
+ _query_url,
36
+ headers: _headers,
37
+ parameters: request.to_json
38
+ )
39
+ BasicAuth.apply(_request)
40
+ _context = execute_request(_request)
41
+ validate_response(_context)
42
+
43
+ # Return appropriate response type.
44
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
45
+ GetCustomerResponse.from_hash(decoded)
46
+ end
47
+
48
+ # Get a customer
49
+ # @param [String] customer_id Required parameter: Customer Id
50
+ # @return GetCustomerResponse response from the API call
51
+ def get_customer(customer_id)
52
+ # Prepare query url.
53
+ _query_builder = Configuration.base_uri.dup
54
+ _query_builder << '/customers/{customer_id}'
55
+ _query_builder = APIHelper.append_url_with_template_parameters(
56
+ _query_builder,
57
+ 'customer_id' => customer_id
58
+ )
59
+ _query_url = APIHelper.clean_url _query_builder
60
+
61
+ # Prepare headers.
62
+ _headers = {
63
+ 'accept' => 'application/json'
64
+ }
65
+
66
+ # Prepare and execute HttpRequest.
67
+ _request = @http_client.get(
68
+ _query_url,
69
+ headers: _headers
70
+ )
71
+ BasicAuth.apply(_request)
72
+ _context = execute_request(_request)
73
+ validate_response(_context)
74
+
75
+ # Return appropriate response type.
76
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
77
+ GetCustomerResponse.from_hash(decoded)
78
+ end
79
+
80
+ # Updates a card
81
+ # @param [String] customer_id Required parameter: Customer Id
82
+ # @param [String] card_id Required parameter: Card id
83
+ # @param [UpdateCardRequest] request Required parameter: Request for
84
+ # updating a card
85
+ # @return GetCardResponse response from the API call
86
+ def update_card(customer_id,
87
+ card_id,
88
+ request)
89
+ # Prepare query url.
90
+ _query_builder = Configuration.base_uri.dup
91
+ _query_builder << '/customers/{customer_id}/cards/{card_id}'
92
+ _query_builder = APIHelper.append_url_with_template_parameters(
93
+ _query_builder,
94
+ 'customer_id' => customer_id,
95
+ 'card_id' => card_id
96
+ )
97
+ _query_url = APIHelper.clean_url _query_builder
98
+
99
+ # Prepare headers.
100
+ _headers = {
101
+ 'accept' => 'application/json',
102
+ 'content-type' => 'application/json; charset=utf-8'
103
+ }
104
+
105
+ # Prepare and execute HttpRequest.
106
+ _request = @http_client.put(
107
+ _query_url,
108
+ headers: _headers,
109
+ parameters: request.to_json
110
+ )
111
+ BasicAuth.apply(_request)
112
+ _context = execute_request(_request)
113
+ validate_response(_context)
114
+
115
+ # Return appropriate response type.
116
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
117
+ GetCardResponse.from_hash(decoded)
118
+ end
119
+
120
+ # Updates an address
121
+ # @param [String] customer_id Required parameter: Customer Id
122
+ # @param [String] address_id Required parameter: Address Id
123
+ # @param [UpdateAddressRequest] request Required parameter: Request for
124
+ # updating an address
125
+ # @return GetAddressResponse response from the API call
126
+ def update_address(customer_id,
127
+ address_id,
128
+ request)
129
+ # Prepare query url.
130
+ _query_builder = Configuration.base_uri.dup
131
+ _query_builder << '/customers/{customer_id}/addresses/{address_id}'
132
+ _query_builder = APIHelper.append_url_with_template_parameters(
133
+ _query_builder,
134
+ 'customer_id' => customer_id,
135
+ 'address_id' => address_id
136
+ )
137
+ _query_url = APIHelper.clean_url _query_builder
138
+
139
+ # Prepare headers.
140
+ _headers = {
141
+ 'accept' => 'application/json',
142
+ 'content-type' => 'application/json; charset=utf-8'
143
+ }
144
+
145
+ # Prepare and execute HttpRequest.
146
+ _request = @http_client.put(
147
+ _query_url,
148
+ headers: _headers,
149
+ parameters: request.to_json
150
+ )
151
+ BasicAuth.apply(_request)
152
+ _context = execute_request(_request)
153
+ validate_response(_context)
154
+
155
+ # Return appropriate response type.
156
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
157
+ GetAddressResponse.from_hash(decoded)
158
+ end
159
+
160
+ # Get a customer's address
161
+ # @param [String] customer_id Required parameter: Customer id
162
+ # @param [String] address_id Required parameter: Address Id
163
+ # @return GetAddressResponse response from the API call
164
+ def get_address(customer_id,
165
+ address_id)
166
+ # Prepare query url.
167
+ _query_builder = Configuration.base_uri.dup
168
+ _query_builder << '/customers/{customer_id}/addresses/{address_id}'
169
+ _query_builder = APIHelper.append_url_with_template_parameters(
170
+ _query_builder,
171
+ 'customer_id' => customer_id,
172
+ 'address_id' => address_id
173
+ )
174
+ _query_url = APIHelper.clean_url _query_builder
175
+
176
+ # Prepare headers.
177
+ _headers = {
178
+ 'accept' => 'application/json'
179
+ }
180
+
181
+ # Prepare and execute HttpRequest.
182
+ _request = @http_client.get(
183
+ _query_url,
184
+ headers: _headers
185
+ )
186
+ BasicAuth.apply(_request)
187
+ _context = execute_request(_request)
188
+ validate_response(_context)
189
+
190
+ # Return appropriate response type.
191
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
192
+ GetAddressResponse.from_hash(decoded)
193
+ end
194
+
195
+ # Delete a Customer's address
196
+ # @param [String] customer_id Required parameter: Customer Id
197
+ # @param [String] address_id Required parameter: Address Id
198
+ # @return GetAddressResponse response from the API call
199
+ def delete_address(customer_id,
200
+ address_id)
201
+ # Prepare query url.
202
+ _query_builder = Configuration.base_uri.dup
203
+ _query_builder << '/customers/{customer_id}/addresses/{address_id}'
204
+ _query_builder = APIHelper.append_url_with_template_parameters(
205
+ _query_builder,
206
+ 'customer_id' => customer_id,
207
+ 'address_id' => address_id
208
+ )
209
+ _query_url = APIHelper.clean_url _query_builder
210
+
211
+ # Prepare headers.
212
+ _headers = {
213
+ 'accept' => 'application/json'
214
+ }
215
+
216
+ # Prepare and execute HttpRequest.
217
+ _request = @http_client.delete(
218
+ _query_url,
219
+ headers: _headers
220
+ )
221
+ BasicAuth.apply(_request)
222
+ _context = execute_request(_request)
223
+ validate_response(_context)
224
+
225
+ # Return appropriate response type.
226
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
227
+ GetAddressResponse.from_hash(decoded)
228
+ end
229
+
230
+ # Delete a customer's card
231
+ # @param [String] customer_id Required parameter: Customer Id
232
+ # @param [String] card_id Required parameter: Card Id
233
+ # @return GetCardResponse response from the API call
234
+ def delete_card(customer_id,
235
+ card_id)
236
+ # Prepare query url.
237
+ _query_builder = Configuration.base_uri.dup
238
+ _query_builder << '/customers/{customer_id}/cards/{card_id}'
239
+ _query_builder = APIHelper.append_url_with_template_parameters(
240
+ _query_builder,
241
+ 'customer_id' => customer_id,
242
+ 'card_id' => card_id
243
+ )
244
+ _query_url = APIHelper.clean_url _query_builder
245
+
246
+ # Prepare headers.
247
+ _headers = {
248
+ 'accept' => 'application/json'
249
+ }
250
+
251
+ # Prepare and execute HttpRequest.
252
+ _request = @http_client.delete(
253
+ _query_url,
254
+ headers: _headers
255
+ )
256
+ BasicAuth.apply(_request)
257
+ _context = execute_request(_request)
258
+ validate_response(_context)
259
+
260
+ # Return appropriate response type.
261
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
262
+ GetCardResponse.from_hash(decoded)
263
+ end
264
+
265
+ # Creates a new address for a customer
266
+ # @param [String] customer_id Required parameter: Customer Id
267
+ # @param [CreateAddressRequest] request Required parameter: Request for
268
+ # creating an address
269
+ # @return GetAddressResponse response from the API call
270
+ def create_address(customer_id,
271
+ request)
272
+ # Prepare query url.
273
+ _query_builder = Configuration.base_uri.dup
274
+ _query_builder << '/customers/{customer_id}/addresses'
275
+ _query_builder = APIHelper.append_url_with_template_parameters(
276
+ _query_builder,
277
+ 'customer_id' => customer_id
278
+ )
279
+ _query_url = APIHelper.clean_url _query_builder
280
+
281
+ # Prepare headers.
282
+ _headers = {
283
+ 'accept' => 'application/json',
284
+ 'content-type' => 'application/json; charset=utf-8'
285
+ }
286
+
287
+ # Prepare and execute HttpRequest.
288
+ _request = @http_client.post(
289
+ _query_url,
290
+ headers: _headers,
291
+ parameters: request.to_json
292
+ )
293
+ BasicAuth.apply(_request)
294
+ _context = execute_request(_request)
295
+ validate_response(_context)
296
+
297
+ # Return appropriate response type.
298
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
299
+ GetAddressResponse.from_hash(decoded)
300
+ end
301
+
302
+ # Get a customer's card
303
+ # @param [String] customer_id Required parameter: Customer id
304
+ # @param [String] card_id Required parameter: Card id
305
+ # @return GetCardResponse response from the API call
306
+ def get_card(customer_id,
307
+ card_id)
308
+ # Prepare query url.
309
+ _query_builder = Configuration.base_uri.dup
310
+ _query_builder << '/customers/{customer_id}/cards/{card_id}'
311
+ _query_builder = APIHelper.append_url_with_template_parameters(
312
+ _query_builder,
313
+ 'customer_id' => customer_id,
314
+ 'card_id' => card_id
315
+ )
316
+ _query_url = APIHelper.clean_url _query_builder
317
+
318
+ # Prepare headers.
319
+ _headers = {
320
+ 'accept' => 'application/json'
321
+ }
322
+
323
+ # Prepare and execute HttpRequest.
324
+ _request = @http_client.get(
325
+ _query_url,
326
+ headers: _headers
327
+ )
328
+ BasicAuth.apply(_request)
329
+ _context = execute_request(_request)
330
+ validate_response(_context)
331
+
332
+ # Return appropriate response type.
333
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
334
+ GetCardResponse.from_hash(decoded)
335
+ end
336
+
337
+ # Creates a new card for a customer
338
+ # @param [String] customer_id Required parameter: Customer id
339
+ # @param [CreateCardRequest] request Required parameter: Request for
340
+ # creating a card
341
+ # @return GetCardResponse response from the API call
342
+ def create_card(customer_id,
343
+ request)
344
+ # Prepare query url.
345
+ _query_builder = Configuration.base_uri.dup
346
+ _query_builder << '/customers/{customer_id}/cards'
347
+ _query_builder = APIHelper.append_url_with_template_parameters(
348
+ _query_builder,
349
+ 'customer_id' => customer_id
350
+ )
351
+ _query_url = APIHelper.clean_url _query_builder
352
+
353
+ # Prepare headers.
354
+ _headers = {
355
+ 'accept' => 'application/json',
356
+ 'content-type' => 'application/json; charset=utf-8'
357
+ }
358
+
359
+ # Prepare and execute HttpRequest.
360
+ _request = @http_client.post(
361
+ _query_url,
362
+ headers: _headers,
363
+ parameters: request.to_json
364
+ )
365
+ BasicAuth.apply(_request)
366
+ _context = execute_request(_request)
367
+ validate_response(_context)
368
+
369
+ # Return appropriate response type.
370
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
371
+ GetCardResponse.from_hash(decoded)
372
+ end
373
+
374
+ # Updates a customer
375
+ # @param [String] customer_id Required parameter: Customer id
376
+ # @param [UpdateCustomerRequest] request Required parameter: Request for
377
+ # updating a customer
378
+ # @return GetCustomerResponse response from the API call
379
+ def update_customer(customer_id,
380
+ request)
381
+ # Prepare query url.
382
+ _query_builder = Configuration.base_uri.dup
383
+ _query_builder << '/customers/{customer_id}'
384
+ _query_builder = APIHelper.append_url_with_template_parameters(
385
+ _query_builder,
386
+ 'customer_id' => customer_id
387
+ )
388
+ _query_url = APIHelper.clean_url _query_builder
389
+
390
+ # Prepare headers.
391
+ _headers = {
392
+ 'accept' => 'application/json',
393
+ 'content-type' => 'application/json; charset=utf-8'
394
+ }
395
+
396
+ # Prepare and execute HttpRequest.
397
+ _request = @http_client.put(
398
+ _query_url,
399
+ headers: _headers,
400
+ parameters: request.to_json
401
+ )
402
+ BasicAuth.apply(_request)
403
+ _context = execute_request(_request)
404
+ validate_response(_context)
405
+
406
+ # Return appropriate response type.
407
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
408
+ GetCustomerResponse.from_hash(decoded)
409
+ end
410
+
411
+ # Delete a Customer's access tokens
412
+ # @param [String] customer_id Required parameter: Customer Id
413
+ # @return ListAccessTokensResponse response from the API call
414
+ def delete_access_tokens(customer_id)
415
+ # Prepare query url.
416
+ _query_builder = Configuration.base_uri.dup
417
+ _query_builder << '/customers/{customer_id}/access-tokens/'
418
+ _query_builder = APIHelper.append_url_with_template_parameters(
419
+ _query_builder,
420
+ 'customer_id' => customer_id
421
+ )
422
+ _query_url = APIHelper.clean_url _query_builder
423
+
424
+ # Prepare headers.
425
+ _headers = {
426
+ 'accept' => 'application/json'
427
+ }
428
+
429
+ # Prepare and execute HttpRequest.
430
+ _request = @http_client.get(
431
+ _query_url,
432
+ headers: _headers
433
+ )
434
+ BasicAuth.apply(_request)
435
+ _context = execute_request(_request)
436
+ validate_response(_context)
437
+
438
+ # Return appropriate response type.
439
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
440
+ ListAccessTokensResponse.from_hash(decoded)
441
+ end
442
+
443
+ # Get all Customers
444
+ # @param [String] name Optional parameter: Name of the Customer
445
+ # @param [String] document Optional parameter: Document of the Customer
446
+ # @param [Integer] page Optional parameter: Current page the the search
447
+ # @param [Integer] size Optional parameter: Quantity pages of the search
448
+ # @param [String] email Optional parameter: Customer's email
449
+ # @return ListCustomersResponse response from the API call
450
+ def get_customers(name = nil,
451
+ document = nil,
452
+ page = 1,
453
+ size = 10,
454
+ email = nil)
455
+ # Prepare query url.
456
+ _query_builder = Configuration.base_uri.dup
457
+ _query_builder << '/customers'
458
+ _query_builder = APIHelper.append_url_with_query_parameters(
459
+ _query_builder,
460
+ 'name' => name,
461
+ 'document' => document,
462
+ 'page' => page,
463
+ 'size' => size,
464
+ 'email' => email,
465
+ array_serialization: Configuration.array_serialization
466
+ )
467
+ _query_url = APIHelper.clean_url _query_builder
468
+
469
+ # Prepare headers.
470
+ _headers = {
471
+ 'accept' => 'application/json'
472
+ }
473
+
474
+ # Prepare and execute HttpRequest.
475
+ _request = @http_client.get(
476
+ _query_url,
477
+ headers: _headers
478
+ )
479
+ BasicAuth.apply(_request)
480
+ _context = execute_request(_request)
481
+ validate_response(_context)
482
+
483
+ # Return appropriate response type.
484
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
485
+ ListCustomersResponse.from_hash(decoded)
486
+ end
487
+
488
+ # Get a Customer's access token
489
+ # @param [String] customer_id Required parameter: Customer Id
490
+ # @param [String] token_id Required parameter: Token Id
491
+ # @return GetAccessTokenResponse response from the API call
492
+ def get_access_token(customer_id,
493
+ token_id)
494
+ # Prepare query url.
495
+ _query_builder = Configuration.base_uri.dup
496
+ _query_builder << '/customers/{customer_id}/access-tokens/{token_id}'
497
+ _query_builder = APIHelper.append_url_with_template_parameters(
498
+ _query_builder,
499
+ 'customer_id' => customer_id,
500
+ 'token_id' => token_id
501
+ )
502
+ _query_url = APIHelper.clean_url _query_builder
503
+
504
+ # Prepare headers.
505
+ _headers = {
506
+ 'accept' => 'application/json'
507
+ }
508
+
509
+ # Prepare and execute HttpRequest.
510
+ _request = @http_client.get(
511
+ _query_url,
512
+ headers: _headers
513
+ )
514
+ BasicAuth.apply(_request)
515
+ _context = execute_request(_request)
516
+ validate_response(_context)
517
+
518
+ # Return appropriate response type.
519
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
520
+ GetAccessTokenResponse.from_hash(decoded)
521
+ end
522
+
523
+ # Creates a access token for a customer
524
+ # @param [String] customer_id Required parameter: Customer Id
525
+ # @param [CreateAccessTokenRequest] request Required parameter: Request for
526
+ # creating a access token
527
+ # @return GetAccessTokenResponse response from the API call
528
+ def create_access_token(customer_id,
529
+ request)
530
+ # Prepare query url.
531
+ _query_builder = Configuration.base_uri.dup
532
+ _query_builder << '/customers/{customer_id}/access-tokens'
533
+ _query_builder = APIHelper.append_url_with_template_parameters(
534
+ _query_builder,
535
+ 'customer_id' => customer_id
536
+ )
537
+ _query_url = APIHelper.clean_url _query_builder
538
+
539
+ # Prepare headers.
540
+ _headers = {
541
+ 'accept' => 'application/json',
542
+ 'content-type' => 'application/json; charset=utf-8'
543
+ }
544
+
545
+ # Prepare and execute HttpRequest.
546
+ _request = @http_client.post(
547
+ _query_url,
548
+ headers: _headers,
549
+ parameters: request.to_json
550
+ )
551
+ BasicAuth.apply(_request)
552
+ _context = execute_request(_request)
553
+ validate_response(_context)
554
+
555
+ # Return appropriate response type.
556
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
557
+ GetAccessTokenResponse.from_hash(decoded)
558
+ end
559
+
560
+ # Delete a customer's access token
561
+ # @param [String] customer_id Required parameter: Customer Id
562
+ # @param [String] token_id Required parameter: Token Id
563
+ # @return GetAccessTokenResponse response from the API call
564
+ def delete_access_token(customer_id,
565
+ token_id)
566
+ # Prepare query url.
567
+ _query_builder = Configuration.base_uri.dup
568
+ _query_builder << '/customers/{customer_id}/access-tokens/{token_id}'
569
+ _query_builder = APIHelper.append_url_with_template_parameters(
570
+ _query_builder,
571
+ 'customer_id' => customer_id,
572
+ 'token_id' => token_id
573
+ )
574
+ _query_url = APIHelper.clean_url _query_builder
575
+
576
+ # Prepare headers.
577
+ _headers = {
578
+ 'accept' => 'application/json'
579
+ }
580
+
581
+ # Prepare and execute HttpRequest.
582
+ _request = @http_client.delete(
583
+ _query_url,
584
+ headers: _headers
585
+ )
586
+ BasicAuth.apply(_request)
587
+ _context = execute_request(_request)
588
+ validate_response(_context)
589
+
590
+ # Return appropriate response type.
591
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
592
+ GetAccessTokenResponse.from_hash(decoded)
593
+ end
594
+
595
+ # Updates the metadata a customer
596
+ # @param [String] customer_id Required parameter: The customer id
597
+ # @param [UpdateMetadataRequest] request Required parameter: Request for
598
+ # updating the customer metadata
599
+ # @return GetCustomerResponse response from the API call
600
+ def update_customer_metadata(customer_id,
601
+ request)
602
+ # Prepare query url.
603
+ _query_builder = Configuration.base_uri.dup
604
+ _query_builder << '/Customers/{customer_id}/metadata'
605
+ _query_builder = APIHelper.append_url_with_template_parameters(
606
+ _query_builder,
607
+ 'customer_id' => customer_id
608
+ )
609
+ _query_url = APIHelper.clean_url _query_builder
610
+
611
+ # Prepare headers.
612
+ _headers = {
613
+ 'accept' => 'application/json',
614
+ 'content-type' => 'application/json; charset=utf-8'
615
+ }
616
+
617
+ # Prepare and execute HttpRequest.
618
+ _request = @http_client.patch(
619
+ _query_url,
620
+ headers: _headers,
621
+ parameters: request.to_json
622
+ )
623
+ BasicAuth.apply(_request)
624
+ _context = execute_request(_request)
625
+ validate_response(_context)
626
+
627
+ # Return appropriate response type.
628
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
629
+ GetCustomerResponse.from_hash(decoded)
630
+ end
631
+
632
+ # Get all access tokens from a customer
633
+ # @param [String] customer_id Required parameter: Customer Id
634
+ # @param [Integer] page Optional parameter: Page number
635
+ # @param [Integer] size Optional parameter: Page size
636
+ # @return ListAccessTokensResponse response from the API call
637
+ def get_access_tokens(customer_id,
638
+ page = nil,
639
+ size = nil)
640
+ # Prepare query url.
641
+ _query_builder = Configuration.base_uri.dup
642
+ _query_builder << '/customers/{customer_id}/access-tokens'
643
+ _query_builder = APIHelper.append_url_with_template_parameters(
644
+ _query_builder,
645
+ 'customer_id' => customer_id
646
+ )
647
+ _query_builder = APIHelper.append_url_with_query_parameters(
648
+ _query_builder,
649
+ 'page' => page,
650
+ 'size' => size,
651
+ array_serialization: Configuration.array_serialization
652
+ )
653
+ _query_url = APIHelper.clean_url _query_builder
654
+
655
+ # Prepare headers.
656
+ _headers = {
657
+ 'accept' => 'application/json'
658
+ }
659
+
660
+ # Prepare and execute HttpRequest.
661
+ _request = @http_client.get(
662
+ _query_url,
663
+ headers: _headers
664
+ )
665
+ BasicAuth.apply(_request)
666
+ _context = execute_request(_request)
667
+ validate_response(_context)
668
+
669
+ # Return appropriate response type.
670
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
671
+ ListAccessTokensResponse.from_hash(decoded)
672
+ end
673
+
674
+ # Gets all adressess from a customer
675
+ # @param [String] customer_id Required parameter: Customer id
676
+ # @param [Integer] page Optional parameter: Page number
677
+ # @param [Integer] size Optional parameter: Page size
678
+ # @return ListAddressesResponse response from the API call
679
+ def get_addresses(customer_id,
680
+ page = nil,
681
+ size = nil)
682
+ # Prepare query url.
683
+ _query_builder = Configuration.base_uri.dup
684
+ _query_builder << '/customers/{customer_id}/addresses'
685
+ _query_builder = APIHelper.append_url_with_template_parameters(
686
+ _query_builder,
687
+ 'customer_id' => customer_id
688
+ )
689
+ _query_builder = APIHelper.append_url_with_query_parameters(
690
+ _query_builder,
691
+ 'page' => page,
692
+ 'size' => size,
693
+ array_serialization: Configuration.array_serialization
694
+ )
695
+ _query_url = APIHelper.clean_url _query_builder
696
+
697
+ # Prepare headers.
698
+ _headers = {
699
+ 'accept' => 'application/json'
700
+ }
701
+
702
+ # Prepare and execute HttpRequest.
703
+ _request = @http_client.get(
704
+ _query_url,
705
+ headers: _headers
706
+ )
707
+ BasicAuth.apply(_request)
708
+ _context = execute_request(_request)
709
+ validate_response(_context)
710
+
711
+ # Return appropriate response type.
712
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
713
+ ListAddressesResponse.from_hash(decoded)
714
+ end
715
+
716
+ # Get all cards from a customer
717
+ # @param [String] customer_id Required parameter: Customer Id
718
+ # @param [Integer] page Optional parameter: Page number
719
+ # @param [Integer] size Optional parameter: Page size
720
+ # @return ListCardsResponse response from the API call
721
+ def get_cards(customer_id,
722
+ page = nil,
723
+ size = nil)
724
+ # Prepare query url.
725
+ _query_builder = Configuration.base_uri.dup
726
+ _query_builder << '/customers/{customer_id}/cards'
727
+ _query_builder = APIHelper.append_url_with_template_parameters(
728
+ _query_builder,
729
+ 'customer_id' => customer_id
730
+ )
731
+ _query_builder = APIHelper.append_url_with_query_parameters(
732
+ _query_builder,
733
+ 'page' => page,
734
+ 'size' => size,
735
+ array_serialization: Configuration.array_serialization
736
+ )
737
+ _query_url = APIHelper.clean_url _query_builder
738
+
739
+ # Prepare headers.
740
+ _headers = {
741
+ 'accept' => 'application/json'
742
+ }
743
+
744
+ # Prepare and execute HttpRequest.
745
+ _request = @http_client.get(
746
+ _query_url,
747
+ headers: _headers
748
+ )
749
+ BasicAuth.apply(_request)
750
+ _context = execute_request(_request)
751
+ validate_response(_context)
752
+
753
+ # Return appropriate response type.
754
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
755
+ ListCardsResponse.from_hash(decoded)
756
+ end
757
+ end
758
+ end