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,293 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module FdxApi
7
+ # Record of Recipient at the Provider. Properties in this structure use
8
+ # 'snake_case' names to match the properties in [IETF RFC
9
+ # 7591](https://datatracker.ietf.org/doc/rfc7591/)
10
+ class RecipientProvider < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The Data Recipient or Data Recipient Application name displayed by Data
15
+ # Provider during the consent Flow as well as in the Consent Dashboard
16
+ # @return [String]
17
+ attr_accessor :client_name
18
+
19
+ # A short description of the Data Recipient application
20
+ # @return [String]
21
+ attr_accessor :description
22
+
23
+ # An array of eligible Redirect URI targets
24
+ # @return [Array[String]]
25
+ attr_accessor :redirect_uris
26
+
27
+ # Data Recipient Logo URL location
28
+ # @return [String]
29
+ attr_accessor :logo_uri
30
+
31
+ # The URI which provides additional information about the Data Recipient
32
+ # @return [String]
33
+ attr_accessor :client_uri
34
+
35
+ # Array of strings representing ways to contact individuals responsible for
36
+ # the Data Recipient application
37
+ # @return [Array[String]]
38
+ attr_accessor :contacts
39
+
40
+ # String form field with a list of data clusters
41
+ # @return [String]
42
+ attr_accessor :scope
43
+
44
+ # The duration of consent for the Data Recipient consumers
45
+ # @return [Array[ConsentDurationType]]
46
+ attr_accessor :duration_type
47
+
48
+ # The maximum consent duration in days for duration_type TIME_BOUND for the
49
+ # Data Recipient, effective from the date of consent
50
+ # @return [Integer]
51
+ attr_accessor :duration_period
52
+
53
+ # The maximum number of days allowed for Data Recipient to obtain in
54
+ # transaction history, effective from the current date
55
+ # @return [Integer]
56
+ attr_accessor :lookback_period
57
+
58
+ # An array of external registries containing registered entity name,
59
+ # registered entity id and registry fields for the registries where the data
60
+ # recipient is registered
61
+ # @return [Array[RegistryReference]]
62
+ attr_accessor :registry_references
63
+
64
+ # An array of the intermediaries for this data recipient
65
+ # @return [Array[Intermediary]]
66
+ attr_accessor :intermediaries
67
+
68
+ # OAuth 2.0 client identifier. Unique ID representing Data Recipient and
69
+ # Identity Chain combination
70
+ # @return [String]
71
+ attr_accessor :client_id
72
+
73
+ # OAuth 2.0 client secret string
74
+ # @return [String]
75
+ attr_accessor :client_secret
76
+
77
+ # Array of OAuth 2.0 grants made available to the Data Recipient
78
+ # @return [Array[String]]
79
+ attr_accessor :grant_types
80
+
81
+ # Requested Authentication method for Authorization Server
82
+ # @return [String]
83
+ attr_accessor :token_endpoint_auth_method
84
+
85
+ # Fully qualified URI for subsequent DCR calls (GET, PUT, DELETE) for
86
+ # managing the Data Recipient registration
87
+ # @return [String]
88
+ attr_accessor :registration_client_uri
89
+
90
+ # Status of FDX OAuth 2.0 extension
91
+ # @return [String]
92
+ attr_accessor :status
93
+
94
+ # String containing a unique DCR access token to be used in subsequent
95
+ # operations to manage the Data Recipient
96
+ # @return [String]
97
+ attr_accessor :registration_access_token
98
+
99
+ # A mapping from model property names to API property names.
100
+ def self.names
101
+ @_hash = {} if @_hash.nil?
102
+ @_hash['client_name'] = 'client_name'
103
+ @_hash['description'] = 'description'
104
+ @_hash['redirect_uris'] = 'redirect_uris'
105
+ @_hash['logo_uri'] = 'logo_uri'
106
+ @_hash['client_uri'] = 'client_uri'
107
+ @_hash['contacts'] = 'contacts'
108
+ @_hash['scope'] = 'scope'
109
+ @_hash['duration_type'] = 'duration_type'
110
+ @_hash['duration_period'] = 'duration_period'
111
+ @_hash['lookback_period'] = 'lookback_period'
112
+ @_hash['registry_references'] = 'registry_references'
113
+ @_hash['intermediaries'] = 'intermediaries'
114
+ @_hash['client_id'] = 'client_id'
115
+ @_hash['client_secret'] = 'client_secret'
116
+ @_hash['grant_types'] = 'grant_types'
117
+ @_hash['token_endpoint_auth_method'] = 'token_endpoint_auth_method'
118
+ @_hash['registration_client_uri'] = 'registration_client_uri'
119
+ @_hash['status'] = 'status'
120
+ @_hash['registration_access_token'] = 'registration_access_token'
121
+ @_hash
122
+ end
123
+
124
+ # An array for optional fields
125
+ def self.optionals
126
+ %w[
127
+ description
128
+ logo_uri
129
+ client_uri
130
+ contacts
131
+ scope
132
+ duration_type
133
+ duration_period
134
+ lookback_period
135
+ registry_references
136
+ intermediaries
137
+ client_secret
138
+ registration_client_uri
139
+ registration_access_token
140
+ ]
141
+ end
142
+
143
+ # An array for nullable fields
144
+ def self.nullables
145
+ []
146
+ end
147
+
148
+ def initialize(client_name:, redirect_uris:, client_id:, grant_types:,
149
+ token_endpoint_auth_method:, status:, description: SKIP,
150
+ logo_uri: SKIP, client_uri: SKIP, contacts: SKIP,
151
+ scope: SKIP, duration_type: SKIP, duration_period: SKIP,
152
+ lookback_period: SKIP, registry_references: SKIP,
153
+ intermediaries: SKIP, client_secret: SKIP,
154
+ registration_client_uri: SKIP,
155
+ registration_access_token: SKIP, additional_properties: nil)
156
+ # Add additional model properties to the instance
157
+ additional_properties = {} if additional_properties.nil?
158
+
159
+ @client_name = client_name
160
+ @description = description unless description == SKIP
161
+ @redirect_uris = redirect_uris
162
+ @logo_uri = logo_uri unless logo_uri == SKIP
163
+ @client_uri = client_uri unless client_uri == SKIP
164
+ @contacts = contacts unless contacts == SKIP
165
+ @scope = scope unless scope == SKIP
166
+ @duration_type = duration_type unless duration_type == SKIP
167
+ @duration_period = duration_period unless duration_period == SKIP
168
+ @lookback_period = lookback_period unless lookback_period == SKIP
169
+ @registry_references = registry_references unless registry_references == SKIP
170
+ @intermediaries = intermediaries unless intermediaries == SKIP
171
+ @client_id = client_id
172
+ @client_secret = client_secret unless client_secret == SKIP
173
+ @grant_types = grant_types
174
+ @token_endpoint_auth_method = token_endpoint_auth_method
175
+ @registration_client_uri = registration_client_uri unless registration_client_uri == SKIP
176
+ @status = status
177
+ unless registration_access_token == SKIP
178
+ @registration_access_token =
179
+ registration_access_token
180
+ end
181
+ @additional_properties = additional_properties
182
+ end
183
+
184
+ # Creates an instance of the object from a hash.
185
+ def self.from_hash(hash)
186
+ return nil unless hash
187
+
188
+ # Extract variables from the hash.
189
+ client_name = hash.key?('client_name') ? hash['client_name'] : nil
190
+ redirect_uris = hash.key?('redirect_uris') ? hash['redirect_uris'] : nil
191
+ client_id = hash.key?('client_id') ? hash['client_id'] : nil
192
+ grant_types = hash.key?('grant_types') ? hash['grant_types'] : nil
193
+ token_endpoint_auth_method =
194
+ hash.key?('token_endpoint_auth_method') ? hash['token_endpoint_auth_method'] : nil
195
+ status = hash.key?('status') ? hash['status'] : nil
196
+ description = hash.key?('description') ? hash['description'] : SKIP
197
+ logo_uri = hash.key?('logo_uri') ? hash['logo_uri'] : SKIP
198
+ client_uri = hash.key?('client_uri') ? hash['client_uri'] : SKIP
199
+ contacts = hash.key?('contacts') ? hash['contacts'] : SKIP
200
+ scope = hash.key?('scope') ? hash['scope'] : SKIP
201
+ duration_type = hash.key?('duration_type') ? hash['duration_type'] : SKIP
202
+ duration_period =
203
+ hash.key?('duration_period') ? hash['duration_period'] : SKIP
204
+ lookback_period =
205
+ hash.key?('lookback_period') ? hash['lookback_period'] : SKIP
206
+ # Parameter is an array, so we need to iterate through it
207
+ registry_references = nil
208
+ unless hash['registry_references'].nil?
209
+ registry_references = []
210
+ hash['registry_references'].each do |structure|
211
+ registry_references << (RegistryReference.from_hash(structure) if structure)
212
+ end
213
+ end
214
+
215
+ registry_references = SKIP unless hash.key?('registry_references')
216
+ # Parameter is an array, so we need to iterate through it
217
+ intermediaries = nil
218
+ unless hash['intermediaries'].nil?
219
+ intermediaries = []
220
+ hash['intermediaries'].each do |structure|
221
+ intermediaries << (Intermediary.from_hash(structure) if structure)
222
+ end
223
+ end
224
+
225
+ intermediaries = SKIP unless hash.key?('intermediaries')
226
+ client_secret = hash.key?('client_secret') ? hash['client_secret'] : SKIP
227
+ registration_client_uri =
228
+ hash.key?('registration_client_uri') ? hash['registration_client_uri'] : SKIP
229
+ registration_access_token =
230
+ hash.key?('registration_access_token') ? hash['registration_access_token'] : SKIP
231
+
232
+ # Create a new hash for additional properties, removing known properties.
233
+ new_hash = hash.reject { |k, _| names.value?(k) }
234
+
235
+ additional_properties = APIHelper.get_additional_properties(
236
+ new_hash, proc { |value| value }
237
+ )
238
+
239
+ # Create object from extracted values.
240
+ RecipientProvider.new(client_name: client_name,
241
+ redirect_uris: redirect_uris,
242
+ client_id: client_id,
243
+ grant_types: grant_types,
244
+ token_endpoint_auth_method: token_endpoint_auth_method,
245
+ status: status,
246
+ description: description,
247
+ logo_uri: logo_uri,
248
+ client_uri: client_uri,
249
+ contacts: contacts,
250
+ scope: scope,
251
+ duration_type: duration_type,
252
+ duration_period: duration_period,
253
+ lookback_period: lookback_period,
254
+ registry_references: registry_references,
255
+ intermediaries: intermediaries,
256
+ client_secret: client_secret,
257
+ registration_client_uri: registration_client_uri,
258
+ registration_access_token: registration_access_token,
259
+ additional_properties: additional_properties)
260
+ end
261
+
262
+ # Provides a human-readable string representation of the object.
263
+ def to_s
264
+ class_name = self.class.name.split('::').last
265
+ "<#{class_name} client_name: #{@client_name}, description: #{@description}, redirect_uris:"\
266
+ " #{@redirect_uris}, logo_uri: #{@logo_uri}, client_uri: #{@client_uri}, contacts:"\
267
+ " #{@contacts}, scope: #{@scope}, duration_type: #{@duration_type}, duration_period:"\
268
+ " #{@duration_period}, lookback_period: #{@lookback_period}, registry_references:"\
269
+ " #{@registry_references}, intermediaries: #{@intermediaries}, client_id: #{@client_id},"\
270
+ " client_secret: #{@client_secret}, grant_types: #{@grant_types},"\
271
+ " token_endpoint_auth_method: #{@token_endpoint_auth_method}, registration_client_uri:"\
272
+ " #{@registration_client_uri}, status: #{@status}, registration_access_token:"\
273
+ " #{@registration_access_token}, additional_properties: #{@additional_properties}>"
274
+ end
275
+
276
+ # Provides a debugging-friendly string with detailed object information.
277
+ def inspect
278
+ class_name = self.class.name.split('::').last
279
+ "<#{class_name} client_name: #{@client_name.inspect}, description: #{@description.inspect},"\
280
+ " redirect_uris: #{@redirect_uris.inspect}, logo_uri: #{@logo_uri.inspect}, client_uri:"\
281
+ " #{@client_uri.inspect}, contacts: #{@contacts.inspect}, scope: #{@scope.inspect},"\
282
+ " duration_type: #{@duration_type.inspect}, duration_period: #{@duration_period.inspect},"\
283
+ " lookback_period: #{@lookback_period.inspect}, registry_references:"\
284
+ " #{@registry_references.inspect}, intermediaries: #{@intermediaries.inspect}, client_id:"\
285
+ " #{@client_id.inspect}, client_secret: #{@client_secret.inspect}, grant_types:"\
286
+ " #{@grant_types.inspect}, token_endpoint_auth_method:"\
287
+ " #{@token_endpoint_auth_method.inspect}, registration_client_uri:"\
288
+ " #{@registration_client_uri.inspect}, status: #{@status.inspect},"\
289
+ " registration_access_token: #{@registration_access_token.inspect}, additional_properties:"\
290
+ " #{@additional_properties}>"
291
+ end
292
+ end
293
+ end
@@ -0,0 +1,223 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module FdxApi
7
+ # Record of Recipient at the Ecosystem Registry. Properties in this structure
8
+ # use 'snake_case' names to match the properties in [IETF RFC
9
+ # 7591](https://datatracker.ietf.org/doc/rfc7591/).
10
+ class RecipientRecordAtEcosystemRegistry < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The Data Recipient or Data Recipient Application name displayed by Data
15
+ # Provider during the consent Flow as well as in the Consent Dashboard
16
+ # @return [String]
17
+ attr_accessor :client_name
18
+
19
+ # A short description of the Data Recipient application
20
+ # @return [String]
21
+ attr_accessor :description
22
+
23
+ # An array of eligible Redirect URI targets
24
+ # @return [Array[String]]
25
+ attr_accessor :redirect_uris
26
+
27
+ # Data Recipient Logo URL location
28
+ # @return [String]
29
+ attr_accessor :logo_uri
30
+
31
+ # The URI which provides additional information about the Data Recipient
32
+ # @return [String]
33
+ attr_accessor :client_uri
34
+
35
+ # Array of strings representing ways to contact individuals responsible for
36
+ # the Data Recipient application
37
+ # @return [Array[String]]
38
+ attr_accessor :contacts
39
+
40
+ # String form field with a list of data clusters
41
+ # @return [String]
42
+ attr_accessor :scope
43
+
44
+ # The duration of consent for the Data Recipient consumers
45
+ # @return [Array[ConsentDurationType]]
46
+ attr_accessor :duration_type
47
+
48
+ # The maximum consent duration in days for duration_type TIME_BOUND for the
49
+ # Data Recipient, effective from the date of consent
50
+ # @return [Integer]
51
+ attr_accessor :duration_period
52
+
53
+ # The maximum number of days allowed for Data Recipient to obtain in
54
+ # transaction history, effective from the current date
55
+ # @return [Integer]
56
+ attr_accessor :lookback_period
57
+
58
+ # An array of external registries containing registered entity name,
59
+ # registered entity id and registry fields for the registries where the data
60
+ # recipient is registered
61
+ # @return [Array[RegistryReference]]
62
+ attr_accessor :registry_references
63
+
64
+ # An array of the intermediaries for this data recipient
65
+ # @return [Array[Intermediary]]
66
+ attr_accessor :intermediaries
67
+
68
+ # Recipient Id at ecosystem registry
69
+ # @return [String]
70
+ attr_accessor :recipient_id
71
+
72
+ # A mapping from model property names to API property names.
73
+ def self.names
74
+ @_hash = {} if @_hash.nil?
75
+ @_hash['client_name'] = 'client_name'
76
+ @_hash['description'] = 'description'
77
+ @_hash['redirect_uris'] = 'redirect_uris'
78
+ @_hash['logo_uri'] = 'logo_uri'
79
+ @_hash['client_uri'] = 'client_uri'
80
+ @_hash['contacts'] = 'contacts'
81
+ @_hash['scope'] = 'scope'
82
+ @_hash['duration_type'] = 'duration_type'
83
+ @_hash['duration_period'] = 'duration_period'
84
+ @_hash['lookback_period'] = 'lookback_period'
85
+ @_hash['registry_references'] = 'registry_references'
86
+ @_hash['intermediaries'] = 'intermediaries'
87
+ @_hash['recipient_id'] = 'recipient_id'
88
+ @_hash
89
+ end
90
+
91
+ # An array for optional fields
92
+ def self.optionals
93
+ %w[
94
+ description
95
+ logo_uri
96
+ client_uri
97
+ contacts
98
+ scope
99
+ duration_type
100
+ duration_period
101
+ lookback_period
102
+ registry_references
103
+ intermediaries
104
+ ]
105
+ end
106
+
107
+ # An array for nullable fields
108
+ def self.nullables
109
+ []
110
+ end
111
+
112
+ def initialize(client_name:, redirect_uris:, recipient_id:,
113
+ description: SKIP, logo_uri: SKIP, client_uri: SKIP,
114
+ contacts: SKIP, scope: SKIP, duration_type: SKIP,
115
+ duration_period: SKIP, lookback_period: SKIP,
116
+ registry_references: SKIP, intermediaries: SKIP,
117
+ additional_properties: nil)
118
+ # Add additional model properties to the instance
119
+ additional_properties = {} if additional_properties.nil?
120
+
121
+ @client_name = client_name
122
+ @description = description unless description == SKIP
123
+ @redirect_uris = redirect_uris
124
+ @logo_uri = logo_uri unless logo_uri == SKIP
125
+ @client_uri = client_uri unless client_uri == SKIP
126
+ @contacts = contacts unless contacts == SKIP
127
+ @scope = scope unless scope == SKIP
128
+ @duration_type = duration_type unless duration_type == SKIP
129
+ @duration_period = duration_period unless duration_period == SKIP
130
+ @lookback_period = lookback_period unless lookback_period == SKIP
131
+ @registry_references = registry_references unless registry_references == SKIP
132
+ @intermediaries = intermediaries unless intermediaries == SKIP
133
+ @recipient_id = recipient_id
134
+ @additional_properties = additional_properties
135
+ end
136
+
137
+ # Creates an instance of the object from a hash.
138
+ def self.from_hash(hash)
139
+ return nil unless hash
140
+
141
+ # Extract variables from the hash.
142
+ client_name = hash.key?('client_name') ? hash['client_name'] : nil
143
+ redirect_uris = hash.key?('redirect_uris') ? hash['redirect_uris'] : nil
144
+ recipient_id = hash.key?('recipient_id') ? hash['recipient_id'] : nil
145
+ description = hash.key?('description') ? hash['description'] : SKIP
146
+ logo_uri = hash.key?('logo_uri') ? hash['logo_uri'] : SKIP
147
+ client_uri = hash.key?('client_uri') ? hash['client_uri'] : SKIP
148
+ contacts = hash.key?('contacts') ? hash['contacts'] : SKIP
149
+ scope = hash.key?('scope') ? hash['scope'] : SKIP
150
+ duration_type = hash.key?('duration_type') ? hash['duration_type'] : SKIP
151
+ duration_period =
152
+ hash.key?('duration_period') ? hash['duration_period'] : SKIP
153
+ lookback_period =
154
+ hash.key?('lookback_period') ? hash['lookback_period'] : SKIP
155
+ # Parameter is an array, so we need to iterate through it
156
+ registry_references = nil
157
+ unless hash['registry_references'].nil?
158
+ registry_references = []
159
+ hash['registry_references'].each do |structure|
160
+ registry_references << (RegistryReference.from_hash(structure) if structure)
161
+ end
162
+ end
163
+
164
+ registry_references = SKIP unless hash.key?('registry_references')
165
+ # Parameter is an array, so we need to iterate through it
166
+ intermediaries = nil
167
+ unless hash['intermediaries'].nil?
168
+ intermediaries = []
169
+ hash['intermediaries'].each do |structure|
170
+ intermediaries << (Intermediary.from_hash(structure) if structure)
171
+ end
172
+ end
173
+
174
+ intermediaries = SKIP unless hash.key?('intermediaries')
175
+
176
+ # Create a new hash for additional properties, removing known properties.
177
+ new_hash = hash.reject { |k, _| names.value?(k) }
178
+
179
+ additional_properties = APIHelper.get_additional_properties(
180
+ new_hash, proc { |value| value }
181
+ )
182
+
183
+ # Create object from extracted values.
184
+ RecipientRecordAtEcosystemRegistry.new(client_name: client_name,
185
+ redirect_uris: redirect_uris,
186
+ recipient_id: recipient_id,
187
+ description: description,
188
+ logo_uri: logo_uri,
189
+ client_uri: client_uri,
190
+ contacts: contacts,
191
+ scope: scope,
192
+ duration_type: duration_type,
193
+ duration_period: duration_period,
194
+ lookback_period: lookback_period,
195
+ registry_references: registry_references,
196
+ intermediaries: intermediaries,
197
+ additional_properties: additional_properties)
198
+ end
199
+
200
+ # Provides a human-readable string representation of the object.
201
+ def to_s
202
+ class_name = self.class.name.split('::').last
203
+ "<#{class_name} client_name: #{@client_name}, description: #{@description}, redirect_uris:"\
204
+ " #{@redirect_uris}, logo_uri: #{@logo_uri}, client_uri: #{@client_uri}, contacts:"\
205
+ " #{@contacts}, scope: #{@scope}, duration_type: #{@duration_type}, duration_period:"\
206
+ " #{@duration_period}, lookback_period: #{@lookback_period}, registry_references:"\
207
+ " #{@registry_references}, intermediaries: #{@intermediaries}, recipient_id:"\
208
+ " #{@recipient_id}, additional_properties: #{@additional_properties}>"
209
+ end
210
+
211
+ # Provides a debugging-friendly string with detailed object information.
212
+ def inspect
213
+ class_name = self.class.name.split('::').last
214
+ "<#{class_name} client_name: #{@client_name.inspect}, description: #{@description.inspect},"\
215
+ " redirect_uris: #{@redirect_uris.inspect}, logo_uri: #{@logo_uri.inspect}, client_uri:"\
216
+ " #{@client_uri.inspect}, contacts: #{@contacts.inspect}, scope: #{@scope.inspect},"\
217
+ " duration_type: #{@duration_type.inspect}, duration_period: #{@duration_period.inspect},"\
218
+ " lookback_period: #{@lookback_period.inspect}, registry_references:"\
219
+ " #{@registry_references.inspect}, intermediaries: #{@intermediaries.inspect}, recipient_id:"\
220
+ " #{@recipient_id.inspect}, additional_properties: #{@additional_properties}>"
221
+ end
222
+ end
223
+ end
@@ -0,0 +1,105 @@
1
+ # fdx_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module FdxApi
7
+ # Recipient records at Ecosystem Registry. Properties in this structure use
8
+ # 'snake_case' names to match the properties in [IETF RFC
9
+ # 7591](https://datatracker.ietf.org/doc/rfc7591/).
10
+ class RecipientRecordsAtEcosystemRegistry < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # Offset IDs for navigating result sets
15
+ # @return [PageMetadata]
16
+ attr_accessor :page
17
+
18
+ # Resource URLs for navigating result sets
19
+ # @return [PageMetadataLinks]
20
+ attr_accessor :links
21
+
22
+ # Recipients retrieved by the operation
23
+ # @return [Array[RecipientRecordAtEcosystemRegistry]]
24
+ attr_accessor :recipients
25
+
26
+ # A mapping from model property names to API property names.
27
+ def self.names
28
+ @_hash = {} if @_hash.nil?
29
+ @_hash['page'] = 'page'
30
+ @_hash['links'] = 'links'
31
+ @_hash['recipients'] = 'recipients'
32
+ @_hash
33
+ end
34
+
35
+ # An array for optional fields
36
+ def self.optionals
37
+ %w[
38
+ page
39
+ links
40
+ ]
41
+ end
42
+
43
+ # An array for nullable fields
44
+ def self.nullables
45
+ []
46
+ end
47
+
48
+ def initialize(recipients:, page: SKIP, links: SKIP,
49
+ additional_properties: nil)
50
+ # Add additional model properties to the instance
51
+ additional_properties = {} if additional_properties.nil?
52
+
53
+ @page = page unless page == SKIP
54
+ @links = links unless links == SKIP
55
+ @recipients = recipients
56
+ @additional_properties = additional_properties
57
+ end
58
+
59
+ # Creates an instance of the object from a hash.
60
+ def self.from_hash(hash)
61
+ return nil unless hash
62
+
63
+ # Extract variables from the hash.
64
+ # Parameter is an array, so we need to iterate through it
65
+ recipients = nil
66
+ unless hash['recipients'].nil?
67
+ recipients = []
68
+ hash['recipients'].each do |structure|
69
+ recipients << (RecipientRecordAtEcosystemRegistry.from_hash(structure) if structure)
70
+ end
71
+ end
72
+
73
+ recipients = nil unless hash.key?('recipients')
74
+ page = PageMetadata.from_hash(hash['page']) if hash['page']
75
+ links = PageMetadataLinks.from_hash(hash['links']) if hash['links']
76
+
77
+ # Create a new hash for additional properties, removing known properties.
78
+ new_hash = hash.reject { |k, _| names.value?(k) }
79
+
80
+ additional_properties = APIHelper.get_additional_properties(
81
+ new_hash, proc { |value| value }
82
+ )
83
+
84
+ # Create object from extracted values.
85
+ RecipientRecordsAtEcosystemRegistry.new(recipients: recipients,
86
+ page: page,
87
+ links: links,
88
+ additional_properties: additional_properties)
89
+ end
90
+
91
+ # Provides a human-readable string representation of the object.
92
+ def to_s
93
+ class_name = self.class.name.split('::').last
94
+ "<#{class_name} page: #{@page}, links: #{@links}, recipients: #{@recipients},"\
95
+ " additional_properties: #{@additional_properties}>"
96
+ end
97
+
98
+ # Provides a debugging-friendly string with detailed object information.
99
+ def inspect
100
+ class_name = self.class.name.split('::').last
101
+ "<#{class_name} page: #{@page.inspect}, links: #{@links.inspect}, recipients:"\
102
+ " #{@recipients.inspect}, additional_properties: #{@additional_properties}>"
103
+ end
104
+ end
105
+ end