moov_ruby 0.3.17 → 0.3.19

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 (40) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/accounts.rb +276 -0
  3. data/lib/moov/invoices.rb +1 -1
  4. data/lib/moov/models/components/createtransfer.rb +2 -2
  5. data/lib/moov/models/components/createtransferlineitem.rb +53 -0
  6. data/lib/moov/models/components/{transferlineitemvalidationerror.rbi → createtransferlineitem.rbi} +8 -6
  7. data/lib/moov/models/components/createtransferlineitemoption.rb +49 -0
  8. data/lib/moov/models/components/{transferlineitemoptionvalidationerror.rbi → createtransferlineitemoption.rbi} +8 -6
  9. data/lib/moov/models/components/{transferlineitemoptionvalidationerror.rb → createtransferlineitemoptionvalidationerror.rb} +7 -3
  10. data/lib/moov/models/components/createtransferlineitemoptionvalidationerror.rbi +21 -0
  11. data/lib/moov/models/components/createtransferlineitems.rb +34 -0
  12. data/lib/moov/models/components/{transferlineitemsvalidationerror.rbi → createtransferlineitems.rbi} +2 -2
  13. data/lib/moov/models/components/{transferlineitemsvalidationerror.rb → createtransferlineitemsvalidationerror.rb} +3 -3
  14. data/lib/moov/models/components/createtransferlineitemsvalidationerror.rbi +13 -0
  15. data/lib/moov/models/components/{transferlineitemvalidationerror.rb → createtransferlineitemvalidationerror.rb} +8 -4
  16. data/lib/moov/models/components/createtransferlineitemvalidationerror.rbi +23 -0
  17. data/lib/moov/models/components/sharescopes.rb +37 -0
  18. data/lib/moov/models/components/sharescopes.rbi +15 -0
  19. data/lib/moov/models/components/transferlineitem.rb +6 -2
  20. data/lib/moov/models/components/transferlineitem.rbi +2 -0
  21. data/lib/moov/models/components/transferlineitemimagemetadata.rb +45 -0
  22. data/lib/moov/models/components/transferlineitemimagemetadata.rbi +19 -0
  23. data/lib/moov/models/components/transferlineitemoption.rb +6 -2
  24. data/lib/moov/models/components/transferlineitemoption.rbi +2 -0
  25. data/lib/moov/models/components.rb +8 -3
  26. data/lib/moov/models/errors/connectaccountrequestvalidationerror.rb +41 -0
  27. data/lib/moov/models/errors/connectaccountrequestvalidationerror.rbi +17 -0
  28. data/lib/moov/models/errors/transfervalidationerror.rb +2 -2
  29. data/lib/moov/models/errors.rb +1 -0
  30. data/lib/moov/models/operations/connectaccount_request.rb +50 -0
  31. data/lib/moov/models/operations/connectaccount_request.rbi +17 -0
  32. data/lib/moov/models/operations/connectaccount_response.rb +45 -0
  33. data/lib/moov/models/operations/connectaccount_response.rbi +19 -0
  34. data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rb +101 -0
  35. data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rbi +33 -0
  36. data/lib/moov/models/operations/listconnectedaccountsforaccount_response.rb +49 -0
  37. data/lib/moov/models/operations/listconnectedaccountsforaccount_response.rbi +21 -0
  38. data/lib/moov/models/operations.rb +4 -0
  39. data/lib/moov/sdkconfiguration.rb +3 -3
  40. metadata +28 -8
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateTransferLineItemValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateTransferLineItemValidationError
11
+ def product_id(); end
12
+ def product_id=(str_); end
13
+ def name(); end
14
+ def name=(str_); end
15
+ def base_price(); end
16
+ def base_price=(str_); end
17
+ def options(); end
18
+ def options=(str_); end
19
+ def quantity(); end
20
+ def quantity=(str_); end
21
+ def image_i_ds(); end
22
+ def image_i_ds=(str_); end
23
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ # Describes the scopes being shared from a subject account to a principal account.
12
+ class ShareScopes
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The account ID that will receive access to the scopes.
17
+ field :principal_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('principalAccountID'), required: true } }
18
+ # The list of scopes to share with the principal account. If none are provided, all intersecting scopes are added.
19
+ field :allow_scopes, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::ApplicationScope)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowScopes') } }
20
+
21
+ sig { params(principal_account_id: ::String, allow_scopes: T.nilable(T::Array[Models::Components::ApplicationScope])).void }
22
+ def initialize(principal_account_id:, allow_scopes: nil)
23
+ @principal_account_id = principal_account_id
24
+ @allow_scopes = allow_scopes
25
+ end
26
+
27
+ sig { params(other: T.untyped).returns(T::Boolean) }
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @principal_account_id == other.principal_account_id
31
+ return false unless @allow_scopes == other.allow_scopes
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::ShareScopes
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::ShareScopes
11
+ def principal_account_id(); end
12
+ def principal_account_id=(str_); end
13
+ def allow_scopes(); end
14
+ def allow_scopes=(str_); end
15
+ end
@@ -21,15 +21,18 @@ module Moov
21
21
  field :quantity, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity'), required: true } }
22
22
  # Optional list of modifiers applied to this item (e.g., toppings, upgrades, customizations).
23
23
  field :options, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferLineItemOption)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options') } }
24
+ # Optional list of images associated with this line item.
25
+ field :images, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferLineItemImageMetadata)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('images') } }
24
26
  # Optional unique identifier associating the line item with a product.
25
27
  field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('productID') } }
26
28
 
27
- sig { params(name: ::String, base_price: Models::Components::AmountDecimal, quantity: ::Integer, options: T.nilable(T::Array[Models::Components::TransferLineItemOption]), product_id: T.nilable(::String)).void }
28
- def initialize(name:, base_price:, quantity:, options: nil, product_id: nil)
29
+ sig { params(name: ::String, base_price: Models::Components::AmountDecimal, quantity: ::Integer, options: T.nilable(T::Array[Models::Components::TransferLineItemOption]), images: T.nilable(T::Array[Models::Components::TransferLineItemImageMetadata]), product_id: T.nilable(::String)).void }
30
+ def initialize(name:, base_price:, quantity:, options: nil, images: nil, product_id: nil)
29
31
  @name = name
30
32
  @base_price = base_price
31
33
  @quantity = quantity
32
34
  @options = options
35
+ @images = images
33
36
  @product_id = product_id
34
37
  end
35
38
 
@@ -40,6 +43,7 @@ module Moov
40
43
  return false unless @base_price == other.base_price
41
44
  return false unless @quantity == other.quantity
42
45
  return false unless @options == other.options
46
+ return false unless @images == other.images
43
47
  return false unless @product_id == other.product_id
44
48
  true
45
49
  end
@@ -16,6 +16,8 @@ class Moov::Models::Components::TransferLineItem
16
16
  def quantity=(str_); end
17
17
  def options(); end
18
18
  def options=(str_); end
19
+ def images(); end
20
+ def images=(str_); end
19
21
  def product_id(); end
20
22
  def product_id=(str_); end
21
23
  end
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+
12
+ class TransferLineItemImageMetadata
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Unique identifier for a image resource.
17
+ field :image_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('imageID'), required: true } }
18
+ # The image's public URL.
19
+ field :link, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('link'), required: true } }
20
+ # A unique identifier for an image, used in public image links.
21
+ field :public_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('publicID'), required: true } }
22
+ # Alternative text for the image.
23
+ field :alt_text, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('altText') } }
24
+
25
+ sig { params(image_id: ::String, link: ::String, public_id: ::String, alt_text: T.nilable(::String)).void }
26
+ def initialize(image_id:, link:, public_id:, alt_text: nil)
27
+ @image_id = image_id
28
+ @link = link
29
+ @public_id = public_id
30
+ @alt_text = alt_text
31
+ end
32
+
33
+ sig { params(other: T.untyped).returns(T::Boolean) }
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @image_id == other.image_id
37
+ return false unless @link == other.link
38
+ return false unless @public_id == other.public_id
39
+ return false unless @alt_text == other.alt_text
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferLineItemImageMetadata
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferLineItemImageMetadata
11
+ def image_id(); end
12
+ def image_id=(str_); end
13
+ def link(); end
14
+ def link=(str_); end
15
+ def public_id(); end
16
+ def public_id=(str_); end
17
+ def alt_text(); end
18
+ def alt_text=(str_); end
19
+ end
@@ -19,14 +19,17 @@ module Moov
19
19
  field :quantity, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity'), required: true } }
20
20
  # Optional price modification applied by this option. Can be positive, negative, or zero.
21
21
  field :price_modifier, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priceModifier') } }
22
+ # Optional list of images associated with this line item option.
23
+ field :images, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferLineItemImageMetadata)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('images') } }
22
24
  # Optional group identifier to categorize related options (e.g., 'toppings').
23
25
  field :group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('group') } }
24
26
 
25
- sig { params(name: ::String, quantity: ::Integer, price_modifier: T.nilable(Models::Components::AmountDecimal), group: T.nilable(::String)).void }
26
- def initialize(name:, quantity:, price_modifier: nil, group: nil)
27
+ sig { params(name: ::String, quantity: ::Integer, price_modifier: T.nilable(Models::Components::AmountDecimal), images: T.nilable(T::Array[Models::Components::TransferLineItemImageMetadata]), group: T.nilable(::String)).void }
28
+ def initialize(name:, quantity:, price_modifier: nil, images: nil, group: nil)
27
29
  @name = name
28
30
  @quantity = quantity
29
31
  @price_modifier = price_modifier
32
+ @images = images
30
33
  @group = group
31
34
  end
32
35
 
@@ -36,6 +39,7 @@ module Moov
36
39
  return false unless @name == other.name
37
40
  return false unless @quantity == other.quantity
38
41
  return false unless @price_modifier == other.price_modifier
42
+ return false unless @images == other.images
39
43
  return false unless @group == other.group
40
44
  true
41
45
  end
@@ -14,6 +14,8 @@ class Moov::Models::Components::TransferLineItemOption
14
14
  def quantity=(str_); end
15
15
  def price_modifier(); end
16
16
  def price_modifier=(str_); end
17
+ def images(); end
18
+ def images=(str_); end
17
19
  def group(); end
18
20
  def group=(str_); end
19
21
  end
@@ -195,6 +195,12 @@ module Moov
195
195
  autoload :CreateTransferDestination, 'moov/models/components/createtransferdestination.rb'
196
196
  autoload :CreateTransferDestinationACH, 'moov/models/components/createtransferdestinationach.rb'
197
197
  autoload :CreateTransferDestinationCard, 'moov/models/components/createtransferdestinationcard.rb'
198
+ autoload :CreateTransferLineItem, 'moov/models/components/createtransferlineitem.rb'
199
+ autoload :CreateTransferLineItemOption, 'moov/models/components/createtransferlineitemoption.rb'
200
+ autoload :CreateTransferLineItemOptionValidationError, 'moov/models/components/createtransferlineitemoptionvalidationerror.rb'
201
+ autoload :CreateTransferLineItemValidationError, 'moov/models/components/createtransferlineitemvalidationerror.rb'
202
+ autoload :CreateTransferLineItems, 'moov/models/components/createtransferlineitems.rb'
203
+ autoload :CreateTransferLineItemsValidationError, 'moov/models/components/createtransferlineitemsvalidationerror.rb'
198
204
  autoload :CreateTransferOptions, 'moov/models/components/createtransferoptions.rb'
199
205
  autoload :CreateTransferSource, 'moov/models/components/createtransfersource.rb'
200
206
  autoload :CreateTransferSourceACH, 'moov/models/components/createtransfersourceach.rb'
@@ -456,6 +462,7 @@ module Moov
456
462
  autoload :SendFundsRtpError, 'moov/models/components/sendfundsrtperror.rb'
457
463
  autoload :SentReceipt, 'moov/models/components/sentreceipt.rb'
458
464
  autoload :Settings, 'moov/models/components/settings.rb'
465
+ autoload :ShareScopes, 'moov/models/components/sharescopes.rb'
459
466
  autoload :SourceDestinationOptions, 'moov/models/components/sourcedestinationoptions.rb'
460
467
  autoload :Statement, 'moov/models/components/statement.rb'
461
468
  autoload :SubmissionIntent, 'moov/models/components/submissionintent.rb'
@@ -491,11 +498,9 @@ module Moov
491
498
  autoload :TransferDestination, 'moov/models/components/transferdestination.rb'
492
499
  autoload :TransferFailureReason, 'moov/models/components/transferfailurereason.rb'
493
500
  autoload :TransferLineItem, 'moov/models/components/transferlineitem.rb'
501
+ autoload :TransferLineItemImageMetadata, 'moov/models/components/transferlineitemimagemetadata.rb'
494
502
  autoload :TransferLineItemOption, 'moov/models/components/transferlineitemoption.rb'
495
- autoload :TransferLineItemOptionValidationError, 'moov/models/components/transferlineitemoptionvalidationerror.rb'
496
- autoload :TransferLineItemValidationError, 'moov/models/components/transferlineitemvalidationerror.rb'
497
503
  autoload :TransferLineItems, 'moov/models/components/transferlineitems.rb'
498
- autoload :TransferLineItemsValidationError, 'moov/models/components/transferlineitemsvalidationerror.rb'
499
504
  autoload :TransferOptions, 'moov/models/components/transferoptions.rb'
500
505
  autoload :TransferParty, 'moov/models/components/transferparty.rb'
501
506
  autoload :TransferSource, 'moov/models/components/transfersource.rb'
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Errors
10
+
11
+
12
+ class ConnectAccountRequestValidationError < StandardError
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :principal_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('principalAccountID') } }
18
+
19
+ field :allow_scopes, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowScopes') } }
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
22
+
23
+ sig { params(principal_account_id: T.nilable(::String), allow_scopes: T.nilable(T::Hash[Symbol, ::String]), raw_response: T.nilable(::Faraday::Response)).void }
24
+ def initialize(principal_account_id: nil, allow_scopes: nil, raw_response: nil)
25
+ @principal_account_id = principal_account_id
26
+ @allow_scopes = allow_scopes
27
+ @raw_response = raw_response
28
+ end
29
+
30
+ sig { params(other: T.untyped).returns(T::Boolean) }
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @principal_account_id == other.principal_account_id
34
+ return false unless @allow_scopes == other.allow_scopes
35
+ return false unless @raw_response == other.raw_response
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Errors::ConnectAccountRequestValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::ConnectAccountRequestValidationError
11
+ def principal_account_id(); end
12
+ def principal_account_id=(str_); end
13
+ def allow_scopes(); end
14
+ def allow_scopes=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ end
@@ -34,11 +34,11 @@ module Moov
34
34
 
35
35
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
36
36
 
37
- field :line_items, Crystalline::Nilable.new(Models::Components::TransferLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
37
+ field :line_items, Crystalline::Nilable.new(Models::Components::CreateTransferLineItemsValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
38
38
  # Raw HTTP response; suitable for custom response parsing
39
39
  field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
40
40
 
41
- sig { params(amount: T.nilable(::String), source: T.nilable(::String), source_payment_method_id: T.nilable(::String), destination_payment_method_id: T.nilable(::String), description: T.nilable(::String), facilitator_fee_total_decimal: T.nilable(::String), facilitator_fee_markup_decimal: T.nilable(::String), metadata: T.nilable(::String), sales_tax_amount: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
41
+ sig { params(amount: T.nilable(::String), source: T.nilable(::String), source_payment_method_id: T.nilable(::String), destination_payment_method_id: T.nilable(::String), description: T.nilable(::String), facilitator_fee_total_decimal: T.nilable(::String), facilitator_fee_markup_decimal: T.nilable(::String), metadata: T.nilable(::String), sales_tax_amount: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::CreateTransferLineItemsValidationError), raw_response: T.nilable(::Faraday::Response)).void }
42
42
  def initialize(amount: nil, source: nil, source_payment_method_id: nil, destination_payment_method_id: nil, description: nil, facilitator_fee_total_decimal: nil, facilitator_fee_markup_decimal: nil, metadata: nil, sales_tax_amount: nil, foreign_id: nil, line_items: nil, raw_response: nil)
43
43
  @amount = amount
44
44
  @source = source
@@ -14,6 +14,7 @@ module Moov
14
14
  autoload :BankAccountValidationError, 'moov/models/errors/bankaccountvalidationerror.rb'
15
15
  autoload :BrandValidationError, 'moov/models/errors/brandvalidationerror.rb'
16
16
  autoload :CardAcquiringRefundError, 'moov/models/errors/cardacquiringrefund_error.rb'
17
+ autoload :ConnectAccountRequestValidationError, 'moov/models/errors/connectaccountrequestvalidationerror.rb'
17
18
  autoload :CreateAccountError, 'moov/models/errors/createaccounterror.rb'
18
19
  autoload :CreateInvoiceError, 'moov/models/errors/createinvoiceerror.rb'
19
20
  autoload :CreatePaymentLinkError, 'moov/models/errors/createpaymentlinkerror.rb'
@@ -0,0 +1,50 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Operations
10
+
11
+
12
+ class ConnectAccountRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
18
+
19
+ field :share_scopes, Models::Components::ShareScopes, { 'request': { 'media_type': 'application/json' } }
20
+ # Specify an API version.
21
+ #
22
+ # API versioning follows the format `vYYYY.QQ.BB`, where
23
+ # - `YYYY` is the year
24
+ # - `QQ` is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
25
+ # - `BB` is the build number, starting at `.01`, for subsequent builds in the same quarter.
26
+ # - For example, `v2024.01.00` is the initial release of the first quarter of 2024.
27
+ #
28
+ # The `latest` version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
29
+ # When no version is specified, the API defaults to `v2024.01.00`.
30
+ field :x_moov_version, Crystalline::Nilable.new(::String), { 'header': { 'field_name': 'X-Moov-Version', 'style': 'simple', 'explode': false } }
31
+
32
+ sig { params(account_id: ::String, share_scopes: Models::Components::ShareScopes, x_moov_version: T.nilable(::String)).void }
33
+ def initialize(account_id:, share_scopes:, x_moov_version: nil)
34
+ @account_id = account_id
35
+ @share_scopes = share_scopes
36
+ @x_moov_version = x_moov_version
37
+ end
38
+
39
+ sig { params(other: T.untyped).returns(T::Boolean) }
40
+ def ==(other)
41
+ return false unless other.is_a? self.class
42
+ return false unless @account_id == other.account_id
43
+ return false unless @share_scopes == other.share_scopes
44
+ return false unless @x_moov_version == other.x_moov_version
45
+ true
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ConnectAccountRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ConnectAccountRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def share_scopes(); end
14
+ def share_scopes=(str_); end
15
+ def x_moov_version(); end
16
+ def x_moov_version=(str_); end
17
+ end
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Operations
10
+
11
+
12
+ class ConnectAccountResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+
23
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
24
+
25
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]]).void }
26
+ def initialize(content_type:, status_code:, raw_response:, headers:)
27
+ @content_type = content_type
28
+ @status_code = status_code
29
+ @raw_response = raw_response
30
+ @headers = headers
31
+ end
32
+
33
+ sig { params(other: T.untyped).returns(T::Boolean) }
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @content_type == other.content_type
37
+ return false unless @status_code == other.status_code
38
+ return false unless @raw_response == other.raw_response
39
+ return false unless @headers == other.headers
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ConnectAccountResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ConnectAccountResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ end
@@ -0,0 +1,101 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Operations
10
+
11
+
12
+ class ListConnectedAccountsForAccountRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
18
+ # Specify an API version.
19
+ #
20
+ # API versioning follows the format `vYYYY.QQ.BB`, where
21
+ # - `YYYY` is the year
22
+ # - `QQ` is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
23
+ # - `BB` is the build number, starting at `.01`, for subsequent builds in the same quarter.
24
+ # - For example, `v2024.01.00` is the initial release of the first quarter of 2024.
25
+ #
26
+ # The `latest` version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
27
+ # When no version is specified, the API defaults to `v2024.01.00`.
28
+ field :x_moov_version, Crystalline::Nilable.new(::String), { 'header': { 'field_name': 'X-Moov-Version', 'style': 'simple', 'explode': false } }
29
+ # Filter connected accounts by name.
30
+ #
31
+ # If provided, this query will attempt to find matches against the following Account and Profile fields:
32
+ # <ul>
33
+ # <li>Account `displayName`</li>
34
+ # <li>Individual Profile `firstName`, `middleName`, and `lastName`</li>
35
+ # <li>Business Profile `legalBusinessName`</li>
36
+ # </ul>
37
+ #
38
+ # Filtering by Guest Profile `name` is not currently supported.
39
+ field :name, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'name', 'style': 'form', 'explode': false } }
40
+ # Filter connected accounts by email address.
41
+ #
42
+ # Provide the full email address to filter by email.
43
+ field :email, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'email', 'style': 'form', 'explode': false } }
44
+ # Filter connected accounts by AccountType.
45
+ #
46
+ # If the `type` parameter is used in combination with `name`, only the corresponding type's name fields will
47
+ # be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against
48
+ # the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
49
+ #
50
+ # Filtering by `type=guest` is not currently supported.
51
+ field :type, Crystalline::Nilable.new(Models::Components::CreateAccountType), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': false } }
52
+ # Serves as an optional alias from a foreign/external system which can be used to reference this resource.
53
+ field :foreign_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'foreignID', 'style': 'form', 'explode': false } }
54
+ # Filter disconnected accounts.
55
+ #
56
+ # If true, the response will include disconnected accounts.
57
+ field :include_disconnected, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'includeDisconnected', 'style': 'form', 'explode': false } }
58
+ # Filter connected accounts by the capability.
59
+ field :capability, Crystalline::Nilable.new(Models::Components::CapabilityID), { 'query_param': { 'field_name': 'capability', 'style': 'form', 'explode': false } }
60
+ # Filter connected accounts by the capability.
61
+ field :capability_status, Crystalline::Nilable.new(Models::Components::CapabilityStatus), { 'query_param': { 'field_name': 'capabilityStatus', 'style': 'form', 'explode': false } }
62
+
63
+ field :skip, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'skip', 'style': 'form', 'explode': false } }
64
+
65
+ field :count, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'count', 'style': 'form', 'explode': false } }
66
+
67
+ sig { params(account_id: ::String, x_moov_version: T.nilable(::String), name: T.nilable(::String), email: T.nilable(::String), type: T.nilable(Models::Components::CreateAccountType), foreign_id: T.nilable(::String), include_disconnected: T.nilable(T::Boolean), capability: T.nilable(Models::Components::CapabilityID), capability_status: T.nilable(Models::Components::CapabilityStatus), skip: T.nilable(::Integer), count: T.nilable(::Integer)).void }
68
+ def initialize(account_id:, x_moov_version: nil, name: nil, email: nil, type: nil, foreign_id: nil, include_disconnected: nil, capability: nil, capability_status: nil, skip: nil, count: nil)
69
+ @account_id = account_id
70
+ @x_moov_version = x_moov_version
71
+ @name = name
72
+ @email = email
73
+ @type = type
74
+ @foreign_id = foreign_id
75
+ @include_disconnected = include_disconnected
76
+ @capability = capability
77
+ @capability_status = capability_status
78
+ @skip = skip
79
+ @count = count
80
+ end
81
+
82
+ sig { params(other: T.untyped).returns(T::Boolean) }
83
+ def ==(other)
84
+ return false unless other.is_a? self.class
85
+ return false unless @account_id == other.account_id
86
+ return false unless @x_moov_version == other.x_moov_version
87
+ return false unless @name == other.name
88
+ return false unless @email == other.email
89
+ return false unless @type == other.type
90
+ return false unless @foreign_id == other.foreign_id
91
+ return false unless @include_disconnected == other.include_disconnected
92
+ return false unless @capability == other.capability
93
+ return false unless @capability_status == other.capability_status
94
+ return false unless @skip == other.skip
95
+ return false unless @count == other.count
96
+ true
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Operations::ListConnectedAccountsForAccountRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ListConnectedAccountsForAccountRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def x_moov_version(); end
14
+ def x_moov_version=(str_); end
15
+ def name(); end
16
+ def name=(str_); end
17
+ def email(); end
18
+ def email=(str_); end
19
+ def type(); end
20
+ def type=(str_); end
21
+ def foreign_id(); end
22
+ def foreign_id=(str_); end
23
+ def include_disconnected(); end
24
+ def include_disconnected=(str_); end
25
+ def capability(); end
26
+ def capability=(str_); end
27
+ def capability_status(); end
28
+ def capability_status=(str_); end
29
+ def skip(); end
30
+ def skip=(str_); end
31
+ def count(); end
32
+ def count=(str_); end
33
+ end