moneykit 0.1.2 → 0.1.3

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 (204) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +1 -1
  4. data/docs/AccessTokenApi.md +10 -22
  5. data/docs/AccountNumbersApi.md +4 -8
  6. data/docs/AccountNumbersLinkProduct.md +4 -0
  7. data/docs/AccountNumbersProductSettings.md +1 -3
  8. data/docs/AccountsApi.md +10 -22
  9. data/docs/AccountsLinkProduct.md +5 -1
  10. data/docs/Body.md +1 -1
  11. data/docs/GetHoldingsResponse.md +24 -0
  12. data/docs/GetInvestmentTransactionsResponse.md +30 -0
  13. data/docs/HoldingResponse.md +30 -0
  14. data/docs/IdentityApi.md +1 -3
  15. data/docs/IdentityLinkProduct.md +4 -0
  16. data/docs/IdentityProductSettings.md +1 -3
  17. data/docs/InstitutionsApi.md +5 -11
  18. data/docs/InvestmentTransactionResponse.md +40 -0
  19. data/docs/InvestmentsApi.md +163 -0
  20. data/docs/InvestmentsLinkProduct.md +26 -0
  21. data/docs/InvestmentsProductSettings.md +1 -3
  22. data/docs/LinkCommon.md +1 -1
  23. data/docs/LinkError.md +15 -0
  24. data/docs/LinkProductFailureReasons.md +15 -0
  25. data/docs/LinkProducts.md +3 -1
  26. data/docs/LinkResponse.md +1 -1
  27. data/docs/LinkSessionApi.md +8 -16
  28. data/docs/LinkStateChangedWebhook.md +1 -1
  29. data/docs/LinksApi.md +20 -40
  30. data/docs/MoneyKitConnectFeatures.md +1 -1
  31. data/docs/ProductsApi.md +4 -8
  32. data/docs/Response401GetHoldingsLinksIdInvestmentsHoldingsGet.md +22 -0
  33. data/docs/Response401GetInvestmentTransactionsLinksIdInvestmentsTransactionsGet.md +22 -0
  34. data/docs/Response401GetTransactions.md +22 -0
  35. data/docs/Response401GetUserTransactions.md +22 -0
  36. data/docs/ResponseHandleLinkWebhookEventRequestBodyWebhookPost.md +1 -1
  37. data/docs/SecurityResponse.md +34 -0
  38. data/docs/TransactionSyncResponse.md +1 -1
  39. data/docs/TransactionsApi.md +5 -11
  40. data/docs/TransactionsLinkProduct.md +4 -0
  41. data/docs/TransactionsProductSettings.md +0 -2
  42. data/docs/UsersApi.md +6 -14
  43. data/docs/WebhooksApi.md +4 -8
  44. data/lib/moneykit/api/access_token_api.rb +1 -10
  45. data/lib/moneykit/api/account_numbers_api.rb +1 -4
  46. data/lib/moneykit/api/accounts_api.rb +1 -13
  47. data/lib/moneykit/api/identity_api.rb +1 -4
  48. data/lib/moneykit/api/institutions_api.rb +1 -7
  49. data/lib/moneykit/api/investments_api.rb +178 -0
  50. data/lib/moneykit/api/link_session_api.rb +1 -7
  51. data/lib/moneykit/api/links_api.rb +1 -16
  52. data/lib/moneykit/api/products_api.rb +1 -4
  53. data/lib/moneykit/api/transactions_api.rb +5 -14
  54. data/lib/moneykit/api/users_api.rb +1 -10
  55. data/lib/moneykit/api/webhooks_api.rb +1 -4
  56. data/lib/moneykit/api_client.rb +1 -1
  57. data/lib/moneykit/api_error.rb +1 -1
  58. data/lib/moneykit/configuration.rb +1 -1
  59. data/lib/moneykit/models/account.rb +1 -1
  60. data/lib/moneykit/models/account_balances.rb +1 -1
  61. data/lib/moneykit/models/account_group.rb +1 -1
  62. data/lib/moneykit/models/account_identity.rb +1 -1
  63. data/lib/moneykit/models/account_numbers.rb +1 -1
  64. data/lib/moneykit/models/account_numbers_link_product.rb +43 -2
  65. data/lib/moneykit/models/account_numbers_product_settings.rb +5 -36
  66. data/lib/moneykit/models/account_with_account_numbers.rb +1 -1
  67. data/lib/moneykit/models/accounts_link_product.rb +46 -5
  68. data/lib/moneykit/models/ach_number.rb +1 -1
  69. data/lib/moneykit/models/address.rb +1 -1
  70. data/lib/moneykit/models/api_error_auth_expired_access_token_response.rb +1 -1
  71. data/lib/moneykit/models/api_error_auth_unauthorized_response.rb +1 -1
  72. data/lib/moneykit/models/api_error_rate_limit_exceeded_response.rb +1 -1
  73. data/lib/moneykit/models/bacs_number.rb +1 -1
  74. data/lib/moneykit/models/basic_account_details.rb +1 -1
  75. data/lib/moneykit/models/body.rb +1 -1
  76. data/lib/moneykit/models/country.rb +1 -1
  77. data/lib/moneykit/models/create_link_session_request.rb +1 -1
  78. data/lib/moneykit/models/create_link_session_response.rb +1 -1
  79. data/lib/moneykit/models/currency.rb +1 -1
  80. data/lib/moneykit/models/cursor_pagination.rb +1 -1
  81. data/lib/moneykit/models/customer_app.rb +1 -1
  82. data/lib/moneykit/models/eft_number.rb +1 -1
  83. data/lib/moneykit/models/email.rb +1 -1
  84. data/lib/moneykit/models/exchange_token_request.rb +1 -1
  85. data/lib/moneykit/models/exchange_token_response.rb +1 -1
  86. data/lib/moneykit/models/generate_access_token_response.rb +1 -1
  87. data/lib/moneykit/models/get_account_numbers_response.rb +1 -1
  88. data/lib/moneykit/models/get_account_response.rb +1 -1
  89. data/lib/moneykit/models/get_accounts_response.rb +1 -1
  90. data/lib/moneykit/models/get_holdings_response.rb +273 -0
  91. data/lib/moneykit/models/get_institutions_response.rb +1 -1
  92. data/lib/moneykit/models/get_investment_transactions_response.rb +324 -0
  93. data/lib/moneykit/models/get_transactions_response.rb +1 -1
  94. data/lib/moneykit/models/get_user_accounts_response.rb +1 -1
  95. data/lib/moneykit/models/get_user_links_response.rb +1 -1
  96. data/lib/moneykit/models/get_user_transactions_response.rb +1 -1
  97. data/lib/moneykit/models/holding_response.rb +294 -0
  98. data/lib/moneykit/models/http_validation_error.rb +1 -1
  99. data/lib/moneykit/models/identity_link_product.rb +43 -2
  100. data/lib/moneykit/models/identity_product_settings.rb +5 -36
  101. data/lib/moneykit/models/identity_response.rb +1 -1
  102. data/lib/moneykit/models/institution.rb +1 -1
  103. data/lib/moneykit/models/institution_error_not_found_response.rb +1 -1
  104. data/lib/moneykit/models/international_number.rb +1 -1
  105. data/lib/moneykit/models/introspect_client_response.rb +1 -1
  106. data/lib/moneykit/models/investment_transaction_response.rb +365 -0
  107. data/lib/moneykit/models/investments_link_product.rb +280 -0
  108. data/lib/moneykit/models/investments_product_settings.rb +5 -36
  109. data/lib/moneykit/models/jwk_set.rb +1 -1
  110. data/lib/moneykit/models/link_common.rb +2 -2
  111. data/lib/moneykit/models/link_error.rb +44 -0
  112. data/lib/moneykit/models/link_error_bad_config_response.rb +1 -1
  113. data/lib/moneykit/models/link_error_bad_state_response.rb +1 -1
  114. data/lib/moneykit/models/link_error_deleted_response.rb +1 -1
  115. data/lib/moneykit/models/link_error_forbidden_action_response.rb +1 -1
  116. data/lib/moneykit/models/link_error_not_found_response.rb +1 -1
  117. data/lib/moneykit/models/link_error_unauthorized_access_response.rb +1 -1
  118. data/lib/moneykit/models/link_permission_scope.rb +1 -1
  119. data/lib/moneykit/models/link_permissions.rb +1 -1
  120. data/lib/moneykit/models/link_product_failure_reasons.rb +44 -0
  121. data/lib/moneykit/models/link_product_refresh_webhook.rb +1 -1
  122. data/lib/moneykit/models/link_product_state.rb +1 -1
  123. data/lib/moneykit/models/link_products.rb +14 -5
  124. data/lib/moneykit/models/link_response.rb +2 -2
  125. data/lib/moneykit/models/link_session_customer_user.rb +1 -1
  126. data/lib/moneykit/models/link_session_customer_user_email.rb +1 -1
  127. data/lib/moneykit/models/link_session_customer_user_phone.rb +1 -1
  128. data/lib/moneykit/models/link_session_error_forbidden_config_response.rb +1 -1
  129. data/lib/moneykit/models/link_session_error_invalid_token_exchange.rb +1 -1
  130. data/lib/moneykit/models/link_session_setting_overrides.rb +1 -1
  131. data/lib/moneykit/models/link_state.rb +1 -1
  132. data/lib/moneykit/models/link_state_changed_webhook.rb +2 -2
  133. data/lib/moneykit/models/money_kit_connect_features.rb +2 -2
  134. data/lib/moneykit/models/owner.rb +1 -1
  135. data/lib/moneykit/models/phone_number.rb +1 -1
  136. data/lib/moneykit/models/phone_number_type.rb +1 -1
  137. data/lib/moneykit/models/product.rb +1 -1
  138. data/lib/moneykit/models/products_settings.rb +1 -1
  139. data/lib/moneykit/models/provider.rb +1 -1
  140. data/lib/moneykit/models/refresh_products_request.rb +1 -1
  141. data/lib/moneykit/models/requested_link_permission.rb +1 -1
  142. data/lib/moneykit/models/response401_disconnect_links_id_delete.rb +1 -1
  143. data/lib/moneykit/models/response401_exchange_token_link_session_exchange_token_post.rb +1 -1
  144. data/lib/moneykit/models/response401_get_account_links_id_accounts_account_id_get.rb +1 -1
  145. data/lib/moneykit/models/response401_get_account_numbers_links_id_accounts_numbers_get.rb +1 -1
  146. data/lib/moneykit/models/response401_get_accounts_links_id_accounts_get.rb +1 -1
  147. data/lib/moneykit/models/response401_get_holdings_links_id_investments_holdings_get.rb +104 -0
  148. data/lib/moneykit/models/response401_get_identities_links_id_identity_get.rb +1 -1
  149. data/lib/moneykit/models/response401_get_institution_institutions_institution_id_get.rb +1 -1
  150. data/lib/moneykit/models/response401_get_institutions_institutions_get.rb +1 -1
  151. data/lib/moneykit/models/response401_get_investment_transactions_links_id_investments_transactions_get.rb +104 -0
  152. data/lib/moneykit/models/response401_get_link_links_id_get.rb +1 -1
  153. data/lib/moneykit/models/response401_get_transactions.rb +104 -0
  154. data/lib/moneykit/models/response401_get_transactions_diff_links_id_transactions_sync_get.rb +1 -1
  155. data/lib/moneykit/models/response401_get_user_accounts_users_id_accounts_get.rb +1 -1
  156. data/lib/moneykit/models/response401_get_user_links_users_id_links_get.rb +1 -1
  157. data/lib/moneykit/models/response401_get_user_transactions.rb +103 -0
  158. data/lib/moneykit/models/response401_get_well_known_jwks_well_known_jwks_json_get.rb +1 -1
  159. data/lib/moneykit/models/response401_instrospect_client_auth_introspect_get.rb +1 -1
  160. data/lib/moneykit/models/response401_refresh_products_links_id_products_post.rb +1 -1
  161. data/lib/moneykit/models/response401_reset_login_links_id_reset_post.rb +1 -1
  162. data/lib/moneykit/models/response401_trigger_test_link_webhook_event_webhooks_test_link_id_post.rb +1 -1
  163. data/lib/moneykit/models/response401_update_link_links_id_patch.rb +1 -1
  164. data/lib/moneykit/models/response_handle_link_webhook_event_request_body_webhook_post.rb +1 -1
  165. data/lib/moneykit/models/security_response.rb +321 -0
  166. data/lib/moneykit/models/transaction.rb +1 -1
  167. data/lib/moneykit/models/transaction_diff.rb +1 -1
  168. data/lib/moneykit/models/transaction_sync_response.rb +2 -2
  169. data/lib/moneykit/models/transaction_type.rb +1 -1
  170. data/lib/moneykit/models/transaction_type_filter.rb +1 -1
  171. data/lib/moneykit/models/transaction_updates_available_webhook.rb +1 -1
  172. data/lib/moneykit/models/transactions_link_product.rb +43 -2
  173. data/lib/moneykit/models/transactions_product_settings.rb +2 -33
  174. data/lib/moneykit/models/update_link_request.rb +1 -1
  175. data/lib/moneykit/models/validation_error.rb +1 -1
  176. data/lib/moneykit/models/validation_error_location_inner.rb +1 -1
  177. data/lib/moneykit/models/webhook_link_test_event.rb +1 -1
  178. data/lib/moneykit/models/webhook_test_link_request.rb +1 -1
  179. data/lib/moneykit/models/webhook_test_link_response.rb +1 -1
  180. data/lib/moneykit/version.rb +2 -2
  181. data/lib/moneykit.rb +14 -4
  182. data/moneykit.gemspec +1 -1
  183. data/spec/api/investments_api_spec.rb +65 -0
  184. data/spec/api_client_spec.rb +1 -1
  185. data/spec/configuration_spec.rb +1 -1
  186. data/spec/models/get_holdings_response_spec.rb +54 -0
  187. data/spec/models/get_investment_transactions_response_spec.rb +72 -0
  188. data/spec/models/holding_response_spec.rb +72 -0
  189. data/spec/models/investment_transaction_response_spec.rb +102 -0
  190. data/spec/models/investments_link_product_spec.rb +60 -0
  191. data/spec/models/link_error_spec.rb +30 -0
  192. data/spec/models/link_product_failure_reasons_spec.rb +30 -0
  193. data/spec/models/response401_get_holdings_links_id_investments_holdings_get_spec.rb +21 -0
  194. data/spec/models/response401_get_investment_transactions_links_id_investments_transactions_get_spec.rb +21 -0
  195. data/spec/models/response401_get_transactions_spec.rb +21 -0
  196. data/spec/models/response401_get_user_transactions_spec.rb +21 -0
  197. data/spec/models/security_response_spec.rb +84 -0
  198. data/spec/spec_helper.rb +1 -1
  199. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/gem_make.out +5 -5
  200. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  201. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.1.1.1/gem_make.out +5 -5
  202. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.7.3/gem_make.out +5 -5
  203. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.1.0/gem_make.out +5 -5
  204. metadata +54 -2
@@ -0,0 +1,294 @@
1
+ =begin
2
+ #MoneyKit API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 2023-02-18
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.1.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module MoneyKit
17
+ class HoldingResponse
18
+ # The MoneyKit ID of the account for this holding.
19
+ attr_accessor :account_id
20
+
21
+ # The MoneyKit ID of the security for this holding.
22
+ attr_accessor :security_id
23
+
24
+ # The units of this security (aka \"shares\") held.
25
+ attr_accessor :quantity
26
+
27
+ # The per-share price of this holding, as reported by the institution, denominated in account currency.
28
+ attr_accessor :price
29
+
30
+ # The timestamp for which the institution-reported price is valid.
31
+ attr_accessor :price_datetime
32
+
33
+ # The value of this holding, as reported by the institution, denominated in account currency.
34
+ attr_accessor :value
35
+
36
+ # The total purchase cost of the holding, as reported by the institution, denominated in account currency.
37
+ attr_accessor :cost_basis
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ :'account_id' => :'account_id',
43
+ :'security_id' => :'security_id',
44
+ :'quantity' => :'quantity',
45
+ :'price' => :'price',
46
+ :'price_datetime' => :'price_datetime',
47
+ :'value' => :'value',
48
+ :'cost_basis' => :'cost_basis'
49
+ }
50
+ end
51
+
52
+ # Returns all the JSON keys this model knows about
53
+ def self.acceptable_attributes
54
+ attribute_map.values
55
+ end
56
+
57
+ # Attribute type mapping.
58
+ def self.openapi_types
59
+ {
60
+ :'account_id' => :'String',
61
+ :'security_id' => :'String',
62
+ :'quantity' => :'String',
63
+ :'price' => :'String',
64
+ :'price_datetime' => :'Time',
65
+ :'value' => :'String',
66
+ :'cost_basis' => :'String'
67
+ }
68
+ end
69
+
70
+ # List of attributes with nullable: true
71
+ def self.openapi_nullable
72
+ Set.new([
73
+ ])
74
+ end
75
+
76
+ # Initializes the object
77
+ # @param [Hash] attributes Model attributes in the form of hash
78
+ def initialize(attributes = {})
79
+ if (!attributes.is_a?(Hash))
80
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MoneyKit::HoldingResponse` initialize method"
81
+ end
82
+
83
+ # check to see if the attribute exists and convert string to symbol for hash key
84
+ attributes = attributes.each_with_object({}) { |(k, v), h|
85
+ if (!self.class.attribute_map.key?(k.to_sym))
86
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MoneyKit::HoldingResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
87
+ end
88
+ h[k.to_sym] = v
89
+ }
90
+
91
+ if attributes.key?(:'account_id')
92
+ self.account_id = attributes[:'account_id']
93
+ else
94
+ self.account_id = nil
95
+ end
96
+
97
+ if attributes.key?(:'security_id')
98
+ self.security_id = attributes[:'security_id']
99
+ else
100
+ self.security_id = nil
101
+ end
102
+
103
+ if attributes.key?(:'quantity')
104
+ self.quantity = attributes[:'quantity']
105
+ else
106
+ self.quantity = nil
107
+ end
108
+
109
+ if attributes.key?(:'price')
110
+ self.price = attributes[:'price']
111
+ end
112
+
113
+ if attributes.key?(:'price_datetime')
114
+ self.price_datetime = attributes[:'price_datetime']
115
+ end
116
+
117
+ if attributes.key?(:'value')
118
+ self.value = attributes[:'value']
119
+ end
120
+
121
+ if attributes.key?(:'cost_basis')
122
+ self.cost_basis = attributes[:'cost_basis']
123
+ end
124
+ end
125
+
126
+ # Show invalid properties with the reasons. Usually used together with valid?
127
+ # @return Array for valid properties with the reasons
128
+ def list_invalid_properties
129
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
130
+ invalid_properties = Array.new
131
+ if @account_id.nil?
132
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
133
+ end
134
+
135
+ if @security_id.nil?
136
+ invalid_properties.push('invalid value for "security_id", security_id cannot be nil.')
137
+ end
138
+
139
+ if @quantity.nil?
140
+ invalid_properties.push('invalid value for "quantity", quantity cannot be nil.')
141
+ end
142
+
143
+ invalid_properties
144
+ end
145
+
146
+ # Check to see if the all the properties in the model are valid
147
+ # @return true if the model is valid
148
+ def valid?
149
+ warn '[DEPRECATED] the `valid?` method is obsolete'
150
+ return false if @account_id.nil?
151
+ return false if @security_id.nil?
152
+ return false if @quantity.nil?
153
+ true
154
+ end
155
+
156
+ # Checks equality by comparing each attribute.
157
+ # @param [Object] Object to be compared
158
+ def ==(o)
159
+ return true if self.equal?(o)
160
+ self.class == o.class &&
161
+ account_id == o.account_id &&
162
+ security_id == o.security_id &&
163
+ quantity == o.quantity &&
164
+ price == o.price &&
165
+ price_datetime == o.price_datetime &&
166
+ value == o.value &&
167
+ cost_basis == o.cost_basis
168
+ end
169
+
170
+ # @see the `==` method
171
+ # @param [Object] Object to be compared
172
+ def eql?(o)
173
+ self == o
174
+ end
175
+
176
+ # Calculates hash code according to all attributes.
177
+ # @return [Integer] Hash code
178
+ def hash
179
+ [account_id, security_id, quantity, price, price_datetime, value, cost_basis].hash
180
+ end
181
+
182
+ # Builds the object from hash
183
+ # @param [Hash] attributes Model attributes in the form of hash
184
+ # @return [Object] Returns the model itself
185
+ def self.build_from_hash(attributes)
186
+ return nil unless attributes.is_a?(Hash)
187
+ attributes = attributes.transform_keys(&:to_sym)
188
+ transformed_hash = {}
189
+ openapi_types.each_pair do |key, type|
190
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
191
+ transformed_hash["#{key}"] = nil
192
+ elsif type =~ /\AArray<(.*)>/i
193
+ # check to ensure the input is an array given that the attribute
194
+ # is documented as an array but the input is not
195
+ if attributes[attribute_map[key]].is_a?(Array)
196
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
197
+ end
198
+ elsif !attributes[attribute_map[key]].nil?
199
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
200
+ end
201
+ end
202
+ new(transformed_hash)
203
+ end
204
+
205
+ # Deserializes the data based on type
206
+ # @param string type Data type
207
+ # @param string value Value to be deserialized
208
+ # @return [Object] Deserialized data
209
+ def self._deserialize(type, value)
210
+ case type.to_sym
211
+ when :Time
212
+ Time.parse(value)
213
+ when :Date
214
+ Date.parse(value)
215
+ when :String
216
+ value.to_s
217
+ when :Integer
218
+ value.to_i
219
+ when :Float
220
+ value.to_f
221
+ when :Boolean
222
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
223
+ true
224
+ else
225
+ false
226
+ end
227
+ when :Object
228
+ # generic object (usually a Hash), return directly
229
+ value
230
+ when /\AArray<(?<inner_type>.+)>\z/
231
+ inner_type = Regexp.last_match[:inner_type]
232
+ value.map { |v| _deserialize(inner_type, v) }
233
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
234
+ k_type = Regexp.last_match[:k_type]
235
+ v_type = Regexp.last_match[:v_type]
236
+ {}.tap do |hash|
237
+ value.each do |k, v|
238
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
239
+ end
240
+ end
241
+ else # model
242
+ # models (e.g. Pet) or oneOf
243
+ klass = MoneyKit.const_get(type)
244
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
245
+ end
246
+ end
247
+
248
+ # Returns the string representation of the object
249
+ # @return [String] String presentation of the object
250
+ def to_s
251
+ to_hash.to_s
252
+ end
253
+
254
+ # to_body is an alias to to_hash (backward compatibility)
255
+ # @return [Hash] Returns the object in the form of hash
256
+ def to_body
257
+ to_hash
258
+ end
259
+
260
+ # Returns the object in the form of hash
261
+ # @return [Hash] Returns the object in the form of hash
262
+ def to_hash
263
+ hash = {}
264
+ self.class.attribute_map.each_pair do |attr, param|
265
+ value = self.send(attr)
266
+ if value.nil?
267
+ is_nullable = self.class.openapi_nullable.include?(attr)
268
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
269
+ end
270
+
271
+ hash[param] = _to_hash(value)
272
+ end
273
+ hash
274
+ end
275
+
276
+ # Outputs non-array value in the form of hash
277
+ # For object, use to_hash. Otherwise, just return the value
278
+ # @param [Object] value Any valid value
279
+ # @return [Hash] Returns the value in the form of hash
280
+ def _to_hash(value)
281
+ if value.is_a?(Array)
282
+ value.compact.map { |v| _to_hash(v) }
283
+ elsif value.is_a?(Hash)
284
+ {}.tap do |hash|
285
+ value.each { |k, v| hash[k] = _to_hash(v) }
286
+ end
287
+ elsif value.respond_to? :to_hash
288
+ value.to_hash
289
+ else
290
+ value
291
+ end
292
+ end
293
+ end
294
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -21,13 +21,42 @@ module MoneyKit
21
21
  # An ISO-8601 timestamp indicating the last time that the product was attempted.
22
22
  attr_accessor :last_attempted_at
23
23
 
24
+ attr_accessor :error_code
25
+
26
+ # The error message, if the last attempt to refresh the product failed.
27
+ attr_accessor :error_message
28
+
24
29
  attr_accessor :settings
25
30
 
31
+ class EnumAttributeValidator
32
+ attr_reader :datatype
33
+ attr_reader :allowable_values
34
+
35
+ def initialize(datatype, allowable_values)
36
+ @allowable_values = allowable_values.map do |value|
37
+ case datatype.to_s
38
+ when /Integer/i
39
+ value.to_i
40
+ when /Float/i
41
+ value.to_f
42
+ else
43
+ value
44
+ end
45
+ end
46
+ end
47
+
48
+ def valid?(value)
49
+ !value || allowable_values.include?(value)
50
+ end
51
+ end
52
+
26
53
  # Attribute mapping from ruby-style variable name to JSON key.
27
54
  def self.attribute_map
28
55
  {
29
56
  :'refreshed_at' => :'refreshed_at',
30
57
  :'last_attempted_at' => :'last_attempted_at',
58
+ :'error_code' => :'error_code',
59
+ :'error_message' => :'error_message',
31
60
  :'settings' => :'settings'
32
61
  }
33
62
  end
@@ -42,6 +71,8 @@ module MoneyKit
42
71
  {
43
72
  :'refreshed_at' => :'Time',
44
73
  :'last_attempted_at' => :'Time',
74
+ :'error_code' => :'LinkProductFailureReasons',
75
+ :'error_message' => :'String',
45
76
  :'settings' => :'IdentityProductSettings'
46
77
  }
47
78
  end
@@ -75,6 +106,14 @@ module MoneyKit
75
106
  self.last_attempted_at = attributes[:'last_attempted_at']
76
107
  end
77
108
 
109
+ if attributes.key?(:'error_code')
110
+ self.error_code = attributes[:'error_code']
111
+ end
112
+
113
+ if attributes.key?(:'error_message')
114
+ self.error_message = attributes[:'error_message']
115
+ end
116
+
78
117
  if attributes.key?(:'settings')
79
118
  self.settings = attributes[:'settings']
80
119
  else
@@ -109,6 +148,8 @@ module MoneyKit
109
148
  self.class == o.class &&
110
149
  refreshed_at == o.refreshed_at &&
111
150
  last_attempted_at == o.last_attempted_at &&
151
+ error_code == o.error_code &&
152
+ error_message == o.error_message &&
112
153
  settings == o.settings
113
154
  end
114
155
 
@@ -121,7 +162,7 @@ module MoneyKit
121
162
  # Calculates hash code according to all attributes.
122
163
  # @return [Integer] Hash code
123
164
  def hash
124
- [refreshed_at, last_attempted_at, settings].hash
165
+ [refreshed_at, last_attempted_at, error_code, error_message, settings].hash
125
166
  end
126
167
 
127
168
  # Builds the object from hash
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -21,36 +21,11 @@ module MoneyKit
21
21
  # If true, the data will be available as soon as possible after linking, even if `required` is false. If false, the data will be available after the first manual data refresh.
22
22
  attr_accessor :prefetch
23
23
 
24
- attr_accessor :product
25
-
26
- class EnumAttributeValidator
27
- attr_reader :datatype
28
- attr_reader :allowable_values
29
-
30
- def initialize(datatype, allowable_values)
31
- @allowable_values = allowable_values.map do |value|
32
- case datatype.to_s
33
- when /Integer/i
34
- value.to_i
35
- when /Float/i
36
- value.to_f
37
- else
38
- value
39
- end
40
- end
41
- end
42
-
43
- def valid?(value)
44
- !value || allowable_values.include?(value)
45
- end
46
- end
47
-
48
24
  # Attribute mapping from ruby-style variable name to JSON key.
49
25
  def self.attribute_map
50
26
  {
51
27
  :'required' => :'required',
52
- :'prefetch' => :'prefetch',
53
- :'product' => :'product'
28
+ :'prefetch' => :'prefetch'
54
29
  }
55
30
  end
56
31
 
@@ -63,8 +38,7 @@ module MoneyKit
63
38
  def self.openapi_types
64
39
  {
65
40
  :'required' => :'Boolean',
66
- :'prefetch' => :'Boolean',
67
- :'product' => :'Product'
41
+ :'prefetch' => :'Boolean'
68
42
  }
69
43
  end
70
44
 
@@ -100,10 +74,6 @@ module MoneyKit
100
74
  else
101
75
  self.prefetch = false
102
76
  end
103
-
104
- if attributes.key?(:'product')
105
- self.product = attributes[:'product']
106
- end
107
77
  end
108
78
 
109
79
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -127,8 +97,7 @@ module MoneyKit
127
97
  return true if self.equal?(o)
128
98
  self.class == o.class &&
129
99
  required == o.required &&
130
- prefetch == o.prefetch &&
131
- product == o.product
100
+ prefetch == o.prefetch
132
101
  end
133
102
 
134
103
  # @see the `==` method
@@ -140,7 +109,7 @@ module MoneyKit
140
109
  # Calculates hash code according to all attributes.
141
110
  # @return [Integer] Hash code
142
111
  def hash
143
- [required, prefetch, product].hash
112
+ [required, prefetch].hash
144
113
  end
145
114
 
146
115
  # Builds the object from hash
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 0.1.0
6
+ The version of the OpenAPI document: 2023-02-18
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 7.1.0