moovio_sdk 0.12.0__py3-none-any.whl → 0.13.1__py3-none-any.whl

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 (99) hide show
  1. moovio_sdk/_version.py +3 -3
  2. moovio_sdk/account_terminal_applications.py +70 -186
  3. moovio_sdk/accounts.py +168 -408
  4. moovio_sdk/adjustments.py +28 -84
  5. moovio_sdk/apple_pay.py +102 -236
  6. moovio_sdk/authentication.py +50 -102
  7. moovio_sdk/avatars.py +10 -38
  8. moovio_sdk/bank_accounts.py +174 -420
  9. moovio_sdk/basesdk.py +4 -4
  10. moovio_sdk/branding.py +106 -198
  11. moovio_sdk/capabilities.py +76 -180
  12. moovio_sdk/card_issuing.py +94 -228
  13. moovio_sdk/cards.py +94 -232
  14. moovio_sdk/disputes.py +204 -500
  15. moovio_sdk/end_to_end_encryption.py +28 -80
  16. moovio_sdk/enriched_address.py +14 -44
  17. moovio_sdk/enriched_profile.py +14 -44
  18. moovio_sdk/fee_plans.py +116 -314
  19. moovio_sdk/files.py +52 -138
  20. moovio_sdk/industries.py +14 -44
  21. moovio_sdk/institutions.py +36 -92
  22. moovio_sdk/issuing_transactions.py +70 -220
  23. moovio_sdk/models/components/__init__.py +39 -0
  24. moovio_sdk/models/components/createticket.py +24 -0
  25. moovio_sdk/models/components/createticketcontacterror.py +17 -0
  26. moovio_sdk/models/components/ticket.py +44 -0
  27. moovio_sdk/models/components/ticketcontact.py +17 -0
  28. moovio_sdk/models/components/ticketmessage.py +21 -0
  29. moovio_sdk/models/components/ticketstatus.py +11 -0
  30. moovio_sdk/models/components/updateticket.py +19 -0
  31. moovio_sdk/models/components/updateticketstatus.py +8 -0
  32. moovio_sdk/models/errors/__init__.py +19 -0
  33. moovio_sdk/models/errors/accountterminalapplicationerror.py +11 -6
  34. moovio_sdk/models/errors/addcapabilitieserror.py +11 -6
  35. moovio_sdk/models/errors/apierror.py +30 -14
  36. moovio_sdk/models/errors/assigncountrieserror.py +12 -6
  37. moovio_sdk/models/errors/authtokenrequesterror.py +11 -6
  38. moovio_sdk/models/errors/bankaccountvalidationerror.py +11 -6
  39. moovio_sdk/models/errors/brandvalidationerror.py +11 -6
  40. moovio_sdk/models/errors/cardacquiringrefund.py +11 -6
  41. moovio_sdk/models/errors/createaccount.py +12 -6
  42. moovio_sdk/models/errors/createpaymentlinkerror.py +11 -6
  43. moovio_sdk/models/errors/createsweepconfigerror.py +11 -6
  44. moovio_sdk/models/errors/createticketerror.py +34 -0
  45. moovio_sdk/models/errors/feeplanagreementerror.py +11 -6
  46. moovio_sdk/models/errors/fileuploadvalidationerror.py +11 -6
  47. moovio_sdk/models/errors/filevalidationerror.py +11 -6
  48. moovio_sdk/models/errors/genericerror.py +12 -6
  49. moovio_sdk/models/errors/linkapplepayerror.py +11 -6
  50. moovio_sdk/models/errors/linkcarderror.py +11 -6
  51. moovio_sdk/models/errors/microdepositvalidationerror.py +11 -6
  52. moovio_sdk/models/errors/mooverror.py +26 -0
  53. moovio_sdk/models/errors/no_response_error.py +13 -0
  54. moovio_sdk/models/errors/onboardinginviteerror.py +11 -6
  55. moovio_sdk/models/errors/patchsweepconfigerror.py +11 -6
  56. moovio_sdk/models/errors/refundvalidationerror.py +11 -6
  57. moovio_sdk/models/errors/representativevalidationerror.py +11 -6
  58. moovio_sdk/models/errors/requestcarderror.py +11 -6
  59. moovio_sdk/models/errors/responsevalidationerror.py +25 -0
  60. moovio_sdk/models/errors/reversalvalidationerror.py +11 -6
  61. moovio_sdk/models/errors/revoketokenrequesterror.py +11 -6
  62. moovio_sdk/models/errors/schedulevalidationerror.py +11 -6
  63. moovio_sdk/models/errors/terminalapplicationerror.py +11 -6
  64. moovio_sdk/models/errors/transfer.py +11 -6
  65. moovio_sdk/models/errors/transferoptionsvalidationerror.py +11 -6
  66. moovio_sdk/models/errors/transfervalidationerror.py +11 -6
  67. moovio_sdk/models/errors/updateaccount.py +12 -6
  68. moovio_sdk/models/errors/updatecarderror.py +11 -6
  69. moovio_sdk/models/errors/updateissuedcarderror.py +11 -6
  70. moovio_sdk/models/errors/updatepaymentlinkerror.py +11 -6
  71. moovio_sdk/models/errors/updateticketerror.py +25 -0
  72. moovio_sdk/models/errors/updateunderwritingerror.py +11 -6
  73. moovio_sdk/models/errors/upsertunderwritingerror.py +11 -6
  74. moovio_sdk/models/operations/__init__.py +100 -0
  75. moovio_sdk/models/operations/createticket.py +78 -0
  76. moovio_sdk/models/operations/getticket.py +71 -0
  77. moovio_sdk/models/operations/listticketmessages.py +88 -0
  78. moovio_sdk/models/operations/listtickets.py +81 -0
  79. moovio_sdk/models/operations/updateticket.py +85 -0
  80. moovio_sdk/onboarding.py +66 -166
  81. moovio_sdk/payment_links.py +106 -272
  82. moovio_sdk/payment_methods.py +30 -86
  83. moovio_sdk/ping.py +10 -40
  84. moovio_sdk/receipts.py +36 -92
  85. moovio_sdk/representatives.py +102 -228
  86. moovio_sdk/scheduling.py +122 -278
  87. moovio_sdk/sdk.py +3 -0
  88. moovio_sdk/support.py +1153 -0
  89. moovio_sdk/sweeps.py +102 -274
  90. moovio_sdk/terminal_applications.py +74 -186
  91. moovio_sdk/transfers.py +266 -582
  92. moovio_sdk/underwriting.py +64 -146
  93. moovio_sdk/utils/__init__.py +3 -0
  94. moovio_sdk/utils/serializers.py +21 -3
  95. moovio_sdk/wallet_transactions.py +28 -88
  96. moovio_sdk/wallets.py +24 -84
  97. {moovio_sdk-0.12.0.dist-info → moovio_sdk-0.13.1.dist-info}/METADATA +103 -28
  98. {moovio_sdk-0.12.0.dist-info → moovio_sdk-0.13.1.dist-info}/RECORD +99 -80
  99. {moovio_sdk-0.12.0.dist-info → moovio_sdk-0.13.1.dist-info}/WHEEL +0 -0
@@ -95,40 +95,25 @@ class PaymentMethods(BaseSDK):
95
95
 
96
96
  if utils.match_response(http_res, "200", "application/json"):
97
97
  return operations.ListPaymentMethodsResponse(
98
- result=utils.unmarshal_json(
99
- http_res.text, List[components.PaymentMethod]
98
+ result=utils.unmarshal_json_response(
99
+ List[components.PaymentMethod], http_res
100
100
  ),
101
101
  headers=utils.get_response_headers(http_res.headers),
102
102
  )
103
103
  if utils.match_response(http_res, ["401", "403", "429"], "*"):
104
104
  http_res_text = utils.stream_to_text(http_res)
105
- raise errors.APIError(
106
- "API error occurred", http_res.status_code, http_res_text, http_res
107
- )
105
+ raise errors.APIError("API error occurred", http_res, http_res_text)
108
106
  if utils.match_response(http_res, ["500", "504"], "*"):
109
107
  http_res_text = utils.stream_to_text(http_res)
110
- raise errors.APIError(
111
- "API error occurred", http_res.status_code, http_res_text, http_res
112
- )
108
+ raise errors.APIError("API error occurred", http_res, http_res_text)
113
109
  if utils.match_response(http_res, "4XX", "*"):
114
110
  http_res_text = utils.stream_to_text(http_res)
115
- raise errors.APIError(
116
- "API error occurred", http_res.status_code, http_res_text, http_res
117
- )
111
+ raise errors.APIError("API error occurred", http_res, http_res_text)
118
112
  if utils.match_response(http_res, "5XX", "*"):
119
113
  http_res_text = utils.stream_to_text(http_res)
120
- raise errors.APIError(
121
- "API error occurred", http_res.status_code, http_res_text, http_res
122
- )
114
+ raise errors.APIError("API error occurred", http_res, http_res_text)
123
115
 
124
- content_type = http_res.headers.get("Content-Type")
125
- http_res_text = utils.stream_to_text(http_res)
126
- raise errors.APIError(
127
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
128
- http_res.status_code,
129
- http_res_text,
130
- http_res,
131
- )
116
+ raise errors.APIError("Unexpected response received", http_res)
132
117
 
133
118
  async def list_async(
134
119
  self,
@@ -215,40 +200,25 @@ class PaymentMethods(BaseSDK):
215
200
 
216
201
  if utils.match_response(http_res, "200", "application/json"):
217
202
  return operations.ListPaymentMethodsResponse(
218
- result=utils.unmarshal_json(
219
- http_res.text, List[components.PaymentMethod]
203
+ result=utils.unmarshal_json_response(
204
+ List[components.PaymentMethod], http_res
220
205
  ),
221
206
  headers=utils.get_response_headers(http_res.headers),
222
207
  )
223
208
  if utils.match_response(http_res, ["401", "403", "429"], "*"):
224
209
  http_res_text = await utils.stream_to_text_async(http_res)
225
- raise errors.APIError(
226
- "API error occurred", http_res.status_code, http_res_text, http_res
227
- )
210
+ raise errors.APIError("API error occurred", http_res, http_res_text)
228
211
  if utils.match_response(http_res, ["500", "504"], "*"):
229
212
  http_res_text = await utils.stream_to_text_async(http_res)
230
- raise errors.APIError(
231
- "API error occurred", http_res.status_code, http_res_text, http_res
232
- )
213
+ raise errors.APIError("API error occurred", http_res, http_res_text)
233
214
  if utils.match_response(http_res, "4XX", "*"):
234
215
  http_res_text = await utils.stream_to_text_async(http_res)
235
- raise errors.APIError(
236
- "API error occurred", http_res.status_code, http_res_text, http_res
237
- )
216
+ raise errors.APIError("API error occurred", http_res, http_res_text)
238
217
  if utils.match_response(http_res, "5XX", "*"):
239
218
  http_res_text = await utils.stream_to_text_async(http_res)
240
- raise errors.APIError(
241
- "API error occurred", http_res.status_code, http_res_text, http_res
242
- )
219
+ raise errors.APIError("API error occurred", http_res, http_res_text)
243
220
 
244
- content_type = http_res.headers.get("Content-Type")
245
- http_res_text = await utils.stream_to_text_async(http_res)
246
- raise errors.APIError(
247
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
248
- http_res.status_code,
249
- http_res_text,
250
- http_res,
251
- )
221
+ raise errors.APIError("Unexpected response received", http_res)
252
222
 
253
223
  def get(
254
224
  self,
@@ -331,38 +301,25 @@ class PaymentMethods(BaseSDK):
331
301
 
332
302
  if utils.match_response(http_res, "200", "application/json"):
333
303
  return operations.GetPaymentMethodResponse(
334
- result=utils.unmarshal_json(http_res.text, components.PaymentMethod),
304
+ result=utils.unmarshal_json_response(
305
+ components.PaymentMethod, http_res
306
+ ),
335
307
  headers=utils.get_response_headers(http_res.headers),
336
308
  )
337
309
  if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
338
310
  http_res_text = utils.stream_to_text(http_res)
339
- raise errors.APIError(
340
- "API error occurred", http_res.status_code, http_res_text, http_res
341
- )
311
+ raise errors.APIError("API error occurred", http_res, http_res_text)
342
312
  if utils.match_response(http_res, ["500", "504"], "*"):
343
313
  http_res_text = utils.stream_to_text(http_res)
344
- raise errors.APIError(
345
- "API error occurred", http_res.status_code, http_res_text, http_res
346
- )
314
+ raise errors.APIError("API error occurred", http_res, http_res_text)
347
315
  if utils.match_response(http_res, "4XX", "*"):
348
316
  http_res_text = utils.stream_to_text(http_res)
349
- raise errors.APIError(
350
- "API error occurred", http_res.status_code, http_res_text, http_res
351
- )
317
+ raise errors.APIError("API error occurred", http_res, http_res_text)
352
318
  if utils.match_response(http_res, "5XX", "*"):
353
319
  http_res_text = utils.stream_to_text(http_res)
354
- raise errors.APIError(
355
- "API error occurred", http_res.status_code, http_res_text, http_res
356
- )
320
+ raise errors.APIError("API error occurred", http_res, http_res_text)
357
321
 
358
- content_type = http_res.headers.get("Content-Type")
359
- http_res_text = utils.stream_to_text(http_res)
360
- raise errors.APIError(
361
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
362
- http_res.status_code,
363
- http_res_text,
364
- http_res,
365
- )
322
+ raise errors.APIError("Unexpected response received", http_res)
366
323
 
367
324
  async def get_async(
368
325
  self,
@@ -445,35 +402,22 @@ class PaymentMethods(BaseSDK):
445
402
 
446
403
  if utils.match_response(http_res, "200", "application/json"):
447
404
  return operations.GetPaymentMethodResponse(
448
- result=utils.unmarshal_json(http_res.text, components.PaymentMethod),
405
+ result=utils.unmarshal_json_response(
406
+ components.PaymentMethod, http_res
407
+ ),
449
408
  headers=utils.get_response_headers(http_res.headers),
450
409
  )
451
410
  if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
452
411
  http_res_text = await utils.stream_to_text_async(http_res)
453
- raise errors.APIError(
454
- "API error occurred", http_res.status_code, http_res_text, http_res
455
- )
412
+ raise errors.APIError("API error occurred", http_res, http_res_text)
456
413
  if utils.match_response(http_res, ["500", "504"], "*"):
457
414
  http_res_text = await utils.stream_to_text_async(http_res)
458
- raise errors.APIError(
459
- "API error occurred", http_res.status_code, http_res_text, http_res
460
- )
415
+ raise errors.APIError("API error occurred", http_res, http_res_text)
461
416
  if utils.match_response(http_res, "4XX", "*"):
462
417
  http_res_text = await utils.stream_to_text_async(http_res)
463
- raise errors.APIError(
464
- "API error occurred", http_res.status_code, http_res_text, http_res
465
- )
418
+ raise errors.APIError("API error occurred", http_res, http_res_text)
466
419
  if utils.match_response(http_res, "5XX", "*"):
467
420
  http_res_text = await utils.stream_to_text_async(http_res)
468
- raise errors.APIError(
469
- "API error occurred", http_res.status_code, http_res_text, http_res
470
- )
421
+ raise errors.APIError("API error occurred", http_res, http_res_text)
471
422
 
472
- content_type = http_res.headers.get("Content-Type")
473
- http_res_text = await utils.stream_to_text_async(http_res)
474
- raise errors.APIError(
475
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
476
- http_res.status_code,
477
- http_res_text,
478
- http_res,
479
- )
423
+ raise errors.APIError("Unexpected response received", http_res)
moovio_sdk/ping.py CHANGED
@@ -94,33 +94,18 @@ class Ping(BaseSDK):
94
94
  )
95
95
  if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
96
96
  http_res_text = utils.stream_to_text(http_res)
97
- raise errors.APIError(
98
- "API error occurred", http_res.status_code, http_res_text, http_res
99
- )
97
+ raise errors.APIError("API error occurred", http_res, http_res_text)
100
98
  if utils.match_response(http_res, "500", "*"):
101
99
  http_res_text = utils.stream_to_text(http_res)
102
- raise errors.APIError(
103
- "API error occurred", http_res.status_code, http_res_text, http_res
104
- )
100
+ raise errors.APIError("API error occurred", http_res, http_res_text)
105
101
  if utils.match_response(http_res, "4XX", "*"):
106
102
  http_res_text = utils.stream_to_text(http_res)
107
- raise errors.APIError(
108
- "API error occurred", http_res.status_code, http_res_text, http_res
109
- )
103
+ raise errors.APIError("API error occurred", http_res, http_res_text)
110
104
  if utils.match_response(http_res, "5XX", "*"):
111
105
  http_res_text = utils.stream_to_text(http_res)
112
- raise errors.APIError(
113
- "API error occurred", http_res.status_code, http_res_text, http_res
114
- )
106
+ raise errors.APIError("API error occurred", http_res, http_res_text)
115
107
 
116
- content_type = http_res.headers.get("Content-Type")
117
- http_res_text = utils.stream_to_text(http_res)
118
- raise errors.APIError(
119
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
120
- http_res.status_code,
121
- http_res_text,
122
- http_res,
123
- )
108
+ raise errors.APIError("Unexpected response received", http_res)
124
109
 
125
110
  async def ping_async(
126
111
  self,
@@ -206,30 +191,15 @@ class Ping(BaseSDK):
206
191
  )
207
192
  if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
208
193
  http_res_text = await utils.stream_to_text_async(http_res)
209
- raise errors.APIError(
210
- "API error occurred", http_res.status_code, http_res_text, http_res
211
- )
194
+ raise errors.APIError("API error occurred", http_res, http_res_text)
212
195
  if utils.match_response(http_res, "500", "*"):
213
196
  http_res_text = await utils.stream_to_text_async(http_res)
214
- raise errors.APIError(
215
- "API error occurred", http_res.status_code, http_res_text, http_res
216
- )
197
+ raise errors.APIError("API error occurred", http_res, http_res_text)
217
198
  if utils.match_response(http_res, "4XX", "*"):
218
199
  http_res_text = await utils.stream_to_text_async(http_res)
219
- raise errors.APIError(
220
- "API error occurred", http_res.status_code, http_res_text, http_res
221
- )
200
+ raise errors.APIError("API error occurred", http_res, http_res_text)
222
201
  if utils.match_response(http_res, "5XX", "*"):
223
202
  http_res_text = await utils.stream_to_text_async(http_res)
224
- raise errors.APIError(
225
- "API error occurred", http_res.status_code, http_res_text, http_res
226
- )
203
+ raise errors.APIError("API error occurred", http_res, http_res_text)
227
204
 
228
- content_type = http_res.headers.get("Content-Type")
229
- http_res_text = await utils.stream_to_text_async(http_res)
230
- raise errors.APIError(
231
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
232
- http_res.status_code,
233
- http_res_text,
234
- http_res,
235
- )
205
+ raise errors.APIError("Unexpected response received", http_res)
moovio_sdk/receipts.py CHANGED
@@ -106,43 +106,30 @@ class Receipts(BaseSDK):
106
106
  response_data: Any = None
107
107
  if utils.match_response(http_res, "201", "application/json"):
108
108
  return operations.CreateReceiptsResponse(
109
- result=utils.unmarshal_json(
110
- http_res.text, List[components.ReceiptResponse]
109
+ result=utils.unmarshal_json_response(
110
+ List[components.ReceiptResponse], http_res
111
111
  ),
112
112
  headers=utils.get_response_headers(http_res.headers),
113
113
  )
114
114
  if utils.match_response(http_res, ["400", "409"], "application/json"):
115
- response_data = utils.unmarshal_json(http_res.text, errors.GenericErrorData)
116
- raise errors.GenericError(data=response_data)
115
+ response_data = utils.unmarshal_json_response(
116
+ errors.GenericErrorData, http_res
117
+ )
118
+ raise errors.GenericError(response_data, http_res)
117
119
  if utils.match_response(http_res, ["401", "403", "404", "422", "429"], "*"):
118
120
  http_res_text = utils.stream_to_text(http_res)
119
- raise errors.APIError(
120
- "API error occurred", http_res.status_code, http_res_text, http_res
121
- )
121
+ raise errors.APIError("API error occurred", http_res, http_res_text)
122
122
  if utils.match_response(http_res, ["500", "504"], "*"):
123
123
  http_res_text = utils.stream_to_text(http_res)
124
- raise errors.APIError(
125
- "API error occurred", http_res.status_code, http_res_text, http_res
126
- )
124
+ raise errors.APIError("API error occurred", http_res, http_res_text)
127
125
  if utils.match_response(http_res, "4XX", "*"):
128
126
  http_res_text = utils.stream_to_text(http_res)
129
- raise errors.APIError(
130
- "API error occurred", http_res.status_code, http_res_text, http_res
131
- )
127
+ raise errors.APIError("API error occurred", http_res, http_res_text)
132
128
  if utils.match_response(http_res, "5XX", "*"):
133
129
  http_res_text = utils.stream_to_text(http_res)
134
- raise errors.APIError(
135
- "API error occurred", http_res.status_code, http_res_text, http_res
136
- )
130
+ raise errors.APIError("API error occurred", http_res, http_res_text)
137
131
 
138
- content_type = http_res.headers.get("Content-Type")
139
- http_res_text = utils.stream_to_text(http_res)
140
- raise errors.APIError(
141
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
142
- http_res.status_code,
143
- http_res_text,
144
- http_res,
145
- )
132
+ raise errors.APIError("Unexpected response received", http_res)
146
133
 
147
134
  async def create_async(
148
135
  self,
@@ -240,43 +227,30 @@ class Receipts(BaseSDK):
240
227
  response_data: Any = None
241
228
  if utils.match_response(http_res, "201", "application/json"):
242
229
  return operations.CreateReceiptsResponse(
243
- result=utils.unmarshal_json(
244
- http_res.text, List[components.ReceiptResponse]
230
+ result=utils.unmarshal_json_response(
231
+ List[components.ReceiptResponse], http_res
245
232
  ),
246
233
  headers=utils.get_response_headers(http_res.headers),
247
234
  )
248
235
  if utils.match_response(http_res, ["400", "409"], "application/json"):
249
- response_data = utils.unmarshal_json(http_res.text, errors.GenericErrorData)
250
- raise errors.GenericError(data=response_data)
236
+ response_data = utils.unmarshal_json_response(
237
+ errors.GenericErrorData, http_res
238
+ )
239
+ raise errors.GenericError(response_data, http_res)
251
240
  if utils.match_response(http_res, ["401", "403", "404", "422", "429"], "*"):
252
241
  http_res_text = await utils.stream_to_text_async(http_res)
253
- raise errors.APIError(
254
- "API error occurred", http_res.status_code, http_res_text, http_res
255
- )
242
+ raise errors.APIError("API error occurred", http_res, http_res_text)
256
243
  if utils.match_response(http_res, ["500", "504"], "*"):
257
244
  http_res_text = await utils.stream_to_text_async(http_res)
258
- raise errors.APIError(
259
- "API error occurred", http_res.status_code, http_res_text, http_res
260
- )
245
+ raise errors.APIError("API error occurred", http_res, http_res_text)
261
246
  if utils.match_response(http_res, "4XX", "*"):
262
247
  http_res_text = await utils.stream_to_text_async(http_res)
263
- raise errors.APIError(
264
- "API error occurred", http_res.status_code, http_res_text, http_res
265
- )
248
+ raise errors.APIError("API error occurred", http_res, http_res_text)
266
249
  if utils.match_response(http_res, "5XX", "*"):
267
250
  http_res_text = await utils.stream_to_text_async(http_res)
268
- raise errors.APIError(
269
- "API error occurred", http_res.status_code, http_res_text, http_res
270
- )
251
+ raise errors.APIError("API error occurred", http_res, http_res_text)
271
252
 
272
- content_type = http_res.headers.get("Content-Type")
273
- http_res_text = await utils.stream_to_text_async(http_res)
274
- raise errors.APIError(
275
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
276
- http_res.status_code,
277
- http_res_text,
278
- http_res,
279
- )
253
+ raise errors.APIError("Unexpected response received", http_res)
280
254
 
281
255
  def list(
282
256
  self,
@@ -356,40 +330,25 @@ class Receipts(BaseSDK):
356
330
 
357
331
  if utils.match_response(http_res, "200", "application/json"):
358
332
  return operations.ListReceiptsResponse(
359
- result=utils.unmarshal_json(
360
- http_res.text, List[components.ReceiptResponse]
333
+ result=utils.unmarshal_json_response(
334
+ List[components.ReceiptResponse], http_res
361
335
  ),
362
336
  headers=utils.get_response_headers(http_res.headers),
363
337
  )
364
338
  if utils.match_response(http_res, ["401", "403", "429"], "*"):
365
339
  http_res_text = utils.stream_to_text(http_res)
366
- raise errors.APIError(
367
- "API error occurred", http_res.status_code, http_res_text, http_res
368
- )
340
+ raise errors.APIError("API error occurred", http_res, http_res_text)
369
341
  if utils.match_response(http_res, ["500", "504"], "*"):
370
342
  http_res_text = utils.stream_to_text(http_res)
371
- raise errors.APIError(
372
- "API error occurred", http_res.status_code, http_res_text, http_res
373
- )
343
+ raise errors.APIError("API error occurred", http_res, http_res_text)
374
344
  if utils.match_response(http_res, "4XX", "*"):
375
345
  http_res_text = utils.stream_to_text(http_res)
376
- raise errors.APIError(
377
- "API error occurred", http_res.status_code, http_res_text, http_res
378
- )
346
+ raise errors.APIError("API error occurred", http_res, http_res_text)
379
347
  if utils.match_response(http_res, "5XX", "*"):
380
348
  http_res_text = utils.stream_to_text(http_res)
381
- raise errors.APIError(
382
- "API error occurred", http_res.status_code, http_res_text, http_res
383
- )
349
+ raise errors.APIError("API error occurred", http_res, http_res_text)
384
350
 
385
- content_type = http_res.headers.get("Content-Type")
386
- http_res_text = utils.stream_to_text(http_res)
387
- raise errors.APIError(
388
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
389
- http_res.status_code,
390
- http_res_text,
391
- http_res,
392
- )
351
+ raise errors.APIError("Unexpected response received", http_res)
393
352
 
394
353
  async def list_async(
395
354
  self,
@@ -469,37 +428,22 @@ class Receipts(BaseSDK):
469
428
 
470
429
  if utils.match_response(http_res, "200", "application/json"):
471
430
  return operations.ListReceiptsResponse(
472
- result=utils.unmarshal_json(
473
- http_res.text, List[components.ReceiptResponse]
431
+ result=utils.unmarshal_json_response(
432
+ List[components.ReceiptResponse], http_res
474
433
  ),
475
434
  headers=utils.get_response_headers(http_res.headers),
476
435
  )
477
436
  if utils.match_response(http_res, ["401", "403", "429"], "*"):
478
437
  http_res_text = await utils.stream_to_text_async(http_res)
479
- raise errors.APIError(
480
- "API error occurred", http_res.status_code, http_res_text, http_res
481
- )
438
+ raise errors.APIError("API error occurred", http_res, http_res_text)
482
439
  if utils.match_response(http_res, ["500", "504"], "*"):
483
440
  http_res_text = await utils.stream_to_text_async(http_res)
484
- raise errors.APIError(
485
- "API error occurred", http_res.status_code, http_res_text, http_res
486
- )
441
+ raise errors.APIError("API error occurred", http_res, http_res_text)
487
442
  if utils.match_response(http_res, "4XX", "*"):
488
443
  http_res_text = await utils.stream_to_text_async(http_res)
489
- raise errors.APIError(
490
- "API error occurred", http_res.status_code, http_res_text, http_res
491
- )
444
+ raise errors.APIError("API error occurred", http_res, http_res_text)
492
445
  if utils.match_response(http_res, "5XX", "*"):
493
446
  http_res_text = await utils.stream_to_text_async(http_res)
494
- raise errors.APIError(
495
- "API error occurred", http_res.status_code, http_res_text, http_res
496
- )
447
+ raise errors.APIError("API error occurred", http_res, http_res_text)
497
448
 
498
- content_type = http_res.headers.get("Content-Type")
499
- http_res_text = await utils.stream_to_text_async(http_res)
500
- raise errors.APIError(
501
- f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
502
- http_res.status_code,
503
- http_res_text,
504
- http_res,
505
- )
449
+ raise errors.APIError("Unexpected response received", http_res)