nucleus_api 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
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