moov_ruby 26.4.0.pre.dev.9 → 26.4.0.pre.dev.10

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/types.rb +11 -3
  3. data/lib/moov/account_terminal_applications.rb +23 -9
  4. data/lib/moov/accounts.rb +58 -23
  5. data/lib/moov/adjustments.rb +13 -5
  6. data/lib/moov/apple_pay.rb +28 -11
  7. data/lib/moov/authentication.rb +13 -5
  8. data/lib/moov/avatars.rb +8 -3
  9. data/lib/moov/bank_accounts.rb +48 -19
  10. data/lib/moov/branding.rb +18 -7
  11. data/lib/moov/capabilities.rb +23 -9
  12. data/lib/moov/card_issuing.rb +28 -11
  13. data/lib/moov/cards.rb +28 -11
  14. data/lib/moov/client.rb +2 -1
  15. data/lib/moov/disputes.rb +58 -23
  16. data/lib/moov/end_to_end_encryption.rb +13 -5
  17. data/lib/moov/enriched_address.rb +8 -3
  18. data/lib/moov/enriched_profile.rb +8 -3
  19. data/lib/moov/fee_plans.rb +53 -21
  20. data/lib/moov/files.rb +18 -7
  21. data/lib/moov/images.rb +39 -19
  22. data/lib/moov/industries.rb +8 -3
  23. data/lib/moov/institutions.rb +13 -5
  24. data/lib/moov/invoices.rb +170 -13
  25. data/lib/moov/issuing_transactions.rb +28 -11
  26. data/lib/moov/models/components/createinvoicelineitem.rb +2 -1
  27. data/lib/moov/models/components/createpaymentlinklineitem.rb +2 -1
  28. data/lib/moov/models/components/feecategory.rb +1 -0
  29. data/lib/moov/models/components/{rtpfailurecode.rb → instantbankfailurecode.rb} +3 -2
  30. data/lib/moov/models/components/instantbankfailurecode.rbi +11 -0
  31. data/lib/moov/models/components/instantbanknetwork.rb +19 -0
  32. data/lib/moov/models/components/{rtpfailurecode.rbi → instantbanknetwork.rbi} +2 -2
  33. data/lib/moov/models/components/{rtptransactiondetails.rb → instantbanktransactiondetails.rb} +16 -8
  34. data/lib/moov/models/components/{rtptransactiondetails.rbi → instantbanktransactiondetails.rbi} +6 -2
  35. data/lib/moov/models/components/{rtptransactionstatus.rb → instantbanktransactionstatus.rb} +2 -2
  36. data/lib/moov/models/components/instantbanktransactionstatus.rbi +11 -0
  37. data/lib/moov/models/components/invoice.rb +14 -2
  38. data/lib/moov/models/components/invoice.rbi +6 -0
  39. data/lib/moov/models/components/invoicelineitem.rb +2 -1
  40. data/lib/moov/models/components/transferdestination.rb +6 -6
  41. data/lib/moov/models/components/transferdestination.rbi +2 -2
  42. data/lib/moov/models/components/updateinvoice.rb +4 -1
  43. data/lib/moov/models/components.rb +4 -3
  44. data/lib/moov/models/operations/deleteinvoice_request.rb +49 -0
  45. data/lib/moov/models/operations/deleteinvoice_request.rbi +17 -0
  46. data/lib/moov/models/operations/deleteinvoice_response.rb +44 -0
  47. data/lib/moov/models/operations/deleteinvoice_response.rbi +19 -0
  48. data/lib/moov/models/operations.rb +2 -0
  49. data/lib/moov/onboarding.rb +23 -9
  50. data/lib/moov/payment_links.rb +33 -13
  51. data/lib/moov/payment_methods.rb +13 -5
  52. data/lib/moov/ping.rb +8 -3
  53. data/lib/moov/products.rb +28 -11
  54. data/lib/moov/receipts.rb +13 -5
  55. data/lib/moov/representatives.rb +28 -11
  56. data/lib/moov/scheduling.rb +33 -13
  57. data/lib/moov/sdkconfiguration.rb +3 -3
  58. data/lib/moov/statements.rb +13 -5
  59. data/lib/moov/support.rb +28 -11
  60. data/lib/moov/sweeps.rb +33 -13
  61. data/lib/moov/terminal_applications.rb +28 -11
  62. data/lib/moov/transfers.rb +58 -23
  63. data/lib/moov/underwriting.rb +18 -7
  64. data/lib/moov/wallet_transactions.rb +13 -5
  65. data/lib/moov/wallets.rb +23 -9
  66. data/lib/moov/webhooks.rb +43 -17
  67. metadata +28 -8
  68. data/lib/moov/models/components/rtptransactionstatus.rbi +0 -11
data/lib/moov/images.rb CHANGED
@@ -39,8 +39,10 @@ module Moov
39
39
  end
40
40
 
41
41
 
42
- sig { params(account_id: ::String, x_moov_version: T.nilable(::String), skip: T.nilable(::Integer), count: T.nilable(::Integer), timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListImageMetadataResponse) }
43
- def list(account_id:, x_moov_version: nil, skip: nil, count: nil, timeout_ms: nil)
42
+
43
+
44
+ sig { params(account_id: ::String, x_moov_version: T.nilable(::String), skip: T.nilable(::Integer), count: T.nilable(::Integer), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListImageMetadataResponse) }
45
+ def list(account_id:, x_moov_version: nil, skip: nil, count: nil, timeout_ms: nil, http_headers: nil)
44
46
  # list - List metadata for all images in the specified account.
45
47
  request = Models::Operations::ListImageMetadataRequest.new(
46
48
  account_id: account_id,
@@ -89,6 +91,9 @@ module Moov
89
91
  req.options.timeout = timeout unless timeout.nil?
90
92
  req.params = query_params
91
93
  Utils.configure_request_security(req, security)
94
+ http_headers&.each do |key, value|
95
+ req.headers[key.to_s] = value
96
+ end
92
97
 
93
98
  @sdk_configuration.hooks.before_request(
94
99
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -161,8 +166,8 @@ module Moov
161
166
  end
162
167
 
163
168
 
164
- sig { params(image_upload_request_multi_part: Models::Components::ImageUploadRequestMultiPart, account_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::UploadImageResponse) }
165
- def upload(image_upload_request_multi_part:, account_id:, x_moov_version: nil, timeout_ms: nil)
169
+ sig { params(image_upload_request_multi_part: Models::Components::ImageUploadRequestMultiPart, account_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::UploadImageResponse) }
170
+ def upload(image_upload_request_multi_part:, account_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
166
171
  # upload - Upload a new PNG, JPEG, or WebP image with optional metadata.
167
172
  # Duplicate images, and requests larger than 16MB will be rejected.
168
173
  request = Models::Operations::UploadImageRequest.new(
@@ -221,6 +226,9 @@ module Moov
221
226
  req.headers.merge!(headers)
222
227
  req.options.timeout = timeout unless timeout.nil?
223
228
  Utils.configure_request_security(req, security)
229
+ http_headers&.each do |key, value|
230
+ req.headers[key.to_s] = value
231
+ end
224
232
 
225
233
  @sdk_configuration.hooks.before_request(
226
234
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -323,8 +331,8 @@ module Moov
323
331
  end
324
332
 
325
333
 
326
- sig { params(account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetImageMetadataResponse) }
327
- def get_metadata(account_id:, image_id:, x_moov_version: nil, timeout_ms: nil)
334
+ sig { params(account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::GetImageMetadataResponse) }
335
+ def get_metadata(account_id:, image_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
328
336
  # get_metadata - Retrieve metadata for a specific image by its ID.
329
337
  request = Models::Operations::GetImageMetadataRequest.new(
330
338
  account_id: account_id,
@@ -370,6 +378,9 @@ module Moov
370
378
  req.headers.merge!(headers)
371
379
  req.options.timeout = timeout unless timeout.nil?
372
380
  Utils.configure_request_security(req, security)
381
+ http_headers&.each do |key, value|
382
+ req.headers[key.to_s] = value
383
+ end
373
384
 
374
385
  @sdk_configuration.hooks.before_request(
375
386
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -442,8 +453,8 @@ module Moov
442
453
  end
443
454
 
444
455
 
445
- sig { params(image_upload_request_multi_part: Models::Components::ImageUploadRequestMultiPart, account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::UpdateImageResponse) }
446
- def update(image_upload_request_multi_part:, account_id:, image_id:, x_moov_version: nil, timeout_ms: nil)
456
+ sig { params(image_upload_request_multi_part: Models::Components::ImageUploadRequestMultiPart, account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::UpdateImageResponse) }
457
+ def update(image_upload_request_multi_part:, account_id:, image_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
447
458
  # update - Replace an existing image and, optionally, its metadata.
448
459
  #
449
460
  # This endpoint replaces the existing image with the new PNG, JPEG, or WebP. Omit
@@ -505,6 +516,9 @@ module Moov
505
516
  req.headers.merge!(headers)
506
517
  req.options.timeout = timeout unless timeout.nil?
507
518
  Utils.configure_request_security(req, security)
519
+ http_headers&.each do |key, value|
520
+ req.headers[key.to_s] = value
521
+ end
508
522
 
509
523
  @sdk_configuration.hooks.before_request(
510
524
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -607,8 +621,8 @@ module Moov
607
621
  end
608
622
 
609
623
 
610
- sig { params(account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::DeleteImageResponse) }
611
- def delete(account_id:, image_id:, x_moov_version: nil, timeout_ms: nil)
624
+ sig { params(account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::DeleteImageResponse) }
625
+ def delete(account_id:, image_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
612
626
  # delete - Disable an image by its ID.
613
627
  #
614
628
  # Disabled images are still be accessible via their public URL, and cannot be assigned
@@ -657,6 +671,9 @@ module Moov
657
671
  req.headers.merge!(headers)
658
672
  req.options.timeout = timeout unless timeout.nil?
659
673
  Utils.configure_request_security(req, security)
674
+ http_headers&.each do |key, value|
675
+ req.headers[key.to_s] = value
676
+ end
660
677
 
661
678
  @sdk_configuration.hooks.before_request(
662
679
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -735,8 +752,8 @@ module Moov
735
752
  end
736
753
 
737
754
 
738
- sig { params(image_metadata_request: Models::Components::ImageMetadataRequest, account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::UpdateImageMetadataResponse) }
739
- def update_metadata(image_metadata_request:, account_id:, image_id:, x_moov_version: nil, timeout_ms: nil)
755
+ sig { params(image_metadata_request: Models::Components::ImageMetadataRequest, account_id: ::String, image_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::UpdateImageMetadataResponse) }
756
+ def update_metadata(image_metadata_request:, account_id:, image_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
740
757
  # update_metadata - Replace the metadata for an existing image.
741
758
  request = Models::Operations::UpdateImageMetadataRequest.new(
742
759
  account_id: account_id,
@@ -795,6 +812,9 @@ module Moov
795
812
  req.headers.merge!(headers)
796
813
  req.options.timeout = timeout unless timeout.nil?
797
814
  Utils.configure_request_security(req, security)
815
+ http_headers&.each do |key, value|
816
+ req.headers[key.to_s] = value
817
+ end
798
818
 
799
819
  @sdk_configuration.hooks.before_request(
800
820
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -897,8 +917,8 @@ module Moov
897
917
  end
898
918
 
899
919
 
900
- sig { params(public_id: ::String, if_none_match: T.nilable(::String), size: T.nilable(::String), timeout_ms: T.nilable(Integer), accept_header_override: T.nilable(String)).returns(Models::Operations::GetPublicImageResponse) }
901
- def get_public(public_id:, if_none_match: nil, size: nil, timeout_ms: nil, accept_header_override: nil)
920
+ sig { params(public_id: ::String, if_none_match: T.nilable(::String), size: T.nilable(::String), timeout_ms: T.nilable(Integer), accept_header_override: T.nilable(String), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::GetPublicImageResponse) }
921
+ def get_public(public_id:, if_none_match: nil, size: nil, timeout_ms: nil, accept_header_override: nil, http_headers: nil)
902
922
  # get_public - Get an image by its public ID.
903
923
  request = Models::Operations::GetPublicImageRequest.new(
904
924
  public_id: public_id,
@@ -920,8 +940,6 @@ module Moov
920
940
  headers['Accept'] = accept_header_override || 'image/jpeg;q=1, image/png;q=0.7, image/webp;q=0'
921
941
  headers['user-agent'] = @sdk_configuration.user_agent
922
942
 
923
- security = @sdk_configuration.security_source&.call
924
-
925
943
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
926
944
  timeout ||= @sdk_configuration.timeout
927
945
 
@@ -933,7 +951,7 @@ module Moov
933
951
  base_url: base_url,
934
952
  oauth2_scopes: nil,
935
953
  operation_id: 'getPublicImage',
936
- security_source: @sdk_configuration.security_source
954
+ security_source: nil
937
955
  )
938
956
 
939
957
  error = T.let(nil, T.nilable(StandardError))
@@ -945,7 +963,9 @@ module Moov
945
963
  req.headers.merge!(headers)
946
964
  req.options.timeout = timeout unless timeout.nil?
947
965
  req.params = query_params
948
- Utils.configure_request_security(req, security)
966
+ http_headers&.each do |key, value|
967
+ req.headers[key.to_s] = value
968
+ end
949
969
 
950
970
  @sdk_configuration.hooks.before_request(
951
971
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -1059,5 +1079,5 @@ module Moov
1059
1079
 
1060
1080
  end
1061
1081
  end
1062
- end
1082
+ end
1063
1083
  end
@@ -39,8 +39,10 @@ module Moov
39
39
  end
40
40
 
41
41
 
42
- sig { params(x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListIndustriesResponse) }
43
- def list(x_moov_version: nil, timeout_ms: nil)
42
+
43
+
44
+ sig { params(x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListIndustriesResponse) }
45
+ def list(x_moov_version: nil, timeout_ms: nil, http_headers: nil)
44
46
  # list - Returns a list of industries relevant to merchant profile enrichment. Results are ordered by industry name.
45
47
  #
46
48
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/),
@@ -81,6 +83,9 @@ module Moov
81
83
  req.headers.merge!(headers)
82
84
  req.options.timeout = timeout unless timeout.nil?
83
85
  Utils.configure_request_security(req, security)
86
+ http_headers&.each do |key, value|
87
+ req.headers[key.to_s] = value
88
+ end
84
89
 
85
90
  @sdk_configuration.hooks.before_request(
86
91
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -151,5 +156,5 @@ module Moov
151
156
 
152
157
  end
153
158
  end
154
- end
159
+ end
155
160
  end
@@ -39,8 +39,10 @@ module Moov
39
39
  end
40
40
 
41
41
 
42
- sig { params(x_moov_version: T.nilable(::String), name: T.nilable(::String), routing_number: T.nilable(::String), limit: T.nilable(::Integer), timeout_ms: T.nilable(Integer)).returns(Models::Operations::SearchInstitutionsResponse) }
43
- def search_institutions(x_moov_version: nil, name: nil, routing_number: nil, limit: nil, timeout_ms: nil)
42
+
43
+
44
+ sig { params(x_moov_version: T.nilable(::String), name: T.nilable(::String), routing_number: T.nilable(::String), limit: T.nilable(::Integer), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::SearchInstitutionsResponse) }
45
+ def search_institutions(x_moov_version: nil, name: nil, routing_number: nil, limit: nil, timeout_ms: nil, http_headers: nil)
44
46
  # search_institutions - Search for financial institutions by name or routing number.
45
47
  #
46
48
  # This endpoint returns metadata about each matched institution, including basic identifying details (such as name, routing number, and address) and information about which payment services they support (e.g., ACH, RTP, and Wire).
@@ -90,6 +92,9 @@ module Moov
90
92
  req.options.timeout = timeout unless timeout.nil?
91
93
  req.params = query_params
92
94
  Utils.configure_request_security(req, security)
95
+ http_headers&.each do |key, value|
96
+ req.headers[key.to_s] = value
97
+ end
93
98
 
94
99
  @sdk_configuration.hooks.before_request(
95
100
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -162,8 +167,8 @@ module Moov
162
167
  end
163
168
 
164
169
 
165
- sig { params(request: Models::Operations::ListInstitutionsRequest, timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListInstitutionsResponse) }
166
- def search(request:, timeout_ms: nil)
170
+ sig { params(request: Models::Operations::ListInstitutionsRequest, timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListInstitutionsResponse) }
171
+ def search(request:, timeout_ms: nil, http_headers: nil)
167
172
  # search - This endpoint has been deprecated and will be removed in a future release. Use [/institutions](https://docs.moov.io/api/enrichment/form-shortening/institutions/get/).
168
173
  #
169
174
  # Search for institutions by either their name or routing number.
@@ -207,6 +212,9 @@ module Moov
207
212
  req.options.timeout = timeout unless timeout.nil?
208
213
  req.params = query_params
209
214
  Utils.configure_request_security(req, security)
215
+ http_headers&.each do |key, value|
216
+ req.headers[key.to_s] = value
217
+ end
210
218
 
211
219
  @sdk_configuration.hooks.before_request(
212
220
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -292,5 +300,5 @@ module Moov
292
300
 
293
301
  end
294
302
  end
295
- end
303
+ end
296
304
  end
data/lib/moov/invoices.rb CHANGED
@@ -39,8 +39,10 @@ module Moov
39
39
  end
40
40
 
41
41
 
42
- sig { params(create_invoice: Models::Components::CreateInvoice, account_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::CreateInvoiceResponse) }
43
- def create_invoice(create_invoice:, account_id:, x_moov_version: nil, timeout_ms: nil)
42
+
43
+
44
+ sig { params(create_invoice: Models::Components::CreateInvoice, account_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::CreateInvoiceResponse) }
45
+ def create_invoice(create_invoice:, account_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
44
46
  # create_invoice - Create an invoice for a Moov account.
45
47
  #
46
48
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -101,6 +103,9 @@ module Moov
101
103
  req.headers.merge!(headers)
102
104
  req.options.timeout = timeout unless timeout.nil?
103
105
  Utils.configure_request_security(req, security)
106
+ http_headers&.each do |key, value|
107
+ req.headers[key.to_s] = value
108
+ end
104
109
 
105
110
  @sdk_configuration.hooks.before_request(
106
111
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -203,8 +208,8 @@ module Moov
203
208
  end
204
209
 
205
210
 
206
- sig { params(request: Models::Operations::ListInvoicesRequest, timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListInvoicesResponse) }
207
- def list_invoices(request:, timeout_ms: nil)
211
+ sig { params(request: Models::Operations::ListInvoicesRequest, timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListInvoicesResponse) }
212
+ def list_invoices(request:, timeout_ms: nil, http_headers: nil)
208
213
  # list_invoices - List all the invoices created under a Moov account.
209
214
  #
210
215
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -250,6 +255,9 @@ module Moov
250
255
  req.options.timeout = timeout unless timeout.nil?
251
256
  req.params = query_params
252
257
  Utils.configure_request_security(req, security)
258
+ http_headers&.each do |key, value|
259
+ req.headers[key.to_s] = value
260
+ end
253
261
 
254
262
  @sdk_configuration.hooks.before_request(
255
263
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -337,8 +345,8 @@ module Moov
337
345
  end
338
346
 
339
347
 
340
- sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetInvoiceResponse) }
341
- def get_invoice(account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil)
348
+ sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::GetInvoiceResponse) }
349
+ def get_invoice(account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
342
350
  # get_invoice - Retrieve an invoice by ID.
343
351
  #
344
352
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -387,6 +395,9 @@ module Moov
387
395
  req.headers.merge!(headers)
388
396
  req.options.timeout = timeout unless timeout.nil?
389
397
  Utils.configure_request_security(req, security)
398
+ http_headers&.each do |key, value|
399
+ req.headers[key.to_s] = value
400
+ end
390
401
 
391
402
  @sdk_configuration.hooks.before_request(
392
403
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -459,8 +470,8 @@ module Moov
459
470
  end
460
471
 
461
472
 
462
- sig { params(update_invoice: Models::Components::UpdateInvoice, account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::UpdateInvoiceResponse) }
463
- def update_invoice(update_invoice:, account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil)
473
+ sig { params(update_invoice: Models::Components::UpdateInvoice, account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::UpdateInvoiceResponse) }
474
+ def update_invoice(update_invoice:, account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
464
475
  # update_invoice - Updates an invoice.
465
476
  #
466
477
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -522,6 +533,9 @@ module Moov
522
533
  req.headers.merge!(headers)
523
534
  req.options.timeout = timeout unless timeout.nil?
524
535
  Utils.configure_request_security(req, security)
536
+ http_headers&.each do |key, value|
537
+ req.headers[key.to_s] = value
538
+ end
525
539
 
526
540
  @sdk_configuration.hooks.before_request(
527
541
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -624,8 +638,145 @@ module Moov
624
638
  end
625
639
 
626
640
 
627
- sig { params(create_invoice_payment: Models::Components::CreateInvoicePayment, account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::CreateInvoicePaymentResponse) }
628
- def create_invoice_payment(create_invoice_payment:, account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil)
641
+ sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::DeleteInvoiceResponse) }
642
+ def delete(account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
643
+ # delete - Delete an invoice. Only invoices in `draft` status can be deleted.
644
+ #
645
+ # Deleting an invoice indicates it was created by mistake and should be completely disregarded.
646
+ # Deleted invoices are hidden from list results by default, but can still be retrieved
647
+ # individually through the get invoice endpoint. If you need to void an invoice that was
648
+ # already sent or is otherwise part of the invoice history, cancel it instead by updating
649
+ # its status to `canceled`.
650
+ #
651
+ # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
652
+ # you'll need to specify the `/accounts/{accountID}/invoices.write` scope.
653
+ request = Models::Operations::DeleteInvoiceRequest.new(
654
+ account_id: account_id,
655
+ invoice_id: invoice_id,
656
+ x_moov_version: x_moov_version
657
+ )
658
+ url, params = @sdk_configuration.get_server_details
659
+ base_url = Utils.template_url(url, params)
660
+ url = Utils.generate_url(
661
+ Models::Operations::DeleteInvoiceRequest,
662
+ base_url,
663
+ '/accounts/{accountID}/invoices/{invoiceID}',
664
+ request,
665
+ @sdk_configuration.globals
666
+ )
667
+ headers = Utils.get_headers(request, @sdk_configuration.globals)
668
+ headers = T.cast(headers, T::Hash[String, String])
669
+ headers['Accept'] = 'application/json'
670
+ headers['user-agent'] = @sdk_configuration.user_agent
671
+
672
+ security = @sdk_configuration.security_source&.call
673
+
674
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
675
+ timeout ||= @sdk_configuration.timeout
676
+
677
+
678
+ connection = @sdk_configuration.client
679
+
680
+ hook_ctx = SDKHooks::HookContext.new(
681
+ config: @sdk_configuration,
682
+ base_url: base_url,
683
+ oauth2_scopes: nil,
684
+ operation_id: 'deleteInvoice',
685
+ security_source: @sdk_configuration.security_source
686
+ )
687
+
688
+ error = T.let(nil, T.nilable(StandardError))
689
+ http_response = T.let(nil, T.nilable(Faraday::Response))
690
+
691
+
692
+ begin
693
+ http_response = T.must(connection).delete(url) do |req|
694
+ req.headers.merge!(headers)
695
+ req.options.timeout = timeout unless timeout.nil?
696
+ Utils.configure_request_security(req, security)
697
+ http_headers&.each do |key, value|
698
+ req.headers[key.to_s] = value
699
+ end
700
+
701
+ @sdk_configuration.hooks.before_request(
702
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
703
+ hook_ctx: hook_ctx
704
+ ),
705
+ request: req
706
+ )
707
+ end
708
+ rescue StandardError => e
709
+ error = e
710
+ ensure
711
+ if http_response.nil? || Utils.error_status?(http_response.status)
712
+ http_response = @sdk_configuration.hooks.after_error(
713
+ error: error,
714
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
715
+ hook_ctx: hook_ctx
716
+ ),
717
+ response: http_response
718
+ )
719
+ else
720
+ http_response = @sdk_configuration.hooks.after_success(
721
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
722
+ hook_ctx: hook_ctx
723
+ ),
724
+ response: http_response
725
+ )
726
+ end
727
+
728
+ if http_response.nil?
729
+ raise error if !error.nil?
730
+ raise 'no response'
731
+ end
732
+ end
733
+
734
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
735
+ if Utils.match_status_code(http_response.status, ['204'])
736
+ http_response = @sdk_configuration.hooks.after_success(
737
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
738
+ hook_ctx: hook_ctx
739
+ ),
740
+ response: http_response
741
+ )
742
+ return Models::Operations::DeleteInvoiceResponse.new(
743
+ status_code: http_response.status,
744
+ content_type: content_type,
745
+ raw_response: http_response,
746
+ headers: {}
747
+ )
748
+ elsif Utils.match_status_code(http_response.status, ['400', '409'])
749
+ if Utils.match_content_type(content_type, 'application/json')
750
+ http_response = @sdk_configuration.hooks.after_success(
751
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
752
+ hook_ctx: hook_ctx
753
+ ),
754
+ response: http_response
755
+ )
756
+ response_data = http_response.env.response_body
757
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::GenericError)
758
+ obj.raw_response = http_response
759
+ raise obj
760
+ else
761
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
762
+ end
763
+ elsif Utils.match_status_code(http_response.status, ['401', '403', '404', '429'])
764
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
765
+ elsif Utils.match_status_code(http_response.status, ['500', '504'])
766
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
767
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
768
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
769
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
770
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
771
+ else
772
+ raise ::Moov::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
773
+
774
+ end
775
+ end
776
+
777
+
778
+ sig { params(create_invoice_payment: Models::Components::CreateInvoicePayment, account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::CreateInvoicePaymentResponse) }
779
+ def create_invoice_payment(create_invoice_payment:, account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
629
780
  # create_invoice_payment - Creates a payment resource to represent that an invoice was paid outside of the Moov platform.
630
781
  # If a payment link was created for the invoice, the corresponding payment link is canceled, but a receipt is still sent.
631
782
  #
@@ -688,6 +839,9 @@ module Moov
688
839
  req.headers.merge!(headers)
689
840
  req.options.timeout = timeout unless timeout.nil?
690
841
  Utils.configure_request_security(req, security)
842
+ http_headers&.each do |key, value|
843
+ req.headers[key.to_s] = value
844
+ end
691
845
 
692
846
  @sdk_configuration.hooks.before_request(
693
847
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -790,8 +944,8 @@ module Moov
790
944
  end
791
945
 
792
946
 
793
- sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListInvoicePaymentsResponse) }
794
- def list_invoice_payments(account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil)
947
+ sig { params(account_id: ::String, invoice_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListInvoicePaymentsResponse) }
948
+ def list_invoice_payments(account_id:, invoice_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
795
949
  # list_invoice_payments - List all the payments made towards an invoice.
796
950
  #
797
951
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -840,6 +994,9 @@ module Moov
840
994
  req.headers.merge!(headers)
841
995
  req.options.timeout = timeout unless timeout.nil?
842
996
  Utils.configure_request_security(req, security)
997
+ http_headers&.each do |key, value|
998
+ req.headers[key.to_s] = value
999
+ end
843
1000
 
844
1001
  @sdk_configuration.hooks.before_request(
845
1002
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -910,5 +1067,5 @@ module Moov
910
1067
 
911
1068
  end
912
1069
  end
913
- end
1070
+ end
914
1071
  end
@@ -39,8 +39,10 @@ module Moov
39
39
  end
40
40
 
41
41
 
42
- sig { params(request: Models::Operations::ListIssuedCardAuthorizationsRequest, timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListIssuedCardAuthorizationsResponse) }
43
- def list_authorizations(request:, timeout_ms: nil)
42
+
43
+
44
+ sig { params(request: Models::Operations::ListIssuedCardAuthorizationsRequest, timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListIssuedCardAuthorizationsResponse) }
45
+ def list_authorizations(request:, timeout_ms: nil, http_headers: nil)
44
46
  # list_authorizations - List issued card authorizations associated with a Moov account.
45
47
  #
46
48
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -86,6 +88,9 @@ module Moov
86
88
  req.options.timeout = timeout unless timeout.nil?
87
89
  req.params = query_params
88
90
  Utils.configure_request_security(req, security)
91
+ http_headers&.each do |key, value|
92
+ req.headers[key.to_s] = value
93
+ end
89
94
 
90
95
  @sdk_configuration.hooks.before_request(
91
96
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -158,8 +163,8 @@ module Moov
158
163
  end
159
164
 
160
165
 
161
- sig { params(account_id: ::String, authorization_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetIssuedCardAuthorizationResponse) }
162
- def get_authorization(account_id:, authorization_id:, x_moov_version: nil, timeout_ms: nil)
166
+ sig { params(account_id: ::String, authorization_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::GetIssuedCardAuthorizationResponse) }
167
+ def get_authorization(account_id:, authorization_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
163
168
  # get_authorization - Retrieves details of an authorization associated with a specific Moov account.
164
169
  #
165
170
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -208,6 +213,9 @@ module Moov
208
213
  req.headers.merge!(headers)
209
214
  req.options.timeout = timeout unless timeout.nil?
210
215
  Utils.configure_request_security(req, security)
216
+ http_headers&.each do |key, value|
217
+ req.headers[key.to_s] = value
218
+ end
211
219
 
212
220
  @sdk_configuration.hooks.before_request(
213
221
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -280,8 +288,8 @@ module Moov
280
288
  end
281
289
 
282
290
 
283
- sig { params(request: Models::Operations::ListIssuedCardAuthorizationEventsRequest, timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListIssuedCardAuthorizationEventsResponse) }
284
- def list_authorization_events(request:, timeout_ms: nil)
291
+ sig { params(request: Models::Operations::ListIssuedCardAuthorizationEventsRequest, timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListIssuedCardAuthorizationEventsResponse) }
292
+ def list_authorization_events(request:, timeout_ms: nil, http_headers: nil)
285
293
  # list_authorization_events - List card network and Moov platform events that affect the authorization and its hold on a wallet balance.
286
294
  #
287
295
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -327,6 +335,9 @@ module Moov
327
335
  req.options.timeout = timeout unless timeout.nil?
328
336
  req.params = query_params
329
337
  Utils.configure_request_security(req, security)
338
+ http_headers&.each do |key, value|
339
+ req.headers[key.to_s] = value
340
+ end
330
341
 
331
342
  @sdk_configuration.hooks.before_request(
332
343
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -399,8 +410,8 @@ module Moov
399
410
  end
400
411
 
401
412
 
402
- sig { params(request: Models::Operations::ListIssuedCardTransactionsRequest, timeout_ms: T.nilable(Integer)).returns(Models::Operations::ListIssuedCardTransactionsResponse) }
403
- def list(request:, timeout_ms: nil)
413
+ sig { params(request: Models::Operations::ListIssuedCardTransactionsRequest, timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::ListIssuedCardTransactionsResponse) }
414
+ def list(request:, timeout_ms: nil, http_headers: nil)
404
415
  # list - List issued card transactions associated with a Moov account.
405
416
  #
406
417
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -446,6 +457,9 @@ module Moov
446
457
  req.options.timeout = timeout unless timeout.nil?
447
458
  req.params = query_params
448
459
  Utils.configure_request_security(req, security)
460
+ http_headers&.each do |key, value|
461
+ req.headers[key.to_s] = value
462
+ end
449
463
 
450
464
  @sdk_configuration.hooks.before_request(
451
465
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -518,8 +532,8 @@ module Moov
518
532
  end
519
533
 
520
534
 
521
- sig { params(account_id: ::String, card_transaction_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetIssuedCardTransactionResponse) }
522
- def get(account_id:, card_transaction_id:, x_moov_version: nil, timeout_ms: nil)
535
+ sig { params(account_id: ::String, card_transaction_id: ::String, x_moov_version: T.nilable(::String), timeout_ms: T.nilable(Integer), http_headers: T.nilable(T::Hash[T.any(String, Symbol), String])).returns(Models::Operations::GetIssuedCardTransactionResponse) }
536
+ def get(account_id:, card_transaction_id:, x_moov_version: nil, timeout_ms: nil, http_headers: nil)
523
537
  # get - Retrieves details of an issued card transaction associated with a specific Moov account.
524
538
  #
525
539
  # To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/)
@@ -568,6 +582,9 @@ module Moov
568
582
  req.headers.merge!(headers)
569
583
  req.options.timeout = timeout unless timeout.nil?
570
584
  Utils.configure_request_security(req, security)
585
+ http_headers&.each do |key, value|
586
+ req.headers[key.to_s] = value
587
+ end
571
588
 
572
589
  @sdk_configuration.hooks.before_request(
573
590
  hook_ctx: SDKHooks::BeforeRequestHookContext.new(
@@ -638,5 +655,5 @@ module Moov
638
655
 
639
656
  end
640
657
  end
641
- end
658
+ end
642
659
  end
@@ -19,7 +19,8 @@ module Moov
19
19
  # The quantity of this item.
20
20
  field :quantity, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity'), required: true } }
21
21
  # Optional unique identifier associating the line item with a product.
22
- # This is for reporting or tracking purposes, and does not populate other details of the line item.
22
+ # When provided, images associated with the product will be included on the line item.
23
+ # This does not populate other details of the line item.
23
24
  field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('productID') } }
24
25
  # Optional list of modifiers applied to this item (e.g., toppings, upgrades, customizations).
25
26
  field :options, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CreateInvoiceLineItemOption)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options') } }
@@ -26,7 +26,8 @@ module Moov
26
26
  # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
27
27
  field :image_i_ds, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('imageIDs') } }
28
28
  # Optional unique identifier associating the line item with a product.
29
- # This is for reporting or tracking purposes, and does not populate other details of the line item.
29
+ # When provided, images associated with the product will be included on the line item.
30
+ # This does not populate other details of the line item.
30
31
  field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('productID') } }
31
32
 
32
33
  sig { params(name: ::String, base_price: Models::Components::AmountDecimal, quantity: ::Integer, options: T.nilable(T::Array[Models::Components::CreatePaymentLinkLineItemOption]), image_i_ds: T.nilable(T::Array[::String]), product_id: T.nilable(::String)).void }