fuse_client 1.0.31 → 1.0.33

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 (307) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +7 -8
  3. data/README.md +4 -1
  4. data/docs/AddSpendPowerTransactionRequest.md +22 -0
  5. data/docs/AddSpendPowerTransactionResponse.md +20 -0
  6. data/docs/AssetReport.md +26 -0
  7. data/docs/AssetReportAccountsInner.md +24 -0
  8. data/docs/{GetAssetReportResponseReportAccountsInnerBalances.md → AssetReportAccountsInnerBalance.md} +2 -2
  9. data/docs/{GetAssetReportResponseReportAccountsInnerHistoricalBalancesInner.md → AssetReportAccountsInnerHistoricalBalancesInner.md} +2 -2
  10. data/docs/{GetAssetReportResponse.md → AssetReportResponse.md} +3 -3
  11. data/docs/AssetReportTransaction.md +36 -0
  12. data/docs/CreateAssetReportRequest.md +2 -4
  13. data/docs/CreateAssetReportResponse.md +2 -2
  14. data/docs/CreateLinkTokenRequest.md +6 -2
  15. data/docs/CreateLinkTokenRequestPlaid.md +1 -1
  16. data/docs/CreateLinkTokenRequestTeller.md +18 -0
  17. data/docs/CreateLinkTokenRequestTellerConfig.md +18 -0
  18. data/docs/CreateSessionRequest.md +4 -4
  19. data/docs/CreateSpendPowerCustomizationResponse.md +20 -0
  20. data/docs/CreateSpendPowerRequest.md +22 -0
  21. data/docs/CreateSpendPowerResponse.md +20 -0
  22. data/docs/DeleteSpendPowerResponse.md +20 -0
  23. data/docs/Entity.md +1 -1
  24. data/docs/ExchangeFinancialConnectionsPublicTokenRequest.md +1 -1
  25. data/docs/ExchangeFinancialConnectionsPublicTokenResponse.md +2 -2
  26. data/docs/FinancialConnectionsAccountBalance.md +1 -1
  27. data/docs/FinancialConnectionsAccountCachedBalance.md +1 -1
  28. data/docs/FinancialConnectionsInvestmentSecurity.md +2 -2
  29. data/docs/FinancialConnectionsInvestmentSecurityType.md +15 -0
  30. data/docs/FinancialConnectionsInvestmentTransaction.md +2 -0
  31. data/docs/FuseApi.md +484 -18
  32. data/docs/FuseApiAggregatorError.md +28 -0
  33. data/docs/FuseApiError.md +7 -5
  34. data/docs/FuseApiErrorCode.md +15 -0
  35. data/docs/FuseApiErrorData.md +1 -1
  36. data/docs/FuseApiErrorType.md +15 -0
  37. data/docs/GetAssetReportRequest.md +2 -0
  38. data/docs/GetFinancialConnectionsAccountStatementRequest.md +22 -0
  39. data/docs/GetFinancialConnectionsAccountStatementResponse.md +20 -0
  40. data/docs/GetInvestmentTransactionsResponse.md +2 -0
  41. data/docs/GetSpendPowerResponse.md +20 -0
  42. data/docs/MigrateFinancialConnectionsAggregatorConnectionData.md +3 -1
  43. data/docs/MigrateFinancialConnectionsAggregatorConnectionDataPlaid.md +3 -1
  44. data/docs/MigrateFinancialConnectionsAggregatorConnectionDataTeller.md +18 -0
  45. data/docs/MigrateFinancialConnectionsTokenRequest.md +1 -1
  46. data/docs/RefreshAssetReportRequest.md +5 -5
  47. data/docs/RefreshAssetReportResponse.md +22 -0
  48. data/docs/SpendPower.md +30 -0
  49. data/docs/SpendPowerApi.md +122 -0
  50. data/docs/SpendPowerCustomization.md +22 -0
  51. data/docs/Transaction.md +2 -2
  52. data/docs/UpdateSpendPowerCustomizationResponse.md +20 -0
  53. data/docs/WebhookEvent.md +6 -0
  54. data/fuse_client.gemspec +1 -1
  55. data/lib/fuse_client/api/fuse_api.rb +385 -16
  56. data/lib/fuse_client/api/spend_power_api.rb +146 -0
  57. data/lib/fuse_client/api_client.rb +1 -1
  58. data/lib/fuse_client/api_error.rb +1 -1
  59. data/lib/fuse_client/configuration.rb +51 -4
  60. data/lib/fuse_client/models/account_subtype.rb +1 -1
  61. data/lib/fuse_client/models/account_type.rb +3 -2
  62. data/lib/fuse_client/models/add_spend_power_transaction_request.rb +284 -0
  63. data/lib/fuse_client/models/add_spend_power_transaction_response.rb +240 -0
  64. data/lib/fuse_client/models/aggregator.rb +4 -2
  65. data/lib/fuse_client/models/{get_asset_report_response_report.rb → asset_report.rb} +15 -27
  66. data/lib/fuse_client/models/{get_asset_report_response_report_accounts_inner.rb → asset_report_accounts_inner.rb} +27 -26
  67. data/lib/fuse_client/models/{get_asset_report_response_report_accounts_inner_balances.rb → asset_report_accounts_inner_balance.rb} +4 -4
  68. data/lib/fuse_client/models/{get_asset_report_response_report_accounts_inner_historical_balances_inner.rb → asset_report_accounts_inner_historical_balances_inner.rb} +4 -4
  69. data/lib/fuse_client/models/{get_asset_report_response.rb → asset_report_response.rb} +5 -5
  70. data/lib/fuse_client/models/asset_report_transaction.rb +385 -0
  71. data/lib/fuse_client/models/country_code.rb +1 -1
  72. data/lib/fuse_client/models/create_asset_report_request.rb +11 -23
  73. data/lib/fuse_client/models/create_asset_report_response.rb +3 -3
  74. data/lib/fuse_client/models/create_entity_request.rb +1 -1
  75. data/lib/fuse_client/models/create_entity_response.rb +1 -1
  76. data/lib/fuse_client/models/create_link_token_request.rb +25 -6
  77. data/lib/fuse_client/models/create_link_token_request_mx.rb +1 -1
  78. data/lib/fuse_client/models/create_link_token_request_plaid.rb +2 -2
  79. data/lib/fuse_client/models/create_link_token_request_teller.rb +220 -0
  80. data/lib/fuse_client/models/create_link_token_request_teller_config.rb +254 -0
  81. data/lib/fuse_client/models/create_link_token_response.rb +1 -1
  82. data/lib/fuse_client/models/create_session_request.rb +31 -8
  83. data/lib/fuse_client/models/create_session_response.rb +1 -1
  84. data/lib/fuse_client/models/create_spend_power_customization_response.rb +240 -0
  85. data/lib/fuse_client/models/create_spend_power_request.rb +255 -0
  86. data/lib/fuse_client/models/create_spend_power_response.rb +240 -0
  87. data/lib/fuse_client/models/currency.rb +1 -1
  88. data/lib/fuse_client/models/delete_financial_connection_response.rb +1 -1
  89. data/lib/fuse_client/models/delete_spend_power_response.rb +239 -0
  90. data/lib/fuse_client/models/entity.rb +2 -2
  91. data/lib/fuse_client/models/exchange_financial_connections_public_token_request.rb +6 -1
  92. data/lib/fuse_client/models/exchange_financial_connections_public_token_response.rb +3 -3
  93. data/lib/fuse_client/models/financial_connection_data.rb +1 -1
  94. data/lib/fuse_client/models/financial_connection_details.rb +1 -1
  95. data/lib/fuse_client/models/financial_connection_details_mx.rb +1 -1
  96. data/lib/fuse_client/models/financial_connection_details_plaid.rb +1 -1
  97. data/lib/fuse_client/models/financial_connection_details_teller.rb +1 -1
  98. data/lib/fuse_client/models/financial_connections_account.rb +1 -1
  99. data/lib/fuse_client/models/financial_connections_account_balance.rb +2 -2
  100. data/lib/fuse_client/models/financial_connections_account_cached_balance.rb +2 -2
  101. data/lib/fuse_client/models/financial_connections_account_details.rb +1 -1
  102. data/lib/fuse_client/models/financial_connections_account_details_ach.rb +1 -1
  103. data/lib/fuse_client/models/financial_connections_account_institution.rb +1 -1
  104. data/lib/fuse_client/models/financial_connections_account_liability.rb +1 -1
  105. data/lib/fuse_client/models/financial_connections_account_liability_all_of.rb +1 -1
  106. data/lib/fuse_client/models/financial_connections_account_liability_all_of_aprs.rb +1 -1
  107. data/lib/fuse_client/models/financial_connections_holding.rb +1 -1
  108. data/lib/fuse_client/models/financial_connections_investment_security.rb +24 -8
  109. data/lib/fuse_client/models/financial_connections_investment_security_exchange.rb +1 -1
  110. data/lib/fuse_client/models/financial_connections_investment_security_type.rb +64 -0
  111. data/lib/fuse_client/models/financial_connections_investment_transaction.rb +50 -2
  112. data/lib/fuse_client/models/financial_connections_owner.rb +1 -1
  113. data/lib/fuse_client/models/financial_connections_owner_addresses_inner.rb +1 -1
  114. data/lib/fuse_client/models/financial_connections_owner_addresses_inner_data.rb +1 -1
  115. data/lib/fuse_client/models/financial_connections_owner_emails_inner.rb +1 -1
  116. data/lib/fuse_client/models/financial_connections_owner_names_inner.rb +1 -1
  117. data/lib/fuse_client/models/financial_connections_owner_phone_numbers_inner.rb +1 -1
  118. data/lib/fuse_client/models/financial_institution.rb +1 -1
  119. data/lib/fuse_client/models/financial_institution_logo.rb +1 -1
  120. data/lib/fuse_client/models/fuse_api_aggregator_error.rb +264 -0
  121. data/lib/fuse_client/models/fuse_api_error.rb +43 -28
  122. data/lib/fuse_client/models/fuse_api_error_code.rb +76 -0
  123. data/lib/fuse_client/models/fuse_api_error_data.rb +2 -2
  124. data/lib/fuse_client/models/fuse_api_error_type.rb +42 -0
  125. data/lib/fuse_client/models/fuse_api_warning.rb +1 -1
  126. data/lib/fuse_client/models/fuse_api_warning_data.rb +1 -1
  127. data/lib/fuse_client/models/fuse_api_warning_data_warnings_inner.rb +1 -1
  128. data/lib/fuse_client/models/get_asset_report_request.rb +17 -2
  129. data/lib/fuse_client/models/get_entity_response.rb +1 -1
  130. data/lib/fuse_client/models/get_financial_connection_response.rb +1 -1
  131. data/lib/fuse_client/models/get_financial_connections_account_details_request.rb +1 -1
  132. data/lib/fuse_client/models/get_financial_connections_account_details_response.rb +1 -1
  133. data/lib/fuse_client/models/get_financial_connections_account_statement_request.rb +250 -0
  134. data/lib/fuse_client/models/get_financial_connections_account_statement_response.rb +240 -0
  135. data/lib/fuse_client/models/get_financial_connections_accounts_request.rb +1 -1
  136. data/lib/fuse_client/models/get_financial_connections_accounts_response.rb +1 -1
  137. data/lib/fuse_client/models/get_financial_connections_balance_request.rb +1 -1
  138. data/lib/fuse_client/models/get_financial_connections_balance_request_options.rb +1 -1
  139. data/lib/fuse_client/models/get_financial_connections_balance_response.rb +1 -1
  140. data/lib/fuse_client/models/get_financial_connections_owners_request.rb +1 -1
  141. data/lib/fuse_client/models/get_financial_connections_owners_response.rb +1 -1
  142. data/lib/fuse_client/models/get_financial_connections_owners_response_accounts_inner.rb +1 -1
  143. data/lib/fuse_client/models/get_financial_connections_transactions_request.rb +1 -1
  144. data/lib/fuse_client/models/get_financial_connections_transactions_response.rb +1 -1
  145. data/lib/fuse_client/models/get_financial_institution_response.rb +1 -1
  146. data/lib/fuse_client/models/get_investment_holdings_request.rb +1 -1
  147. data/lib/fuse_client/models/get_investment_holdings_request_options.rb +1 -1
  148. data/lib/fuse_client/models/get_investment_holdings_response.rb +1 -1
  149. data/lib/fuse_client/models/get_investment_transactions_request.rb +1 -1
  150. data/lib/fuse_client/models/get_investment_transactions_request_options.rb +1 -1
  151. data/lib/fuse_client/models/get_investment_transactions_response.rb +12 -2
  152. data/lib/fuse_client/models/get_liabilities_request.rb +1 -1
  153. data/lib/fuse_client/models/get_liabilities_response.rb +1 -1
  154. data/lib/fuse_client/models/get_spend_power_response.rb +239 -0
  155. data/lib/fuse_client/models/migrate_financial_connections_aggregator_connection_data.rb +14 -5
  156. data/lib/fuse_client/models/migrate_financial_connections_aggregator_connection_data_mx.rb +1 -1
  157. data/lib/fuse_client/models/migrate_financial_connections_aggregator_connection_data_plaid.rb +15 -5
  158. data/lib/fuse_client/models/migrate_financial_connections_aggregator_connection_data_teller.rb +226 -0
  159. data/lib/fuse_client/models/migrate_financial_connections_token_request.rb +23 -4
  160. data/lib/fuse_client/models/migrate_financial_connections_token_request_entity.rb +1 -1
  161. data/lib/fuse_client/models/migrate_financial_connections_token_response.rb +1 -1
  162. data/lib/fuse_client/models/product.rb +3 -3
  163. data/lib/fuse_client/models/refresh_asset_report_request.rb +32 -33
  164. data/lib/fuse_client/models/refresh_asset_report_response.rb +240 -0
  165. data/lib/fuse_client/models/spend_power.rb +315 -0
  166. data/lib/fuse_client/models/spend_power_customization.rb +289 -0
  167. data/lib/fuse_client/models/sync_financial_connections_data_response.rb +1 -1
  168. data/lib/fuse_client/models/sync_transactions_request.rb +1 -1
  169. data/lib/fuse_client/models/sync_transactions_response.rb +1 -1
  170. data/lib/fuse_client/models/sync_transactions_response_removed_inner.rb +1 -1
  171. data/lib/fuse_client/models/transaction.rb +15 -3
  172. data/lib/fuse_client/models/transaction_merchant.rb +1 -1
  173. data/lib/fuse_client/models/update_entity_request.rb +1 -1
  174. data/lib/fuse_client/models/update_entity_response.rb +1 -1
  175. data/lib/fuse_client/models/update_spend_power_customization_response.rb +240 -0
  176. data/lib/fuse_client/models/webhook_event.rb +34 -2
  177. data/lib/fuse_client/models/webhook_source.rb +1 -1
  178. data/lib/fuse_client/models/webhook_type.rb +4 -3
  179. data/lib/fuse_client/version.rb +2 -2
  180. data/lib/fuse_client.rb +28 -6
  181. data/spec/api/fuse_api_spec.rb +69 -6
  182. data/spec/api/spend_power_api_spec.rb +64 -0
  183. data/spec/api_client_spec.rb +1 -1
  184. data/spec/configuration_spec.rb +1 -1
  185. data/spec/models/account_subtype_spec.rb +1 -1
  186. data/spec/models/account_type_spec.rb +1 -1
  187. data/spec/models/add_spend_power_transaction_request_spec.rb +50 -0
  188. data/spec/models/add_spend_power_transaction_response_spec.rb +40 -0
  189. data/spec/models/aggregator_spec.rb +1 -1
  190. data/spec/models/{get_asset_report_response_report_accounts_inner_balances_spec.rb → asset_report_accounts_inner_balance_spec.rb} +7 -7
  191. data/spec/models/{get_asset_report_response_report_accounts_inner_historical_balances_inner_spec.rb → asset_report_accounts_inner_historical_balances_inner_spec.rb} +7 -7
  192. data/spec/models/{get_asset_report_response_report_accounts_inner_spec.rb → asset_report_accounts_inner_spec.rb} +10 -10
  193. data/spec/models/{get_asset_report_response_spec.rb → asset_report_response_spec.rb} +7 -7
  194. data/spec/models/{get_asset_report_response_report_spec.rb → asset_report_spec.rb} +8 -14
  195. data/spec/models/asset_report_transaction_spec.rb +96 -0
  196. data/spec/models/country_code_spec.rb +1 -1
  197. data/spec/models/create_asset_report_request_spec.rb +1 -7
  198. data/spec/models/create_asset_report_response_spec.rb +1 -1
  199. data/spec/models/create_entity_request_spec.rb +1 -1
  200. data/spec/models/create_entity_response_spec.rb +1 -1
  201. data/spec/models/create_link_token_request_mx_spec.rb +1 -1
  202. data/spec/models/create_link_token_request_plaid_spec.rb +1 -1
  203. data/spec/models/create_link_token_request_spec.rb +13 -1
  204. data/spec/models/create_link_token_request_teller_config_spec.rb +38 -0
  205. data/spec/models/create_link_token_request_teller_spec.rb +34 -0
  206. data/spec/models/create_link_token_response_spec.rb +1 -1
  207. data/spec/models/create_session_request_spec.rb +1 -1
  208. data/spec/models/create_session_response_spec.rb +1 -1
  209. data/spec/models/create_spend_power_customization_response_spec.rb +40 -0
  210. data/spec/models/create_spend_power_request_spec.rb +46 -0
  211. data/spec/models/create_spend_power_response_spec.rb +40 -0
  212. data/spec/models/currency_spec.rb +1 -1
  213. data/spec/models/delete_financial_connection_response_spec.rb +1 -1
  214. data/spec/models/delete_spend_power_response_spec.rb +40 -0
  215. data/spec/models/entity_spec.rb +1 -1
  216. data/spec/models/exchange_financial_connections_public_token_request_spec.rb +1 -1
  217. data/spec/models/exchange_financial_connections_public_token_response_spec.rb +1 -1
  218. data/spec/models/financial_connection_data_spec.rb +1 -1
  219. data/spec/models/financial_connection_details_mx_spec.rb +1 -1
  220. data/spec/models/financial_connection_details_plaid_spec.rb +1 -1
  221. data/spec/models/financial_connection_details_spec.rb +1 -1
  222. data/spec/models/financial_connection_details_teller_spec.rb +1 -1
  223. data/spec/models/financial_connections_account_balance_spec.rb +1 -1
  224. data/spec/models/financial_connections_account_cached_balance_spec.rb +1 -1
  225. data/spec/models/financial_connections_account_details_ach_spec.rb +1 -1
  226. data/spec/models/financial_connections_account_details_spec.rb +1 -1
  227. data/spec/models/financial_connections_account_institution_spec.rb +1 -1
  228. data/spec/models/financial_connections_account_liability_all_of_aprs_spec.rb +1 -1
  229. data/spec/models/financial_connections_account_liability_all_of_spec.rb +1 -1
  230. data/spec/models/financial_connections_account_liability_spec.rb +1 -1
  231. data/spec/models/financial_connections_account_spec.rb +1 -1
  232. data/spec/models/financial_connections_holding_spec.rb +1 -1
  233. data/spec/models/financial_connections_investment_security_exchange_spec.rb +1 -1
  234. data/spec/models/financial_connections_investment_security_spec.rb +1 -1
  235. data/spec/models/financial_connections_investment_security_type_spec.rb +28 -0
  236. data/spec/models/financial_connections_investment_transaction_spec.rb +11 -1
  237. data/spec/models/financial_connections_owner_addresses_inner_data_spec.rb +1 -1
  238. data/spec/models/financial_connections_owner_addresses_inner_spec.rb +1 -1
  239. data/spec/models/financial_connections_owner_emails_inner_spec.rb +1 -1
  240. data/spec/models/financial_connections_owner_names_inner_spec.rb +1 -1
  241. data/spec/models/financial_connections_owner_phone_numbers_inner_spec.rb +1 -1
  242. data/spec/models/financial_connections_owner_spec.rb +1 -1
  243. data/spec/models/financial_institution_logo_spec.rb +1 -1
  244. data/spec/models/financial_institution_spec.rb +1 -1
  245. data/spec/models/fuse_api_aggregator_error_spec.rb +64 -0
  246. data/spec/models/fuse_api_error_code_spec.rb +28 -0
  247. data/spec/models/fuse_api_error_data_spec.rb +1 -1
  248. data/spec/models/fuse_api_error_spec.rb +7 -9
  249. data/spec/models/fuse_api_error_type_spec.rb +28 -0
  250. data/spec/models/fuse_api_warning_data_spec.rb +1 -1
  251. data/spec/models/fuse_api_warning_data_warnings_inner_spec.rb +1 -1
  252. data/spec/models/fuse_api_warning_spec.rb +1 -1
  253. data/spec/models/get_asset_report_request_spec.rb +7 -1
  254. data/spec/models/get_entity_response_spec.rb +1 -1
  255. data/spec/models/get_financial_connection_response_spec.rb +1 -1
  256. data/spec/models/get_financial_connections_account_details_request_spec.rb +1 -1
  257. data/spec/models/get_financial_connections_account_details_response_spec.rb +1 -1
  258. data/spec/models/get_financial_connections_account_statement_request_spec.rb +46 -0
  259. data/spec/models/get_financial_connections_account_statement_response_spec.rb +40 -0
  260. data/spec/models/get_financial_connections_accounts_request_spec.rb +1 -1
  261. data/spec/models/get_financial_connections_accounts_response_spec.rb +1 -1
  262. data/spec/models/get_financial_connections_balance_request_options_spec.rb +1 -1
  263. data/spec/models/get_financial_connections_balance_request_spec.rb +1 -1
  264. data/spec/models/get_financial_connections_balance_response_spec.rb +1 -1
  265. data/spec/models/get_financial_connections_owners_request_spec.rb +1 -1
  266. data/spec/models/get_financial_connections_owners_response_accounts_inner_spec.rb +1 -1
  267. data/spec/models/get_financial_connections_owners_response_spec.rb +1 -1
  268. data/spec/models/get_financial_connections_transactions_request_spec.rb +1 -1
  269. data/spec/models/get_financial_connections_transactions_response_spec.rb +1 -1
  270. data/spec/models/get_financial_institution_response_spec.rb +1 -1
  271. data/spec/models/get_investment_holdings_request_options_spec.rb +1 -1
  272. data/spec/models/get_investment_holdings_request_spec.rb +1 -1
  273. data/spec/models/get_investment_holdings_response_spec.rb +1 -1
  274. data/spec/models/get_investment_transactions_request_options_spec.rb +1 -1
  275. data/spec/models/get_investment_transactions_request_spec.rb +1 -1
  276. data/spec/models/get_investment_transactions_response_spec.rb +7 -1
  277. data/spec/models/get_liabilities_request_spec.rb +1 -1
  278. data/spec/models/get_liabilities_response_spec.rb +1 -1
  279. data/spec/models/get_spend_power_response_spec.rb +40 -0
  280. data/spec/models/migrate_financial_connections_aggregator_connection_data_mx_spec.rb +1 -1
  281. data/spec/models/migrate_financial_connections_aggregator_connection_data_plaid_spec.rb +7 -1
  282. data/spec/models/migrate_financial_connections_aggregator_connection_data_spec.rb +7 -1
  283. data/spec/models/migrate_financial_connections_aggregator_connection_data_teller_spec.rb +34 -0
  284. data/spec/models/migrate_financial_connections_token_request_entity_spec.rb +1 -1
  285. data/spec/models/migrate_financial_connections_token_request_spec.rb +2 -2
  286. data/spec/models/migrate_financial_connections_token_response_spec.rb +1 -1
  287. data/spec/models/product_spec.rb +1 -1
  288. data/spec/models/refresh_asset_report_request_spec.rb +3 -3
  289. data/spec/models/refresh_asset_report_response_spec.rb +46 -0
  290. data/spec/models/spend_power_customization_spec.rb +50 -0
  291. data/spec/models/spend_power_spec.rb +70 -0
  292. data/spec/models/sync_financial_connections_data_response_spec.rb +1 -1
  293. data/spec/models/sync_transactions_request_spec.rb +1 -1
  294. data/spec/models/sync_transactions_response_removed_inner_spec.rb +1 -1
  295. data/spec/models/sync_transactions_response_spec.rb +1 -1
  296. data/spec/models/transaction_merchant_spec.rb +1 -1
  297. data/spec/models/transaction_spec.rb +9 -1
  298. data/spec/models/update_entity_request_spec.rb +1 -1
  299. data/spec/models/update_entity_response_spec.rb +1 -1
  300. data/spec/models/update_spend_power_customization_response_spec.rb +40 -0
  301. data/spec/models/webhook_event_spec.rb +19 -1
  302. data/spec/models/webhook_source_spec.rb +1 -1
  303. data/spec/models/webhook_type_spec.rb +1 -1
  304. data/spec/spec_helper.rb +1 -1
  305. metadata +110 -22
  306. data/docs/GetAssetReportResponseReport.md +0 -28
  307. data/docs/GetAssetReportResponseReportAccountsInner.md +0 -24
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -15,6 +15,8 @@ require 'time'
15
15
 
16
16
  module FuseClient
17
17
  class FuseApiError
18
+ attr_accessor :request_id
19
+
18
20
  attr_accessor :title
19
21
 
20
22
  attr_accessor :details
@@ -52,6 +54,7 @@ module FuseClient
52
54
  # Attribute mapping from ruby-style variable name to JSON key.
53
55
  def self.attribute_map
54
56
  {
57
+ :'request_id' => :'request_id',
55
58
  :'title' => :'title',
56
59
  :'details' => :'details',
57
60
  :'code' => :'code',
@@ -69,10 +72,11 @@ module FuseClient
69
72
  # Attribute type mapping.
70
73
  def self.openapi_types
71
74
  {
75
+ :'request_id' => :'String',
72
76
  :'title' => :'String',
73
77
  :'details' => :'String',
74
- :'code' => :'String',
75
- :'type' => :'String',
78
+ :'code' => :'FuseApiErrorCode',
79
+ :'type' => :'FuseApiErrorType',
76
80
  :'source' => :'String',
77
81
  :'data' => :'FuseApiErrorData'
78
82
  }
@@ -99,6 +103,10 @@ module FuseClient
99
103
  h[k.to_sym] = v
100
104
  }
101
105
 
106
+ if attributes.key?(:'request_id')
107
+ self.request_id = attributes[:'request_id']
108
+ end
109
+
102
110
  if attributes.key?(:'title')
103
111
  self.title = attributes[:'title']
104
112
  end
@@ -128,41 +136,47 @@ module FuseClient
128
136
  # @return Array for valid properties with the reasons
129
137
  def list_invalid_properties
130
138
  invalid_properties = Array.new
139
+ if @request_id.nil?
140
+ invalid_properties.push('invalid value for "request_id", request_id cannot be nil.')
141
+ end
142
+
143
+ if @title.nil?
144
+ invalid_properties.push('invalid value for "title", title cannot be nil.')
145
+ end
146
+
147
+ if @details.nil?
148
+ invalid_properties.push('invalid value for "details", details cannot be nil.')
149
+ end
150
+
151
+ if @code.nil?
152
+ invalid_properties.push('invalid value for "code", code cannot be nil.')
153
+ end
154
+
155
+ if @type.nil?
156
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
157
+ end
158
+
159
+ if @source.nil?
160
+ invalid_properties.push('invalid value for "source", source cannot be nil.')
161
+ end
162
+
131
163
  invalid_properties
132
164
  end
133
165
 
134
166
  # Check to see if the all the properties in the model are valid
135
167
  # @return true if the model is valid
136
168
  def valid?
137
- code_validator = EnumAttributeValidator.new('String', ["client_error", "invalid_headers", "invalid_request_body", "internal_server_error", "organization_not_found", "entity_not_found", "session_not_found", "financial_institution_not_found", "missing_access_token", "missing_plaid_client_id_header", "missing_plaid_secret_header", "missing_mx_client_id_header", "missing_mx_api_key_header", "missing_teller_private_key_header", "missing_teller_certificate_header", "missing_teller_application_id_header", "aggregator_error", "aggregator_disconnected_error", "aggregator_connection_finished_error", "request_body_missing"])
138
- return false unless code_validator.valid?(@code)
139
- type_validator = EnumAttributeValidator.new('String', ["auth_error", "not_found", "bad_request", "server_error"])
140
- return false unless type_validator.valid?(@type)
169
+ return false if @request_id.nil?
170
+ return false if @title.nil?
171
+ return false if @details.nil?
172
+ return false if @code.nil?
173
+ return false if @type.nil?
174
+ return false if @source.nil?
141
175
  source_validator = EnumAttributeValidator.new('String', ["internal", "aggregator"])
142
176
  return false unless source_validator.valid?(@source)
143
177
  true
144
178
  end
145
179
 
146
- # Custom attribute writer method checking allowed values (enum).
147
- # @param [Object] code Object to be assigned
148
- def code=(code)
149
- validator = EnumAttributeValidator.new('String', ["client_error", "invalid_headers", "invalid_request_body", "internal_server_error", "organization_not_found", "entity_not_found", "session_not_found", "financial_institution_not_found", "missing_access_token", "missing_plaid_client_id_header", "missing_plaid_secret_header", "missing_mx_client_id_header", "missing_mx_api_key_header", "missing_teller_private_key_header", "missing_teller_certificate_header", "missing_teller_application_id_header", "aggregator_error", "aggregator_disconnected_error", "aggregator_connection_finished_error", "request_body_missing"])
150
- unless validator.valid?(code)
151
- fail ArgumentError, "invalid value for \"code\", must be one of #{validator.allowable_values}."
152
- end
153
- @code = code
154
- end
155
-
156
- # Custom attribute writer method checking allowed values (enum).
157
- # @param [Object] type Object to be assigned
158
- def type=(type)
159
- validator = EnumAttributeValidator.new('String', ["auth_error", "not_found", "bad_request", "server_error"])
160
- unless validator.valid?(type)
161
- fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
162
- end
163
- @type = type
164
- end
165
-
166
180
  # Custom attribute writer method checking allowed values (enum).
167
181
  # @param [Object] source Object to be assigned
168
182
  def source=(source)
@@ -178,6 +192,7 @@ module FuseClient
178
192
  def ==(o)
179
193
  return true if self.equal?(o)
180
194
  self.class == o.class &&
195
+ request_id == o.request_id &&
181
196
  title == o.title &&
182
197
  details == o.details &&
183
198
  code == o.code &&
@@ -195,7 +210,7 @@ module FuseClient
195
210
  # Calculates hash code according to all attributes.
196
211
  # @return [Integer] Hash code
197
212
  def hash
198
- [title, details, code, type, source, data].hash
213
+ [request_id, title, details, code, type, source, data].hash
199
214
  end
200
215
 
201
216
  # Builds the object from hash
@@ -0,0 +1,76 @@
1
+ =begin
2
+ #Fuse
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.5.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FuseClient
17
+ class FuseApiErrorCode
18
+ ASSET_REPORT_GENERATION_FAILED = "asset_report_generation_failed".freeze
19
+ ASSET_REPORT_NOT_READY = "asset_report_not_ready".freeze
20
+ CLIENT_ERROR = "client_error".freeze
21
+ INVALID_HEADERS = "invalid_headers".freeze
22
+ INVALID_REQUEST_BODY = "invalid_request_body".freeze
23
+ INTERNAL_SERVER_ERROR = "internal_server_error".freeze
24
+ ORGANIZATION_NOT_FOUND = "organization_not_found".freeze
25
+ ENTITY_NOT_FOUND = "entity_not_found".freeze
26
+ SESSION_NOT_FOUND = "session_not_found".freeze
27
+ FINANCIAL_INSTITUTION_NOT_FOUND = "financial_institution_not_found".freeze
28
+ MISSING_ACCESS_TOKEN = "missing_access_token".freeze
29
+ MISSING_PLAID_CLIENT_ID_HEADER = "missing_plaid_client_id_header".freeze
30
+ MISSING_PLAID_SECRET_HEADER = "missing_plaid_secret_header".freeze
31
+ MISSING_MX_CLIENT_ID_HEADER = "missing_mx_client_id_header".freeze
32
+ MISSING_MX_API_KEY_HEADER = "missing_mx_api_key_header".freeze
33
+ MISSING_TELLER_PRIVATE_KEY_HEADER = "missing_teller_private_key_header".freeze
34
+ MISSING_TELLER_CERTIFICATE_HEADER = "missing_teller_certificate_header".freeze
35
+ MISSING_TELLER_APPLICATION_ID_HEADER = "missing_teller_application_id_header".freeze
36
+ MISSING_TELLER_SIGNING_SECRET_HEADER = "missing_teller_signing_secret_header".freeze
37
+ MISSING_SNAPTRADE_CLIENT_ID_HEADER = "missing_snaptrade_client_id_header".freeze
38
+ MISSING_SNAPTRADE_CONSUMER_KEY_HEADER = "missing_snaptrade_consumer_key_header".freeze
39
+ MISSING_FLINKS_CA_CUSTOMER_ID_HEADER = "missing_flinks_ca_customer_id_header".freeze
40
+ MISSING_FLINKS_US_CUSTOMER_ID_HEADER = "missing_flinks_us_customer_id_header".freeze
41
+ MISSING_FLINKS_CA_INSTANCE_ID_HEADER = "missing_flinks_ca_instance_id_header".freeze
42
+ MISSING_FLINKS_US_INSTANCE_ID_HEADER = "missing_flinks_us_instance_id_header".freeze
43
+ MISSING_FUSE_VERIFICATION_HEADER = "missing_fuse_verification_header".freeze
44
+ AGGREGATOR_ERROR = "aggregator_error".freeze
45
+ AGGREGATOR_DISCONNECTED_ERROR = "aggregator_disconnected_error".freeze
46
+ AGGREGATOR_CONNECTION_FINISHED_ERROR = "aggregator_connection_finished_error".freeze
47
+ AGGREGATOR_RATE_LIMIT_ERROR = "aggregator_rate_limit_error".freeze
48
+ REQUEST_BODY_MISSING = "request_body_missing".freeze
49
+ REQUEST_CONTENT_TYPE_INVALID = "request_content_type_invalid".freeze
50
+ REQUEST_BODY_INVALID_JSON = "request_body_invalid_json".freeze
51
+ WEBHOOK_ERROR = "webhook_error".freeze
52
+ TIMEOUT = "timeout".freeze
53
+ INVALID_CERTIFICATE = "invalid_certificate".freeze
54
+ INVALID_PRIVATE_KEY = "invalid_private_key".freeze
55
+ OTHER = "other".freeze
56
+
57
+ def self.all_vars
58
+ @all_vars ||= [ASSET_REPORT_GENERATION_FAILED, ASSET_REPORT_NOT_READY, CLIENT_ERROR, INVALID_HEADERS, INVALID_REQUEST_BODY, INTERNAL_SERVER_ERROR, ORGANIZATION_NOT_FOUND, ENTITY_NOT_FOUND, SESSION_NOT_FOUND, FINANCIAL_INSTITUTION_NOT_FOUND, MISSING_ACCESS_TOKEN, MISSING_PLAID_CLIENT_ID_HEADER, MISSING_PLAID_SECRET_HEADER, MISSING_MX_CLIENT_ID_HEADER, MISSING_MX_API_KEY_HEADER, MISSING_TELLER_PRIVATE_KEY_HEADER, MISSING_TELLER_CERTIFICATE_HEADER, MISSING_TELLER_APPLICATION_ID_HEADER, MISSING_TELLER_SIGNING_SECRET_HEADER, MISSING_SNAPTRADE_CLIENT_ID_HEADER, MISSING_SNAPTRADE_CONSUMER_KEY_HEADER, MISSING_FLINKS_CA_CUSTOMER_ID_HEADER, MISSING_FLINKS_US_CUSTOMER_ID_HEADER, MISSING_FLINKS_CA_INSTANCE_ID_HEADER, MISSING_FLINKS_US_INSTANCE_ID_HEADER, MISSING_FUSE_VERIFICATION_HEADER, AGGREGATOR_ERROR, AGGREGATOR_DISCONNECTED_ERROR, AGGREGATOR_CONNECTION_FINISHED_ERROR, AGGREGATOR_RATE_LIMIT_ERROR, REQUEST_BODY_MISSING, REQUEST_CONTENT_TYPE_INVALID, REQUEST_BODY_INVALID_JSON, WEBHOOK_ERROR, TIMEOUT, INVALID_CERTIFICATE, INVALID_PRIVATE_KEY, OTHER].freeze
59
+ end
60
+
61
+ # Builds the enum from string
62
+ # @param [String] The enum value in the form of the string
63
+ # @return [String] The enum value
64
+ def self.build_from_hash(value)
65
+ new.build_from_hash(value)
66
+ end
67
+
68
+ # Builds the enum from string
69
+ # @param [String] The enum value in the form of the string
70
+ # @return [String] The enum value
71
+ def build_from_hash(value)
72
+ return value if FuseApiErrorCode.all_vars.include?(value)
73
+ raise "Invalid ENUM value #{value} for class #FuseApiErrorCode"
74
+ end
75
+ end
76
+ end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -58,7 +58,7 @@ module FuseClient
58
58
  def self.openapi_types
59
59
  {
60
60
  :'aggregator' => :'Aggregator',
61
- :'errors' => :'Array<FuseApiError>'
61
+ :'errors' => :'Array<FuseApiAggregatorError>'
62
62
  }
63
63
  end
64
64
 
@@ -0,0 +1,42 @@
1
+ =begin
2
+ #Fuse
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.5.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FuseClient
17
+ class FuseApiErrorType
18
+ AUTH_ERROR = "auth_error".freeze
19
+ NOT_FOUND = "not_found".freeze
20
+ BAD_REQUEST = "bad_request".freeze
21
+ SERVER_ERROR = "server_error".freeze
22
+
23
+ def self.all_vars
24
+ @all_vars ||= [AUTH_ERROR, NOT_FOUND, BAD_REQUEST, SERVER_ERROR].freeze
25
+ end
26
+
27
+ # Builds the enum from string
28
+ # @param [String] The enum value in the form of the string
29
+ # @return [String] The enum value
30
+ def self.build_from_hash(value)
31
+ new.build_from_hash(value)
32
+ end
33
+
34
+ # Builds the enum from string
35
+ # @param [String] The enum value in the form of the string
36
+ # @return [String] The enum value
37
+ def build_from_hash(value)
38
+ return value if FuseApiErrorType.all_vars.include?(value)
39
+ raise "Invalid ENUM value #{value} for class #FuseApiErrorType"
40
+ end
41
+ end
42
+ end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -15,12 +15,16 @@ require 'time'
15
15
 
16
16
  module FuseClient
17
17
  class GetAssetReportRequest
18
+ # Access fuse token corresponding to the financial account to be refresh the Asset Report for.
19
+ attr_accessor :access_token
20
+
18
21
  # The token associated with the Asset Report to retrieve.
19
22
  attr_accessor :asset_report_token
20
23
 
21
24
  # Attribute mapping from ruby-style variable name to JSON key.
22
25
  def self.attribute_map
23
26
  {
27
+ :'access_token' => :'access_token',
24
28
  :'asset_report_token' => :'asset_report_token'
25
29
  }
26
30
  end
@@ -33,6 +37,7 @@ module FuseClient
33
37
  # Attribute type mapping.
34
38
  def self.openapi_types
35
39
  {
40
+ :'access_token' => :'String',
36
41
  :'asset_report_token' => :'String'
37
42
  }
38
43
  end
@@ -58,6 +63,10 @@ module FuseClient
58
63
  h[k.to_sym] = v
59
64
  }
60
65
 
66
+ if attributes.key?(:'access_token')
67
+ self.access_token = attributes[:'access_token']
68
+ end
69
+
61
70
  if attributes.key?(:'asset_report_token')
62
71
  self.asset_report_token = attributes[:'asset_report_token']
63
72
  end
@@ -67,6 +76,10 @@ module FuseClient
67
76
  # @return Array for valid properties with the reasons
68
77
  def list_invalid_properties
69
78
  invalid_properties = Array.new
79
+ if @access_token.nil?
80
+ invalid_properties.push('invalid value for "access_token", access_token cannot be nil.')
81
+ end
82
+
70
83
  if @asset_report_token.nil?
71
84
  invalid_properties.push('invalid value for "asset_report_token", asset_report_token cannot be nil.')
72
85
  end
@@ -77,6 +90,7 @@ module FuseClient
77
90
  # Check to see if the all the properties in the model are valid
78
91
  # @return true if the model is valid
79
92
  def valid?
93
+ return false if @access_token.nil?
80
94
  return false if @asset_report_token.nil?
81
95
  true
82
96
  end
@@ -86,6 +100,7 @@ module FuseClient
86
100
  def ==(o)
87
101
  return true if self.equal?(o)
88
102
  self.class == o.class &&
103
+ access_token == o.access_token &&
89
104
  asset_report_token == o.asset_report_token
90
105
  end
91
106
 
@@ -98,7 +113,7 @@ module FuseClient
98
113
  # Calculates hash code according to all attributes.
99
114
  # @return [Integer] Hash code
100
115
  def hash
101
- [asset_report_token].hash
116
+ [access_token, asset_report_token].hash
102
117
  end
103
118
 
104
119
  # Builds the object from hash
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.4.0
9
+ OpenAPI Generator version: 6.5.0
10
10
 
11
11
  =end
12
12
 
@@ -0,0 +1,250 @@
1
+ =begin
2
+ #Fuse
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.5.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FuseClient
17
+ class GetFinancialConnectionsAccountStatementRequest
18
+ # Access token for authentication
19
+ attr_accessor :access_token
20
+
21
+ # The remote account id to retrieve the statement for.
22
+ attr_accessor :remote_account_id
23
+
24
+ # The year and month for the account statement to be retrieved in YYYY-MM.
25
+ attr_accessor :date
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+ :'access_token' => :'access_token',
31
+ :'remote_account_id' => :'remote_account_id',
32
+ :'date' => :'date'
33
+ }
34
+ end
35
+
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'access_token' => :'String',
45
+ :'remote_account_id' => :'String',
46
+ :'date' => :'String'
47
+ }
48
+ end
49
+
50
+ # List of attributes with nullable: true
51
+ def self.openapi_nullable
52
+ Set.new([
53
+ ])
54
+ end
55
+
56
+ # Initializes the object
57
+ # @param [Hash] attributes Model attributes in the form of hash
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FuseClient::GetFinancialConnectionsAccountStatementRequest` initialize method"
61
+ end
62
+
63
+ # check to see if the attribute exists and convert string to symbol for hash key
64
+ attributes = attributes.each_with_object({}) { |(k, v), h|
65
+ if (!self.class.attribute_map.key?(k.to_sym))
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FuseClient::GetFinancialConnectionsAccountStatementRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
67
+ end
68
+ h[k.to_sym] = v
69
+ }
70
+
71
+ if attributes.key?(:'access_token')
72
+ self.access_token = attributes[:'access_token']
73
+ end
74
+
75
+ if attributes.key?(:'remote_account_id')
76
+ self.remote_account_id = attributes[:'remote_account_id']
77
+ end
78
+
79
+ if attributes.key?(:'date')
80
+ self.date = attributes[:'date']
81
+ end
82
+ end
83
+
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properties with the reasons
86
+ def list_invalid_properties
87
+ invalid_properties = Array.new
88
+ if @access_token.nil?
89
+ invalid_properties.push('invalid value for "access_token", access_token cannot be nil.')
90
+ end
91
+
92
+ if @remote_account_id.nil?
93
+ invalid_properties.push('invalid value for "remote_account_id", remote_account_id cannot be nil.')
94
+ end
95
+
96
+ invalid_properties
97
+ end
98
+
99
+ # Check to see if the all the properties in the model are valid
100
+ # @return true if the model is valid
101
+ def valid?
102
+ return false if @access_token.nil?
103
+ return false if @remote_account_id.nil?
104
+ true
105
+ end
106
+
107
+ # Checks equality by comparing each attribute.
108
+ # @param [Object] Object to be compared
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ access_token == o.access_token &&
113
+ remote_account_id == o.remote_account_id &&
114
+ date == o.date
115
+ end
116
+
117
+ # @see the `==` method
118
+ # @param [Object] Object to be compared
119
+ def eql?(o)
120
+ self == o
121
+ end
122
+
123
+ # Calculates hash code according to all attributes.
124
+ # @return [Integer] Hash code
125
+ def hash
126
+ [access_token, remote_account_id, date].hash
127
+ end
128
+
129
+ # Builds the object from hash
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ # @return [Object] Returns the model itself
132
+ def self.build_from_hash(attributes)
133
+ new.build_from_hash(attributes)
134
+ end
135
+
136
+ # Builds the object from hash
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ # @return [Object] Returns the model itself
139
+ def build_from_hash(attributes)
140
+ return nil unless attributes.is_a?(Hash)
141
+ attributes = attributes.transform_keys(&:to_sym)
142
+ self.class.openapi_types.each_pair do |key, type|
143
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
144
+ self.send("#{key}=", nil)
145
+ elsif type =~ /\AArray<(.*)>/i
146
+ # check to ensure the input is an array given that the attribute
147
+ # is documented as an array but the input is not
148
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
149
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
150
+ end
151
+ elsif !attributes[self.class.attribute_map[key]].nil?
152
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
153
+ end
154
+ end
155
+
156
+ self
157
+ end
158
+
159
+ # Deserializes the data based on type
160
+ # @param string type Data type
161
+ # @param string value Value to be deserialized
162
+ # @return [Object] Deserialized data
163
+ def _deserialize(type, value)
164
+ case type.to_sym
165
+ when :Time
166
+ Time.parse(value)
167
+ when :Date
168
+ Date.parse(value)
169
+ when :String
170
+ value.to_s
171
+ when :Integer
172
+ value.to_i
173
+ when :Float
174
+ value.to_f
175
+ when :Boolean
176
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
177
+ true
178
+ else
179
+ false
180
+ end
181
+ when :Object
182
+ # generic object (usually a Hash), return directly
183
+ value
184
+ when /\AArray<(?<inner_type>.+)>\z/
185
+ inner_type = Regexp.last_match[:inner_type]
186
+ value.map { |v| _deserialize(inner_type, v) }
187
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
188
+ k_type = Regexp.last_match[:k_type]
189
+ v_type = Regexp.last_match[:v_type]
190
+ {}.tap do |hash|
191
+ value.each do |k, v|
192
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
193
+ end
194
+ end
195
+ else # model
196
+ # models (e.g. Pet) or oneOf
197
+ klass = FuseClient.const_get(type)
198
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
+ end
200
+ end
201
+
202
+ # Returns the string representation of the object
203
+ # @return [String] String presentation of the object
204
+ def to_s
205
+ to_hash.to_s
206
+ end
207
+
208
+ # to_body is an alias to to_hash (backward compatibility)
209
+ # @return [Hash] Returns the object in the form of hash
210
+ def to_body
211
+ to_hash
212
+ end
213
+
214
+ # Returns the object in the form of hash
215
+ # @return [Hash] Returns the object in the form of hash
216
+ def to_hash
217
+ hash = {}
218
+ self.class.attribute_map.each_pair do |attr, param|
219
+ value = self.send(attr)
220
+ if value.nil?
221
+ is_nullable = self.class.openapi_nullable.include?(attr)
222
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
+ end
224
+
225
+ hash[param] = _to_hash(value)
226
+ end
227
+ hash
228
+ end
229
+
230
+ # Outputs non-array value in the form of hash
231
+ # For object, use to_hash. Otherwise, just return the value
232
+ # @param [Object] value Any valid value
233
+ # @return [Hash] Returns the value in the form of hash
234
+ def _to_hash(value)
235
+ if value.is_a?(Array)
236
+ value.compact.map { |v| _to_hash(v) }
237
+ elsif value.is_a?(Hash)
238
+ {}.tap do |hash|
239
+ value.each { |k, v| hash[k] = _to_hash(v) }
240
+ end
241
+ elsif value.respond_to? :to_hash
242
+ value.to_hash
243
+ else
244
+ value
245
+ end
246
+ end
247
+
248
+ end
249
+
250
+ end