nucleus_api 1.8.0

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 (805) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +787 -0
  4. data/Rakefile +8 -0
  5. data/docs/Account.md +22 -0
  6. data/docs/AccountAllocationMapping.md +17 -0
  7. data/docs/AccountApi.md +1919 -0
  8. data/docs/AccountMap.md +9 -0
  9. data/docs/AccountPermissionVO.md +9 -0
  10. data/docs/AccountPortfolioRebalanceRequest.md +21 -0
  11. data/docs/AccountStatus.md +16 -0
  12. data/docs/AccountType.md +23 -0
  13. data/docs/AclClientPermissionVO.md +10 -0
  14. data/docs/AdminClient.md +18 -0
  15. data/docs/AdminClientApi.md +309 -0
  16. data/docs/AggregationAccount.md +30 -0
  17. data/docs/AggregationAccountApi.md +1702 -0
  18. data/docs/AggregationAccountBalance.md +18 -0
  19. data/docs/AggregationAccountHolding.md +26 -0
  20. data/docs/AggregationAccountTransaction.md +23 -0
  21. data/docs/AggregationAccountsMap.md +9 -0
  22. data/docs/Allocation.md +22 -0
  23. data/docs/AllocationAggregatedVO.md +13 -0
  24. data/docs/AllocationApi.md +872 -0
  25. data/docs/AllocationComposition.md +18 -0
  26. data/docs/AllocationCompositionAggregatedVO.md +19 -0
  27. data/docs/AllocationCompositionModelHoldingsVO.md +22 -0
  28. data/docs/AllocationNodeMap.md +8 -0
  29. data/docs/Answer.md +18 -0
  30. data/docs/AnswerMap.md +8 -0
  31. data/docs/Application.md +15 -0
  32. data/docs/ApplicationApi.md +309 -0
  33. data/docs/AuditLog.md +23 -0
  34. data/docs/AuditLogApi.md +191 -0
  35. data/docs/AvailableDateDoubleVO.md +14 -0
  36. data/docs/BankCredit.md +15 -0
  37. data/docs/BankLink.md +29 -0
  38. data/docs/BankLinkMap.md +9 -0
  39. data/docs/Benchmark.md +17 -0
  40. data/docs/BenchmarkApi.md +375 -0
  41. data/docs/BenchmarkComposition.md +9 -0
  42. data/docs/Brokers.md +9 -0
  43. data/docs/Budget.md +25 -0
  44. data/docs/BudgetAggregationAccount.md +8 -0
  45. data/docs/BudgetApi.md +315 -0
  46. data/docs/BudgetObject.md +10 -0
  47. data/docs/BulkApi.md +249 -0
  48. data/docs/BulkTransaction.md +13 -0
  49. data/docs/BulkTransactionVO.md +12 -0
  50. data/docs/Business.md +32 -0
  51. data/docs/BusinessAddress.md +15 -0
  52. data/docs/BusinessApi.md +523 -0
  53. data/docs/Card.md +35 -0
  54. data/docs/CardAddress.md +14 -0
  55. data/docs/CardApi.md +754 -0
  56. data/docs/CardProgram.md +23 -0
  57. data/docs/Cash.md +10 -0
  58. data/docs/CategoriesMap.md +9 -0
  59. data/docs/CategoryInternalResponseVO.md +10 -0
  60. data/docs/CategoryResponseVO.md +9 -0
  61. data/docs/Check.md +10 -0
  62. data/docs/CheckImages.md +9 -0
  63. data/docs/Client.md +39 -0
  64. data/docs/ClientAccountMapping.md +10 -0
  65. data/docs/ClientAddress.md +15 -0
  66. data/docs/ClientApi.md +1008 -0
  67. data/docs/ClientRelationship.md +10 -0
  68. data/docs/ClientResponse.md +17 -0
  69. data/docs/ClientStatus.md +16 -0
  70. data/docs/ClientViewGoalData.md +21 -0
  71. data/docs/Country.md +12 -0
  72. data/docs/Currency.md +11 -0
  73. data/docs/Customer.md +21 -0
  74. data/docs/CustomerAddress.md +14 -0
  75. data/docs/CustomerApi.md +616 -0
  76. data/docs/CustomerRevenue.md +16 -0
  77. data/docs/DailyDeposit.md +28 -0
  78. data/docs/DailyWithdrawal.md +29 -0
  79. data/docs/DateDoubleVO.md +10 -0
  80. data/docs/DecisionTree.md +17 -0
  81. data/docs/DecisionTreeApi.md +971 -0
  82. data/docs/DecisionTreeCO.md +9 -0
  83. data/docs/DecisionTreeResultVO.md +9 -0
  84. data/docs/Document.md +30 -0
  85. data/docs/DocumentApi.md +309 -0
  86. data/docs/Employment.md +11 -0
  87. data/docs/ExternalAccountTransfer.md +28 -0
  88. data/docs/Feature.md +18 -0
  89. data/docs/FeatureApi.md +610 -0
  90. data/docs/FeatureTrack.md +14 -0
  91. data/docs/FinancialStatement.md +23 -0
  92. data/docs/FinancialStatementApi.md +315 -0
  93. data/docs/Funding.md +37 -0
  94. data/docs/FundingApi.md +1601 -0
  95. data/docs/FundingRequestMap.md +8 -0
  96. data/docs/FxRateView.md +11 -0
  97. data/docs/Goal.md +24 -0
  98. data/docs/GoalAccountMapping.md +11 -0
  99. data/docs/GoalApi.md +841 -0
  100. data/docs/GoalTrack.md +26 -0
  101. data/docs/GoalTrackAccounts.md +8 -0
  102. data/docs/Household.md +18 -0
  103. data/docs/HouseholdApi.md +523 -0
  104. data/docs/Investment.md +16 -0
  105. data/docs/Invoice.md +32 -0
  106. data/docs/InvoiceApi.md +622 -0
  107. data/docs/InvoicePayment.md +15 -0
  108. data/docs/JsonNode.md +29 -0
  109. data/docs/LineItems.md +15 -0
  110. data/docs/Location.md +15 -0
  111. data/docs/MXMerchantRes.md +14 -0
  112. data/docs/Member.md +11 -0
  113. data/docs/MerchantCategoryCode.md +11 -0
  114. data/docs/MerchantsMap.md +9 -0
  115. data/docs/Model.md +29 -0
  116. data/docs/ModelApi.md +1580 -0
  117. data/docs/ModelAssetSize.md +16 -0
  118. data/docs/ModelComment.md +15 -0
  119. data/docs/ModelHolding.md +25 -0
  120. data/docs/ModelHoldingVO.md +11 -0
  121. data/docs/ModelTransaction.md +17 -0
  122. data/docs/Node.md +15 -0
  123. data/docs/NodeRelationship.md +18 -0
  124. data/docs/Notification.md +20 -0
  125. data/docs/NotificationApi.md +911 -0
  126. data/docs/NotificationClient.md +19 -0
  127. data/docs/NotificationSetting.md +19 -0
  128. data/docs/Order.md +27 -0
  129. data/docs/OrderApi.md +1764 -0
  130. data/docs/OrderBulk.md +18 -0
  131. data/docs/OrderReconcileRequest.md +12 -0
  132. data/docs/OrderReconcileReturnObject.md +12 -0
  133. data/docs/OrderStatus.md +14 -0
  134. data/docs/OrderTrack.md +20 -0
  135. data/docs/OrderVoClone.md +20 -0
  136. data/docs/Overflow.md +16 -0
  137. data/docs/OverflowApi.md +492 -0
  138. data/docs/OverflowBankLinkMap.md +9 -0
  139. data/docs/OverflowSettings.md +17 -0
  140. data/docs/OverflowVO.md +10 -0
  141. data/docs/Ownership.md +12 -0
  142. data/docs/PageAccount.md +16 -0
  143. data/docs/PageAccountAllocationMapping.md +16 -0
  144. data/docs/PageAccountPermissionVO.md +16 -0
  145. data/docs/PageAccountStatus.md +16 -0
  146. data/docs/PageAccountType.md +16 -0
  147. data/docs/PageAdminClient.md +16 -0
  148. data/docs/PageAggregationAccount.md +16 -0
  149. data/docs/PageAggregationAccountBalance.md +16 -0
  150. data/docs/PageAggregationAccountHolding.md +16 -0
  151. data/docs/PageAggregationAccountTransaction.md +16 -0
  152. data/docs/PageAllocation.md +16 -0
  153. data/docs/PageAllocationComposition.md +16 -0
  154. data/docs/PageAnswer.md +16 -0
  155. data/docs/PageApplication.md +16 -0
  156. data/docs/PageAuditLog.md +16 -0
  157. data/docs/PageBankLink.md +16 -0
  158. data/docs/PageBenchmark.md +16 -0
  159. data/docs/PageBudget.md +16 -0
  160. data/docs/PageBusiness.md +16 -0
  161. data/docs/PageCard.md +16 -0
  162. data/docs/PageCardProgram.md +16 -0
  163. data/docs/PageClient.md +16 -0
  164. data/docs/PageClientResponse.md +16 -0
  165. data/docs/PageClientStatus.md +16 -0
  166. data/docs/PageCustomer.md +16 -0
  167. data/docs/PageCustomerRevenue.md +16 -0
  168. data/docs/PageDailyDeposit.md +16 -0
  169. data/docs/PageDailyWithdrawal.md +16 -0
  170. data/docs/PageDecisionTree.md +16 -0
  171. data/docs/PageDocument.md +16 -0
  172. data/docs/PageExternalAccountTransfer.md +16 -0
  173. data/docs/PageFeature.md +16 -0
  174. data/docs/PageFeatureTrack.md +16 -0
  175. data/docs/PageFinancialStatement.md +16 -0
  176. data/docs/PageFunding.md +16 -0
  177. data/docs/PageGoal.md +16 -0
  178. data/docs/PageGoalTrack.md +16 -0
  179. data/docs/PageHousehold.md +16 -0
  180. data/docs/PageInvoice.md +16 -0
  181. data/docs/PageInvoicePayment.md +16 -0
  182. data/docs/PageMXMerchantRes.md +16 -0
  183. data/docs/PageModel.md +16 -0
  184. data/docs/PageModelAssetSize.md +16 -0
  185. data/docs/PageModelComment.md +16 -0
  186. data/docs/PageModelHolding.md +16 -0
  187. data/docs/PageModelTransaction.md +16 -0
  188. data/docs/PageNode.md +16 -0
  189. data/docs/PageNodeRelationship.md +16 -0
  190. data/docs/PageNotification.md +16 -0
  191. data/docs/PageNotificationClient.md +16 -0
  192. data/docs/PageNotificationSetting.md +16 -0
  193. data/docs/PageOrder.md +16 -0
  194. data/docs/PageOrderBulk.md +16 -0
  195. data/docs/PageOrderStatus.md +16 -0
  196. data/docs/PageOrderTrack.md +16 -0
  197. data/docs/PageOverflow.md +16 -0
  198. data/docs/PageOverflowSettings.md +16 -0
  199. data/docs/PagePortfolio.md +16 -0
  200. data/docs/PagePortfolioAssetSizeLog.md +16 -0
  201. data/docs/PagePortfolioComment.md +16 -0
  202. data/docs/PagePortfolioGoal.md +16 -0
  203. data/docs/PagePortfolioHoldingLog.md +16 -0
  204. data/docs/PagePortfolioTransaction.md +16 -0
  205. data/docs/PageQuestion.md +16 -0
  206. data/docs/PageQuestionnaire.md +16 -0
  207. data/docs/PageReasonCode.md +16 -0
  208. data/docs/PageRiskProfile.md +16 -0
  209. data/docs/PageRoundup.md +16 -0
  210. data/docs/PageRoundupSettings.md +16 -0
  211. data/docs/PageScore.md +16 -0
  212. data/docs/PageSecurity.md +16 -0
  213. data/docs/PageSecurityExclusion.md +16 -0
  214. data/docs/PageSecurityPrice.md +16 -0
  215. data/docs/PageSpendingControl.md +16 -0
  216. data/docs/PageStage.md +16 -0
  217. data/docs/PageTransactionCode.md +16 -0
  218. data/docs/PageVAccountAssetSize.md +16 -0
  219. data/docs/PageWebhook.md +16 -0
  220. data/docs/PerformanceApi.md +973 -0
  221. data/docs/PermissionVO.md +9 -0
  222. data/docs/Portfolio.md +22 -0
  223. data/docs/PortfolioApi.md +1902 -0
  224. data/docs/PortfolioAssetSizeLog.md +20 -0
  225. data/docs/PortfolioComment.md +16 -0
  226. data/docs/PortfolioGoal.md +14 -0
  227. data/docs/PortfolioGoalMap.md +9 -0
  228. data/docs/PortfolioHoldingAgg.md +14 -0
  229. data/docs/PortfolioHoldingLog.md +21 -0
  230. data/docs/PortfolioTransaction.md +37 -0
  231. data/docs/Question.md +23 -0
  232. data/docs/Questionnaire.md +17 -0
  233. data/docs/QuestionnaireApi.md +1212 -0
  234. data/docs/ReasonCode.md +17 -0
  235. data/docs/ResourceApi.md +534 -0
  236. data/docs/RiskProfile.md +18 -0
  237. data/docs/RiskProfileApi.md +309 -0
  238. data/docs/Roundup.md +15 -0
  239. data/docs/RoundupApi.md +492 -0
  240. data/docs/RoundupCO.md +12 -0
  241. data/docs/RoundupSettings.md +21 -0
  242. data/docs/Score.md +23 -0
  243. data/docs/ScoreApi.md +309 -0
  244. data/docs/SecuritiesApi.md +917 -0
  245. data/docs/SecuritiesComposition.md +11 -0
  246. data/docs/SecuritiesCountry.md +9 -0
  247. data/docs/Security.md +32 -0
  248. data/docs/SecurityCompositionVO.md +21 -0
  249. data/docs/SecurityCountryVO.md +9 -0
  250. data/docs/SecurityExclusion.md +18 -0
  251. data/docs/SecurityPrice.md +20 -0
  252. data/docs/Sort.md +13 -0
  253. data/docs/SpendingControl.md +21 -0
  254. data/docs/SpendingControlApi.md +309 -0
  255. data/docs/Stage.md +22 -0
  256. data/docs/Stat.md +9 -0
  257. data/docs/State.md +10 -0
  258. data/docs/StatisticResourceVO.md +11 -0
  259. data/docs/TokenDateRequest.md +13 -0
  260. data/docs/TransactionCode.md +20 -0
  261. data/docs/UtilsApi.md +911 -0
  262. data/docs/VAccountAssetSize.md +11 -0
  263. data/docs/VAccountVO.md +13 -0
  264. data/docs/VClientGoalViewData.md +13 -0
  265. data/docs/VPortfolioVO.md +11 -0
  266. data/docs/Webhook.md +15 -0
  267. data/docs/WebhookApi.md +309 -0
  268. data/git_push.sh +55 -0
  269. data/lib/nucleus_api.rb +303 -0
  270. data/lib/nucleus_api/api/account_api.rb +1794 -0
  271. data/lib/nucleus_api/api/admin_client_api.rb +301 -0
  272. data/lib/nucleus_api/api/aggregation_account_api.rb +1587 -0
  273. data/lib/nucleus_api/api/allocation_api.rb +824 -0
  274. data/lib/nucleus_api/api/application_api.rb +301 -0
  275. data/lib/nucleus_api/api/audit_log_api.rb +190 -0
  276. data/lib/nucleus_api/api/benchmark_api.rb +362 -0
  277. data/lib/nucleus_api/api/budget_api.rb +307 -0
  278. data/lib/nucleus_api/api/bulk_api.rb +253 -0
  279. data/lib/nucleus_api/api/business_api.rb +508 -0
  280. data/lib/nucleus_api/api/card_api.rb +719 -0
  281. data/lib/nucleus_api/api/client_api.rb +950 -0
  282. data/lib/nucleus_api/api/customer_api.rb +585 -0
  283. data/lib/nucleus_api/api/decision_tree_api.rb +913 -0
  284. data/lib/nucleus_api/api/document_api.rb +301 -0
  285. data/lib/nucleus_api/api/feature_api.rb +579 -0
  286. data/lib/nucleus_api/api/financial_statement_api.rb +307 -0
  287. data/lib/nucleus_api/api/funding_api.rb +1497 -0
  288. data/lib/nucleus_api/api/goal_api.rb +819 -0
  289. data/lib/nucleus_api/api/household_api.rb +508 -0
  290. data/lib/nucleus_api/api/invoice_api.rb +591 -0
  291. data/lib/nucleus_api/api/model_api.rb +1479 -0
  292. data/lib/nucleus_api/api/notification_api.rb +857 -0
  293. data/lib/nucleus_api/api/order_api.rb +1688 -0
  294. data/lib/nucleus_api/api/overflow_api.rb +468 -0
  295. data/lib/nucleus_api/api/performance_api.rb +1131 -0
  296. data/lib/nucleus_api/api/portfolio_api.rb +1776 -0
  297. data/lib/nucleus_api/api/questionnaire_api.rb +1135 -0
  298. data/lib/nucleus_api/api/resource_api.rb +479 -0
  299. data/lib/nucleus_api/api/risk_profile_api.rb +301 -0
  300. data/lib/nucleus_api/api/roundup_api.rb +468 -0
  301. data/lib/nucleus_api/api/score_api.rb +301 -0
  302. data/lib/nucleus_api/api/securities_api.rb +863 -0
  303. data/lib/nucleus_api/api/spending_control_api.rb +301 -0
  304. data/lib/nucleus_api/api/utils_api.rb +857 -0
  305. data/lib/nucleus_api/api/webhook_api.rb +301 -0
  306. data/lib/nucleus_api/api_client.rb +428 -0
  307. data/lib/nucleus_api/api_error.rb +38 -0
  308. data/lib/nucleus_api/auth_configuration.rb +177 -0
  309. data/lib/nucleus_api/configuration.rb +224 -0
  310. data/lib/nucleus_api/models/account.rb +333 -0
  311. data/lib/nucleus_api/models/account_allocation_mapping.rb +294 -0
  312. data/lib/nucleus_api/models/account_map.rb +202 -0
  313. data/lib/nucleus_api/models/account_permission_vo.rb +195 -0
  314. data/lib/nucleus_api/models/account_portfolio_rebalance_request.rb +313 -0
  315. data/lib/nucleus_api/models/account_status.rb +275 -0
  316. data/lib/nucleus_api/models/account_type.rb +335 -0
  317. data/lib/nucleus_api/models/acl_client_permission_vo.rb +236 -0
  318. data/lib/nucleus_api/models/admin_client.rb +272 -0
  319. data/lib/nucleus_api/models/aggregation_account.rb +420 -0
  320. data/lib/nucleus_api/models/aggregation_account_balance.rb +284 -0
  321. data/lib/nucleus_api/models/aggregation_account_holding.rb +364 -0
  322. data/lib/nucleus_api/models/aggregation_account_transaction.rb +382 -0
  323. data/lib/nucleus_api/models/aggregation_accounts_map.rb +202 -0
  324. data/lib/nucleus_api/models/allocation.rb +325 -0
  325. data/lib/nucleus_api/models/allocation_aggregated_vo.rb +228 -0
  326. data/lib/nucleus_api/models/allocation_composition.rb +304 -0
  327. data/lib/nucleus_api/models/allocation_composition_aggregated_vo.rb +282 -0
  328. data/lib/nucleus_api/models/allocation_composition_model_holdings_vo.rb +311 -0
  329. data/lib/nucleus_api/models/allocation_node_map.rb +187 -0
  330. data/lib/nucleus_api/models/answer.rb +286 -0
  331. data/lib/nucleus_api/models/answer_map.rb +181 -0
  332. data/lib/nucleus_api/models/application.rb +256 -0
  333. data/lib/nucleus_api/models/audit_log.rb +357 -0
  334. data/lib/nucleus_api/models/available_date_double_vo.rb +243 -0
  335. data/lib/nucleus_api/models/bank_credit.rb +262 -0
  336. data/lib/nucleus_api/models/bank_link.rb +410 -0
  337. data/lib/nucleus_api/models/bank_link_map.rb +202 -0
  338. data/lib/nucleus_api/models/benchmark.rb +277 -0
  339. data/lib/nucleus_api/models/benchmark_composition.rb +202 -0
  340. data/lib/nucleus_api/models/brokers.rb +203 -0
  341. data/lib/nucleus_api/models/budget.rb +372 -0
  342. data/lib/nucleus_api/models/budget_aggregation_account.rb +187 -0
  343. data/lib/nucleus_api/models/budget_object.rb +213 -0
  344. data/lib/nucleus_api/models/bulk_transaction.rb +226 -0
  345. data/lib/nucleus_api/models/bulk_transaction_vo.rb +217 -0
  346. data/lib/nucleus_api/models/business.rb +430 -0
  347. data/lib/nucleus_api/models/business_address.rb +278 -0
  348. data/lib/nucleus_api/models/card.rb +489 -0
  349. data/lib/nucleus_api/models/card_address.rb +268 -0
  350. data/lib/nucleus_api/models/card_program.rb +350 -0
  351. data/lib/nucleus_api/models/cash.rb +213 -0
  352. data/lib/nucleus_api/models/categories_map.rb +202 -0
  353. data/lib/nucleus_api/models/category_internal_response_vo.rb +201 -0
  354. data/lib/nucleus_api/models/category_response_vo.rb +192 -0
  355. data/lib/nucleus_api/models/check.rb +210 -0
  356. data/lib/nucleus_api/models/check_images.rb +198 -0
  357. data/lib/nucleus_api/models/client.rb +523 -0
  358. data/lib/nucleus_api/models/client_account_mapping.rb +212 -0
  359. data/lib/nucleus_api/models/client_address.rb +278 -0
  360. data/lib/nucleus_api/models/client_relationship.rb +209 -0
  361. data/lib/nucleus_api/models/client_response.rb +280 -0
  362. data/lib/nucleus_api/models/client_status.rb +275 -0
  363. data/lib/nucleus_api/models/client_view_goal_data.rb +302 -0
  364. data/lib/nucleus_api/models/country.rb +233 -0
  365. data/lib/nucleus_api/models/currency.rb +212 -0
  366. data/lib/nucleus_api/models/customer.rb +317 -0
  367. data/lib/nucleus_api/models/customer_address.rb +268 -0
  368. data/lib/nucleus_api/models/customer_revenue.rb +284 -0
  369. data/lib/nucleus_api/models/daily_deposit.rb +395 -0
  370. data/lib/nucleus_api/models/daily_withdrawal.rb +405 -0
  371. data/lib/nucleus_api/models/date_double_vo.rb +203 -0
  372. data/lib/nucleus_api/models/decision_tree.rb +275 -0
  373. data/lib/nucleus_api/models/decision_tree_co.rb +202 -0
  374. data/lib/nucleus_api/models/decision_tree_result_vo.rb +192 -0
  375. data/lib/nucleus_api/models/document.rb +409 -0
  376. data/lib/nucleus_api/models/employment.rb +213 -0
  377. data/lib/nucleus_api/models/external_account_transfer.rb +412 -0
  378. data/lib/nucleus_api/models/feature.rb +286 -0
  379. data/lib/nucleus_api/models/feature_track.rb +251 -0
  380. data/lib/nucleus_api/models/financial_statement.rb +352 -0
  381. data/lib/nucleus_api/models/funding.rb +496 -0
  382. data/lib/nucleus_api/models/funding_request_map.rb +187 -0
  383. data/lib/nucleus_api/models/fx_rate_view.rb +233 -0
  384. data/lib/nucleus_api/models/goal.rb +340 -0
  385. data/lib/nucleus_api/models/goal_account_mapping.rb +218 -0
  386. data/lib/nucleus_api/models/goal_track.rb +372 -0
  387. data/lib/nucleus_api/models/goal_track_accounts.rb +187 -0
  388. data/lib/nucleus_api/models/household.rb +285 -0
  389. data/lib/nucleus_api/models/investment.rb +283 -0
  390. data/lib/nucleus_api/models/invoice.rb +452 -0
  391. data/lib/nucleus_api/models/invoice_payment.rb +269 -0
  392. data/lib/nucleus_api/models/json_node.rb +404 -0
  393. data/lib/nucleus_api/models/line_items.rb +278 -0
  394. data/lib/nucleus_api/models/location.rb +253 -0
  395. data/lib/nucleus_api/models/member.rb +217 -0
  396. data/lib/nucleus_api/models/merchant_category_code.rb +213 -0
  397. data/lib/nucleus_api/models/merchants_map.rb +202 -0
  398. data/lib/nucleus_api/models/model.rb +396 -0
  399. data/lib/nucleus_api/models/model_asset_size.rb +274 -0
  400. data/lib/nucleus_api/models/model_comment.rb +264 -0
  401. data/lib/nucleus_api/models/model_holding.rb +370 -0
  402. data/lib/nucleus_api/models/model_holding_vo.rb +208 -0
  403. data/lib/nucleus_api/models/model_transaction.rb +298 -0
  404. data/lib/nucleus_api/models/mx_merchant_res.rb +235 -0
  405. data/lib/nucleus_api/models/node.rb +260 -0
  406. data/lib/nucleus_api/models/node_relationship.rb +300 -0
  407. data/lib/nucleus_api/models/notification.rb +313 -0
  408. data/lib/nucleus_api/models/notification_client.rb +309 -0
  409. data/lib/nucleus_api/models/notification_setting.rb +300 -0
  410. data/lib/nucleus_api/models/order.rb +390 -0
  411. data/lib/nucleus_api/models/order_bulk.rb +309 -0
  412. data/lib/nucleus_api/models/order_reconcile_request.rb +220 -0
  413. data/lib/nucleus_api/models/order_reconcile_return_object.rb +227 -0
  414. data/lib/nucleus_api/models/order_status.rb +250 -0
  415. data/lib/nucleus_api/models/order_track.rb +316 -0
  416. data/lib/nucleus_api/models/order_vo_clone.rb +304 -0
  417. data/lib/nucleus_api/models/overflow.rb +281 -0
  418. data/lib/nucleus_api/models/overflow_bank_link_map.rb +202 -0
  419. data/lib/nucleus_api/models/overflow_settings.rb +287 -0
  420. data/lib/nucleus_api/models/overflow_vo.rb +203 -0
  421. data/lib/nucleus_api/models/ownership.rb +233 -0
  422. data/lib/nucleus_api/models/page_account.rb +258 -0
  423. data/lib/nucleus_api/models/page_account_allocation_mapping.rb +258 -0
  424. data/lib/nucleus_api/models/page_account_permission_vo.rb +258 -0
  425. data/lib/nucleus_api/models/page_account_status.rb +258 -0
  426. data/lib/nucleus_api/models/page_account_type.rb +258 -0
  427. data/lib/nucleus_api/models/page_admin_client.rb +258 -0
  428. data/lib/nucleus_api/models/page_aggregation_account.rb +258 -0
  429. data/lib/nucleus_api/models/page_aggregation_account_balance.rb +258 -0
  430. data/lib/nucleus_api/models/page_aggregation_account_holding.rb +258 -0
  431. data/lib/nucleus_api/models/page_aggregation_account_transaction.rb +258 -0
  432. data/lib/nucleus_api/models/page_allocation.rb +258 -0
  433. data/lib/nucleus_api/models/page_allocation_composition.rb +258 -0
  434. data/lib/nucleus_api/models/page_answer.rb +258 -0
  435. data/lib/nucleus_api/models/page_application.rb +258 -0
  436. data/lib/nucleus_api/models/page_audit_log.rb +258 -0
  437. data/lib/nucleus_api/models/page_bank_link.rb +258 -0
  438. data/lib/nucleus_api/models/page_benchmark.rb +258 -0
  439. data/lib/nucleus_api/models/page_budget.rb +258 -0
  440. data/lib/nucleus_api/models/page_business.rb +258 -0
  441. data/lib/nucleus_api/models/page_card.rb +258 -0
  442. data/lib/nucleus_api/models/page_card_program.rb +258 -0
  443. data/lib/nucleus_api/models/page_client.rb +258 -0
  444. data/lib/nucleus_api/models/page_client_response.rb +258 -0
  445. data/lib/nucleus_api/models/page_client_status.rb +258 -0
  446. data/lib/nucleus_api/models/page_customer.rb +258 -0
  447. data/lib/nucleus_api/models/page_customer_revenue.rb +258 -0
  448. data/lib/nucleus_api/models/page_daily_deposit.rb +258 -0
  449. data/lib/nucleus_api/models/page_daily_withdrawal.rb +258 -0
  450. data/lib/nucleus_api/models/page_decision_tree.rb +258 -0
  451. data/lib/nucleus_api/models/page_document.rb +258 -0
  452. data/lib/nucleus_api/models/page_external_account_transfer.rb +258 -0
  453. data/lib/nucleus_api/models/page_feature.rb +258 -0
  454. data/lib/nucleus_api/models/page_feature_track.rb +258 -0
  455. data/lib/nucleus_api/models/page_financial_statement.rb +258 -0
  456. data/lib/nucleus_api/models/page_funding.rb +258 -0
  457. data/lib/nucleus_api/models/page_goal.rb +258 -0
  458. data/lib/nucleus_api/models/page_goal_track.rb +258 -0
  459. data/lib/nucleus_api/models/page_household.rb +258 -0
  460. data/lib/nucleus_api/models/page_invoice.rb +258 -0
  461. data/lib/nucleus_api/models/page_invoice_payment.rb +258 -0
  462. data/lib/nucleus_api/models/page_model.rb +258 -0
  463. data/lib/nucleus_api/models/page_model_asset_size.rb +258 -0
  464. data/lib/nucleus_api/models/page_model_comment.rb +258 -0
  465. data/lib/nucleus_api/models/page_model_holding.rb +258 -0
  466. data/lib/nucleus_api/models/page_model_transaction.rb +258 -0
  467. data/lib/nucleus_api/models/page_mx_merchant_res.rb +255 -0
  468. data/lib/nucleus_api/models/page_node.rb +258 -0
  469. data/lib/nucleus_api/models/page_node_relationship.rb +258 -0
  470. data/lib/nucleus_api/models/page_notification.rb +258 -0
  471. data/lib/nucleus_api/models/page_notification_client.rb +258 -0
  472. data/lib/nucleus_api/models/page_notification_setting.rb +258 -0
  473. data/lib/nucleus_api/models/page_order.rb +258 -0
  474. data/lib/nucleus_api/models/page_order_bulk.rb +258 -0
  475. data/lib/nucleus_api/models/page_order_status.rb +258 -0
  476. data/lib/nucleus_api/models/page_order_track.rb +258 -0
  477. data/lib/nucleus_api/models/page_overflow.rb +258 -0
  478. data/lib/nucleus_api/models/page_overflow_settings.rb +258 -0
  479. data/lib/nucleus_api/models/page_portfolio.rb +258 -0
  480. data/lib/nucleus_api/models/page_portfolio_asset_size_log.rb +258 -0
  481. data/lib/nucleus_api/models/page_portfolio_comment.rb +258 -0
  482. data/lib/nucleus_api/models/page_portfolio_goal.rb +258 -0
  483. data/lib/nucleus_api/models/page_portfolio_holding_log.rb +258 -0
  484. data/lib/nucleus_api/models/page_portfolio_transaction.rb +258 -0
  485. data/lib/nucleus_api/models/page_question.rb +258 -0
  486. data/lib/nucleus_api/models/page_questionnaire.rb +258 -0
  487. data/lib/nucleus_api/models/page_reason_code.rb +258 -0
  488. data/lib/nucleus_api/models/page_risk_profile.rb +258 -0
  489. data/lib/nucleus_api/models/page_roundup.rb +258 -0
  490. data/lib/nucleus_api/models/page_roundup_settings.rb +258 -0
  491. data/lib/nucleus_api/models/page_score.rb +258 -0
  492. data/lib/nucleus_api/models/page_security.rb +258 -0
  493. data/lib/nucleus_api/models/page_security_exclusion.rb +258 -0
  494. data/lib/nucleus_api/models/page_security_price.rb +258 -0
  495. data/lib/nucleus_api/models/page_spending_control.rb +258 -0
  496. data/lib/nucleus_api/models/page_stage.rb +258 -0
  497. data/lib/nucleus_api/models/page_transaction_code.rb +258 -0
  498. data/lib/nucleus_api/models/page_v_account_asset_size.rb +258 -0
  499. data/lib/nucleus_api/models/page_webhook.rb +258 -0
  500. data/lib/nucleus_api/models/permission_vo.rb +226 -0
  501. data/lib/nucleus_api/models/portfolio.rb +341 -0
  502. data/lib/nucleus_api/models/portfolio_asset_size_log.rb +329 -0
  503. data/lib/nucleus_api/models/portfolio_comment.rb +279 -0
  504. data/lib/nucleus_api/models/portfolio_goal.rb +255 -0
  505. data/lib/nucleus_api/models/portfolio_goal_map.rb +202 -0
  506. data/lib/nucleus_api/models/portfolio_holding_agg.rb +243 -0
  507. data/lib/nucleus_api/models/portfolio_holding_log.rb +339 -0
  508. data/lib/nucleus_api/models/portfolio_transaction.rb +495 -0
  509. data/lib/nucleus_api/models/question.rb +334 -0
  510. data/lib/nucleus_api/models/questionnaire.rb +275 -0
  511. data/lib/nucleus_api/models/reason_code.rb +274 -0
  512. data/lib/nucleus_api/models/risk_profile.rb +286 -0
  513. data/lib/nucleus_api/models/roundup.rb +266 -0
  514. data/lib/nucleus_api/models/roundup_co.rb +232 -0
  515. data/lib/nucleus_api/models/roundup_settings.rb +331 -0
  516. data/lib/nucleus_api/models/score.rb +374 -0
  517. data/lib/nucleus_api/models/securities_composition.rb +232 -0
  518. data/lib/nucleus_api/models/securities_country.rb +202 -0
  519. data/lib/nucleus_api/models/security.rb +434 -0
  520. data/lib/nucleus_api/models/security_composition_vo.rb +300 -0
  521. data/lib/nucleus_api/models/security_country_vo.rb +190 -0
  522. data/lib/nucleus_api/models/security_exclusion.rb +300 -0
  523. data/lib/nucleus_api/models/security_price.rb +313 -0
  524. data/lib/nucleus_api/models/sort.rb +233 -0
  525. data/lib/nucleus_api/models/spending_control.rb +331 -0
  526. data/lib/nucleus_api/models/stage.rb +325 -0
  527. data/lib/nucleus_api/models/stat.rb +203 -0
  528. data/lib/nucleus_api/models/state.rb +202 -0
  529. data/lib/nucleus_api/models/statistic_resource_vo.rb +208 -0
  530. data/lib/nucleus_api/models/token_date_request.rb +233 -0
  531. data/lib/nucleus_api/models/transaction_code.rb +362 -0
  532. data/lib/nucleus_api/models/v_account_asset_size.rb +212 -0
  533. data/lib/nucleus_api/models/v_account_vo.rb +226 -0
  534. data/lib/nucleus_api/models/v_client_goal_view_data.rb +228 -0
  535. data/lib/nucleus_api/models/v_portfolio_vo.rb +208 -0
  536. data/lib/nucleus_api/models/webhook.rb +280 -0
  537. data/lib/nucleus_api/version.rb +15 -0
  538. data/nucleus_api.gemspec +46 -0
  539. data/spec/api/account_api_spec.rb +455 -0
  540. data/spec/api/admin_client_api_spec.rb +100 -0
  541. data/spec/api/aggregation_account_api_spec.rb +399 -0
  542. data/spec/api/allocation_api_spec.rb +225 -0
  543. data/spec/api/application_api_spec.rb +100 -0
  544. data/spec/api/audit_log_api_spec.rb +75 -0
  545. data/spec/api/benchmark_api_spec.rb +115 -0
  546. data/spec/api/budget_api_spec.rb +102 -0
  547. data/spec/api/bulk_api_spec.rb +86 -0
  548. data/spec/api/business_api_spec.rb +153 -0
  549. data/spec/api/card_api_spec.rb +201 -0
  550. data/spec/api/client_api_spec.rb +256 -0
  551. data/spec/api/customer_api_spec.rb +167 -0
  552. data/spec/api/decision_tree_api_spec.rb +242 -0
  553. data/spec/api/document_api_spec.rb +100 -0
  554. data/spec/api/feature_api_spec.rb +165 -0
  555. data/spec/api/financial_statement_api_spec.rb +102 -0
  556. data/spec/api/funding_api_spec.rb +382 -0
  557. data/spec/api/goal_api_spec.rb +225 -0
  558. data/spec/api/household_api_spec.rb +153 -0
  559. data/spec/api/invoice_api_spec.rb +169 -0
  560. data/spec/api/model_api_spec.rb +375 -0
  561. data/spec/api/notification_api_spec.rb +230 -0
  562. data/spec/api/order_api_spec.rb +412 -0
  563. data/spec/api/overflow_api_spec.rb +140 -0
  564. data/spec/api/performance_api_spec.rb +355 -0
  565. data/spec/api/portfolio_api_spec.rb +448 -0
  566. data/spec/api/questionnaire_api_spec.rb +295 -0
  567. data/spec/api/resource_api_spec.rb +148 -0
  568. data/spec/api/risk_profile_api_spec.rb +100 -0
  569. data/spec/api/roundup_api_spec.rb +140 -0
  570. data/spec/api/score_api_spec.rb +100 -0
  571. data/spec/api/securities_api_spec.rb +232 -0
  572. data/spec/api/spending_control_api_spec.rb +100 -0
  573. data/spec/api/utils_api_spec.rb +230 -0
  574. data/spec/api/webhook_api_spec.rb +100 -0
  575. data/spec/api_client_spec.rb +243 -0
  576. data/spec/configuration_spec.rb +42 -0
  577. data/spec/models/account_allocation_mapping_spec.rb +95 -0
  578. data/spec/models/account_map_spec.rb +47 -0
  579. data/spec/models/account_permission_vo_spec.rb +47 -0
  580. data/spec/models/account_portfolio_rebalance_request_spec.rb +119 -0
  581. data/spec/models/account_spec.rb +125 -0
  582. data/spec/models/account_status_spec.rb +89 -0
  583. data/spec/models/account_type_spec.rb +131 -0
  584. data/spec/models/acl_client_permission_vo_spec.rb +57 -0
  585. data/spec/models/admin_client_spec.rb +101 -0
  586. data/spec/models/aggregation_account_balance_spec.rb +101 -0
  587. data/spec/models/aggregation_account_holding_spec.rb +149 -0
  588. data/spec/models/aggregation_account_spec.rb +173 -0
  589. data/spec/models/aggregation_account_transaction_spec.rb +139 -0
  590. data/spec/models/aggregation_accounts_map_spec.rb +47 -0
  591. data/spec/models/allocation_aggregated_vo_spec.rb +71 -0
  592. data/spec/models/allocation_composition_aggregated_vo_spec.rb +107 -0
  593. data/spec/models/allocation_composition_model_holdings_vo_spec.rb +125 -0
  594. data/spec/models/allocation_composition_spec.rb +101 -0
  595. data/spec/models/allocation_node_map_spec.rb +41 -0
  596. data/spec/models/allocation_spec.rb +125 -0
  597. data/spec/models/answer_map_spec.rb +41 -0
  598. data/spec/models/answer_spec.rb +101 -0
  599. data/spec/models/application_spec.rb +83 -0
  600. data/spec/models/audit_log_spec.rb +131 -0
  601. data/spec/models/available_date_double_vo_spec.rb +77 -0
  602. data/spec/models/bank_credit_spec.rb +83 -0
  603. data/spec/models/bank_link_map_spec.rb +47 -0
  604. data/spec/models/bank_link_spec.rb +167 -0
  605. data/spec/models/benchmark_composition_spec.rb +47 -0
  606. data/spec/models/benchmark_spec.rb +95 -0
  607. data/spec/models/brokers_spec.rb +47 -0
  608. data/spec/models/budget_aggregation_account_spec.rb +41 -0
  609. data/spec/models/budget_object_spec.rb +53 -0
  610. data/spec/models/budget_spec.rb +143 -0
  611. data/spec/models/bulk_transaction_spec.rb +71 -0
  612. data/spec/models/bulk_transaction_vo_spec.rb +65 -0
  613. data/spec/models/business_address_spec.rb +83 -0
  614. data/spec/models/business_spec.rb +185 -0
  615. data/spec/models/card_address_spec.rb +77 -0
  616. data/spec/models/card_program_spec.rb +131 -0
  617. data/spec/models/card_spec.rb +202 -0
  618. data/spec/models/cash_spec.rb +53 -0
  619. data/spec/models/categories_map_spec.rb +47 -0
  620. data/spec/models/category_internal_response_vo_spec.rb +53 -0
  621. data/spec/models/category_response_vo_spec.rb +47 -0
  622. data/spec/models/check_images_spec.rb +47 -0
  623. data/spec/models/check_spec.rb +53 -0
  624. data/spec/models/client_account_mapping_spec.rb +53 -0
  625. data/spec/models/client_address_spec.rb +83 -0
  626. data/spec/models/client_relationship_spec.rb +53 -0
  627. data/spec/models/client_response_spec.rb +95 -0
  628. data/spec/models/client_spec.rb +239 -0
  629. data/spec/models/client_status_spec.rb +89 -0
  630. data/spec/models/client_view_goal_data_spec.rb +119 -0
  631. data/spec/models/country_spec.rb +65 -0
  632. data/spec/models/currency_spec.rb +59 -0
  633. data/spec/models/customer_address_spec.rb +77 -0
  634. data/spec/models/customer_revenue_spec.rb +89 -0
  635. data/spec/models/customer_spec.rb +119 -0
  636. data/spec/models/daily_deposit_spec.rb +161 -0
  637. data/spec/models/daily_withdrawal_spec.rb +167 -0
  638. data/spec/models/date_double_vo_spec.rb +53 -0
  639. data/spec/models/decision_tree_co_spec.rb +47 -0
  640. data/spec/models/decision_tree_result_vo_spec.rb +47 -0
  641. data/spec/models/decision_tree_spec.rb +95 -0
  642. data/spec/models/document_spec.rb +173 -0
  643. data/spec/models/employment_spec.rb +59 -0
  644. data/spec/models/external_account_transfer_spec.rb +161 -0
  645. data/spec/models/feature_spec.rb +101 -0
  646. data/spec/models/feature_track_spec.rb +77 -0
  647. data/spec/models/financial_statement_spec.rb +131 -0
  648. data/spec/models/funding_request_map_spec.rb +41 -0
  649. data/spec/models/funding_spec.rb +215 -0
  650. data/spec/models/fx_rate_view_spec.rb +59 -0
  651. data/spec/models/goal_account_mapping_spec.rb +59 -0
  652. data/spec/models/goal_spec.rb +137 -0
  653. data/spec/models/goal_track_accounts_spec.rb +41 -0
  654. data/spec/models/goal_track_spec.rb +149 -0
  655. data/spec/models/household_spec.rb +101 -0
  656. data/spec/models/investment_spec.rb +89 -0
  657. data/spec/models/invoice_payment_spec.rb +83 -0
  658. data/spec/models/invoice_spec.rb +185 -0
  659. data/spec/models/json_node_spec.rb +171 -0
  660. data/spec/models/line_items_spec.rb +83 -0
  661. data/spec/models/location_spec.rb +83 -0
  662. data/spec/models/member_spec.rb +59 -0
  663. data/spec/models/merchant_category_code_spec.rb +59 -0
  664. data/spec/models/merchants_map_spec.rb +47 -0
  665. data/spec/models/model_asset_size_spec.rb +89 -0
  666. data/spec/models/model_comment_spec.rb +83 -0
  667. data/spec/models/model_holding_spec.rb +143 -0
  668. data/spec/models/model_holding_vo_spec.rb +59 -0
  669. data/spec/models/model_spec.rb +167 -0
  670. data/spec/models/model_transaction_spec.rb +95 -0
  671. data/spec/models/mx_merchant_res_spec.rb +77 -0
  672. data/spec/models/node_relationship_spec.rb +101 -0
  673. data/spec/models/node_spec.rb +83 -0
  674. data/spec/models/notification_client_spec.rb +107 -0
  675. data/spec/models/notification_setting_spec.rb +107 -0
  676. data/spec/models/notification_spec.rb +113 -0
  677. data/spec/models/order_bulk_spec.rb +101 -0
  678. data/spec/models/order_reconcile_request_spec.rb +65 -0
  679. data/spec/models/order_reconcile_return_object_spec.rb +65 -0
  680. data/spec/models/order_spec.rb +155 -0
  681. data/spec/models/order_status_spec.rb +77 -0
  682. data/spec/models/order_track_spec.rb +113 -0
  683. data/spec/models/order_vo_clone_spec.rb +113 -0
  684. data/spec/models/overflow_bank_link_map_spec.rb +47 -0
  685. data/spec/models/overflow_settings_spec.rb +95 -0
  686. data/spec/models/overflow_spec.rb +89 -0
  687. data/spec/models/overflow_vo_spec.rb +53 -0
  688. data/spec/models/ownership_spec.rb +65 -0
  689. data/spec/models/page_account_allocation_mapping_spec.rb +89 -0
  690. data/spec/models/page_account_permission_vo_spec.rb +89 -0
  691. data/spec/models/page_account_spec.rb +89 -0
  692. data/spec/models/page_account_status_spec.rb +89 -0
  693. data/spec/models/page_account_type_spec.rb +89 -0
  694. data/spec/models/page_admin_client_spec.rb +89 -0
  695. data/spec/models/page_aggregation_account_balance_spec.rb +89 -0
  696. data/spec/models/page_aggregation_account_holding_spec.rb +89 -0
  697. data/spec/models/page_aggregation_account_spec.rb +89 -0
  698. data/spec/models/page_aggregation_account_transaction_spec.rb +89 -0
  699. data/spec/models/page_allocation_composition_spec.rb +89 -0
  700. data/spec/models/page_allocation_spec.rb +89 -0
  701. data/spec/models/page_answer_spec.rb +89 -0
  702. data/spec/models/page_application_spec.rb +89 -0
  703. data/spec/models/page_audit_log_spec.rb +89 -0
  704. data/spec/models/page_bank_link_spec.rb +89 -0
  705. data/spec/models/page_benchmark_spec.rb +89 -0
  706. data/spec/models/page_budget_spec.rb +89 -0
  707. data/spec/models/page_business_spec.rb +89 -0
  708. data/spec/models/page_card_program_spec.rb +89 -0
  709. data/spec/models/page_card_spec.rb +89 -0
  710. data/spec/models/page_client_response_spec.rb +89 -0
  711. data/spec/models/page_client_spec.rb +89 -0
  712. data/spec/models/page_client_status_spec.rb +89 -0
  713. data/spec/models/page_customer_revenue_spec.rb +89 -0
  714. data/spec/models/page_customer_spec.rb +89 -0
  715. data/spec/models/page_daily_deposit_spec.rb +89 -0
  716. data/spec/models/page_daily_withdrawal_spec.rb +89 -0
  717. data/spec/models/page_decision_tree_spec.rb +89 -0
  718. data/spec/models/page_document_spec.rb +89 -0
  719. data/spec/models/page_external_account_transfer_spec.rb +89 -0
  720. data/spec/models/page_feature_spec.rb +89 -0
  721. data/spec/models/page_feature_track_spec.rb +89 -0
  722. data/spec/models/page_financial_statement_spec.rb +89 -0
  723. data/spec/models/page_funding_spec.rb +89 -0
  724. data/spec/models/page_goal_spec.rb +89 -0
  725. data/spec/models/page_goal_track_spec.rb +89 -0
  726. data/spec/models/page_household_spec.rb +89 -0
  727. data/spec/models/page_invoice_payment_spec.rb +89 -0
  728. data/spec/models/page_invoice_spec.rb +89 -0
  729. data/spec/models/page_model_asset_size_spec.rb +89 -0
  730. data/spec/models/page_model_comment_spec.rb +89 -0
  731. data/spec/models/page_model_holding_spec.rb +89 -0
  732. data/spec/models/page_model_spec.rb +89 -0
  733. data/spec/models/page_model_transaction_spec.rb +89 -0
  734. data/spec/models/page_mx_merchant_res_spec.rb +89 -0
  735. data/spec/models/page_node_relationship_spec.rb +89 -0
  736. data/spec/models/page_node_spec.rb +89 -0
  737. data/spec/models/page_notification_client_spec.rb +89 -0
  738. data/spec/models/page_notification_setting_spec.rb +89 -0
  739. data/spec/models/page_notification_spec.rb +89 -0
  740. data/spec/models/page_order_bulk_spec.rb +89 -0
  741. data/spec/models/page_order_spec.rb +89 -0
  742. data/spec/models/page_order_status_spec.rb +89 -0
  743. data/spec/models/page_order_track_spec.rb +89 -0
  744. data/spec/models/page_overflow_settings_spec.rb +89 -0
  745. data/spec/models/page_overflow_spec.rb +89 -0
  746. data/spec/models/page_portfolio_asset_size_log_spec.rb +89 -0
  747. data/spec/models/page_portfolio_comment_spec.rb +89 -0
  748. data/spec/models/page_portfolio_goal_spec.rb +89 -0
  749. data/spec/models/page_portfolio_holding_log_spec.rb +89 -0
  750. data/spec/models/page_portfolio_spec.rb +89 -0
  751. data/spec/models/page_portfolio_transaction_spec.rb +89 -0
  752. data/spec/models/page_question_spec.rb +89 -0
  753. data/spec/models/page_questionnaire_spec.rb +89 -0
  754. data/spec/models/page_reason_code_spec.rb +89 -0
  755. data/spec/models/page_risk_profile_spec.rb +89 -0
  756. data/spec/models/page_roundup_settings_spec.rb +89 -0
  757. data/spec/models/page_roundup_spec.rb +89 -0
  758. data/spec/models/page_score_spec.rb +89 -0
  759. data/spec/models/page_security_exclusion_spec.rb +89 -0
  760. data/spec/models/page_security_price_spec.rb +89 -0
  761. data/spec/models/page_security_spec.rb +89 -0
  762. data/spec/models/page_spending_control_spec.rb +89 -0
  763. data/spec/models/page_stage_spec.rb +89 -0
  764. data/spec/models/page_transaction_code_spec.rb +89 -0
  765. data/spec/models/page_v_account_asset_size_spec.rb +89 -0
  766. data/spec/models/page_webhook_spec.rb +89 -0
  767. data/spec/models/permission_vo_spec.rb +51 -0
  768. data/spec/models/portfolio_asset_size_log_spec.rb +113 -0
  769. data/spec/models/portfolio_comment_spec.rb +89 -0
  770. data/spec/models/portfolio_goal_map_spec.rb +47 -0
  771. data/spec/models/portfolio_goal_spec.rb +77 -0
  772. data/spec/models/portfolio_holding_agg_spec.rb +77 -0
  773. data/spec/models/portfolio_holding_log_spec.rb +119 -0
  774. data/spec/models/portfolio_spec.rb +125 -0
  775. data/spec/models/portfolio_transaction_spec.rb +215 -0
  776. data/spec/models/question_spec.rb +131 -0
  777. data/spec/models/questionnaire_spec.rb +95 -0
  778. data/spec/models/reason_code_spec.rb +95 -0
  779. data/spec/models/risk_profile_spec.rb +101 -0
  780. data/spec/models/roundup_co_spec.rb +65 -0
  781. data/spec/models/roundup_settings_spec.rb +119 -0
  782. data/spec/models/roundup_spec.rb +83 -0
  783. data/spec/models/score_spec.rb +135 -0
  784. data/spec/models/securities_composition_spec.rb +59 -0
  785. data/spec/models/securities_country_spec.rb +47 -0
  786. data/spec/models/security_composition_vo_spec.rb +119 -0
  787. data/spec/models/security_country_vo_spec.rb +47 -0
  788. data/spec/models/security_exclusion_spec.rb +101 -0
  789. data/spec/models/security_price_spec.rb +113 -0
  790. data/spec/models/security_spec.rb +185 -0
  791. data/spec/models/sort_spec.rb +71 -0
  792. data/spec/models/spending_control_spec.rb +119 -0
  793. data/spec/models/stage_spec.rb +125 -0
  794. data/spec/models/stat_spec.rb +47 -0
  795. data/spec/models/state_spec.rb +53 -0
  796. data/spec/models/statistic_resource_vo_spec.rb +59 -0
  797. data/spec/models/token_date_request_spec.rb +71 -0
  798. data/spec/models/transaction_code_spec.rb +125 -0
  799. data/spec/models/v_account_asset_size_spec.rb +59 -0
  800. data/spec/models/v_account_vo_spec.rb +71 -0
  801. data/spec/models/v_client_goal_view_data_spec.rb +71 -0
  802. data/spec/models/v_portfolio_vo_spec.rb +59 -0
  803. data/spec/models/webhook_spec.rb +87 -0
  804. data/spec/spec_helper.rb +111 -0
  805. metadata +1312 -0
@@ -0,0 +1,331 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.8.0
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.18
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # Roundup Settings Object
17
+ class RoundupSettings
18
+ # account_id
19
+ attr_accessor :account_id
20
+
21
+ attr_accessor :accounts
22
+
23
+ attr_accessor :aggregation_accounts
24
+
25
+ attr_accessor :bank_links
26
+
27
+ attr_accessor :categories
28
+
29
+ # client_id
30
+ attr_accessor :client_id
31
+
32
+ attr_accessor :create_date
33
+
34
+ attr_accessor :id
35
+
36
+ # is_active
37
+ attr_accessor :is_active
38
+
39
+ attr_accessor :merchants
40
+
41
+ # metadata
42
+ attr_accessor :metadata
43
+
44
+ # portfolio_id
45
+ attr_accessor :portfolio_id
46
+
47
+ attr_accessor :secondary_id
48
+
49
+ attr_accessor :update_date
50
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+ :'account_id' => :'account_id',
55
+ :'accounts' => :'accounts',
56
+ :'aggregation_accounts' => :'aggregation_accounts',
57
+ :'bank_links' => :'bank_links',
58
+ :'categories' => :'categories',
59
+ :'client_id' => :'client_id',
60
+ :'create_date' => :'create_date',
61
+ :'id' => :'id',
62
+ :'is_active' => :'is_active',
63
+ :'merchants' => :'merchants',
64
+ :'metadata' => :'metadata',
65
+ :'portfolio_id' => :'portfolio_id',
66
+ :'secondary_id' => :'secondary_id',
67
+ :'update_date' => :'update_date'
68
+ }
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.swagger_types
73
+ {
74
+ :'account_id' => :'String',
75
+ :'accounts' => :'Array<AccountMap>',
76
+ :'aggregation_accounts' => :'Array<AggregationAccountsMap>',
77
+ :'bank_links' => :'Array<BankLinkMap>',
78
+ :'categories' => :'Array<CategoriesMap>',
79
+ :'client_id' => :'String',
80
+ :'create_date' => :'DateTime',
81
+ :'id' => :'String',
82
+ :'is_active' => :'BOOLEAN',
83
+ :'merchants' => :'Array<MerchantsMap>',
84
+ :'metadata' => :'Hash<String, String>',
85
+ :'portfolio_id' => :'String',
86
+ :'secondary_id' => :'String',
87
+ :'update_date' => :'DateTime'
88
+ }
89
+ end
90
+
91
+ # Initializes the object
92
+ # @param [Hash] attributes Model attributes in the form of hash
93
+ def initialize(attributes = {})
94
+ return unless attributes.is_a?(Hash)
95
+
96
+ # convert string to symbol for hash key
97
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
98
+
99
+ if attributes.has_key?(:'account_id')
100
+ self.account_id = attributes[:'account_id']
101
+ end
102
+
103
+ if attributes.has_key?(:'accounts')
104
+ if (value = attributes[:'accounts']).is_a?(Array)
105
+ self.accounts = value
106
+ end
107
+ end
108
+
109
+ if attributes.has_key?(:'aggregation_accounts')
110
+ if (value = attributes[:'aggregation_accounts']).is_a?(Array)
111
+ self.aggregation_accounts = value
112
+ end
113
+ end
114
+
115
+ if attributes.has_key?(:'bank_links')
116
+ if (value = attributes[:'bank_links']).is_a?(Array)
117
+ self.bank_links = value
118
+ end
119
+ end
120
+
121
+ if attributes.has_key?(:'categories')
122
+ if (value = attributes[:'categories']).is_a?(Array)
123
+ self.categories = value
124
+ end
125
+ end
126
+
127
+ if attributes.has_key?(:'client_id')
128
+ self.client_id = attributes[:'client_id']
129
+ end
130
+
131
+ if attributes.has_key?(:'create_date')
132
+ self.create_date = attributes[:'create_date']
133
+ end
134
+
135
+ if attributes.has_key?(:'id')
136
+ self.id = attributes[:'id']
137
+ end
138
+
139
+ if attributes.has_key?(:'is_active')
140
+ self.is_active = attributes[:'is_active']
141
+ end
142
+
143
+ if attributes.has_key?(:'merchants')
144
+ if (value = attributes[:'merchants']).is_a?(Array)
145
+ self.merchants = value
146
+ end
147
+ end
148
+
149
+ if attributes.has_key?(:'metadata')
150
+ if (value = attributes[:'metadata']).is_a?(Hash)
151
+ self.metadata = value
152
+ end
153
+ end
154
+
155
+ if attributes.has_key?(:'portfolio_id')
156
+ self.portfolio_id = attributes[:'portfolio_id']
157
+ end
158
+
159
+ if attributes.has_key?(:'secondary_id')
160
+ self.secondary_id = attributes[:'secondary_id']
161
+ end
162
+
163
+ if attributes.has_key?(:'update_date')
164
+ self.update_date = attributes[:'update_date']
165
+ end
166
+ end
167
+
168
+ # Show invalid properties with the reasons. Usually used together with valid?
169
+ # @return Array for valid properties with the reasons
170
+ def list_invalid_properties
171
+ invalid_properties = Array.new
172
+ if @account_id.nil?
173
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
174
+ end
175
+
176
+ if @bank_links.nil?
177
+ invalid_properties.push('invalid value for "bank_links", bank_links cannot be nil.')
178
+ end
179
+
180
+ if @client_id.nil?
181
+ invalid_properties.push('invalid value for "client_id", client_id cannot be nil.')
182
+ end
183
+
184
+ invalid_properties
185
+ end
186
+
187
+ # Check to see if the all the properties in the model are valid
188
+ # @return true if the model is valid
189
+ def valid?
190
+ return false if @account_id.nil?
191
+ return false if @bank_links.nil?
192
+ return false if @client_id.nil?
193
+ true
194
+ end
195
+
196
+ # Checks equality by comparing each attribute.
197
+ # @param [Object] Object to be compared
198
+ def ==(o)
199
+ return true if self.equal?(o)
200
+ self.class == o.class &&
201
+ account_id == o.account_id &&
202
+ accounts == o.accounts &&
203
+ aggregation_accounts == o.aggregation_accounts &&
204
+ bank_links == o.bank_links &&
205
+ categories == o.categories &&
206
+ client_id == o.client_id &&
207
+ create_date == o.create_date &&
208
+ id == o.id &&
209
+ is_active == o.is_active &&
210
+ merchants == o.merchants &&
211
+ metadata == o.metadata &&
212
+ portfolio_id == o.portfolio_id &&
213
+ secondary_id == o.secondary_id &&
214
+ update_date == o.update_date
215
+ end
216
+
217
+ # @see the `==` method
218
+ # @param [Object] Object to be compared
219
+ def eql?(o)
220
+ self == o
221
+ end
222
+
223
+ # Calculates hash code according to all attributes.
224
+ # @return [Fixnum] Hash code
225
+ def hash
226
+ [account_id, accounts, aggregation_accounts, bank_links, categories, client_id, create_date, id, is_active, merchants, metadata, portfolio_id, secondary_id, update_date].hash
227
+ end
228
+
229
+ # Builds the object from hash
230
+ # @param [Hash] attributes Model attributes in the form of hash
231
+ # @return [Object] Returns the model itself
232
+ def build_from_hash(attributes)
233
+ self.class.swagger_types.each_pair do |key, type|
234
+ if type =~ /\AArray<(.*)>/i
235
+ # check to ensure the input is an array given that the attribute
236
+ # is documented as an array but the input is not
237
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
238
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
239
+ end
240
+ elsif !attributes[self.class.attribute_map[key]].nil?
241
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
242
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
243
+ end
244
+
245
+ self
246
+ end
247
+
248
+ # Deserializes the data based on type
249
+ # @param string type Data type
250
+ # @param string value Value to be deserialized
251
+ # @return [Object] Deserialized data
252
+ def _deserialize(type, value)
253
+ case type.to_sym
254
+ when :DateTime
255
+ value
256
+ when :Date
257
+ value
258
+ when :String
259
+ value.to_s
260
+ when :Integer
261
+ value.to_i
262
+ when :Float
263
+ value.to_f
264
+ when :BOOLEAN
265
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
266
+ true
267
+ else
268
+ false
269
+ end
270
+ when :Object
271
+ # generic object (usually a Hash), return directly
272
+ value
273
+ when /\AArray<(?<inner_type>.+)>\z/
274
+ inner_type = Regexp.last_match[:inner_type]
275
+ value.map { |v| _deserialize(inner_type, v) }
276
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
277
+ k_type = Regexp.last_match[:k_type]
278
+ v_type = Regexp.last_match[:v_type]
279
+ {}.tap do |hash|
280
+ value.each do |k, v|
281
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
282
+ end
283
+ end
284
+ else # model
285
+ temp_model = NucleusApi.const_get(type).new
286
+ temp_model.build_from_hash(value)
287
+ end
288
+ end
289
+ # Returns the string representation of the object
290
+ # @return [String] String presentation of the object
291
+ def to_s
292
+ to_hash.to_s
293
+ end
294
+
295
+ # to_body is an alias to to_hash (backward compatibility)
296
+ # @return [Hash] Returns the object in the form of hash
297
+ def to_body
298
+ to_hash
299
+ end
300
+
301
+ # Returns the object in the form of hash
302
+ # @return [Hash] Returns the object in the form of hash
303
+ def to_hash
304
+ hash = {}
305
+ self.class.attribute_map.each_pair do |attr, param|
306
+ value = self.send(attr)
307
+ hash[param] = _to_hash(value)
308
+ end
309
+ hash
310
+ end
311
+
312
+ # Outputs non-array value in the form of hash
313
+ # For object, use to_hash. Otherwise, just return the value
314
+ # @param [Object] value Any valid value
315
+ # @return [Hash] Returns the value in the form of hash
316
+ def _to_hash(value)
317
+ if value.is_a?(Array)
318
+ value.compact.map { |v| _to_hash(v) }
319
+ elsif value.is_a?(Hash)
320
+ {}.tap do |hash|
321
+ value.each { |k, v| hash[k] = _to_hash(v) }
322
+ end
323
+ elsif value.respond_to? :to_hash
324
+ value.to_hash
325
+ else
326
+ value
327
+ end
328
+ end
329
+
330
+ end
331
+ end
@@ -0,0 +1,374 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.8.0
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.18
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # Score Object
17
+ class Score
18
+ # accountId
19
+ attr_accessor :account_id
20
+
21
+ # allocationId
22
+ attr_accessor :allocation_id
23
+
24
+ # benchmarkId
25
+ attr_accessor :benchmark_id
26
+
27
+ # clientId
28
+ attr_accessor :client_id
29
+
30
+ attr_accessor :create_date
31
+
32
+ # goalId
33
+ attr_accessor :goal_id
34
+
35
+ attr_accessor :id
36
+
37
+ # metadata
38
+ attr_accessor :metadata
39
+
40
+ # modelId
41
+ attr_accessor :model_id
42
+
43
+ # portfolioId
44
+ attr_accessor :portfolio_id
45
+
46
+ attr_accessor :score_time_stamp
47
+
48
+ # scoreType
49
+ attr_accessor :score_type
50
+
51
+ # scoreValue
52
+ attr_accessor :score_value
53
+
54
+ attr_accessor :secondary_id
55
+
56
+ # securityId
57
+ attr_accessor :security_id
58
+
59
+ attr_accessor :update_date
60
+
61
+ class EnumAttributeValidator
62
+ attr_reader :datatype
63
+ attr_reader :allowable_values
64
+
65
+ def initialize(datatype, allowable_values)
66
+ @allowable_values = allowable_values.map do |value|
67
+ case datatype.to_s
68
+ when /Integer/i
69
+ value.to_i
70
+ when /Float/i
71
+ value.to_f
72
+ else
73
+ value
74
+ end
75
+ end
76
+ end
77
+
78
+ def valid?(value)
79
+ !value || allowable_values.include?(value)
80
+ end
81
+ end
82
+
83
+ # Attribute mapping from ruby-style variable name to JSON key.
84
+ def self.attribute_map
85
+ {
86
+ :'account_id' => :'account_id',
87
+ :'allocation_id' => :'allocation_id',
88
+ :'benchmark_id' => :'benchmark_id',
89
+ :'client_id' => :'client_id',
90
+ :'create_date' => :'create_date',
91
+ :'goal_id' => :'goal_id',
92
+ :'id' => :'id',
93
+ :'metadata' => :'metadata',
94
+ :'model_id' => :'model_id',
95
+ :'portfolio_id' => :'portfolio_id',
96
+ :'score_time_stamp' => :'score_time_stamp',
97
+ :'score_type' => :'score_type',
98
+ :'score_value' => :'score_value',
99
+ :'secondary_id' => :'secondary_id',
100
+ :'security_id' => :'security_id',
101
+ :'update_date' => :'update_date'
102
+ }
103
+ end
104
+
105
+ # Attribute type mapping.
106
+ def self.swagger_types
107
+ {
108
+ :'account_id' => :'String',
109
+ :'allocation_id' => :'String',
110
+ :'benchmark_id' => :'String',
111
+ :'client_id' => :'String',
112
+ :'create_date' => :'DateTime',
113
+ :'goal_id' => :'String',
114
+ :'id' => :'String',
115
+ :'metadata' => :'Hash<String, String>',
116
+ :'model_id' => :'String',
117
+ :'portfolio_id' => :'String',
118
+ :'score_time_stamp' => :'DateTime',
119
+ :'score_type' => :'String',
120
+ :'score_value' => :'String',
121
+ :'secondary_id' => :'String',
122
+ :'security_id' => :'String',
123
+ :'update_date' => :'DateTime'
124
+ }
125
+ end
126
+
127
+ # Initializes the object
128
+ # @param [Hash] attributes Model attributes in the form of hash
129
+ def initialize(attributes = {})
130
+ return unless attributes.is_a?(Hash)
131
+
132
+ # convert string to symbol for hash key
133
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
134
+
135
+ if attributes.has_key?(:'account_id')
136
+ self.account_id = attributes[:'account_id']
137
+ end
138
+
139
+ if attributes.has_key?(:'allocation_id')
140
+ self.allocation_id = attributes[:'allocation_id']
141
+ end
142
+
143
+ if attributes.has_key?(:'benchmark_id')
144
+ self.benchmark_id = attributes[:'benchmark_id']
145
+ end
146
+
147
+ if attributes.has_key?(:'client_id')
148
+ self.client_id = attributes[:'client_id']
149
+ end
150
+
151
+ if attributes.has_key?(:'create_date')
152
+ self.create_date = attributes[:'create_date']
153
+ end
154
+
155
+ if attributes.has_key?(:'goal_id')
156
+ self.goal_id = attributes[:'goal_id']
157
+ end
158
+
159
+ if attributes.has_key?(:'id')
160
+ self.id = attributes[:'id']
161
+ end
162
+
163
+ if attributes.has_key?(:'metadata')
164
+ if (value = attributes[:'metadata']).is_a?(Hash)
165
+ self.metadata = value
166
+ end
167
+ end
168
+
169
+ if attributes.has_key?(:'model_id')
170
+ self.model_id = attributes[:'model_id']
171
+ end
172
+
173
+ if attributes.has_key?(:'portfolio_id')
174
+ self.portfolio_id = attributes[:'portfolio_id']
175
+ end
176
+
177
+ if attributes.has_key?(:'score_time_stamp')
178
+ self.score_time_stamp = attributes[:'score_time_stamp']
179
+ end
180
+
181
+ if attributes.has_key?(:'score_type')
182
+ self.score_type = attributes[:'score_type']
183
+ end
184
+
185
+ if attributes.has_key?(:'score_value')
186
+ self.score_value = attributes[:'score_value']
187
+ end
188
+
189
+ if attributes.has_key?(:'secondary_id')
190
+ self.secondary_id = attributes[:'secondary_id']
191
+ end
192
+
193
+ if attributes.has_key?(:'security_id')
194
+ self.security_id = attributes[:'security_id']
195
+ end
196
+
197
+ if attributes.has_key?(:'update_date')
198
+ self.update_date = attributes[:'update_date']
199
+ end
200
+ end
201
+
202
+ # Show invalid properties with the reasons. Usually used together with valid?
203
+ # @return Array for valid properties with the reasons
204
+ def list_invalid_properties
205
+ invalid_properties = Array.new
206
+ if @score_type.nil?
207
+ invalid_properties.push('invalid value for "score_type", score_type cannot be nil.')
208
+ end
209
+
210
+ if @score_value.nil?
211
+ invalid_properties.push('invalid value for "score_value", score_value cannot be nil.')
212
+ end
213
+
214
+ invalid_properties
215
+ end
216
+
217
+ # Check to see if the all the properties in the model are valid
218
+ # @return true if the model is valid
219
+ def valid?
220
+ return false if @score_type.nil?
221
+ score_type_validator = EnumAttributeValidator.new('String', ['goal_achievement_score', 'portfolio_optimization_score', 'credit_score', 'dimensional_risk_score', 'diversification_score', 'risk_score', 'risk_profile'])
222
+ return false unless score_type_validator.valid?(@score_type)
223
+ return false if @score_value.nil?
224
+ true
225
+ end
226
+
227
+ # Custom attribute writer method checking allowed values (enum).
228
+ # @param [Object] score_type Object to be assigned
229
+ def score_type=(score_type)
230
+ validator = EnumAttributeValidator.new('String', ['goal_achievement_score', 'portfolio_optimization_score', 'credit_score', 'dimensional_risk_score', 'diversification_score', 'risk_score', 'risk_profile'])
231
+ unless validator.valid?(score_type)
232
+ fail ArgumentError, 'invalid value for "score_type", must be one of #{validator.allowable_values}.'
233
+ end
234
+ @score_type = score_type
235
+ end
236
+
237
+ # Checks equality by comparing each attribute.
238
+ # @param [Object] Object to be compared
239
+ def ==(o)
240
+ return true if self.equal?(o)
241
+ self.class == o.class &&
242
+ account_id == o.account_id &&
243
+ allocation_id == o.allocation_id &&
244
+ benchmark_id == o.benchmark_id &&
245
+ client_id == o.client_id &&
246
+ create_date == o.create_date &&
247
+ goal_id == o.goal_id &&
248
+ id == o.id &&
249
+ metadata == o.metadata &&
250
+ model_id == o.model_id &&
251
+ portfolio_id == o.portfolio_id &&
252
+ score_time_stamp == o.score_time_stamp &&
253
+ score_type == o.score_type &&
254
+ score_value == o.score_value &&
255
+ secondary_id == o.secondary_id &&
256
+ security_id == o.security_id &&
257
+ update_date == o.update_date
258
+ end
259
+
260
+ # @see the `==` method
261
+ # @param [Object] Object to be compared
262
+ def eql?(o)
263
+ self == o
264
+ end
265
+
266
+ # Calculates hash code according to all attributes.
267
+ # @return [Fixnum] Hash code
268
+ def hash
269
+ [account_id, allocation_id, benchmark_id, client_id, create_date, goal_id, id, metadata, model_id, portfolio_id, score_time_stamp, score_type, score_value, secondary_id, security_id, update_date].hash
270
+ end
271
+
272
+ # Builds the object from hash
273
+ # @param [Hash] attributes Model attributes in the form of hash
274
+ # @return [Object] Returns the model itself
275
+ def build_from_hash(attributes)
276
+ self.class.swagger_types.each_pair do |key, type|
277
+ if type =~ /\AArray<(.*)>/i
278
+ # check to ensure the input is an array given that the attribute
279
+ # is documented as an array but the input is not
280
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
281
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
282
+ end
283
+ elsif !attributes[self.class.attribute_map[key]].nil?
284
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
285
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
286
+ end
287
+
288
+ self
289
+ end
290
+
291
+ # Deserializes the data based on type
292
+ # @param string type Data type
293
+ # @param string value Value to be deserialized
294
+ # @return [Object] Deserialized data
295
+ def _deserialize(type, value)
296
+ case type.to_sym
297
+ when :DateTime
298
+ value
299
+ when :Date
300
+ value
301
+ when :String
302
+ value.to_s
303
+ when :Integer
304
+ value.to_i
305
+ when :Float
306
+ value.to_f
307
+ when :BOOLEAN
308
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
309
+ true
310
+ else
311
+ false
312
+ end
313
+ when :Object
314
+ # generic object (usually a Hash), return directly
315
+ value
316
+ when /\AArray<(?<inner_type>.+)>\z/
317
+ inner_type = Regexp.last_match[:inner_type]
318
+ value.map { |v| _deserialize(inner_type, v) }
319
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
320
+ k_type = Regexp.last_match[:k_type]
321
+ v_type = Regexp.last_match[:v_type]
322
+ {}.tap do |hash|
323
+ value.each do |k, v|
324
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
325
+ end
326
+ end
327
+ else # model
328
+ temp_model = NucleusApi.const_get(type).new
329
+ temp_model.build_from_hash(value)
330
+ end
331
+ end
332
+ # Returns the string representation of the object
333
+ # @return [String] String presentation of the object
334
+ def to_s
335
+ to_hash.to_s
336
+ end
337
+
338
+ # to_body is an alias to to_hash (backward compatibility)
339
+ # @return [Hash] Returns the object in the form of hash
340
+ def to_body
341
+ to_hash
342
+ end
343
+
344
+ # Returns the object in the form of hash
345
+ # @return [Hash] Returns the object in the form of hash
346
+ def to_hash
347
+ hash = {}
348
+ self.class.attribute_map.each_pair do |attr, param|
349
+ value = self.send(attr)
350
+ hash[param] = _to_hash(value)
351
+ end
352
+ hash
353
+ end
354
+
355
+ # Outputs non-array value in the form of hash
356
+ # For object, use to_hash. Otherwise, just return the value
357
+ # @param [Object] value Any valid value
358
+ # @return [Hash] Returns the value in the form of hash
359
+ def _to_hash(value)
360
+ if value.is_a?(Array)
361
+ value.compact.map { |v| _to_hash(v) }
362
+ elsif value.is_a?(Hash)
363
+ {}.tap do |hash|
364
+ value.each { |k, v| hash[k] = _to_hash(v) }
365
+ end
366
+ elsif value.respond_to? :to_hash
367
+ value.to_hash
368
+ else
369
+ value
370
+ end
371
+ end
372
+
373
+ end
374
+ end