fdx-api-sdk-ruby 1.0.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 (634) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +125 -0
  4. data/lib/fdx_api/api_helper.rb +10 -0
  5. data/lib/fdx_api/client.rb +187 -0
  6. data/lib/fdx_api/configuration.rb +133 -0
  7. data/lib/fdx_api/controllers/account_information_controller.rb +135 -0
  8. data/lib/fdx_api/controllers/account_statements_controller.rb +132 -0
  9. data/lib/fdx_api/controllers/account_transactions_controller.rb +126 -0
  10. data/lib/fdx_api/controllers/base_controller.rb +65 -0
  11. data/lib/fdx_api/controllers/event_notifications_controller.rb +274 -0
  12. data/lib/fdx_api/controllers/fraud_notification_controller.rb +37 -0
  13. data/lib/fdx_api/controllers/internal_transfers_controller.rb +206 -0
  14. data/lib/fdx_api/controllers/meta_controller.rb +105 -0
  15. data/lib/fdx_api/controllers/money_movement_controller.rb +92 -0
  16. data/lib/fdx_api/controllers/payee_management_controller.rb +257 -0
  17. data/lib/fdx_api/controllers/payment_initiation_parties_controller.rb +439 -0
  18. data/lib/fdx_api/controllers/payments_controller.rb +280 -0
  19. data/lib/fdx_api/controllers/payroll_information_controller.rb +117 -0
  20. data/lib/fdx_api/controllers/personal_information_controller.rb +155 -0
  21. data/lib/fdx_api/controllers/recipients_controller.rb +197 -0
  22. data/lib/fdx_api/controllers/recurring_payments_controller.rb +339 -0
  23. data/lib/fdx_api/controllers/resource_information_controller.rb +121 -0
  24. data/lib/fdx_api/controllers/reward_program_categories_controller.rb +64 -0
  25. data/lib/fdx_api/controllers/reward_program_information_controller.rb +88 -0
  26. data/lib/fdx_api/controllers/submit_tax_forms_controller.rb +106 -0
  27. data/lib/fdx_api/controllers/tax_forms_controller.rb +190 -0
  28. data/lib/fdx_api/controllers/user_consent_controller.rb +125 -0
  29. data/lib/fdx_api/exceptions/api_exception.rb +21 -0
  30. data/lib/fdx_api/exceptions/error_exception.rb +65 -0
  31. data/lib/fdx_api/exceptions/payee_entity_error_exception.rb +48 -0
  32. data/lib/fdx_api/exceptions/payment_entity_error_exception.rb +160 -0
  33. data/lib/fdx_api/exceptions/recurring_payment_entity_error_exception.rb +140 -0
  34. data/lib/fdx_api/http/api_response.rb +19 -0
  35. data/lib/fdx_api/http/auth/bearer_auth.rb +43 -0
  36. data/lib/fdx_api/http/auth/tax_basic_auth.rb +50 -0
  37. data/lib/fdx_api/http/http_call_back.rb +10 -0
  38. data/lib/fdx_api/http/http_method_enum.rb +10 -0
  39. data/lib/fdx_api/http/http_request.rb +10 -0
  40. data/lib/fdx_api/http/http_response.rb +10 -0
  41. data/lib/fdx_api/http/proxy_settings.rb +13 -0
  42. data/lib/fdx_api/logging/configuration/api_logging_configuration.rb +114 -0
  43. data/lib/fdx_api/logging/sdk_logger.rb +17 -0
  44. data/lib/fdx_api/models/account_bill_pay_status.rb +32 -0
  45. data/lib/fdx_api/models/account_bill_pay_status2.rb +29 -0
  46. data/lib/fdx_api/models/account_category_type.rb +41 -0
  47. data/lib/fdx_api/models/account_contact_entity.rb +132 -0
  48. data/lib/fdx_api/models/account_contact_entity2.rb +142 -0
  49. data/lib/fdx_api/models/account_descriptor_entity.rb +253 -0
  50. data/lib/fdx_api/models/account_entity.rb +380 -0
  51. data/lib/fdx_api/models/account_holder_entity.rb +263 -0
  52. data/lib/fdx_api/models/account_holder_relationship.rb +79 -0
  53. data/lib/fdx_api/models/account_holder_relationship1.rb +79 -0
  54. data/lib/fdx_api/models/account_status.rb +41 -0
  55. data/lib/fdx_api/models/account_status2.rb +42 -0
  56. data/lib/fdx_api/models/account_type.rb +240 -0
  57. data/lib/fdx_api/models/accounts_entity.rb +109 -0
  58. data/lib/fdx_api/models/active_inactive_status.rb +23 -0
  59. data/lib/fdx_api/models/active_inactive_status2.rb +23 -0
  60. data/lib/fdx_api/models/address.rb +151 -0
  61. data/lib/fdx_api/models/an_array_of_statements.rb +105 -0
  62. data/lib/fdx_api/models/annuity_account_entity.rb +347 -0
  63. data/lib/fdx_api/models/array_of_account_payment_networks.rb +104 -0
  64. data/lib/fdx_api/models/asset_class.rb +38 -0
  65. data/lib/fdx_api/models/asset_class2.rb +38 -0
  66. data/lib/fdx_api/models/asset_transfer_network.rb +134 -0
  67. data/lib/fdx_api/models/asset_transfer_network_list.rb +85 -0
  68. data/lib/fdx_api/models/asset_transfer_type.rb +26 -0
  69. data/lib/fdx_api/models/asset_transfer_type2.rb +26 -0
  70. data/lib/fdx_api/models/availability_entity.rb +115 -0
  71. data/lib/fdx_api/models/availability_entity1.rb +115 -0
  72. data/lib/fdx_api/models/availability_list_entity.rb +85 -0
  73. data/lib/fdx_api/models/availability_status.rb +29 -0
  74. data/lib/fdx_api/models/availability_status1.rb +29 -0
  75. data/lib/fdx_api/models/availability_status3.rb +29 -0
  76. data/lib/fdx_api/models/balance_type.rb +25 -0
  77. data/lib/fdx_api/models/balance_type2.rb +24 -0
  78. data/lib/fdx_api/models/base_model.rb +110 -0
  79. data/lib/fdx_api/models/base_payroll_rate.rb +82 -0
  80. data/lib/fdx_api/models/base_payroll_rate1.rb +82 -0
  81. data/lib/fdx_api/models/basic_auth_credentials.rb +105 -0
  82. data/lib/fdx_api/models/basic_auth_credentials1.rb +105 -0
  83. data/lib/fdx_api/models/basic_auth_for_qr.rb +96 -0
  84. data/lib/fdx_api/models/bills_entity.rb +201 -0
  85. data/lib/fdx_api/models/branch_entity.rb +116 -0
  86. data/lib/fdx_api/models/branch_entity1.rb +126 -0
  87. data/lib/fdx_api/models/business_customer_entity.rb +136 -0
  88. data/lib/fdx_api/models/business_income_statement.rb +604 -0
  89. data/lib/fdx_api/models/business_name.rb +85 -0
  90. data/lib/fdx_api/models/business_or_consumer_type.rb +23 -0
  91. data/lib/fdx_api/models/business_or_consumer_type1.rb +23 -0
  92. data/lib/fdx_api/models/call_type.rb +29 -0
  93. data/lib/fdx_api/models/call_type2.rb +29 -0
  94. data/lib/fdx_api/models/capability_entity.rb +139 -0
  95. data/lib/fdx_api/models/card_art_entity.rb +91 -0
  96. data/lib/fdx_api/models/card_art_entity2.rb +101 -0
  97. data/lib/fdx_api/models/certification_metric_entity.rb +172 -0
  98. data/lib/fdx_api/models/certification_metrics_entity.rb +84 -0
  99. data/lib/fdx_api/models/code_and_amount.rb +85 -0
  100. data/lib/fdx_api/models/commercial_account_entity.rb +457 -0
  101. data/lib/fdx_api/models/commercial_balance_entity.rb +106 -0
  102. data/lib/fdx_api/models/commercial_code_entity.rb +91 -0
  103. data/lib/fdx_api/models/commercial_code_entity1.rb +96 -0
  104. data/lib/fdx_api/models/commercial_transaction_entity.rb +286 -0
  105. data/lib/fdx_api/models/compounding_period.rb +38 -0
  106. data/lib/fdx_api/models/compounding_period2.rb +38 -0
  107. data/lib/fdx_api/models/consent_duration_type.rb +26 -0
  108. data/lib/fdx_api/models/consent_grant_entity.rb +232 -0
  109. data/lib/fdx_api/models/consent_grant_resource_entity.rb +92 -0
  110. data/lib/fdx_api/models/consent_grant_status.rb +26 -0
  111. data/lib/fdx_api/models/consent_grant_status1.rb +26 -0
  112. data/lib/fdx_api/models/consent_grant_status3.rb +26 -0
  113. data/lib/fdx_api/models/consent_request_entity.rb +121 -0
  114. data/lib/fdx_api/models/consent_requested_resource_entity.rb +82 -0
  115. data/lib/fdx_api/models/consent_resource_type.rb +27 -0
  116. data/lib/fdx_api/models/consent_resource_type1.rb +26 -0
  117. data/lib/fdx_api/models/consent_resource_type3.rb +26 -0
  118. data/lib/fdx_api/models/consent_revocation_entity.rb +114 -0
  119. data/lib/fdx_api/models/consent_revocation_list_entity.rb +85 -0
  120. data/lib/fdx_api/models/consent_revocation_request_entity.rb +85 -0
  121. data/lib/fdx_api/models/consent_update_reason.rb +23 -0
  122. data/lib/fdx_api/models/consent_update_reason1.rb +23 -0
  123. data/lib/fdx_api/models/contact_preferences_type.rb +32 -0
  124. data/lib/fdx_api/models/contact_preferences_type2.rb +32 -0
  125. data/lib/fdx_api/models/contacts_entity.rb +113 -0
  126. data/lib/fdx_api/models/content_types.rb +38 -0
  127. data/lib/fdx_api/models/contribution_entity.rb +275 -0
  128. data/lib/fdx_api/models/coupon_mature_frequency.rb +32 -0
  129. data/lib/fdx_api/models/coupon_mature_frequency2.rb +32 -0
  130. data/lib/fdx_api/models/coverage_month.rb +56 -0
  131. data/lib/fdx_api/models/coverage_month1.rb +56 -0
  132. data/lib/fdx_api/models/coverage_month3.rb +56 -0
  133. data/lib/fdx_api/models/cryptocurrency_tax_statement_list.rb +239 -0
  134. data/lib/fdx_api/models/cryptocurrency_tax_statement_list1.rb +239 -0
  135. data/lib/fdx_api/models/currency_entity.rb +98 -0
  136. data/lib/fdx_api/models/currency_entity1.rb +108 -0
  137. data/lib/fdx_api/models/currency_entity2.rb +108 -0
  138. data/lib/fdx_api/models/currency_entity4.rb +108 -0
  139. data/lib/fdx_api/models/customer_entity.rb +241 -0
  140. data/lib/fdx_api/models/customer_name_entity.rb +134 -0
  141. data/lib/fdx_api/models/customer_name_entity1.rb +134 -0
  142. data/lib/fdx_api/models/customer_to_account_relationship_entity.rb +114 -0
  143. data/lib/fdx_api/models/customers_entity.rb +104 -0
  144. data/lib/fdx_api/models/data_cluster.rb +63 -0
  145. data/lib/fdx_api/models/date_and_amount.rb +95 -0
  146. data/lib/fdx_api/models/debit_credit_memo.rb +26 -0
  147. data/lib/fdx_api/models/debit_credit_memo2.rb +26 -0
  148. data/lib/fdx_api/models/debt_class.rb +29 -0
  149. data/lib/fdx_api/models/debt_class2.rb +29 -0
  150. data/lib/fdx_api/models/debt_security_entity.rb +209 -0
  151. data/lib/fdx_api/models/debt_type.rb +23 -0
  152. data/lib/fdx_api/models/debt_type2.rb +23 -0
  153. data/lib/fdx_api/models/delivery_address.rb +160 -0
  154. data/lib/fdx_api/models/delivery_address1.rb +150 -0
  155. data/lib/fdx_api/models/delivery_address_type.rb +29 -0
  156. data/lib/fdx_api/models/deposit_account_entity.rb +335 -0
  157. data/lib/fdx_api/models/deposit_transaction_entity.rb +223 -0
  158. data/lib/fdx_api/models/deposit_transaction_type.rb +59 -0
  159. data/lib/fdx_api/models/deposit_transaction_type2.rb +61 -0
  160. data/lib/fdx_api/models/description_and_amount.rb +85 -0
  161. data/lib/fdx_api/models/digital_wallet_account_entity.rb +316 -0
  162. data/lib/fdx_api/models/digital_wallet_transaction_entity.rb +213 -0
  163. data/lib/fdx_api/models/digital_wallet_transaction_type.rb +59 -0
  164. data/lib/fdx_api/models/digital_wallet_transaction_type2.rb +61 -0
  165. data/lib/fdx_api/models/direct_deposit_entity.rb +98 -0
  166. data/lib/fdx_api/models/document_status.rb +26 -0
  167. data/lib/fdx_api/models/document_status2.rb +26 -0
  168. data/lib/fdx_api/models/domicile_entity.rb +95 -0
  169. data/lib/fdx_api/models/domicile_entity1.rb +95 -0
  170. data/lib/fdx_api/models/electronic_address_entity.rb +87 -0
  171. data/lib/fdx_api/models/employee_entity.rb +175 -0
  172. data/lib/fdx_api/models/employee_entity1.rb +175 -0
  173. data/lib/fdx_api/models/employer_entity.rb +125 -0
  174. data/lib/fdx_api/models/employer_entity1.rb +125 -0
  175. data/lib/fdx_api/models/employment.rb +149 -0
  176. data/lib/fdx_api/models/employment1.rb +149 -0
  177. data/lib/fdx_api/models/employment_type.rb +36 -0
  178. data/lib/fdx_api/models/employment_type2.rb +36 -0
  179. data/lib/fdx_api/models/error1.rb +113 -0
  180. data/lib/fdx_api/models/expired_option_type.rb +23 -0
  181. data/lib/fdx_api/models/expired_option_type2.rb +24 -0
  182. data/lib/fdx_api/models/external_account_id_scheme_entity.rb +85 -0
  183. data/lib/fdx_api/models/external_financial_institution_id_scheme_entity.rb +85 -0
  184. data/lib/fdx_api/models/farm_income_statement.rb +628 -0
  185. data/lib/fdx_api/models/farm_rental_income_statement.rb +586 -0
  186. data/lib/fdx_api/models/fdx_api_actor_type.rb +24 -0
  187. data/lib/fdx_api/models/fdx_jwt_profile.rb +171 -0
  188. data/lib/fdx_api/models/fdx_oauth_token_introspection_response.rb +180 -0
  189. data/lib/fdx_api/models/fdx_resource_operation_id.rb +227 -0
  190. data/lib/fdx_api/models/fdx_resource_operation_id1.rb +227 -0
  191. data/lib/fdx_api/models/fdx_resource_operation_id3.rb +227 -0
  192. data/lib/fdx_api/models/fdx_version.rb +119 -0
  193. data/lib/fdx_api/models/fi_attribute_entity.rb +95 -0
  194. data/lib/fdx_api/models/fi_portion_entity.rb +95 -0
  195. data/lib/fdx_api/models/financial_institution_entity.rb +116 -0
  196. data/lib/fdx_api/models/financial_institution_entity2.rb +116 -0
  197. data/lib/fdx_api/models/form1041_k1.rb +572 -0
  198. data/lib/fdx_api/models/form1041_k11.rb +570 -0
  199. data/lib/fdx_api/models/form1042_s.rb +541 -0
  200. data/lib/fdx_api/models/form1042_s1.rb +539 -0
  201. data/lib/fdx_api/models/form1042_s_agent.rb +207 -0
  202. data/lib/fdx_api/models/form1042_s_agent1.rb +196 -0
  203. data/lib/fdx_api/models/form1042_s_agent2.rb +196 -0
  204. data/lib/fdx_api/models/form1042_s_agent3.rb +196 -0
  205. data/lib/fdx_api/models/form1042_s_agent4.rb +196 -0
  206. data/lib/fdx_api/models/form1042_s_recipient.rb +216 -0
  207. data/lib/fdx_api/models/form1042_s_recipient1.rb +216 -0
  208. data/lib/fdx_api/models/form1065_k1.rb +1177 -0
  209. data/lib/fdx_api/models/form1065_k11.rb +1176 -0
  210. data/lib/fdx_api/models/form1095_a.rb +364 -0
  211. data/lib/fdx_api/models/form1095_a1.rb +364 -0
  212. data/lib/fdx_api/models/form1095_b.rb +281 -0
  213. data/lib/fdx_api/models/form1095_b1.rb +280 -0
  214. data/lib/fdx_api/models/form1095_c.rb +294 -0
  215. data/lib/fdx_api/models/form1095_c1.rb +293 -0
  216. data/lib/fdx_api/models/form1097_btc.rb +314 -0
  217. data/lib/fdx_api/models/form1097_btc1.rb +313 -0
  218. data/lib/fdx_api/models/form1098.rb +388 -0
  219. data/lib/fdx_api/models/form10981.rb +387 -0
  220. data/lib/fdx_api/models/form1098_c.rb +421 -0
  221. data/lib/fdx_api/models/form1098_c1.rb +420 -0
  222. data/lib/fdx_api/models/form1098_e.rb +255 -0
  223. data/lib/fdx_api/models/form1098_e1.rb +254 -0
  224. data/lib/fdx_api/models/form1098_ma.rb +276 -0
  225. data/lib/fdx_api/models/form1098_ma1.rb +275 -0
  226. data/lib/fdx_api/models/form1098_q.rb +338 -0
  227. data/lib/fdx_api/models/form1098_q1.rb +337 -0
  228. data/lib/fdx_api/models/form1098_t.rb +338 -0
  229. data/lib/fdx_api/models/form1098_t1.rb +337 -0
  230. data/lib/fdx_api/models/form1099_a.rb +289 -0
  231. data/lib/fdx_api/models/form1099_a1.rb +288 -0
  232. data/lib/fdx_api/models/form1099_b.rb +368 -0
  233. data/lib/fdx_api/models/form1099_b1.rb +367 -0
  234. data/lib/fdx_api/models/form1099_c.rb +310 -0
  235. data/lib/fdx_api/models/form1099_c1.rb +309 -0
  236. data/lib/fdx_api/models/form1099_cap.rb +274 -0
  237. data/lib/fdx_api/models/form1099_cap1.rb +273 -0
  238. data/lib/fdx_api/models/form1099_consolidated_statement.rb +327 -0
  239. data/lib/fdx_api/models/form1099_consolidated_statement1.rb +325 -0
  240. data/lib/fdx_api/models/form1099_div.rb +538 -0
  241. data/lib/fdx_api/models/form1099_div1.rb +537 -0
  242. data/lib/fdx_api/models/form1099_g.rb +363 -0
  243. data/lib/fdx_api/models/form1099_g1.rb +362 -0
  244. data/lib/fdx_api/models/form1099_h.rb +263 -0
  245. data/lib/fdx_api/models/form1099_h1.rb +262 -0
  246. data/lib/fdx_api/models/form1099_int.rb +488 -0
  247. data/lib/fdx_api/models/form1099_int1.rb +487 -0
  248. data/lib/fdx_api/models/form1099_k.rb +413 -0
  249. data/lib/fdx_api/models/form1099_k1.rb +412 -0
  250. data/lib/fdx_api/models/form1099_ls.rb +274 -0
  251. data/lib/fdx_api/models/form1099_ls1.rb +273 -0
  252. data/lib/fdx_api/models/form1099_ltc.rb +339 -0
  253. data/lib/fdx_api/models/form1099_ltc1.rb +338 -0
  254. data/lib/fdx_api/models/form1099_misc.rb +438 -0
  255. data/lib/fdx_api/models/form1099_misc1.rb +437 -0
  256. data/lib/fdx_api/models/form1099_nec.rb +301 -0
  257. data/lib/fdx_api/models/form1099_nec1.rb +300 -0
  258. data/lib/fdx_api/models/form1099_oid.rb +431 -0
  259. data/lib/fdx_api/models/form1099_oid1.rb +430 -0
  260. data/lib/fdx_api/models/form1099_patr.rb +421 -0
  261. data/lib/fdx_api/models/form1099_patr1.rb +420 -0
  262. data/lib/fdx_api/models/form1099_q.rb +335 -0
  263. data/lib/fdx_api/models/form1099_q1.rb +334 -0
  264. data/lib/fdx_api/models/form1099_qa.rb +295 -0
  265. data/lib/fdx_api/models/form1099_qa1.rb +294 -0
  266. data/lib/fdx_api/models/form1099_r.rb +475 -0
  267. data/lib/fdx_api/models/form1099_r1.rb +474 -0
  268. data/lib/fdx_api/models/form1099_s.rb +306 -0
  269. data/lib/fdx_api/models/form1099_s1.rb +305 -0
  270. data/lib/fdx_api/models/form1099_sa.rb +306 -0
  271. data/lib/fdx_api/models/form1099_sa1.rb +305 -0
  272. data/lib/fdx_api/models/form1099_sb.rb +267 -0
  273. data/lib/fdx_api/models/form1099_sb1.rb +266 -0
  274. data/lib/fdx_api/models/form1120_sk1.rb +670 -0
  275. data/lib/fdx_api/models/form1120_sk11.rb +669 -0
  276. data/lib/fdx_api/models/form2439.rb +306 -0
  277. data/lib/fdx_api/models/form24391.rb +305 -0
  278. data/lib/fdx_api/models/form3921.rb +298 -0
  279. data/lib/fdx_api/models/form39211.rb +297 -0
  280. data/lib/fdx_api/models/form3922.rb +327 -0
  281. data/lib/fdx_api/models/form39221.rb +326 -0
  282. data/lib/fdx_api/models/form5498.rb +486 -0
  283. data/lib/fdx_api/models/form54981.rb +485 -0
  284. data/lib/fdx_api/models/form5498_esa.rb +258 -0
  285. data/lib/fdx_api/models/form5498_esa1.rb +257 -0
  286. data/lib/fdx_api/models/form5498_qa.rb +311 -0
  287. data/lib/fdx_api/models/form5498_qa1.rb +310 -0
  288. data/lib/fdx_api/models/form5498_sa.rb +321 -0
  289. data/lib/fdx_api/models/form5498_sa1.rb +320 -0
  290. data/lib/fdx_api/models/form_w2.rb +459 -0
  291. data/lib/fdx_api/models/form_w21.rb +458 -0
  292. data/lib/fdx_api/models/form_w22.rb +458 -0
  293. data/lib/fdx_api/models/form_w24.rb +458 -0
  294. data/lib/fdx_api/models/form_w2_c.rb +276 -0
  295. data/lib/fdx_api/models/form_w2_c2.rb +275 -0
  296. data/lib/fdx_api/models/form_w2_g.rb +354 -0
  297. data/lib/fdx_api/models/form_w2_g2.rb +353 -0
  298. data/lib/fdx_api/models/gain_or_loss_from_cryptocurrency_transaction.rb +173 -0
  299. data/lib/fdx_api/models/generic_account_identification_entity.rb +107 -0
  300. data/lib/fdx_api/models/generic_financial_institution_id_entity.rb +107 -0
  301. data/lib/fdx_api/models/government_issued_id_type.rb +23 -0
  302. data/lib/fdx_api/models/government_issued_id_type2.rb +23 -0
  303. data/lib/fdx_api/models/government_issued_party_identification_entity.rb +118 -0
  304. data/lib/fdx_api/models/hateoas_link.rb +119 -0
  305. data/lib/fdx_api/models/health_insurance_coverage.rb +115 -0
  306. data/lib/fdx_api/models/health_insurance_covered_individual.rb +118 -0
  307. data/lib/fdx_api/models/health_insurance_marketplace_covered_individual.rb +119 -0
  308. data/lib/fdx_api/models/held_in_account.rb +29 -0
  309. data/lib/fdx_api/models/held_in_account2.rb +29 -0
  310. data/lib/fdx_api/models/holding_entity.rb +448 -0
  311. data/lib/fdx_api/models/holding_sub_type.rb +23 -0
  312. data/lib/fdx_api/models/holding_sub_type2.rb +23 -0
  313. data/lib/fdx_api/models/holding_type.rb +51 -0
  314. data/lib/fdx_api/models/holding_type2.rb +41 -0
  315. data/lib/fdx_api/models/http_action_type.rb +32 -0
  316. data/lib/fdx_api/models/iban2007_identifier_entity.rb +86 -0
  317. data/lib/fdx_api/models/income.rb +124 -0
  318. data/lib/fdx_api/models/income_type.rb +26 -0
  319. data/lib/fdx_api/models/income_type2.rb +27 -0
  320. data/lib/fdx_api/models/incoming_and_outgoing_transfer_limits.rb +85 -0
  321. data/lib/fdx_api/models/incoming_and_outgoing_transfer_limits2.rb +85 -0
  322. data/lib/fdx_api/models/individual_name.rb +115 -0
  323. data/lib/fdx_api/models/industry_classification_system.rb +38 -0
  324. data/lib/fdx_api/models/industry_code.rb +95 -0
  325. data/lib/fdx_api/models/insurance_account_entity.rb +326 -0
  326. data/lib/fdx_api/models/insurance_transaction_entity.rb +201 -0
  327. data/lib/fdx_api/models/insurance_transaction_type.rb +29 -0
  328. data/lib/fdx_api/models/interest_rate_type.rb +23 -0
  329. data/lib/fdx_api/models/interest_rate_type2.rb +23 -0
  330. data/lib/fdx_api/models/intermediary.rb +139 -0
  331. data/lib/fdx_api/models/investment401_k_source_type.rb +38 -0
  332. data/lib/fdx_api/models/investment401_k_source_type1.rb +40 -0
  333. data/lib/fdx_api/models/investment401_k_source_type2.rb +39 -0
  334. data/lib/fdx_api/models/investment401_k_source_type4.rb +39 -0
  335. data/lib/fdx_api/models/investment_account_entity.rb +548 -0
  336. data/lib/fdx_api/models/investment_balance_entity.rb +138 -0
  337. data/lib/fdx_api/models/investment_balance_type.rb +23 -0
  338. data/lib/fdx_api/models/investment_balance_type2.rb +23 -0
  339. data/lib/fdx_api/models/investment_loan_entity.rb +261 -0
  340. data/lib/fdx_api/models/investment_sale_type.rb +38 -0
  341. data/lib/fdx_api/models/investment_transaction_entity.rb +669 -0
  342. data/lib/fdx_api/models/investment_transaction_type.rb +155 -0
  343. data/lib/fdx_api/models/investment_transaction_type2.rb +161 -0
  344. data/lib/fdx_api/models/investment_transfer_action_direction.rb +23 -0
  345. data/lib/fdx_api/models/investment_transfer_action_direction2.rb +23 -0
  346. data/lib/fdx_api/models/iso3166_country_code.rb +764 -0
  347. data/lib/fdx_api/models/iso3166_country_code1.rb +764 -0
  348. data/lib/fdx_api/models/iso3166_country_code2.rb +764 -0
  349. data/lib/fdx_api/models/iso4217_currency_code.rb +560 -0
  350. data/lib/fdx_api/models/iso4217_currency_code1.rb +560 -0
  351. data/lib/fdx_api/models/iso4217_currency_code2.rb +560 -0
  352. data/lib/fdx_api/models/iso93622014_business_identifier_code_entity.rb +93 -0
  353. data/lib/fdx_api/models/iso93622022_business_identifier_code_entity.rb +91 -0
  354. data/lib/fdx_api/models/line_item_entity.rb +156 -0
  355. data/lib/fdx_api/models/line_of_credit_account_entity.rb +474 -0
  356. data/lib/fdx_api/models/line_of_credit_transaction_entity.rb +223 -0
  357. data/lib/fdx_api/models/line_of_credit_transaction_type.rb +38 -0
  358. data/lib/fdx_api/models/line_of_credit_transaction_type2.rb +38 -0
  359. data/lib/fdx_api/models/loan_account_entity.rb +432 -0
  360. data/lib/fdx_api/models/loan_payment_frequency.rb +47 -0
  361. data/lib/fdx_api/models/loan_payment_frequency2.rb +48 -0
  362. data/lib/fdx_api/models/loan_transaction_entity.rb +212 -0
  363. data/lib/fdx_api/models/loan_transaction_type.rb +49 -0
  364. data/lib/fdx_api/models/loan_transaction_type2.rb +41 -0
  365. data/lib/fdx_api/models/local_tax_withholding.rb +96 -0
  366. data/lib/fdx_api/models/local_tax_withholding1.rb +96 -0
  367. data/lib/fdx_api/models/merchant_entity.rb +159 -0
  368. data/lib/fdx_api/models/merchant_entity1.rb +159 -0
  369. data/lib/fdx_api/models/merchant_for_update_entity.rb +118 -0
  370. data/lib/fdx_api/models/merchant_for_update_entity1.rb +118 -0
  371. data/lib/fdx_api/models/message_format.rb +20 -0
  372. data/lib/fdx_api/models/message_format2.rb +20 -0
  373. data/lib/fdx_api/models/monetary_amount.rb +84 -0
  374. data/lib/fdx_api/models/monetary_amount1.rb +84 -0
  375. data/lib/fdx_api/models/monetary_amount2.rb +84 -0
  376. data/lib/fdx_api/models/monetary_amount3.rb +84 -0
  377. data/lib/fdx_api/models/monetary_amount4.rb +84 -0
  378. data/lib/fdx_api/models/monetary_amount5.rb +84 -0
  379. data/lib/fdx_api/models/monetary_amount6.rb +84 -0
  380. data/lib/fdx_api/models/month_abbreviation.rb +53 -0
  381. data/lib/fdx_api/models/month_abbreviation1.rb +53 -0
  382. data/lib/fdx_api/models/month_and_amount.rb +85 -0
  383. data/lib/fdx_api/models/mutual_fund_security_entity.rb +161 -0
  384. data/lib/fdx_api/models/mutual_fund_type.rb +26 -0
  385. data/lib/fdx_api/models/mutual_fund_type2.rb +26 -0
  386. data/lib/fdx_api/models/name_address_and_phone.rb +171 -0
  387. data/lib/fdx_api/models/name_address_and_phone1.rb +171 -0
  388. data/lib/fdx_api/models/name_and_address.rb +159 -0
  389. data/lib/fdx_api/models/notification_category.rb +32 -0
  390. data/lib/fdx_api/models/notification_category1.rb +32 -0
  391. data/lib/fdx_api/models/notification_entity.rb +169 -0
  392. data/lib/fdx_api/models/notification_payload_entity.rb +95 -0
  393. data/lib/fdx_api/models/notification_payload_entity2.rb +95 -0
  394. data/lib/fdx_api/models/notification_payload_id_type.rb +32 -0
  395. data/lib/fdx_api/models/notification_payload_id_type2.rb +32 -0
  396. data/lib/fdx_api/models/notification_priority.rb +26 -0
  397. data/lib/fdx_api/models/notification_priority2.rb +26 -0
  398. data/lib/fdx_api/models/notification_severity.rb +32 -0
  399. data/lib/fdx_api/models/notification_severity2.rb +32 -0
  400. data/lib/fdx_api/models/notification_subscription_entity.rb +123 -0
  401. data/lib/fdx_api/models/notification_type.rb +38 -0
  402. data/lib/fdx_api/models/notifications_entity.rb +104 -0
  403. data/lib/fdx_api/models/occurrence_based_limits_for_a_payment_network.rb +95 -0
  404. data/lib/fdx_api/models/occurrence_based_limits_for_a_payment_network2.rb +94 -0
  405. data/lib/fdx_api/models/offer_of_health_insurance_coverage.rb +119 -0
  406. data/lib/fdx_api/models/open_order_entity.rb +231 -0
  407. data/lib/fdx_api/models/operation_entity.rb +150 -0
  408. data/lib/fdx_api/models/option_security_entity.rb +135 -0
  409. data/lib/fdx_api/models/option_type.rb +23 -0
  410. data/lib/fdx_api/models/option_type2.rb +23 -0
  411. data/lib/fdx_api/models/order_duration.rb +26 -0
  412. data/lib/fdx_api/models/order_duration2.rb +26 -0
  413. data/lib/fdx_api/models/order_type.rb +41 -0
  414. data/lib/fdx_api/models/order_type2.rb +42 -0
  415. data/lib/fdx_api/models/organization_name_entity.rb +87 -0
  416. data/lib/fdx_api/models/other_monetary_amount.rb +94 -0
  417. data/lib/fdx_api/models/other_security_entity.rb +94 -0
  418. data/lib/fdx_api/models/page_metadata.rb +108 -0
  419. data/lib/fdx_api/models/page_metadata_links.rb +95 -0
  420. data/lib/fdx_api/models/page_metadata_links1.rb +85 -0
  421. data/lib/fdx_api/models/party_entity.rb +139 -0
  422. data/lib/fdx_api/models/party_group_entity.rb +86 -0
  423. data/lib/fdx_api/models/party_status.rb +33 -0
  424. data/lib/fdx_api/models/party_status1.rb +29 -0
  425. data/lib/fdx_api/models/party_status3.rb +29 -0
  426. data/lib/fdx_api/models/party_type.rb +35 -0
  427. data/lib/fdx_api/models/party_type1.rb +35 -0
  428. data/lib/fdx_api/models/party_type2.rb +35 -0
  429. data/lib/fdx_api/models/payee_entity.rb +75 -0
  430. data/lib/fdx_api/models/payee_for_update_entity.rb +74 -0
  431. data/lib/fdx_api/models/payee_for_update_entity1.rb +74 -0
  432. data/lib/fdx_api/models/payees_entity.rb +113 -0
  433. data/lib/fdx_api/models/payment_amounts.rb +133 -0
  434. data/lib/fdx_api/models/payment_amounts1.rb +92 -0
  435. data/lib/fdx_api/models/payment_amounts2.rb +133 -0
  436. data/lib/fdx_api/models/payment_amounts3.rb +92 -0
  437. data/lib/fdx_api/models/payment_delivery_address_entity.rb +99 -0
  438. data/lib/fdx_api/models/payment_details_entity.rb +142 -0
  439. data/lib/fdx_api/models/payment_entity.rb +262 -0
  440. data/lib/fdx_api/models/payment_for_update_entity.rb +113 -0
  441. data/lib/fdx_api/models/payment_for_update_entity1.rb +113 -0
  442. data/lib/fdx_api/models/payment_for_update_entity2.rb +113 -0
  443. data/lib/fdx_api/models/payment_frequency.rb +38 -0
  444. data/lib/fdx_api/models/payment_frequency1.rb +38 -0
  445. data/lib/fdx_api/models/payment_frequency3.rb +38 -0
  446. data/lib/fdx_api/models/payment_generic_account_entity.rb +138 -0
  447. data/lib/fdx_api/models/payment_generic_account_entity1.rb +138 -0
  448. data/lib/fdx_api/models/payment_generic_account_entity2.rb +138 -0
  449. data/lib/fdx_api/models/payment_initiation_parties_entity.rb +108 -0
  450. data/lib/fdx_api/models/payment_initiation_party_contact_method_entity.rb +97 -0
  451. data/lib/fdx_api/models/payment_initiation_party_create_response_entity.rb +85 -0
  452. data/lib/fdx_api/models/payment_initiation_party_entity.rb +292 -0
  453. data/lib/fdx_api/models/payment_initiation_party_method_create_response_entity.rb +78 -0
  454. data/lib/fdx_api/models/payment_initiation_party_name_entity.rb +98 -0
  455. data/lib/fdx_api/models/payment_initiation_party_name_entity1.rb +97 -0
  456. data/lib/fdx_api/models/payment_initiation_party_name_entity3.rb +97 -0
  457. data/lib/fdx_api/models/payment_initiation_party_summary_entity.rb +90 -0
  458. data/lib/fdx_api/models/payment_initiation_party_to_payment_method_entity.rb +130 -0
  459. data/lib/fdx_api/models/payment_method_credit_account_entity.rb +111 -0
  460. data/lib/fdx_api/models/payment_method_debit_account_entity.rb +100 -0
  461. data/lib/fdx_api/models/payment_method_entity.rb +139 -0
  462. data/lib/fdx_api/models/payment_method_entity2.rb +149 -0
  463. data/lib/fdx_api/models/payment_method_id.rb +96 -0
  464. data/lib/fdx_api/models/payment_method_system_code.rb +90 -0
  465. data/lib/fdx_api/models/payment_method_system_proprietary.rb +85 -0
  466. data/lib/fdx_api/models/payment_network_identifier_type.rb +23 -0
  467. data/lib/fdx_api/models/payment_network_identifier_type1.rb +23 -0
  468. data/lib/fdx_api/models/payment_network_identifier_type3.rb +23 -0
  469. data/lib/fdx_api/models/payment_network_supported_by_account.rb +161 -0
  470. data/lib/fdx_api/models/payment_network_type.rb +43 -0
  471. data/lib/fdx_api/models/payment_network_type2.rb +39 -0
  472. data/lib/fdx_api/models/payment_status.rb +41 -0
  473. data/lib/fdx_api/models/payment_status1.rb +35 -0
  474. data/lib/fdx_api/models/payment_status3.rb +35 -0
  475. data/lib/fdx_api/models/payments_entity.rb +113 -0
  476. data/lib/fdx_api/models/payout_mode.rb +41 -0
  477. data/lib/fdx_api/models/payout_mode2.rb +38 -0
  478. data/lib/fdx_api/models/payout_type.rb +26 -0
  479. data/lib/fdx_api/models/payout_type2.rb +23 -0
  480. data/lib/fdx_api/models/payroll_frequency_type.rb +50 -0
  481. data/lib/fdx_api/models/payroll_frequency_type2.rb +50 -0
  482. data/lib/fdx_api/models/payroll_rate_type.rb +29 -0
  483. data/lib/fdx_api/models/payroll_rate_type2.rb +29 -0
  484. data/lib/fdx_api/models/payroll_report_entity.rb +162 -0
  485. data/lib/fdx_api/models/payroll_report_list_entity.rb +103 -0
  486. data/lib/fdx_api/models/payroll_report_summary_entity.rb +160 -0
  487. data/lib/fdx_api/models/payroll_report_type.rb +24 -0
  488. data/lib/fdx_api/models/payroll_report_type1.rb +23 -0
  489. data/lib/fdx_api/models/pension_source_entity.rb +136 -0
  490. data/lib/fdx_api/models/period_certain_type.rb +36 -0
  491. data/lib/fdx_api/models/period_certain_type2.rb +33 -0
  492. data/lib/fdx_api/models/planned_availability_entity.rb +122 -0
  493. data/lib/fdx_api/models/policy_premium_term_type.rb +23 -0
  494. data/lib/fdx_api/models/policy_premium_term_type2.rb +23 -0
  495. data/lib/fdx_api/models/policy_product_type.rb +26 -0
  496. data/lib/fdx_api/models/policy_product_type2.rb +23 -0
  497. data/lib/fdx_api/models/policy_status.rb +52 -0
  498. data/lib/fdx_api/models/policy_status2.rb +41 -0
  499. data/lib/fdx_api/models/portion_entity.rb +95 -0
  500. data/lib/fdx_api/models/position_type.rb +23 -0
  501. data/lib/fdx_api/models/position_type1.rb +23 -0
  502. data/lib/fdx_api/models/proprietary_account_id_scheme_entity.rb +88 -0
  503. data/lib/fdx_api/models/proprietary_financial_institution_id_scheme_entity.rb +86 -0
  504. data/lib/fdx_api/models/recipient_provider.rb +293 -0
  505. data/lib/fdx_api/models/recipient_record_at_ecosystem_registry.rb +223 -0
  506. data/lib/fdx_api/models/recipient_records_at_ecosystem_registry.rb +105 -0
  507. data/lib/fdx_api/models/recipient_request.rb +214 -0
  508. data/lib/fdx_api/models/recurring_payment_duration_entity.rb +86 -0
  509. data/lib/fdx_api/models/recurring_payment_duration_entity2.rb +86 -0
  510. data/lib/fdx_api/models/recurring_payment_duration_type.rb +24 -0
  511. data/lib/fdx_api/models/recurring_payment_duration_type2.rb +23 -0
  512. data/lib/fdx_api/models/recurring_payment_entity.rb +231 -0
  513. data/lib/fdx_api/models/recurring_payment_for_update_entity.rb +133 -0
  514. data/lib/fdx_api/models/recurring_payment_for_update_entity1.rb +132 -0
  515. data/lib/fdx_api/models/recurring_payment_for_update_entity2.rb +132 -0
  516. data/lib/fdx_api/models/recurring_payment_frequency.rb +46 -0
  517. data/lib/fdx_api/models/recurring_payment_frequency2.rb +44 -0
  518. data/lib/fdx_api/models/recurring_payment_status.rb +33 -0
  519. data/lib/fdx_api/models/recurring_payment_status2.rb +29 -0
  520. data/lib/fdx_api/models/recurring_payments_entity.rb +113 -0
  521. data/lib/fdx_api/models/registry.rb +30 -0
  522. data/lib/fdx_api/models/registry_reference.rb +102 -0
  523. data/lib/fdx_api/models/rental_income_statement.rb +424 -0
  524. data/lib/fdx_api/models/resource_entity.rb +114 -0
  525. data/lib/fdx_api/models/resource_list_entity.rb +104 -0
  526. data/lib/fdx_api/models/resource_status.rb +26 -0
  527. data/lib/fdx_api/models/resource_status2.rb +26 -0
  528. data/lib/fdx_api/models/result_type.rb +26 -0
  529. data/lib/fdx_api/models/reward_balance_entity.rb +144 -0
  530. data/lib/fdx_api/models/reward_categories_entity.rb +104 -0
  531. data/lib/fdx_api/models/reward_category_entity.rb +136 -0
  532. data/lib/fdx_api/models/reward_program_entity.rb +136 -0
  533. data/lib/fdx_api/models/reward_program_membership_entity.rb +147 -0
  534. data/lib/fdx_api/models/reward_programs_entity.rb +104 -0
  535. data/lib/fdx_api/models/reward_type.rb +30 -0
  536. data/lib/fdx_api/models/reward_type2.rb +26 -0
  537. data/lib/fdx_api/models/royalty_income_statement.rb +424 -0
  538. data/lib/fdx_api/models/sale_proceeds_type.rb +23 -0
  539. data/lib/fdx_api/models/sale_proceeds_type2.rb +23 -0
  540. data/lib/fdx_api/models/secured.rb +23 -0
  541. data/lib/fdx_api/models/secured2.rb +23 -0
  542. data/lib/fdx_api/models/security_category.rb +35 -0
  543. data/lib/fdx_api/models/security_detail_irs_form1099_b.rb +390 -0
  544. data/lib/fdx_api/models/security_entity.rb +96 -0
  545. data/lib/fdx_api/models/security_id_entity.rb +95 -0
  546. data/lib/fdx_api/models/security_id_type.rb +60 -0
  547. data/lib/fdx_api/models/security_id_type1.rb +50 -0
  548. data/lib/fdx_api/models/security_type.rb +51 -0
  549. data/lib/fdx_api/models/security_type2.rb +41 -0
  550. data/lib/fdx_api/models/state_and_local_tax_withholding.rb +95 -0
  551. data/lib/fdx_api/models/state_and_local_tax_withholding1.rb +95 -0
  552. data/lib/fdx_api/models/state_and_local_tax_withholding2.rb +95 -0
  553. data/lib/fdx_api/models/state_code.rb +203 -0
  554. data/lib/fdx_api/models/state_tax_withholding.rb +95 -0
  555. data/lib/fdx_api/models/state_tax_withholding2.rb +95 -0
  556. data/lib/fdx_api/models/statement_entity.rb +135 -0
  557. data/lib/fdx_api/models/stock_security_entity.rb +147 -0
  558. data/lib/fdx_api/models/stock_type.rb +29 -0
  559. data/lib/fdx_api/models/stock_type2.rb +29 -0
  560. data/lib/fdx_api/models/sub_account_type.rb +29 -0
  561. data/lib/fdx_api/models/sub_account_type1.rb +29 -0
  562. data/lib/fdx_api/models/sub_account_type2.rb +29 -0
  563. data/lib/fdx_api/models/sub_account_type4.rb +29 -0
  564. data/lib/fdx_api/models/supplemental_status.rb +44 -0
  565. data/lib/fdx_api/models/supplemental_status2.rb +44 -0
  566. data/lib/fdx_api/models/suspected_fraud_incident_entity.rb +133 -0
  567. data/lib/fdx_api/models/sweep_security_entity.rb +135 -0
  568. data/lib/fdx_api/models/synchronizable_array_entity.rb +96 -0
  569. data/lib/fdx_api/models/synchronizable_array_links_entity.rb +95 -0
  570. data/lib/fdx_api/models/synchronizable_array_links_entity2.rb +95 -0
  571. data/lib/fdx_api/models/tax.rb +218 -0
  572. data/lib/fdx_api/models/tax_data.rb +653 -0
  573. data/lib/fdx_api/models/tax_data_for_qr.rb +675 -0
  574. data/lib/fdx_api/models/tax_form_attribute.rb +106 -0
  575. data/lib/fdx_api/models/tax_lot_entity.rb +140 -0
  576. data/lib/fdx_api/models/tax_party.rb +138 -0
  577. data/lib/fdx_api/models/tax_party1.rb +140 -0
  578. data/lib/fdx_api/models/tax_party2.rb +138 -0
  579. data/lib/fdx_api/models/tax_party3.rb +138 -0
  580. data/lib/fdx_api/models/tax_party4.rb +139 -0
  581. data/lib/fdx_api/models/tax_party6.rb +140 -0
  582. data/lib/fdx_api/models/tax_party7.rb +140 -0
  583. data/lib/fdx_api/models/tax_party8.rb +139 -0
  584. data/lib/fdx_api/models/tax_party_type.rb +23 -0
  585. data/lib/fdx_api/models/tax_party_type2.rb +24 -0
  586. data/lib/fdx_api/models/tax_refund_direct_deposit.rb +108 -0
  587. data/lib/fdx_api/models/tax_refund_direct_deposit2.rb +108 -0
  588. data/lib/fdx_api/models/tax_statement.rb +174 -0
  589. data/lib/fdx_api/models/tax_statement1.rb +175 -0
  590. data/lib/fdx_api/models/tax_statement2.rb +175 -0
  591. data/lib/fdx_api/models/tax_statement4.rb +175 -0
  592. data/lib/fdx_api/models/tax_statement6.rb +175 -0
  593. data/lib/fdx_api/models/tax_statement_list.rb +85 -0
  594. data/lib/fdx_api/models/telephone_number.rb +105 -0
  595. data/lib/fdx_api/models/telephone_number_plus_extension.rb +105 -0
  596. data/lib/fdx_api/models/telephone_number_plus_extension1.rb +105 -0
  597. data/lib/fdx_api/models/telephone_number_plus_extension2.rb +105 -0
  598. data/lib/fdx_api/models/telephone_number_type.rb +29 -0
  599. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits.rb +115 -0
  600. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits1.rb +115 -0
  601. data/lib/fdx_api/models/time_and_occurrence_based_transfer_limits3.rb +115 -0
  602. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network.rb +139 -0
  603. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network1.rb +138 -0
  604. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network2.rb +138 -0
  605. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network3.rb +138 -0
  606. data/lib/fdx_api/models/timeframe_based_limits_for_a_payment_network5.rb +138 -0
  607. data/lib/fdx_api/models/transaction.rb +357 -0
  608. data/lib/fdx_api/models/transaction_reason.rb +26 -0
  609. data/lib/fdx_api/models/transaction_reason2.rb +27 -0
  610. data/lib/fdx_api/models/transaction_reward_entity.rb +97 -0
  611. data/lib/fdx_api/models/transaction_reward_entity2.rb +107 -0
  612. data/lib/fdx_api/models/transaction_status.rb +29 -0
  613. data/lib/fdx_api/models/transaction_status2.rb +29 -0
  614. data/lib/fdx_api/models/transactions_entity.rb +109 -0
  615. data/lib/fdx_api/models/transfer_entity.rb +169 -0
  616. data/lib/fdx_api/models/transfer_for_create_entity.rb +129 -0
  617. data/lib/fdx_api/models/transfer_for_create_entity1.rb +129 -0
  618. data/lib/fdx_api/models/transfers_entity.rb +113 -0
  619. data/lib/fdx_api/models/treasury_management_type.rb +30 -0
  620. data/lib/fdx_api/models/type_data_type.rb +26 -0
  621. data/lib/fdx_api/models/type_data_type2.rb +24 -0
  622. data/lib/fdx_api/models/type_form_type.rb +176 -0
  623. data/lib/fdx_api/models/type_form_type1.rb +176 -0
  624. data/lib/fdx_api/models/unit_type.rb +23 -0
  625. data/lib/fdx_api/models/unit_type1.rb +23 -0
  626. data/lib/fdx_api/models/unit_type3.rb +23 -0
  627. data/lib/fdx_api/models/updates_metadata_entity.rb +77 -0
  628. data/lib/fdx_api/models/updates_metadata_entity2.rb +77 -0
  629. data/lib/fdx_api/models/vesting_entity.rb +186 -0
  630. data/lib/fdx_api/utilities/date_time_helper.rb +11 -0
  631. data/lib/fdx_api/utilities/file_wrapper.rb +28 -0
  632. data/lib/fdx_api/utilities/union_type_lookup.rb +240 -0
  633. data/lib/fdx_api.rb +661 -0
  634. metadata +717 -0
@@ -0,0 +1,548 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ require_relative 'account_entity'
8
+
9
+ module FdxApi
10
+ # An investment account type and information such as balances, transactions,
11
+ # holdings and privileges
12
+ class InvestmentAccountEntity < AccountEntity
13
+ # As-of date for balances
14
+ # @return [DateTime]
15
+ attr_accessor :balance_as_of
16
+
17
+ # Check writing privileges
18
+ # @return [TrueClass | FalseClass]
19
+ attr_accessor :allowed_check_writing
20
+
21
+ # Allowed to trade options
22
+ # @return [TrueClass | FalseClass]
23
+ attr_accessor :allowed_option_trade
24
+
25
+ # Total current value of all investments
26
+ # @return [Float]
27
+ attr_accessor :current_value
28
+
29
+ # Holdings in the investment account
30
+ # @return [Array[HoldingEntity]]
31
+ attr_accessor :holdings
32
+
33
+ # Open orders in the investment account
34
+ # @return [Array[OpenOrderEntity]]
35
+ attr_accessor :open_orders
36
+
37
+ # Describes how new contributions are distributed among the available
38
+ # securities
39
+ # @return [Array[ContributionEntity]]
40
+ attr_accessor :contribution
41
+
42
+ # Provides the past, present, and future vesting schedule and percentages
43
+ # @return [Array[VestingEntity]]
44
+ attr_accessor :vesting
45
+
46
+ # Investment loans in the account
47
+ # @return [Array[InvestmentLoanEntity]]
48
+ attr_accessor :investment_loans
49
+
50
+ # Cash balance across all sub-accounts. Should include sweep funds
51
+ # @return [Float]
52
+ attr_accessor :available_cash_balance
53
+
54
+ # Margin trading is allowed
55
+ # @return [TrueClass | FalseClass]
56
+ attr_accessor :margin
57
+
58
+ # Margin balance
59
+ # @return [Float]
60
+ attr_accessor :margin_balance
61
+
62
+ # Short balance
63
+ # @return [Float]
64
+ attr_accessor :short_balance
65
+
66
+ # Rollover amount
67
+ # @return [Float]
68
+ attr_accessor :rollover_amount
69
+
70
+ # Name of the employer in investment 401k Plan
71
+ # @return [String]
72
+ attr_accessor :employer_name
73
+
74
+ # Unique identifier FI
75
+ # @return [String]
76
+ attr_accessor :broker_id
77
+
78
+ # Plan number for Investment 401k plan
79
+ # @return [String]
80
+ attr_accessor :plan_id
81
+
82
+ # The calendar year for this 401k account
83
+ # @return [Integer]
84
+ attr_accessor :calendar_year_for401_k
85
+
86
+ # List of balances. Aggregate of name value pairs
87
+ # @return [Array[InvestmentBalanceEntity]]
88
+ attr_accessor :balance_list
89
+
90
+ # Daily change
91
+ # @return [Float]
92
+ attr_accessor :daily_change
93
+
94
+ # Percentage change
95
+ # @return [Float]
96
+ attr_accessor :percentage_change
97
+
98
+ # Transactions on the investment account
99
+ # @return [Array[InvestmentTransactionEntity]]
100
+ attr_accessor :transactions
101
+
102
+ # Pension sources in the investment account
103
+ # @return [Array[PensionSourceEntity]]
104
+ attr_accessor :pension_source
105
+
106
+ # A mapping from model property names to API property names.
107
+ def self.names
108
+ @_hash = {} if @_hash.nil?
109
+ @_hash['balance_as_of'] = 'balanceAsOf'
110
+ @_hash['allowed_check_writing'] = 'allowedCheckWriting'
111
+ @_hash['allowed_option_trade'] = 'allowedOptionTrade'
112
+ @_hash['current_value'] = 'currentValue'
113
+ @_hash['holdings'] = 'holdings'
114
+ @_hash['open_orders'] = 'openOrders'
115
+ @_hash['contribution'] = 'contribution'
116
+ @_hash['vesting'] = 'vesting'
117
+ @_hash['investment_loans'] = 'investmentLoans'
118
+ @_hash['available_cash_balance'] = 'availableCashBalance'
119
+ @_hash['margin'] = 'margin'
120
+ @_hash['margin_balance'] = 'marginBalance'
121
+ @_hash['short_balance'] = 'shortBalance'
122
+ @_hash['rollover_amount'] = 'rolloverAmount'
123
+ @_hash['employer_name'] = 'employerName'
124
+ @_hash['broker_id'] = 'brokerId'
125
+ @_hash['plan_id'] = 'planId'
126
+ @_hash['calendar_year_for401_k'] = 'calendarYearFor401K'
127
+ @_hash['balance_list'] = 'balanceList'
128
+ @_hash['daily_change'] = 'dailyChange'
129
+ @_hash['percentage_change'] = 'percentageChange'
130
+ @_hash['transactions'] = 'transactions'
131
+ @_hash['pension_source'] = 'pensionSource'
132
+ @_hash = super().merge(@_hash)
133
+ @_hash
134
+ end
135
+
136
+ # An array for optional fields
137
+ def self.optionals
138
+ _arr = %w[
139
+ balance_as_of
140
+ allowed_check_writing
141
+ allowed_option_trade
142
+ current_value
143
+ holdings
144
+ open_orders
145
+ contribution
146
+ vesting
147
+ investment_loans
148
+ available_cash_balance
149
+ margin
150
+ margin_balance
151
+ short_balance
152
+ rollover_amount
153
+ employer_name
154
+ broker_id
155
+ plan_id
156
+ calendar_year_for401_k
157
+ balance_list
158
+ daily_change
159
+ percentage_change
160
+ transactions
161
+ pension_source
162
+ ]
163
+ (_arr << super()).flatten!
164
+ end
165
+
166
+ # An array for nullable fields
167
+ def self.nullables
168
+ _arr = []
169
+ (_arr << super()).flatten!
170
+ end
171
+
172
+ def initialize(balance_as_of: SKIP, allowed_check_writing: SKIP,
173
+ allowed_option_trade: SKIP, current_value: SKIP,
174
+ holdings: SKIP, open_orders: SKIP, contribution: SKIP,
175
+ vesting: SKIP, investment_loans: SKIP,
176
+ available_cash_balance: SKIP, margin: SKIP,
177
+ margin_balance: SKIP, short_balance: SKIP,
178
+ rollover_amount: SKIP, employer_name: SKIP, broker_id: SKIP,
179
+ plan_id: SKIP, calendar_year_for401_k: SKIP,
180
+ balance_list: SKIP, daily_change: SKIP,
181
+ percentage_change: SKIP, transactions: SKIP,
182
+ pension_source: SKIP, parent_account_id: SKIP,
183
+ line_of_business: SKIP, routing_transit_number: SKIP,
184
+ balance_type: SKIP, contact: SKIP, interest_rate: SKIP,
185
+ interest_rate_type: SKIP, interest_rate_as_of: SKIP,
186
+ prior_interest_rate: SKIP, interest_rate_index: SKIP,
187
+ early_penalty_flag: SKIP, transfer_in: SKIP,
188
+ transfer_out: SKIP, bill_pay_status: SKIP, micr_number: SKIP,
189
+ last_activity_date: SKIP, reward_program_id: SKIP,
190
+ transactions_included: SKIP, domicile: SKIP,
191
+ account_category: 'Investment Account entity',
192
+ account_id: SKIP, error: SKIP, account_type: SKIP,
193
+ account_number: SKIP, account_number_display: SKIP,
194
+ product_name: SKIP, nickname: SKIP, status: SKIP,
195
+ description: SKIP, account_open_date: SKIP,
196
+ account_close_date: SKIP, currency: SKIP,
197
+ fi_attributes: SKIP, additional_properties: nil)
198
+ @balance_as_of = balance_as_of unless balance_as_of == SKIP
199
+ @allowed_check_writing = allowed_check_writing unless allowed_check_writing == SKIP
200
+ @allowed_option_trade = allowed_option_trade unless allowed_option_trade == SKIP
201
+ @current_value = current_value unless current_value == SKIP
202
+ @holdings = holdings unless holdings == SKIP
203
+ @open_orders = open_orders unless open_orders == SKIP
204
+ @contribution = contribution unless contribution == SKIP
205
+ @vesting = vesting unless vesting == SKIP
206
+ @investment_loans = investment_loans unless investment_loans == SKIP
207
+ @available_cash_balance = available_cash_balance unless available_cash_balance == SKIP
208
+ @margin = margin unless margin == SKIP
209
+ @margin_balance = margin_balance unless margin_balance == SKIP
210
+ @short_balance = short_balance unless short_balance == SKIP
211
+ @rollover_amount = rollover_amount unless rollover_amount == SKIP
212
+ @employer_name = employer_name unless employer_name == SKIP
213
+ @broker_id = broker_id unless broker_id == SKIP
214
+ @plan_id = plan_id unless plan_id == SKIP
215
+ @calendar_year_for401_k = calendar_year_for401_k unless calendar_year_for401_k == SKIP
216
+ @balance_list = balance_list unless balance_list == SKIP
217
+ @daily_change = daily_change unless daily_change == SKIP
218
+ @percentage_change = percentage_change unless percentage_change == SKIP
219
+ @transactions = transactions unless transactions == SKIP
220
+ @pension_source = pension_source unless pension_source == SKIP
221
+ @additional_properties = additional_properties
222
+
223
+ # Call the constructor of the base class
224
+ super(parent_account_id: parent_account_id,
225
+ line_of_business: line_of_business,
226
+ routing_transit_number: routing_transit_number,
227
+ balance_type: balance_type,
228
+ contact: contact,
229
+ interest_rate: interest_rate,
230
+ interest_rate_type: interest_rate_type,
231
+ interest_rate_as_of: interest_rate_as_of,
232
+ prior_interest_rate: prior_interest_rate,
233
+ interest_rate_index: interest_rate_index,
234
+ early_penalty_flag: early_penalty_flag,
235
+ transfer_in: transfer_in,
236
+ transfer_out: transfer_out,
237
+ bill_pay_status: bill_pay_status,
238
+ micr_number: micr_number,
239
+ last_activity_date: last_activity_date,
240
+ reward_program_id: reward_program_id,
241
+ transactions_included: transactions_included,
242
+ domicile: domicile,
243
+ account_category: account_category,
244
+ account_id: account_id,
245
+ error: error,
246
+ account_type: account_type,
247
+ account_number: account_number,
248
+ account_number_display: account_number_display,
249
+ product_name: product_name,
250
+ nickname: nickname,
251
+ status: status,
252
+ description: description,
253
+ account_open_date: account_open_date,
254
+ account_close_date: account_close_date,
255
+ currency: currency,
256
+ fi_attributes: fi_attributes,
257
+ additional_properties: additional_properties)
258
+ end
259
+
260
+ # Creates an instance of the object from a hash.
261
+ def self.from_hash(hash)
262
+ return nil unless hash
263
+
264
+ # Extract variables from the hash.
265
+ balance_as_of = if hash.key?('balanceAsOf')
266
+ (DateTimeHelper.from_rfc3339(hash['balanceAsOf']) if hash['balanceAsOf'])
267
+ else
268
+ SKIP
269
+ end
270
+ allowed_check_writing =
271
+ hash.key?('allowedCheckWriting') ? hash['allowedCheckWriting'] : SKIP
272
+ allowed_option_trade =
273
+ hash.key?('allowedOptionTrade') ? hash['allowedOptionTrade'] : SKIP
274
+ current_value = hash.key?('currentValue') ? hash['currentValue'] : SKIP
275
+ # Parameter is an array, so we need to iterate through it
276
+ holdings = nil
277
+ unless hash['holdings'].nil?
278
+ holdings = []
279
+ hash['holdings'].each do |structure|
280
+ holdings << (HoldingEntity.from_hash(structure) if structure)
281
+ end
282
+ end
283
+
284
+ holdings = SKIP unless hash.key?('holdings')
285
+ # Parameter is an array, so we need to iterate through it
286
+ open_orders = nil
287
+ unless hash['openOrders'].nil?
288
+ open_orders = []
289
+ hash['openOrders'].each do |structure|
290
+ open_orders << (OpenOrderEntity.from_hash(structure) if structure)
291
+ end
292
+ end
293
+
294
+ open_orders = SKIP unless hash.key?('openOrders')
295
+ # Parameter is an array, so we need to iterate through it
296
+ contribution = nil
297
+ unless hash['contribution'].nil?
298
+ contribution = []
299
+ hash['contribution'].each do |structure|
300
+ contribution << (ContributionEntity.from_hash(structure) if structure)
301
+ end
302
+ end
303
+
304
+ contribution = SKIP unless hash.key?('contribution')
305
+ # Parameter is an array, so we need to iterate through it
306
+ vesting = nil
307
+ unless hash['vesting'].nil?
308
+ vesting = []
309
+ hash['vesting'].each do |structure|
310
+ vesting << (VestingEntity.from_hash(structure) if structure)
311
+ end
312
+ end
313
+
314
+ vesting = SKIP unless hash.key?('vesting')
315
+ # Parameter is an array, so we need to iterate through it
316
+ investment_loans = nil
317
+ unless hash['investmentLoans'].nil?
318
+ investment_loans = []
319
+ hash['investmentLoans'].each do |structure|
320
+ investment_loans << (InvestmentLoanEntity.from_hash(structure) if structure)
321
+ end
322
+ end
323
+
324
+ investment_loans = SKIP unless hash.key?('investmentLoans')
325
+ available_cash_balance =
326
+ hash.key?('availableCashBalance') ? hash['availableCashBalance'] : SKIP
327
+ margin = hash.key?('margin') ? hash['margin'] : SKIP
328
+ margin_balance = hash.key?('marginBalance') ? hash['marginBalance'] : SKIP
329
+ short_balance = hash.key?('shortBalance') ? hash['shortBalance'] : SKIP
330
+ rollover_amount =
331
+ hash.key?('rolloverAmount') ? hash['rolloverAmount'] : SKIP
332
+ employer_name = hash.key?('employerName') ? hash['employerName'] : SKIP
333
+ broker_id = hash.key?('brokerId') ? hash['brokerId'] : SKIP
334
+ plan_id = hash.key?('planId') ? hash['planId'] : SKIP
335
+ calendar_year_for401_k =
336
+ hash.key?('calendarYearFor401K') ? hash['calendarYearFor401K'] : SKIP
337
+ # Parameter is an array, so we need to iterate through it
338
+ balance_list = nil
339
+ unless hash['balanceList'].nil?
340
+ balance_list = []
341
+ hash['balanceList'].each do |structure|
342
+ balance_list << (InvestmentBalanceEntity.from_hash(structure) if structure)
343
+ end
344
+ end
345
+
346
+ balance_list = SKIP unless hash.key?('balanceList')
347
+ daily_change = hash.key?('dailyChange') ? hash['dailyChange'] : SKIP
348
+ percentage_change =
349
+ hash.key?('percentageChange') ? hash['percentageChange'] : SKIP
350
+ # Parameter is an array, so we need to iterate through it
351
+ transactions = nil
352
+ unless hash['transactions'].nil?
353
+ transactions = []
354
+ hash['transactions'].each do |structure|
355
+ transactions << (InvestmentTransactionEntity.from_hash(structure) if structure)
356
+ end
357
+ end
358
+
359
+ transactions = SKIP unless hash.key?('transactions')
360
+ # Parameter is an array, so we need to iterate through it
361
+ pension_source = nil
362
+ unless hash['pensionSource'].nil?
363
+ pension_source = []
364
+ hash['pensionSource'].each do |structure|
365
+ pension_source << (PensionSourceEntity.from_hash(structure) if structure)
366
+ end
367
+ end
368
+
369
+ pension_source = SKIP unless hash.key?('pensionSource')
370
+ parent_account_id =
371
+ hash.key?('parentAccountId') ? hash['parentAccountId'] : SKIP
372
+ line_of_business =
373
+ hash.key?('lineOfBusiness') ? hash['lineOfBusiness'] : SKIP
374
+ routing_transit_number =
375
+ hash.key?('routingTransitNumber') ? hash['routingTransitNumber'] : SKIP
376
+ balance_type = hash.key?('balanceType') ? hash['balanceType'] : SKIP
377
+ contact = AccountContactEntity2.from_hash(hash['contact']) if hash['contact']
378
+ interest_rate = hash.key?('interestRate') ? hash['interestRate'] : SKIP
379
+ interest_rate_type =
380
+ hash.key?('interestRateType') ? hash['interestRateType'] : SKIP
381
+ interest_rate_as_of = if hash.key?('interestRateAsOf')
382
+ (DateTimeHelper.from_rfc3339(hash['interestRateAsOf']) if hash['interestRateAsOf'])
383
+ else
384
+ SKIP
385
+ end
386
+ prior_interest_rate =
387
+ hash.key?('priorInterestRate') ? hash['priorInterestRate'] : SKIP
388
+ interest_rate_index =
389
+ hash.key?('interestRateIndex') ? hash['interestRateIndex'] : SKIP
390
+ early_penalty_flag =
391
+ hash.key?('earlyPenaltyFlag') ? hash['earlyPenaltyFlag'] : SKIP
392
+ transfer_in = hash.key?('transferIn') ? hash['transferIn'] : SKIP
393
+ transfer_out = hash.key?('transferOut') ? hash['transferOut'] : SKIP
394
+ bill_pay_status =
395
+ hash.key?('billPayStatus') ? hash['billPayStatus'] : SKIP
396
+ micr_number = hash.key?('micrNumber') ? hash['micrNumber'] : SKIP
397
+ last_activity_date =
398
+ hash.key?('lastActivityDate') ? hash['lastActivityDate'] : SKIP
399
+ reward_program_id =
400
+ hash.key?('rewardProgramId') ? hash['rewardProgramId'] : SKIP
401
+ transactions_included =
402
+ hash.key?('transactionsIncluded') ? hash['transactionsIncluded'] : SKIP
403
+ domicile = DomicileEntity1.from_hash(hash['domicile']) if hash['domicile']
404
+ account_category = hash['accountCategory'] ||= 'Investment Account entity'
405
+ account_id = hash.key?('accountId') ? hash['accountId'] : SKIP
406
+ error = Error1.from_hash(hash['error']) if hash['error']
407
+ account_type = hash.key?('accountType') ? hash['accountType'] : SKIP
408
+ account_number = hash.key?('accountNumber') ? hash['accountNumber'] : SKIP
409
+ account_number_display =
410
+ hash.key?('accountNumberDisplay') ? hash['accountNumberDisplay'] : SKIP
411
+ product_name = hash.key?('productName') ? hash['productName'] : SKIP
412
+ nickname = hash.key?('nickname') ? hash['nickname'] : SKIP
413
+ status = hash.key?('status') ? hash['status'] : SKIP
414
+ description = hash.key?('description') ? hash['description'] : SKIP
415
+ account_open_date =
416
+ hash.key?('accountOpenDate') ? hash['accountOpenDate'] : SKIP
417
+ account_close_date =
418
+ hash.key?('accountCloseDate') ? hash['accountCloseDate'] : SKIP
419
+ currency = CurrencyEntity4.from_hash(hash['currency']) if hash['currency']
420
+ # Parameter is an array, so we need to iterate through it
421
+ fi_attributes = nil
422
+ unless hash['fiAttributes'].nil?
423
+ fi_attributes = []
424
+ hash['fiAttributes'].each do |structure|
425
+ fi_attributes << (FiAttributeEntity.from_hash(structure) if structure)
426
+ end
427
+ end
428
+
429
+ fi_attributes = SKIP unless hash.key?('fiAttributes')
430
+
431
+ # Create a new hash for additional properties, removing known properties.
432
+ new_hash = hash.reject { |k, _| names.value?(k) }
433
+
434
+ additional_properties = APIHelper.get_additional_properties(
435
+ new_hash, proc { |value| value }
436
+ )
437
+
438
+ # Create object from extracted values.
439
+ InvestmentAccountEntity.new(balance_as_of: balance_as_of,
440
+ allowed_check_writing: allowed_check_writing,
441
+ allowed_option_trade: allowed_option_trade,
442
+ current_value: current_value,
443
+ holdings: holdings,
444
+ open_orders: open_orders,
445
+ contribution: contribution,
446
+ vesting: vesting,
447
+ investment_loans: investment_loans,
448
+ available_cash_balance: available_cash_balance,
449
+ margin: margin,
450
+ margin_balance: margin_balance,
451
+ short_balance: short_balance,
452
+ rollover_amount: rollover_amount,
453
+ employer_name: employer_name,
454
+ broker_id: broker_id,
455
+ plan_id: plan_id,
456
+ calendar_year_for401_k: calendar_year_for401_k,
457
+ balance_list: balance_list,
458
+ daily_change: daily_change,
459
+ percentage_change: percentage_change,
460
+ transactions: transactions,
461
+ pension_source: pension_source,
462
+ parent_account_id: parent_account_id,
463
+ line_of_business: line_of_business,
464
+ routing_transit_number: routing_transit_number,
465
+ balance_type: balance_type,
466
+ contact: contact,
467
+ interest_rate: interest_rate,
468
+ interest_rate_type: interest_rate_type,
469
+ interest_rate_as_of: interest_rate_as_of,
470
+ prior_interest_rate: prior_interest_rate,
471
+ interest_rate_index: interest_rate_index,
472
+ early_penalty_flag: early_penalty_flag,
473
+ transfer_in: transfer_in,
474
+ transfer_out: transfer_out,
475
+ bill_pay_status: bill_pay_status,
476
+ micr_number: micr_number,
477
+ last_activity_date: last_activity_date,
478
+ reward_program_id: reward_program_id,
479
+ transactions_included: transactions_included,
480
+ domicile: domicile,
481
+ account_category: account_category,
482
+ account_id: account_id,
483
+ error: error,
484
+ account_type: account_type,
485
+ account_number: account_number,
486
+ account_number_display: account_number_display,
487
+ product_name: product_name,
488
+ nickname: nickname,
489
+ status: status,
490
+ description: description,
491
+ account_open_date: account_open_date,
492
+ account_close_date: account_close_date,
493
+ currency: currency,
494
+ fi_attributes: fi_attributes,
495
+ additional_properties: additional_properties)
496
+ end
497
+
498
+ def to_custom_balance_as_of
499
+ DateTimeHelper.to_rfc3339(balance_as_of)
500
+ end
501
+
502
+ # Validates an instance of the object from a given value.
503
+ # @param [InvestmentAccountEntity | Hash] The value against the validation is performed.
504
+ def self.validate(value)
505
+ return true if value.instance_of? self
506
+
507
+ return false unless value.instance_of? Hash
508
+
509
+ true
510
+ end
511
+
512
+ # Provides a human-readable string representation of the object.
513
+ def to_s
514
+ class_name = self.class.name.split('::').last
515
+ super_string = super().sub(/^<[^ ]+ /, '').sub(/>$/, '')
516
+ "<#{class_name} #{super_string}, balance_as_of: #{@balance_as_of}, allowed_check_writing:"\
517
+ " #{@allowed_check_writing}, allowed_option_trade: #{@allowed_option_trade}, current_value:"\
518
+ " #{@current_value}, holdings: #{@holdings}, open_orders: #{@open_orders}, contribution:"\
519
+ " #{@contribution}, vesting: #{@vesting}, investment_loans: #{@investment_loans},"\
520
+ " available_cash_balance: #{@available_cash_balance}, margin: #{@margin}, margin_balance:"\
521
+ " #{@margin_balance}, short_balance: #{@short_balance}, rollover_amount:"\
522
+ " #{@rollover_amount}, employer_name: #{@employer_name}, broker_id: #{@broker_id}, plan_id:"\
523
+ " #{@plan_id}, calendar_year_for401_k: #{@calendar_year_for401_k}, balance_list:"\
524
+ " #{@balance_list}, daily_change: #{@daily_change}, percentage_change:"\
525
+ " #{@percentage_change}, transactions: #{@transactions}, pension_source:"\
526
+ " #{@pension_source}>"
527
+ end
528
+
529
+ # Provides a debugging-friendly string with detailed object information.
530
+ def inspect
531
+ class_name = self.class.name.split('::').last
532
+ super_string = super().inspect.sub(/^<[^ ]+ /, '').sub(/>$/, '')
533
+ "<#{class_name} #{super_string}, balance_as_of: #{@balance_as_of.inspect},"\
534
+ " allowed_check_writing: #{@allowed_check_writing.inspect}, allowed_option_trade:"\
535
+ " #{@allowed_option_trade.inspect}, current_value: #{@current_value.inspect}, holdings:"\
536
+ " #{@holdings.inspect}, open_orders: #{@open_orders.inspect}, contribution:"\
537
+ " #{@contribution.inspect}, vesting: #{@vesting.inspect}, investment_loans:"\
538
+ " #{@investment_loans.inspect}, available_cash_balance: #{@available_cash_balance.inspect},"\
539
+ " margin: #{@margin.inspect}, margin_balance: #{@margin_balance.inspect}, short_balance:"\
540
+ " #{@short_balance.inspect}, rollover_amount: #{@rollover_amount.inspect}, employer_name:"\
541
+ " #{@employer_name.inspect}, broker_id: #{@broker_id.inspect}, plan_id: #{@plan_id.inspect},"\
542
+ " calendar_year_for401_k: #{@calendar_year_for401_k.inspect}, balance_list:"\
543
+ " #{@balance_list.inspect}, daily_change: #{@daily_change.inspect}, percentage_change:"\
544
+ " #{@percentage_change.inspect}, transactions: #{@transactions.inspect}, pension_source:"\
545
+ " #{@pension_source.inspect}>"
546
+ end
547
+ end
548
+ end
@@ -0,0 +1,138 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module FdxApi
7
+ # A point-in-time balance of the investment account
8
+ class InvestmentBalanceEntity < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Name of the balance
13
+ # @return [String]
14
+ attr_accessor :balance_name
15
+
16
+ # Description of balance
17
+ # @return [String]
18
+ attr_accessor :balance_description
19
+
20
+ # AMOUNT, PERCENTAGE
21
+ # @return [InvestmentBalanceType2]
22
+ attr_accessor :balance_type
23
+
24
+ # Value of named balance
25
+ # @return [Float]
26
+ attr_accessor :balance_value
27
+
28
+ # Date as of this balance
29
+ # @return [Date]
30
+ attr_accessor :balance_date
31
+
32
+ # Currency if different from that of account
33
+ # @return [CurrencyEntity2]
34
+ attr_accessor :currency
35
+
36
+ # A mapping from model property names to API property names.
37
+ def self.names
38
+ @_hash = {} if @_hash.nil?
39
+ @_hash['balance_name'] = 'balanceName'
40
+ @_hash['balance_description'] = 'balanceDescription'
41
+ @_hash['balance_type'] = 'balanceType'
42
+ @_hash['balance_value'] = 'balanceValue'
43
+ @_hash['balance_date'] = 'balanceDate'
44
+ @_hash['currency'] = 'currency'
45
+ @_hash
46
+ end
47
+
48
+ # An array for optional fields
49
+ def self.optionals
50
+ %w[
51
+ balance_name
52
+ balance_description
53
+ balance_type
54
+ balance_value
55
+ balance_date
56
+ currency
57
+ ]
58
+ end
59
+
60
+ # An array for nullable fields
61
+ def self.nullables
62
+ []
63
+ end
64
+
65
+ def initialize(balance_name: SKIP, balance_description: SKIP,
66
+ balance_type: SKIP, balance_value: SKIP, balance_date: SKIP,
67
+ currency: SKIP, additional_properties: nil)
68
+ # Add additional model properties to the instance
69
+ additional_properties = {} if additional_properties.nil?
70
+
71
+ @balance_name = balance_name unless balance_name == SKIP
72
+ @balance_description = balance_description unless balance_description == SKIP
73
+ @balance_type = balance_type unless balance_type == SKIP
74
+ @balance_value = balance_value unless balance_value == SKIP
75
+ @balance_date = balance_date unless balance_date == SKIP
76
+ @currency = currency unless currency == SKIP
77
+ @additional_properties = additional_properties
78
+ end
79
+
80
+ # Creates an instance of the object from a hash.
81
+ def self.from_hash(hash)
82
+ return nil unless hash
83
+
84
+ # Extract variables from the hash.
85
+ balance_name = hash.key?('balanceName') ? hash['balanceName'] : SKIP
86
+ balance_description =
87
+ hash.key?('balanceDescription') ? hash['balanceDescription'] : SKIP
88
+ balance_type = hash.key?('balanceType') ? hash['balanceType'] : SKIP
89
+ balance_value = hash.key?('balanceValue') ? hash['balanceValue'] : SKIP
90
+ balance_date = hash.key?('balanceDate') ? hash['balanceDate'] : SKIP
91
+ currency = CurrencyEntity2.from_hash(hash['currency']) if hash['currency']
92
+
93
+ # Create a new hash for additional properties, removing known properties.
94
+ new_hash = hash.reject { |k, _| names.value?(k) }
95
+
96
+ additional_properties = APIHelper.get_additional_properties(
97
+ new_hash, proc { |value| value }
98
+ )
99
+
100
+ # Create object from extracted values.
101
+ InvestmentBalanceEntity.new(balance_name: balance_name,
102
+ balance_description: balance_description,
103
+ balance_type: balance_type,
104
+ balance_value: balance_value,
105
+ balance_date: balance_date,
106
+ currency: currency,
107
+ additional_properties: additional_properties)
108
+ end
109
+
110
+ # Validates an instance of the object from a given value.
111
+ # @param [InvestmentBalanceEntity | Hash] The value against the validation is performed.
112
+ def self.validate(value)
113
+ return true if value.instance_of? self
114
+
115
+ return false unless value.instance_of? Hash
116
+
117
+ true
118
+ end
119
+
120
+ # Provides a human-readable string representation of the object.
121
+ def to_s
122
+ class_name = self.class.name.split('::').last
123
+ "<#{class_name} balance_name: #{@balance_name}, balance_description:"\
124
+ " #{@balance_description}, balance_type: #{@balance_type}, balance_value: #{@balance_value},"\
125
+ " balance_date: #{@balance_date}, currency: #{@currency}, additional_properties:"\
126
+ " #{@additional_properties}>"
127
+ end
128
+
129
+ # Provides a debugging-friendly string with detailed object information.
130
+ def inspect
131
+ class_name = self.class.name.split('::').last
132
+ "<#{class_name} balance_name: #{@balance_name.inspect}, balance_description:"\
133
+ " #{@balance_description.inspect}, balance_type: #{@balance_type.inspect}, balance_value:"\
134
+ " #{@balance_value.inspect}, balance_date: #{@balance_date.inspect}, currency:"\
135
+ " #{@currency.inspect}, additional_properties: #{@additional_properties}>"
136
+ end
137
+ end
138
+ end