apimatic-plaid-sdk 0.0.1

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 (542) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +192 -0
  4. data/bin/console +15 -0
  5. data/lib/plaid/api_helper.rb +10 -0
  6. data/lib/plaid/apis/accounts_api.rb +70 -0
  7. data/lib/plaid/apis/application_api.rb +35 -0
  8. data/lib/plaid/apis/asset_report_api.rb +301 -0
  9. data/lib/plaid/apis/auth_api.rb +43 -0
  10. data/lib/plaid/apis/bank_transfer_api.rb +287 -0
  11. data/lib/plaid/apis/base_api.rb +65 -0
  12. data/lib/plaid/apis/categories_api.rb +34 -0
  13. data/lib/plaid/apis/deposit_switch_api.rb +106 -0
  14. data/lib/plaid/apis/employers_api.rb +40 -0
  15. data/lib/plaid/apis/identity_api.rb +38 -0
  16. data/lib/plaid/apis/income_api.rb +220 -0
  17. data/lib/plaid/apis/institutions_api.rb +92 -0
  18. data/lib/plaid/apis/investments_api.rb +61 -0
  19. data/lib/plaid/apis/item_api.rb +267 -0
  20. data/lib/plaid/apis/liabilities_api.rb +47 -0
  21. data/lib/plaid/apis/link_api.rb +62 -0
  22. data/lib/plaid/apis/payment_initiation_api.rb +236 -0
  23. data/lib/plaid/apis/processor_api.rb +189 -0
  24. data/lib/plaid/apis/sandbox_api.rb +302 -0
  25. data/lib/plaid/apis/signal_api.rb +97 -0
  26. data/lib/plaid/apis/transactions_api.rb +111 -0
  27. data/lib/plaid/apis/transfer_api.rb +214 -0
  28. data/lib/plaid/apis/webhook_verification_key_api.rb +36 -0
  29. data/lib/plaid/client.rb +208 -0
  30. data/lib/plaid/configuration.rb +198 -0
  31. data/lib/plaid/exceptions/api_exception.rb +21 -0
  32. data/lib/plaid/exceptions/error_error_exception.rb +110 -0
  33. data/lib/plaid/http/api_response.rb +19 -0
  34. data/lib/plaid/http/auth/plaid_client_id.rb +52 -0
  35. data/lib/plaid/http/auth/plaid_secret.rb +52 -0
  36. data/lib/plaid/http/auth/plaid_version.rb +52 -0
  37. data/lib/plaid/http/http_call_back.rb +10 -0
  38. data/lib/plaid/http/http_method_enum.rb +10 -0
  39. data/lib/plaid/http/http_request.rb +10 -0
  40. data/lib/plaid/http/http_response.rb +10 -0
  41. data/lib/plaid/http/proxy_settings.rb +22 -0
  42. data/lib/plaid/logging/configuration/api_logging_configuration.rb +186 -0
  43. data/lib/plaid/logging/sdk_logger.rb +17 -0
  44. data/lib/plaid/models/account.rb +185 -0
  45. data/lib/plaid/models/account_access.rb +89 -0
  46. data/lib/plaid/models/account_assets.rb +258 -0
  47. data/lib/plaid/models/account_balance.rb +189 -0
  48. data/lib/plaid/models/account_filter.rb +107 -0
  49. data/lib/plaid/models/account_filters_response.rb +106 -0
  50. data/lib/plaid/models/account_identity.rb +206 -0
  51. data/lib/plaid/models/account_selection_cardinality.rb +44 -0
  52. data/lib/plaid/models/account_subtype.rb +319 -0
  53. data/lib/plaid/models/account_subtype1.rb +36 -0
  54. data/lib/plaid/models/account_type.rb +57 -0
  55. data/lib/plaid/models/accounts_balance_get_request.rb +108 -0
  56. data/lib/plaid/models/accounts_balance_get_request_options.rb +111 -0
  57. data/lib/plaid/models/accounts_get_request.rb +107 -0
  58. data/lib/plaid/models/accounts_get_request_options.rb +76 -0
  59. data/lib/plaid/models/accounts_get_response.rb +104 -0
  60. data/lib/plaid/models/ach_class.rb +99 -0
  61. data/lib/plaid/models/address.rb +84 -0
  62. data/lib/plaid/models/address1.rb +116 -0
  63. data/lib/plaid/models/address2.rb +155 -0
  64. data/lib/plaid/models/address_data.rb +114 -0
  65. data/lib/plaid/models/address_data1.rb +120 -0
  66. data/lib/plaid/models/address_data_nullable.rb +114 -0
  67. data/lib/plaid/models/address_nullable.rb +84 -0
  68. data/lib/plaid/models/application.rb +131 -0
  69. data/lib/plaid/models/application_get_request.rb +98 -0
  70. data/lib/plaid/models/application_get_response.rb +84 -0
  71. data/lib/plaid/models/apr.rb +109 -0
  72. data/lib/plaid/models/apr_type.rb +44 -0
  73. data/lib/plaid/models/asset_report.rb +145 -0
  74. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +111 -0
  75. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +87 -0
  76. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +101 -0
  77. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +101 -0
  78. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +85 -0
  79. data/lib/plaid/models/asset_report_create_request.rb +125 -0
  80. data/lib/plaid/models/asset_report_create_request_options.rb +104 -0
  81. data/lib/plaid/models/asset_report_create_response.rb +100 -0
  82. data/lib/plaid/models/asset_report_filter_request.rb +111 -0
  83. data/lib/plaid/models/asset_report_filter_response.rb +100 -0
  84. data/lib/plaid/models/asset_report_get_request.rb +112 -0
  85. data/lib/plaid/models/asset_report_get_response.rb +103 -0
  86. data/lib/plaid/models/asset_report_item.rb +130 -0
  87. data/lib/plaid/models/asset_report_pdf_get_request.rb +101 -0
  88. data/lib/plaid/models/asset_report_refresh_request.rb +127 -0
  89. data/lib/plaid/models/asset_report_refresh_request_options.rb +104 -0
  90. data/lib/plaid/models/asset_report_refresh_response.rb +100 -0
  91. data/lib/plaid/models/asset_report_remove_request.rb +101 -0
  92. data/lib/plaid/models/asset_report_remove_response.rb +85 -0
  93. data/lib/plaid/models/asset_report_transaction.rb +296 -0
  94. data/lib/plaid/models/asset_report_user.rb +153 -0
  95. data/lib/plaid/models/assets_error_webhook.rb +107 -0
  96. data/lib/plaid/models/assets_product_ready_webhook.rb +97 -0
  97. data/lib/plaid/models/auth_get_numbers.rb +141 -0
  98. data/lib/plaid/models/auth_get_request.rb +107 -0
  99. data/lib/plaid/models/auth_get_request_options.rb +78 -0
  100. data/lib/plaid/models/auth_get_response.rb +116 -0
  101. data/lib/plaid/models/auth_metadata.rb +77 -0
  102. data/lib/plaid/models/auth_supported_methods.rb +94 -0
  103. data/lib/plaid/models/automatically_verified_webhook.rb +102 -0
  104. data/lib/plaid/models/available_balance.rb +39 -0
  105. data/lib/plaid/models/bank_initiated_return_risk.rb +96 -0
  106. data/lib/plaid/models/bank_transfer.rb +263 -0
  107. data/lib/plaid/models/bank_transfer_balance.rb +85 -0
  108. data/lib/plaid/models/bank_transfer_balance_get_request.rb +103 -0
  109. data/lib/plaid/models/bank_transfer_balance_get_response.rb +97 -0
  110. data/lib/plaid/models/bank_transfer_cancel_request.rb +99 -0
  111. data/lib/plaid/models/bank_transfer_cancel_response.rb +76 -0
  112. data/lib/plaid/models/bank_transfer_create_request.rb +254 -0
  113. data/lib/plaid/models/bank_transfer_create_response.rb +84 -0
  114. data/lib/plaid/models/bank_transfer_direction.rb +37 -0
  115. data/lib/plaid/models/bank_transfer_direction1.rb +37 -0
  116. data/lib/plaid/models/bank_transfer_event.rb +211 -0
  117. data/lib/plaid/models/bank_transfer_event_list_request.rb +229 -0
  118. data/lib/plaid/models/bank_transfer_event_list_response.rb +94 -0
  119. data/lib/plaid/models/bank_transfer_event_sync_request.rb +110 -0
  120. data/lib/plaid/models/bank_transfer_event_sync_response.rb +94 -0
  121. data/lib/plaid/models/bank_transfer_event_type.rb +63 -0
  122. data/lib/plaid/models/bank_transfer_failure.rb +93 -0
  123. data/lib/plaid/models/bank_transfer_get_request.rb +99 -0
  124. data/lib/plaid/models/bank_transfer_get_response.rb +84 -0
  125. data/lib/plaid/models/bank_transfer_list_request.rb +175 -0
  126. data/lib/plaid/models/bank_transfer_list_response.rb +93 -0
  127. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +117 -0
  128. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +93 -0
  129. data/lib/plaid/models/bank_transfer_network.rb +41 -0
  130. data/lib/plaid/models/bank_transfer_receiver_details.rb +79 -0
  131. data/lib/plaid/models/bank_transfer_status.rb +48 -0
  132. data/lib/plaid/models/bank_transfer_sweep.rb +129 -0
  133. data/lib/plaid/models/bank_transfer_sweep_account.rb +84 -0
  134. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +113 -0
  135. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +85 -0
  136. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +164 -0
  137. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +94 -0
  138. data/lib/plaid/models/bank_transfer_type.rb +38 -0
  139. data/lib/plaid/models/bank_transfer_type1.rb +38 -0
  140. data/lib/plaid/models/bank_transfer_user.rb +100 -0
  141. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +83 -0
  142. data/lib/plaid/models/base_model.rb +110 -0
  143. data/lib/plaid/models/branch.rb +49 -0
  144. data/lib/plaid/models/buy_type.rb +165 -0
  145. data/lib/plaid/models/canonical_description.rb +92 -0
  146. data/lib/plaid/models/cash_type.rb +305 -0
  147. data/lib/plaid/models/categories_get_response.rb +93 -0
  148. data/lib/plaid/models/category.rb +93 -0
  149. data/lib/plaid/models/cause.rb +88 -0
  150. data/lib/plaid/models/code.rb +56 -0
  151. data/lib/plaid/models/confidence.rb +45 -0
  152. data/lib/plaid/models/connected_application.rb +177 -0
  153. data/lib/plaid/models/country_code.rb +56 -0
  154. data/lib/plaid/models/country_code1.rb +36 -0
  155. data/lib/plaid/models/credit.rb +80 -0
  156. data/lib/plaid/models/credit_account.rb +83 -0
  157. data/lib/plaid/models/credit_card_liability.rb +164 -0
  158. data/lib/plaid/models/credit_filter.rb +78 -0
  159. data/lib/plaid/models/currency.rb +37 -0
  160. data/lib/plaid/models/customer_initiated_return_risk.rb +100 -0
  161. data/lib/plaid/models/decision.rb +48 -0
  162. data/lib/plaid/models/deductions.rb +103 -0
  163. data/lib/plaid/models/default_update_webhook.rb +119 -0
  164. data/lib/plaid/models/deposit_switch_address_data.rb +110 -0
  165. data/lib/plaid/models/deposit_switch_alt_create_request.rb +132 -0
  166. data/lib/plaid/models/deposit_switch_alt_create_response.rb +87 -0
  167. data/lib/plaid/models/deposit_switch_create_request.rb +133 -0
  168. data/lib/plaid/models/deposit_switch_create_request_options.rb +99 -0
  169. data/lib/plaid/models/deposit_switch_create_response.rb +87 -0
  170. data/lib/plaid/models/deposit_switch_get_request.rb +99 -0
  171. data/lib/plaid/models/deposit_switch_get_response.rb +277 -0
  172. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +116 -0
  173. data/lib/plaid/models/deposit_switch_target_account.rb +106 -0
  174. data/lib/plaid/models/deposit_switch_target_user.rb +121 -0
  175. data/lib/plaid/models/deposit_switch_token_create_request.rb +100 -0
  176. data/lib/plaid/models/deposit_switch_token_create_response.rb +101 -0
  177. data/lib/plaid/models/depository.rb +80 -0
  178. data/lib/plaid/models/depository_account.rb +147 -0
  179. data/lib/plaid/models/depository_filter.rb +78 -0
  180. data/lib/plaid/models/distribution_details.rb +126 -0
  181. data/lib/plaid/models/document_metadata.rb +96 -0
  182. data/lib/plaid/models/earnings.rb +104 -0
  183. data/lib/plaid/models/earnings_total.rb +133 -0
  184. data/lib/plaid/models/email.rb +91 -0
  185. data/lib/plaid/models/employee.rb +107 -0
  186. data/lib/plaid/models/employee2.rb +85 -0
  187. data/lib/plaid/models/employee_income_summary_field_string.rb +90 -0
  188. data/lib/plaid/models/employer.rb +102 -0
  189. data/lib/plaid/models/employer2.rb +86 -0
  190. data/lib/plaid/models/employer3.rb +74 -0
  191. data/lib/plaid/models/employer_income_summary_field_string.rb +90 -0
  192. data/lib/plaid/models/employers_search_request.rb +107 -0
  193. data/lib/plaid/models/employers_search_response.rb +93 -0
  194. data/lib/plaid/models/employment_details.rb +88 -0
  195. data/lib/plaid/models/error.rb +172 -0
  196. data/lib/plaid/models/error_type.rb +76 -0
  197. data/lib/plaid/models/external_payment_refund_details.rb +92 -0
  198. data/lib/plaid/models/external_payment_schedule_base.rb +147 -0
  199. data/lib/plaid/models/external_payment_schedule_get.rb +140 -0
  200. data/lib/plaid/models/external_payment_schedule_request.rb +144 -0
  201. data/lib/plaid/models/fee_type.rb +287 -0
  202. data/lib/plaid/models/health_incident.rb +130 -0
  203. data/lib/plaid/models/historical_balance.rb +118 -0
  204. data/lib/plaid/models/historical_update_webhook.rb +124 -0
  205. data/lib/plaid/models/holding.rb +169 -0
  206. data/lib/plaid/models/holdings_default_update_webhook.rb +129 -0
  207. data/lib/plaid/models/holdings_override.rb +133 -0
  208. data/lib/plaid/models/identity_get_request.rb +107 -0
  209. data/lib/plaid/models/identity_get_request_options.rb +78 -0
  210. data/lib/plaid/models/identity_get_response.rb +101 -0
  211. data/lib/plaid/models/incident_update.rb +106 -0
  212. data/lib/plaid/models/income_breakdown.rb +106 -0
  213. data/lib/plaid/models/income_override.rb +84 -0
  214. data/lib/plaid/models/income_summary.rb +137 -0
  215. data/lib/plaid/models/income_summary_field_number.rb +90 -0
  216. data/lib/plaid/models/income_summary_field_string.rb +90 -0
  217. data/lib/plaid/models/income_verification_create_request.rb +99 -0
  218. data/lib/plaid/models/income_verification_create_response.rb +88 -0
  219. data/lib/plaid/models/income_verification_documents_download_request.rb +114 -0
  220. data/lib/plaid/models/income_verification_documents_download_response.rb +73 -0
  221. data/lib/plaid/models/income_verification_paystub_get_request.rb +114 -0
  222. data/lib/plaid/models/income_verification_paystub_get_response.rb +100 -0
  223. data/lib/plaid/models/income_verification_paystubs_get_request.rb +114 -0
  224. data/lib/plaid/models/income_verification_paystubs_get_response.rb +133 -0
  225. data/lib/plaid/models/income_verification_precheck_employer.rb +88 -0
  226. data/lib/plaid/models/income_verification_precheck_military_info.rb +90 -0
  227. data/lib/plaid/models/income_verification_precheck_request.rb +141 -0
  228. data/lib/plaid/models/income_verification_precheck_response.rb +101 -0
  229. data/lib/plaid/models/income_verification_precheck_user.rb +110 -0
  230. data/lib/plaid/models/income_verification_refresh_request.rb +114 -0
  231. data/lib/plaid/models/income_verification_refresh_response.rb +90 -0
  232. data/lib/plaid/models/income_verification_status_webhook.rb +117 -0
  233. data/lib/plaid/models/income_verification_summary_get_request.rb +114 -0
  234. data/lib/plaid/models/income_verification_summary_get_response.rb +109 -0
  235. data/lib/plaid/models/income_verification_taxforms_get_request.rb +114 -0
  236. data/lib/plaid/models/income_verification_taxforms_get_response.rb +129 -0
  237. data/lib/plaid/models/income_verification_webhook_status.rb +72 -0
  238. data/lib/plaid/models/inflow_model.rb +136 -0
  239. data/lib/plaid/models/initial_update_webhook.rb +121 -0
  240. data/lib/plaid/models/institution.rb +213 -0
  241. data/lib/plaid/models/institution_status.rb +211 -0
  242. data/lib/plaid/models/institutions_get_by_id_request.rb +120 -0
  243. data/lib/plaid/models/institutions_get_by_id_request_options.rb +131 -0
  244. data/lib/plaid/models/institutions_get_by_id_response.rb +85 -0
  245. data/lib/plaid/models/institutions_get_request.rb +125 -0
  246. data/lib/plaid/models/institutions_get_request_options.rb +154 -0
  247. data/lib/plaid/models/institutions_get_response.rb +102 -0
  248. data/lib/plaid/models/institutions_search_account_filter.rb +105 -0
  249. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +77 -0
  250. data/lib/plaid/models/institutions_search_request.rb +132 -0
  251. data/lib/plaid/models/institutions_search_request_options.rb +136 -0
  252. data/lib/plaid/models/institutions_search_response.rb +94 -0
  253. data/lib/plaid/models/investment.rb +80 -0
  254. data/lib/plaid/models/investment_account_subtype.rb +501 -0
  255. data/lib/plaid/models/investment_filter.rb +78 -0
  256. data/lib/plaid/models/investment_holdings_get_request_options.rb +78 -0
  257. data/lib/plaid/models/investment_transaction.rb +231 -0
  258. data/lib/plaid/models/investments_holdings_get_request.rb +109 -0
  259. data/lib/plaid/models/investments_holdings_get_response.rb +142 -0
  260. data/lib/plaid/models/investments_transactions_get_request.rb +130 -0
  261. data/lib/plaid/models/investments_transactions_get_request_options.rb +96 -0
  262. data/lib/plaid/models/investments_transactions_get_response.rb +156 -0
  263. data/lib/plaid/models/investments_transactions_override.rb +151 -0
  264. data/lib/plaid/models/item.rb +173 -0
  265. data/lib/plaid/models/item_access_token_invalidate_request.rb +98 -0
  266. data/lib/plaid/models/item_access_token_invalidate_response.rb +86 -0
  267. data/lib/plaid/models/item_application_list_request.rb +100 -0
  268. data/lib/plaid/models/item_application_list_response.rb +95 -0
  269. data/lib/plaid/models/item_application_list_user_auth.rb +93 -0
  270. data/lib/plaid/models/item_application_scopes_update_request.rb +143 -0
  271. data/lib/plaid/models/item_application_scopes_update_response.rb +77 -0
  272. data/lib/plaid/models/item_error_webhook.rb +105 -0
  273. data/lib/plaid/models/item_get_request.rb +97 -0
  274. data/lib/plaid/models/item_get_response.rb +95 -0
  275. data/lib/plaid/models/item_import_request.rb +117 -0
  276. data/lib/plaid/models/item_import_request_options.rb +76 -0
  277. data/lib/plaid/models/item_import_request_user_auth.rb +83 -0
  278. data/lib/plaid/models/item_import_response.rb +84 -0
  279. data/lib/plaid/models/item_product_ready_webhook.rb +106 -0
  280. data/lib/plaid/models/item_public_token_create_request.rb +98 -0
  281. data/lib/plaid/models/item_public_token_create_response.rb +107 -0
  282. data/lib/plaid/models/item_public_token_exchange_request.rb +99 -0
  283. data/lib/plaid/models/item_public_token_exchange_response.rb +95 -0
  284. data/lib/plaid/models/item_remove_request.rb +97 -0
  285. data/lib/plaid/models/item_remove_response.rb +76 -0
  286. data/lib/plaid/models/item_status.rb +99 -0
  287. data/lib/plaid/models/item_status_investments.rb +114 -0
  288. data/lib/plaid/models/item_status_last_webhook.rb +98 -0
  289. data/lib/plaid/models/item_status_nullable.rb +99 -0
  290. data/lib/plaid/models/item_status_transactions.rb +114 -0
  291. data/lib/plaid/models/item_webhook_update_request.rb +107 -0
  292. data/lib/plaid/models/item_webhook_update_response.rb +85 -0
  293. data/lib/plaid/models/jwk_public_key.rb +150 -0
  294. data/lib/plaid/models/jwt_header.rb +72 -0
  295. data/lib/plaid/models/liabilities_default_update_webhook.rb +135 -0
  296. data/lib/plaid/models/liabilities_get_request.rb +108 -0
  297. data/lib/plaid/models/liabilities_get_request_options.rb +79 -0
  298. data/lib/plaid/models/liabilities_get_response.rb +111 -0
  299. data/lib/plaid/models/liabilities_object.rb +121 -0
  300. data/lib/plaid/models/liability_override.rb +326 -0
  301. data/lib/plaid/models/link_token_account_filters.rb +120 -0
  302. data/lib/plaid/models/link_token_create_request.rb +378 -0
  303. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +118 -0
  304. data/lib/plaid/models/link_token_create_request_auth.rb +77 -0
  305. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +77 -0
  306. data/lib/plaid/models/link_token_create_request_income_verification.rb +94 -0
  307. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +77 -0
  308. data/lib/plaid/models/link_token_create_request_update.rb +82 -0
  309. data/lib/plaid/models/link_token_create_request_user.rb +201 -0
  310. data/lib/plaid/models/link_token_create_response.rb +107 -0
  311. data/lib/plaid/models/link_token_eu_config.rb +75 -0
  312. data/lib/plaid/models/link_token_get_metadata_response.rb +140 -0
  313. data/lib/plaid/models/link_token_get_request.rb +97 -0
  314. data/lib/plaid/models/link_token_get_response.rb +132 -0
  315. data/lib/plaid/models/loan.rb +80 -0
  316. data/lib/plaid/models/loan_account.rb +173 -0
  317. data/lib/plaid/models/loan_filter.rb +78 -0
  318. data/lib/plaid/models/meta.rb +90 -0
  319. data/lib/plaid/models/mfa.rb +124 -0
  320. data/lib/plaid/models/mortgage_interest_rate.rb +86 -0
  321. data/lib/plaid/models/mortgage_liability.rb +295 -0
  322. data/lib/plaid/models/mortgage_property_address.rb +114 -0
  323. data/lib/plaid/models/net_pay.rb +96 -0
  324. data/lib/plaid/models/new_accounts_available_webhook.rb +115 -0
  325. data/lib/plaid/models/new_payment_status.rb +73 -0
  326. data/lib/plaid/models/numbers.rb +157 -0
  327. data/lib/plaid/models/numbers_ach.rb +113 -0
  328. data/lib/plaid/models/numbers_ach_nullable.rb +112 -0
  329. data/lib/plaid/models/numbers_bacs.rb +92 -0
  330. data/lib/plaid/models/numbers_bacs_nullable.rb +91 -0
  331. data/lib/plaid/models/numbers_eft.rb +101 -0
  332. data/lib/plaid/models/numbers_eft_nullable.rb +100 -0
  333. data/lib/plaid/models/numbers_international.rb +91 -0
  334. data/lib/plaid/models/numbers_international_nullable.rb +90 -0
  335. data/lib/plaid/models/old_payment_status.rb +73 -0
  336. data/lib/plaid/models/override_account_type.rb +56 -0
  337. data/lib/plaid/models/override_accounts.rb +230 -0
  338. data/lib/plaid/models/owner.rb +141 -0
  339. data/lib/plaid/models/owner_override.rb +131 -0
  340. data/lib/plaid/models/pay.rb +88 -0
  341. data/lib/plaid/models/pay_frequency.rb +90 -0
  342. data/lib/plaid/models/pay_frequency1.rb +45 -0
  343. data/lib/plaid/models/pay_period_details.rb +119 -0
  344. data/lib/plaid/models/payment_amount.rb +84 -0
  345. data/lib/plaid/models/payment_channel.rb +43 -0
  346. data/lib/plaid/models/payment_initiation_address.rb +103 -0
  347. data/lib/plaid/models/payment_initiation_metadata.rb +117 -0
  348. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +85 -0
  349. data/lib/plaid/models/payment_initiation_payment.rb +242 -0
  350. data/lib/plaid/models/payment_initiation_payment_create_request.rb +140 -0
  351. data/lib/plaid/models/payment_initiation_payment_create_response.rb +95 -0
  352. data/lib/plaid/models/payment_initiation_payment_get_request.rb +98 -0
  353. data/lib/plaid/models/payment_initiation_payment_get_response.rb +254 -0
  354. data/lib/plaid/models/payment_initiation_payment_list_request.rb +124 -0
  355. data/lib/plaid/models/payment_initiation_payment_list_response.rb +115 -0
  356. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +98 -0
  357. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +99 -0
  358. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +98 -0
  359. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +107 -0
  360. data/lib/plaid/models/payment_initiation_recipient.rb +131 -0
  361. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +133 -0
  362. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +85 -0
  363. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +98 -0
  364. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +144 -0
  365. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +89 -0
  366. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +94 -0
  367. data/lib/plaid/models/payment_initiation_refund.rb +116 -0
  368. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +108 -0
  369. data/lib/plaid/models/payment_meta.rb +156 -0
  370. data/lib/plaid/models/payment_options.rb +122 -0
  371. data/lib/plaid/models/payment_schedule_interval.rb +36 -0
  372. data/lib/plaid/models/payment_status_update_webhook.rb +234 -0
  373. data/lib/plaid/models/paystub.rb +186 -0
  374. data/lib/plaid/models/paystub_deduction.rb +95 -0
  375. data/lib/plaid/models/paystub_details.rb +127 -0
  376. data/lib/plaid/models/paystub_override.rb +116 -0
  377. data/lib/plaid/models/paystub_ytd_details.rb +90 -0
  378. data/lib/plaid/models/pending_expiration_webhook.rb +112 -0
  379. data/lib/plaid/models/personal_finance_category.rb +87 -0
  380. data/lib/plaid/models/personal_finance_category2.rb +83 -0
  381. data/lib/plaid/models/phone_number.rb +91 -0
  382. data/lib/plaid/models/processor.rb +116 -0
  383. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +108 -0
  384. data/lib/plaid/models/processor_auth_get_request.rb +100 -0
  385. data/lib/plaid/models/processor_auth_get_response.rb +98 -0
  386. data/lib/plaid/models/processor_balance_get_request.rb +111 -0
  387. data/lib/plaid/models/processor_balance_get_request_options.rb +98 -0
  388. data/lib/plaid/models/processor_balance_get_response.rb +85 -0
  389. data/lib/plaid/models/processor_bank_transfer_create_request.rb +248 -0
  390. data/lib/plaid/models/processor_bank_transfer_create_response.rb +84 -0
  391. data/lib/plaid/models/processor_identity_get_request.rb +101 -0
  392. data/lib/plaid/models/processor_identity_get_response.rb +85 -0
  393. data/lib/plaid/models/processor_number.rb +111 -0
  394. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +108 -0
  395. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +87 -0
  396. data/lib/plaid/models/processor_token_create_request.rb +116 -0
  397. data/lib/plaid/models/processor_token_create_response.rb +87 -0
  398. data/lib/plaid/models/product_access.rb +112 -0
  399. data/lib/plaid/models/product_data_type.rb +40 -0
  400. data/lib/plaid/models/product_status.rb +106 -0
  401. data/lib/plaid/models/products.rb +86 -0
  402. data/lib/plaid/models/projected_income_summary_field_number.rb +90 -0
  403. data/lib/plaid/models/pslf_status.rb +103 -0
  404. data/lib/plaid/models/recaptcha_required_error.rb +143 -0
  405. data/lib/plaid/models/recipient_bacs.rb +87 -0
  406. data/lib/plaid/models/recipient_bacs_nullable.rb +85 -0
  407. data/lib/plaid/models/refresh_interval.rb +42 -0
  408. data/lib/plaid/models/requested_scopes.rb +124 -0
  409. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +97 -0
  410. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +76 -0
  411. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +128 -0
  412. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +76 -0
  413. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +125 -0
  414. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +77 -0
  415. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +109 -0
  416. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +85 -0
  417. data/lib/plaid/models/sandbox_item_reset_login_request.rb +98 -0
  418. data/lib/plaid/models/sandbox_item_reset_login_response.rb +85 -0
  419. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +118 -0
  420. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +77 -0
  421. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +83 -0
  422. data/lib/plaid/models/sandbox_processor_token_create_request.rb +111 -0
  423. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +92 -0
  424. data/lib/plaid/models/sandbox_processor_token_create_response.rb +85 -0
  425. data/lib/plaid/models/sandbox_public_token_create_request.rb +123 -0
  426. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +116 -0
  427. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +88 -0
  428. data/lib/plaid/models/sandbox_public_token_create_response.rb +86 -0
  429. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +124 -0
  430. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +76 -0
  431. data/lib/plaid/models/scopes.rb +109 -0
  432. data/lib/plaid/models/scopes_context.rb +38 -0
  433. data/lib/plaid/models/scopes_nullable.rb +109 -0
  434. data/lib/plaid/models/security.rb +252 -0
  435. data/lib/plaid/models/security_override.rb +131 -0
  436. data/lib/plaid/models/sell_type.rb +105 -0
  437. data/lib/plaid/models/sender_bacs_nullable.rb +85 -0
  438. data/lib/plaid/models/servicer_address_data.rb +117 -0
  439. data/lib/plaid/models/signal_decision_report_request.rb +110 -0
  440. data/lib/plaid/models/signal_decision_report_response.rb +77 -0
  441. data/lib/plaid/models/signal_evaluate_core_attributes.rb +662 -0
  442. data/lib/plaid/models/signal_evaluate_device.rb +90 -0
  443. data/lib/plaid/models/signal_evaluate_request.rb +163 -0
  444. data/lib/plaid/models/signal_evaluate_response.rb +99 -0
  445. data/lib/plaid/models/signal_evaluate_scores.rb +108 -0
  446. data/lib/plaid/models/signal_person_name.rb +122 -0
  447. data/lib/plaid/models/signal_return_report_request.rb +110 -0
  448. data/lib/plaid/models/signal_return_report_response.rb +77 -0
  449. data/lib/plaid/models/signal_user.rb +111 -0
  450. data/lib/plaid/models/standalone_account_type.rb +115 -0
  451. data/lib/plaid/models/standalone_currency_code_list.rb +86 -0
  452. data/lib/plaid/models/standalone_investment_transaction_type.rb +119 -0
  453. data/lib/plaid/models/state.rb +49 -0
  454. data/lib/plaid/models/status.rb +41 -0
  455. data/lib/plaid/models/status1.rb +48 -0
  456. data/lib/plaid/models/status2.rb +49 -0
  457. data/lib/plaid/models/status3.rb +73 -0
  458. data/lib/plaid/models/status_breakdown.rb +111 -0
  459. data/lib/plaid/models/student_loan.rb +367 -0
  460. data/lib/plaid/models/student_loan_repayment_model.rb +95 -0
  461. data/lib/plaid/models/student_loan_status.rb +86 -0
  462. data/lib/plaid/models/student_repayment_plan.rb +84 -0
  463. data/lib/plaid/models/subtype.rb +209 -0
  464. data/lib/plaid/models/switch_method.rb +45 -0
  465. data/lib/plaid/models/taxform.rb +84 -0
  466. data/lib/plaid/models/taxpayer_id.rb +89 -0
  467. data/lib/plaid/models/total.rb +110 -0
  468. data/lib/plaid/models/transaction.rb +426 -0
  469. data/lib/plaid/models/transaction_base.rb +285 -0
  470. data/lib/plaid/models/transaction_code.rb +87 -0
  471. data/lib/plaid/models/transaction_data.rb +112 -0
  472. data/lib/plaid/models/transaction_location.rb +143 -0
  473. data/lib/plaid/models/transaction_override.rb +119 -0
  474. data/lib/plaid/models/transaction_type.rb +48 -0
  475. data/lib/plaid/models/transactions_get_request.rb +128 -0
  476. data/lib/plaid/models/transactions_get_request_options.rb +139 -0
  477. data/lib/plaid/models/transactions_get_response.rb +138 -0
  478. data/lib/plaid/models/transactions_refresh_request.rb +98 -0
  479. data/lib/plaid/models/transactions_refresh_response.rb +77 -0
  480. data/lib/plaid/models/transactions_removed_webhook.rb +119 -0
  481. data/lib/plaid/models/transactions_update_investments_webhook.rb +134 -0
  482. data/lib/plaid/models/transfer.rb +229 -0
  483. data/lib/plaid/models/transfer_authorization.rb +126 -0
  484. data/lib/plaid/models/transfer_authorization_create_request.rb +197 -0
  485. data/lib/plaid/models/transfer_authorization_create_response.rb +86 -0
  486. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +96 -0
  487. data/lib/plaid/models/transfer_authorization_device.rb +86 -0
  488. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +150 -0
  489. data/lib/plaid/models/transfer_cancel_request.rb +97 -0
  490. data/lib/plaid/models/transfer_cancel_response.rb +76 -0
  491. data/lib/plaid/models/transfer_create_request.rb +241 -0
  492. data/lib/plaid/models/transfer_create_response.rb +84 -0
  493. data/lib/plaid/models/transfer_event.rb +171 -0
  494. data/lib/plaid/models/transfer_event_list_request.rb +214 -0
  495. data/lib/plaid/models/transfer_event_list_response.rb +93 -0
  496. data/lib/plaid/models/transfer_event_sync_request.rb +110 -0
  497. data/lib/plaid/models/transfer_event_sync_response.rb +93 -0
  498. data/lib/plaid/models/transfer_event_type.rb +52 -0
  499. data/lib/plaid/models/transfer_failure.rb +93 -0
  500. data/lib/plaid/models/transfer_get_request.rb +97 -0
  501. data/lib/plaid/models/transfer_get_response.rb +84 -0
  502. data/lib/plaid/models/transfer_list_request.rb +163 -0
  503. data/lib/plaid/models/transfer_list_response.rb +93 -0
  504. data/lib/plaid/models/transfer_network.rb +37 -0
  505. data/lib/plaid/models/transfer_status.rb +48 -0
  506. data/lib/plaid/models/transfer_type.rb +146 -0
  507. data/lib/plaid/models/transfer_type1.rb +38 -0
  508. data/lib/plaid/models/transfer_type2.rb +38 -0
  509. data/lib/plaid/models/transfer_user_address_in_request.rb +114 -0
  510. data/lib/plaid/models/transfer_user_address_in_response.rb +114 -0
  511. data/lib/plaid/models/transfer_user_in_request.rb +105 -0
  512. data/lib/plaid/models/transfer_user_in_response.rb +104 -0
  513. data/lib/plaid/models/type.rb +52 -0
  514. data/lib/plaid/models/type1.rb +40 -0
  515. data/lib/plaid/models/type2.rb +100 -0
  516. data/lib/plaid/models/type3.rb +68 -0
  517. data/lib/plaid/models/type4.rb +60 -0
  518. data/lib/plaid/models/type5.rb +41 -0
  519. data/lib/plaid/models/unofficial_currency_code_list.rb +252 -0
  520. data/lib/plaid/models/update_type.rb +39 -0
  521. data/lib/plaid/models/user_custom_password.rb +166 -0
  522. data/lib/plaid/models/user_permission_revoked_webhook.rb +110 -0
  523. data/lib/plaid/models/value.rb +52 -0
  524. data/lib/plaid/models/verification_expired_webhook.rb +102 -0
  525. data/lib/plaid/models/verification_refresh_status.rb +29 -0
  526. data/lib/plaid/models/verification_status.rb +53 -0
  527. data/lib/plaid/models/verification_status1.rb +36 -0
  528. data/lib/plaid/models/verification_status3.rb +48 -0
  529. data/lib/plaid/models/verification_status4.rb +65 -0
  530. data/lib/plaid/models/w2.rb +346 -0
  531. data/lib/plaid/models/w2_box12.rb +88 -0
  532. data/lib/plaid/models/w2_state_and_local_wages.rb +152 -0
  533. data/lib/plaid/models/warning.rb +98 -0
  534. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +118 -0
  535. data/lib/plaid/models/webhook_verification_key_get_request.rb +98 -0
  536. data/lib/plaid/models/webhook_verification_key_get_response.rb +86 -0
  537. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +90 -0
  538. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +90 -0
  539. data/lib/plaid/utilities/date_time_helper.rb +11 -0
  540. data/lib/plaid/utilities/file_wrapper.rb +28 -0
  541. data/lib/plaid.rb +565 -0
  542. metadata +625 -0
@@ -0,0 +1,121 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # An object containing liability accounts
8
+ class LiabilitiesObject < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The credit accounts returned.
13
+ # @return [Array[CreditCardLiability]]
14
+ attr_accessor :credit
15
+
16
+ # The mortgage accounts returned.
17
+ # @return [Array[MortgageLiability]]
18
+ attr_accessor :mortgage
19
+
20
+ # The student loan accounts returned.
21
+ # @return [Array[StudentLoan]]
22
+ attr_accessor :student
23
+
24
+ # A mapping from model property names to API property names.
25
+ def self.names
26
+ @_hash = {} if @_hash.nil?
27
+ @_hash['credit'] = 'credit'
28
+ @_hash['mortgage'] = 'mortgage'
29
+ @_hash['student'] = 'student'
30
+ @_hash
31
+ end
32
+
33
+ # An array for optional fields
34
+ def self.optionals
35
+ []
36
+ end
37
+
38
+ # An array for nullable fields
39
+ def self.nullables
40
+ %w[
41
+ credit
42
+ mortgage
43
+ student
44
+ ]
45
+ end
46
+
47
+ def initialize(credit:, mortgage:, student:, additional_properties: nil)
48
+ # Add additional model properties to the instance
49
+ additional_properties = {} if additional_properties.nil?
50
+
51
+ @credit = credit
52
+ @mortgage = mortgage
53
+ @student = student
54
+ @additional_properties = additional_properties
55
+ end
56
+
57
+ # Creates an instance of the object from a hash.
58
+ def self.from_hash(hash)
59
+ return nil unless hash
60
+
61
+ # Extract variables from the hash.
62
+ # Parameter is an array, so we need to iterate through it
63
+ credit = nil
64
+ unless hash['credit'].nil?
65
+ credit = []
66
+ hash['credit'].each do |structure|
67
+ credit << (CreditCardLiability.from_hash(structure) if structure)
68
+ end
69
+ end
70
+
71
+ credit = nil unless hash.key?('credit')
72
+ # Parameter is an array, so we need to iterate through it
73
+ mortgage = nil
74
+ unless hash['mortgage'].nil?
75
+ mortgage = []
76
+ hash['mortgage'].each do |structure|
77
+ mortgage << (MortgageLiability.from_hash(structure) if structure)
78
+ end
79
+ end
80
+
81
+ mortgage = nil unless hash.key?('mortgage')
82
+ # Parameter is an array, so we need to iterate through it
83
+ student = nil
84
+ unless hash['student'].nil?
85
+ student = []
86
+ hash['student'].each do |structure|
87
+ student << (StudentLoan.from_hash(structure) if structure)
88
+ end
89
+ end
90
+
91
+ student = nil unless hash.key?('student')
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
+ LiabilitiesObject.new(credit: credit,
102
+ mortgage: mortgage,
103
+ student: student,
104
+ additional_properties: additional_properties)
105
+ end
106
+
107
+ # Provides a human-readable string representation of the object.
108
+ def to_s
109
+ class_name = self.class.name.split('::').last
110
+ "<#{class_name} credit: #{@credit}, mortgage: #{@mortgage}, student: #{@student},"\
111
+ " additional_properties: #{@additional_properties}>"
112
+ end
113
+
114
+ # Provides a debugging-friendly string with detailed object information.
115
+ def inspect
116
+ class_name = self.class.name.split('::').last
117
+ "<#{class_name} credit: #{@credit.inspect}, mortgage: #{@mortgage.inspect}, student:"\
118
+ " #{@student.inspect}, additional_properties: #{@additional_properties}>"
119
+ end
120
+ end
121
+ end
@@ -0,0 +1,326 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Used to configure Sandbox test data for the Liabilities product
8
+ class LiabilityOverride < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The type of the liability object, either `credit` or `student`. Mortgages
13
+ # are not currently supported in the custom Sandbox.
14
+ # @return [String]
15
+ attr_accessor :type
16
+
17
+ # The purchase APR percentage value. For simplicity, this is the only
18
+ # interest rate used to calculate interest charges. Can only be set if
19
+ # `type` is `credit`.
20
+ # @return [Float]
21
+ attr_accessor :purchase_apr
22
+
23
+ # The cash APR percentage value. Can only be set if `type` is `credit`.
24
+ # @return [Float]
25
+ attr_accessor :cash_apr
26
+
27
+ # The balance transfer APR percentage value. Can only be set if `type` is
28
+ # `credit`. Can only be set if `type` is `credit`.
29
+ # @return [Float]
30
+ attr_accessor :balance_transfer_apr
31
+
32
+ # The special APR percentage value. Can only be set if `type` is `credit`.
33
+ # @return [Float]
34
+ attr_accessor :special_apr
35
+
36
+ # Override the `last_payment_amount` field. Can only be set if `type` is
37
+ # `credit`.
38
+ # @return [Float]
39
+ attr_accessor :last_payment_amount
40
+
41
+ # Override the `minimum_payment_amount` field. Can only be set if `type` is
42
+ # `credit` or `student`.
43
+ # @return [Float]
44
+ attr_accessor :minimum_payment_amount
45
+
46
+ # Override the `is_overdue` field
47
+ # @return [TrueClass | FalseClass]
48
+ attr_accessor :is_overdue
49
+
50
+ # The date on which the loan was initially lent, in [ISO
51
+ # 8601](https://wikipedia.org/wiki/ISO_8601) (YYYY-MM-DD) format. Can only
52
+ # be set if `type` is `student`.
53
+ # @return [Date]
54
+ attr_accessor :origination_date
55
+
56
+ # The original loan principal. Can only be set if `type` is `student`.
57
+ # @return [Float]
58
+ attr_accessor :principal
59
+
60
+ # The interest rate on the loan as a percentage. Can only be set if `type`
61
+ # is `student`.
62
+ # @return [Float]
63
+ attr_accessor :nominal_apr
64
+
65
+ # If set, interest capitalization begins at the given number of months after
66
+ # loan origination. By default interest is never capitalized. Can only be
67
+ # set if `type` is `student`.
68
+ # @return [Float]
69
+ attr_accessor :interest_capitalization_grace_period_months
70
+
71
+ # Student loan repayment information used to configure Sandbox test data for
72
+ # the Liabilities product
73
+ # @return [StudentLoanRepaymentModel]
74
+ attr_accessor :repayment_model
75
+
76
+ # Override the `expected_payoff_date` field. Can only be set if `type` is
77
+ # `student`.
78
+ # @return [Date]
79
+ attr_accessor :expected_payoff_date
80
+
81
+ # Override the `guarantor` field. Can only be set if `type` is `student`.
82
+ # @return [String]
83
+ attr_accessor :guarantor
84
+
85
+ # Override the `is_federal` field. Can only be set if `type` is `student`.
86
+ # @return [TrueClass | FalseClass]
87
+ attr_accessor :is_federal
88
+
89
+ # Override the `loan_name` field. Can only be set if `type` is `student`.
90
+ # @return [String]
91
+ attr_accessor :loan_name
92
+
93
+ # An object representing the status of the student loan
94
+ # @return [StudentLoanStatus]
95
+ attr_accessor :loan_status
96
+
97
+ # Override the `payment_reference_number` field. Can only be set if `type`
98
+ # is `student`.
99
+ # @return [String]
100
+ attr_accessor :payment_reference_number
101
+
102
+ # Information about the student's eligibility in the Public Service Loan
103
+ # Forgiveness program. This is only returned if the institution is Fedloan
104
+ # (`ins_116527`).
105
+ # @return [PslfStatus]
106
+ attr_accessor :pslf_status
107
+
108
+ # Override the `repayment_plan.description` field. Can only be set if `type`
109
+ # is `student`.
110
+ # @return [String]
111
+ attr_accessor :repayment_plan_description
112
+
113
+ # Override the `repayment_plan.type` field. Can only be set if `type` is
114
+ # `student`. Possible values are: `"extended graduated"`, `"extended
115
+ # standard"`, `"graduated"`, `"income-contingent repayment"`, `"income-based
116
+ # repayment"`, `"interest only"`, `"other"`, `"pay as you earn"`, `"revised
117
+ # pay as you earn"`, or `"standard"`.
118
+ # @return [String]
119
+ attr_accessor :repayment_plan_type
120
+
121
+ # Override the `sequence_number` field. Can only be set if `type` is
122
+ # `student`.
123
+ # @return [String]
124
+ attr_accessor :sequence_number
125
+
126
+ # A physical mailing address.
127
+ # @return [Address]
128
+ attr_accessor :servicer_address
129
+
130
+ # A mapping from model property names to API property names.
131
+ def self.names
132
+ @_hash = {} if @_hash.nil?
133
+ @_hash['type'] = 'type'
134
+ @_hash['purchase_apr'] = 'purchase_apr'
135
+ @_hash['cash_apr'] = 'cash_apr'
136
+ @_hash['balance_transfer_apr'] = 'balance_transfer_apr'
137
+ @_hash['special_apr'] = 'special_apr'
138
+ @_hash['last_payment_amount'] = 'last_payment_amount'
139
+ @_hash['minimum_payment_amount'] = 'minimum_payment_amount'
140
+ @_hash['is_overdue'] = 'is_overdue'
141
+ @_hash['origination_date'] = 'origination_date'
142
+ @_hash['principal'] = 'principal'
143
+ @_hash['nominal_apr'] = 'nominal_apr'
144
+ @_hash['interest_capitalization_grace_period_months'] =
145
+ 'interest_capitalization_grace_period_months'
146
+ @_hash['repayment_model'] = 'repayment_model'
147
+ @_hash['expected_payoff_date'] = 'expected_payoff_date'
148
+ @_hash['guarantor'] = 'guarantor'
149
+ @_hash['is_federal'] = 'is_federal'
150
+ @_hash['loan_name'] = 'loan_name'
151
+ @_hash['loan_status'] = 'loan_status'
152
+ @_hash['payment_reference_number'] = 'payment_reference_number'
153
+ @_hash['pslf_status'] = 'pslf_status'
154
+ @_hash['repayment_plan_description'] = 'repayment_plan_description'
155
+ @_hash['repayment_plan_type'] = 'repayment_plan_type'
156
+ @_hash['sequence_number'] = 'sequence_number'
157
+ @_hash['servicer_address'] = 'servicer_address'
158
+ @_hash
159
+ end
160
+
161
+ # An array for optional fields
162
+ def self.optionals
163
+ []
164
+ end
165
+
166
+ # An array for nullable fields
167
+ def self.nullables
168
+ []
169
+ end
170
+
171
+ def initialize(type:, purchase_apr:, cash_apr:, balance_transfer_apr:,
172
+ special_apr:, last_payment_amount:, minimum_payment_amount:,
173
+ is_overdue:, origination_date:, principal:, nominal_apr:,
174
+ interest_capitalization_grace_period_months:,
175
+ repayment_model:, expected_payoff_date:, guarantor:,
176
+ is_federal:, loan_name:, loan_status:,
177
+ payment_reference_number:, pslf_status:,
178
+ repayment_plan_description:, repayment_plan_type:,
179
+ sequence_number:, servicer_address:,
180
+ additional_properties: nil)
181
+ # Add additional model properties to the instance
182
+ additional_properties = {} if additional_properties.nil?
183
+
184
+ @type = type
185
+ @purchase_apr = purchase_apr
186
+ @cash_apr = cash_apr
187
+ @balance_transfer_apr = balance_transfer_apr
188
+ @special_apr = special_apr
189
+ @last_payment_amount = last_payment_amount
190
+ @minimum_payment_amount = minimum_payment_amount
191
+ @is_overdue = is_overdue
192
+ @origination_date = origination_date
193
+ @principal = principal
194
+ @nominal_apr = nominal_apr
195
+ @interest_capitalization_grace_period_months = interest_capitalization_grace_period_months
196
+ @repayment_model = repayment_model
197
+ @expected_payoff_date = expected_payoff_date
198
+ @guarantor = guarantor
199
+ @is_federal = is_federal
200
+ @loan_name = loan_name
201
+ @loan_status = loan_status
202
+ @payment_reference_number = payment_reference_number
203
+ @pslf_status = pslf_status
204
+ @repayment_plan_description = repayment_plan_description
205
+ @repayment_plan_type = repayment_plan_type
206
+ @sequence_number = sequence_number
207
+ @servicer_address = servicer_address
208
+ @additional_properties = additional_properties
209
+ end
210
+
211
+ # Creates an instance of the object from a hash.
212
+ def self.from_hash(hash)
213
+ return nil unless hash
214
+
215
+ # Extract variables from the hash.
216
+ type = hash.key?('type') ? hash['type'] : nil
217
+ purchase_apr = hash.key?('purchase_apr') ? hash['purchase_apr'] : nil
218
+ cash_apr = hash.key?('cash_apr') ? hash['cash_apr'] : nil
219
+ balance_transfer_apr =
220
+ hash.key?('balance_transfer_apr') ? hash['balance_transfer_apr'] : nil
221
+ special_apr = hash.key?('special_apr') ? hash['special_apr'] : nil
222
+ last_payment_amount =
223
+ hash.key?('last_payment_amount') ? hash['last_payment_amount'] : nil
224
+ minimum_payment_amount =
225
+ hash.key?('minimum_payment_amount') ? hash['minimum_payment_amount'] : nil
226
+ is_overdue = hash.key?('is_overdue') ? hash['is_overdue'] : nil
227
+ origination_date =
228
+ hash.key?('origination_date') ? hash['origination_date'] : nil
229
+ principal = hash.key?('principal') ? hash['principal'] : nil
230
+ nominal_apr = hash.key?('nominal_apr') ? hash['nominal_apr'] : nil
231
+ interest_capitalization_grace_period_months =
232
+ hash.key?('interest_capitalization_grace_period_months') ? hash['interest_capitalization_grace_period_months'] : nil
233
+ repayment_model = StudentLoanRepaymentModel.from_hash(hash['repayment_model']) if
234
+ hash['repayment_model']
235
+ expected_payoff_date =
236
+ hash.key?('expected_payoff_date') ? hash['expected_payoff_date'] : nil
237
+ guarantor = hash.key?('guarantor') ? hash['guarantor'] : nil
238
+ is_federal = hash.key?('is_federal') ? hash['is_federal'] : nil
239
+ loan_name = hash.key?('loan_name') ? hash['loan_name'] : nil
240
+ loan_status = StudentLoanStatus.from_hash(hash['loan_status']) if hash['loan_status']
241
+ payment_reference_number =
242
+ hash.key?('payment_reference_number') ? hash['payment_reference_number'] : nil
243
+ pslf_status = PslfStatus.from_hash(hash['pslf_status']) if hash['pslf_status']
244
+ repayment_plan_description =
245
+ hash.key?('repayment_plan_description') ? hash['repayment_plan_description'] : nil
246
+ repayment_plan_type =
247
+ hash.key?('repayment_plan_type') ? hash['repayment_plan_type'] : nil
248
+ sequence_number =
249
+ hash.key?('sequence_number') ? hash['sequence_number'] : nil
250
+ servicer_address = Address.from_hash(hash['servicer_address']) if hash['servicer_address']
251
+
252
+ # Create a new hash for additional properties, removing known properties.
253
+ new_hash = hash.reject { |k, _| names.value?(k) }
254
+
255
+ additional_properties = APIHelper.get_additional_properties(
256
+ new_hash, proc { |value| value }
257
+ )
258
+
259
+ # Create object from extracted values.
260
+ LiabilityOverride.new(type: type,
261
+ purchase_apr: purchase_apr,
262
+ cash_apr: cash_apr,
263
+ balance_transfer_apr: balance_transfer_apr,
264
+ special_apr: special_apr,
265
+ last_payment_amount: last_payment_amount,
266
+ minimum_payment_amount: minimum_payment_amount,
267
+ is_overdue: is_overdue,
268
+ origination_date: origination_date,
269
+ principal: principal,
270
+ nominal_apr: nominal_apr,
271
+ interest_capitalization_grace_period_months: interest_capitalization_grace_period_months,
272
+ repayment_model: repayment_model,
273
+ expected_payoff_date: expected_payoff_date,
274
+ guarantor: guarantor,
275
+ is_federal: is_federal,
276
+ loan_name: loan_name,
277
+ loan_status: loan_status,
278
+ payment_reference_number: payment_reference_number,
279
+ pslf_status: pslf_status,
280
+ repayment_plan_description: repayment_plan_description,
281
+ repayment_plan_type: repayment_plan_type,
282
+ sequence_number: sequence_number,
283
+ servicer_address: servicer_address,
284
+ additional_properties: additional_properties)
285
+ end
286
+
287
+ # Provides a human-readable string representation of the object.
288
+ def to_s
289
+ class_name = self.class.name.split('::').last
290
+ "<#{class_name} type: #{@type}, purchase_apr: #{@purchase_apr}, cash_apr: #{@cash_apr},"\
291
+ " balance_transfer_apr: #{@balance_transfer_apr}, special_apr: #{@special_apr},"\
292
+ " last_payment_amount: #{@last_payment_amount}, minimum_payment_amount:"\
293
+ " #{@minimum_payment_amount}, is_overdue: #{@is_overdue}, origination_date:"\
294
+ " #{@origination_date}, principal: #{@principal}, nominal_apr: #{@nominal_apr},"\
295
+ ' interest_capitalization_grace_period_months:'\
296
+ " #{@interest_capitalization_grace_period_months}, repayment_model: #{@repayment_model},"\
297
+ " expected_payoff_date: #{@expected_payoff_date}, guarantor: #{@guarantor}, is_federal:"\
298
+ " #{@is_federal}, loan_name: #{@loan_name}, loan_status: #{@loan_status},"\
299
+ " payment_reference_number: #{@payment_reference_number}, pslf_status: #{@pslf_status},"\
300
+ " repayment_plan_description: #{@repayment_plan_description}, repayment_plan_type:"\
301
+ " #{@repayment_plan_type}, sequence_number: #{@sequence_number}, servicer_address:"\
302
+ " #{@servicer_address}, additional_properties: #{@additional_properties}>"
303
+ end
304
+
305
+ # Provides a debugging-friendly string with detailed object information.
306
+ def inspect
307
+ class_name = self.class.name.split('::').last
308
+ "<#{class_name} type: #{@type.inspect}, purchase_apr: #{@purchase_apr.inspect}, cash_apr:"\
309
+ " #{@cash_apr.inspect}, balance_transfer_apr: #{@balance_transfer_apr.inspect}, special_apr:"\
310
+ " #{@special_apr.inspect}, last_payment_amount: #{@last_payment_amount.inspect},"\
311
+ " minimum_payment_amount: #{@minimum_payment_amount.inspect}, is_overdue:"\
312
+ " #{@is_overdue.inspect}, origination_date: #{@origination_date.inspect}, principal:"\
313
+ " #{@principal.inspect}, nominal_apr: #{@nominal_apr.inspect},"\
314
+ ' interest_capitalization_grace_period_months:'\
315
+ " #{@interest_capitalization_grace_period_months.inspect}, repayment_model:"\
316
+ " #{@repayment_model.inspect}, expected_payoff_date: #{@expected_payoff_date.inspect},"\
317
+ " guarantor: #{@guarantor.inspect}, is_federal: #{@is_federal.inspect}, loan_name:"\
318
+ " #{@loan_name.inspect}, loan_status: #{@loan_status.inspect}, payment_reference_number:"\
319
+ " #{@payment_reference_number.inspect}, pslf_status: #{@pslf_status.inspect},"\
320
+ " repayment_plan_description: #{@repayment_plan_description.inspect}, repayment_plan_type:"\
321
+ " #{@repayment_plan_type.inspect}, sequence_number: #{@sequence_number.inspect},"\
322
+ " servicer_address: #{@servicer_address.inspect}, additional_properties:"\
323
+ " #{@additional_properties}>"
324
+ end
325
+ end
326
+ end
@@ -0,0 +1,120 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # By default, Link will provide limited account filtering: it will only
8
+ # display Institutions that are compatible with all products supplied in the
9
+ # `products` parameter of `/link/token/create`, and, if `auth` is specified in
10
+ # the `products` array, will also filter out accounts other than `checking`
11
+ # and `savings` accounts on the Account Select pane. You can further limit the
12
+ # accounts shown in Link by using `account_filters` to specify the account
13
+ # subtypes to be shown in Link. Only the specified subtypes will be shown.
14
+ # This filtering applies to both the Account Select view (if enabled) and the
15
+ # Institution Select view. Institutions that do not support the selected
16
+ # subtypes will be omitted from Link. To indicate that all subtypes should be
17
+ # shown, use the value `"all"`. If the `account_filters` filter is used, any
18
+ # account type for which a filter is not specified will be entirely omitted
19
+ # from Link. For a full list of valid types and subtypes, see the [Account
20
+ # schema](https://plaid.com/docs/api/accounts#accounts-schema). For
21
+ # institutions using OAuth, the filter will not affect the list of accounts
22
+ # shown by the bank in the OAuth window.
23
+ class LinkTokenAccountFilters < BaseModel
24
+ SKIP = Object.new
25
+ private_constant :SKIP
26
+
27
+ # A filter to apply to `depository`-type accounts
28
+ # @return [DepositoryFilter]
29
+ attr_accessor :depository
30
+
31
+ # A filter to apply to `credit`-type accounts
32
+ # @return [CreditFilter]
33
+ attr_accessor :credit
34
+
35
+ # A filter to apply to `loan`-type accounts
36
+ # @return [LoanFilter]
37
+ attr_accessor :loan
38
+
39
+ # A filter to apply to `investment`-type accounts
40
+ # @return [InvestmentFilter]
41
+ attr_accessor :investment
42
+
43
+ # A mapping from model property names to API property names.
44
+ def self.names
45
+ @_hash = {} if @_hash.nil?
46
+ @_hash['depository'] = 'depository'
47
+ @_hash['credit'] = 'credit'
48
+ @_hash['loan'] = 'loan'
49
+ @_hash['investment'] = 'investment'
50
+ @_hash
51
+ end
52
+
53
+ # An array for optional fields
54
+ def self.optionals
55
+ %w[
56
+ depository
57
+ credit
58
+ loan
59
+ investment
60
+ ]
61
+ end
62
+
63
+ # An array for nullable fields
64
+ def self.nullables
65
+ []
66
+ end
67
+
68
+ def initialize(depository: SKIP, credit: SKIP, loan: SKIP, investment: SKIP,
69
+ additional_properties: nil)
70
+ # Add additional model properties to the instance
71
+ additional_properties = {} if additional_properties.nil?
72
+
73
+ @depository = depository unless depository == SKIP
74
+ @credit = credit unless credit == SKIP
75
+ @loan = loan unless loan == SKIP
76
+ @investment = investment unless investment == 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
+ depository = DepositoryFilter.from_hash(hash['depository']) if hash['depository']
86
+ credit = CreditFilter.from_hash(hash['credit']) if hash['credit']
87
+ loan = LoanFilter.from_hash(hash['loan']) if hash['loan']
88
+ investment = InvestmentFilter.from_hash(hash['investment']) if hash['investment']
89
+
90
+ # Create a new hash for additional properties, removing known properties.
91
+ new_hash = hash.reject { |k, _| names.value?(k) }
92
+
93
+ additional_properties = APIHelper.get_additional_properties(
94
+ new_hash, proc { |value| value }
95
+ )
96
+
97
+ # Create object from extracted values.
98
+ LinkTokenAccountFilters.new(depository: depository,
99
+ credit: credit,
100
+ loan: loan,
101
+ investment: investment,
102
+ additional_properties: additional_properties)
103
+ end
104
+
105
+ # Provides a human-readable string representation of the object.
106
+ def to_s
107
+ class_name = self.class.name.split('::').last
108
+ "<#{class_name} depository: #{@depository}, credit: #{@credit}, loan: #{@loan}, investment:"\
109
+ " #{@investment}, additional_properties: #{@additional_properties}>"
110
+ end
111
+
112
+ # Provides a debugging-friendly string with detailed object information.
113
+ def inspect
114
+ class_name = self.class.name.split('::').last
115
+ "<#{class_name} depository: #{@depository.inspect}, credit: #{@credit.inspect}, loan:"\
116
+ " #{@loan.inspect}, investment: #{@investment.inspect}, additional_properties:"\
117
+ " #{@additional_properties}>"
118
+ end
119
+ end
120
+ end