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,73 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # The previous status of the payment. `PAYMENT_STATUS_INPUT_NEEDED`: This is
8
+ # the initial state of all payments. It indicates that the payment is waiting
9
+ # on user input to continue processing. A payment may re-enter this state
10
+ # later on if further input is needed. `PAYMENT_STATUS_PROCESSING`: The
11
+ # payment is currently being processed. The payment will automatically exit
12
+ # this state when processing is complete. `PAYMENT_STATUS_INITIATED`: The
13
+ # payment has been successfully initiated and is considered complete.
14
+ # `PAYMENT_STATUS_COMPLETED`: Indicates that the standing order has been
15
+ # successfully established. This state is only used for standing orders.
16
+ # `PAYMENT_STATUS_INSUFFICIENT_FUNDS`: The payment has failed due to
17
+ # insufficient funds. `PAYMENT_STATUS_FAILED`: The payment has failed to be
18
+ # initiated. This error is retryable once the root cause is resolved.
19
+ # `PAYMENT_STATUS_BLOCKED`: The payment has been blocked. This is a retryable
20
+ # error. `PAYMENT_STATUS_UNKNOWN`: The payment status is unknown.
21
+ class OldPaymentStatus
22
+ OLD_PAYMENT_STATUS = [
23
+ # TODO: Write general description for PAYMENT_STATUS_INPUT_NEEDED
24
+ PAYMENT_STATUS_INPUT_NEEDED = 'PAYMENT_STATUS_INPUT_NEEDED'.freeze,
25
+
26
+ # TODO: Write general description for PAYMENT_STATUS_PROCESSING
27
+ PAYMENT_STATUS_PROCESSING = 'PAYMENT_STATUS_PROCESSING'.freeze,
28
+
29
+ # TODO: Write general description for PAYMENT_STATUS_INITIATED
30
+ PAYMENT_STATUS_INITIATED = 'PAYMENT_STATUS_INITIATED'.freeze,
31
+
32
+ # TODO: Write general description for PAYMENT_STATUS_COMPLETED
33
+ PAYMENT_STATUS_COMPLETED = 'PAYMENT_STATUS_COMPLETED'.freeze,
34
+
35
+ # TODO: Write general description for PAYMENT_STATUS_INSUFFICIENT_FUNDS
36
+ PAYMENT_STATUS_INSUFFICIENT_FUNDS = 'PAYMENT_STATUS_INSUFFICIENT_FUNDS'.freeze,
37
+
38
+ # TODO: Write general description for PAYMENT_STATUS_FAILED
39
+ PAYMENT_STATUS_FAILED = 'PAYMENT_STATUS_FAILED'.freeze,
40
+
41
+ # TODO: Write general description for PAYMENT_STATUS_BLOCKED
42
+ PAYMENT_STATUS_BLOCKED = 'PAYMENT_STATUS_BLOCKED'.freeze,
43
+
44
+ # TODO: Write general description for PAYMENT_STATUS_UNKNOWN
45
+ PAYMENT_STATUS_UNKNOWN = 'PAYMENT_STATUS_UNKNOWN'.freeze
46
+ ].freeze
47
+
48
+ def self.validate(value)
49
+ return false if value.nil?
50
+
51
+ true
52
+ end
53
+
54
+ def self.from_value(value, default_value = PAYMENT_STATUS_INPUT_NEEDED)
55
+ return default_value if value.nil?
56
+
57
+ str = value.to_s.strip
58
+
59
+ case str.downcase
60
+ when 'payment_status_input_needed' then PAYMENT_STATUS_INPUT_NEEDED
61
+ when 'payment_status_processing' then PAYMENT_STATUS_PROCESSING
62
+ when 'payment_status_initiated' then PAYMENT_STATUS_INITIATED
63
+ when 'payment_status_completed' then PAYMENT_STATUS_COMPLETED
64
+ when 'payment_status_insufficient_funds' then PAYMENT_STATUS_INSUFFICIENT_FUNDS
65
+ when 'payment_status_failed' then PAYMENT_STATUS_FAILED
66
+ when 'payment_status_blocked' then PAYMENT_STATUS_BLOCKED
67
+ when 'payment_status_unknown' then PAYMENT_STATUS_UNKNOWN
68
+ else
69
+ default_value
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,56 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # `investment:` Investment account `credit:` Credit card `depository:`
8
+ # Depository account `loan:` Loan account `payroll:` Payroll acccount `other:`
9
+ # Non-specified account type See the [Account type
10
+ # schema](https://plaid.com/docs/api/accounts#account-type-schema) for a full
11
+ # listing of account types and corresponding subtypes.
12
+ class OverrideAccountType
13
+ OVERRIDE_ACCOUNT_TYPE = [
14
+ # TODO: Write general description for INVESTMENT
15
+ INVESTMENT = 'investment'.freeze,
16
+
17
+ # TODO: Write general description for CREDIT
18
+ CREDIT = 'credit'.freeze,
19
+
20
+ # TODO: Write general description for DEPOSITORY
21
+ DEPOSITORY = 'depository'.freeze,
22
+
23
+ # TODO: Write general description for LOAN
24
+ LOAN = 'loan'.freeze,
25
+
26
+ # TODO: Write general description for PAYROLL
27
+ PAYROLL = 'payroll'.freeze,
28
+
29
+ # TODO: Write general description for OTHER
30
+ OTHER = 'other'.freeze
31
+ ].freeze
32
+
33
+ def self.validate(value)
34
+ return false if value.nil?
35
+
36
+ true
37
+ end
38
+
39
+ def self.from_value(value, default_value = INVESTMENT)
40
+ return default_value if value.nil?
41
+
42
+ str = value.to_s.strip
43
+
44
+ case str.downcase
45
+ when 'investment' then INVESTMENT
46
+ when 'credit' then CREDIT
47
+ when 'depository' then DEPOSITORY
48
+ when 'loan' then LOAN
49
+ when 'payroll' then PAYROLL
50
+ when 'other' then OTHER
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,230 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Data to use to set values of test accounts. Some values cannot be specified
8
+ # in the schema and will instead will be calculated from other test data in
9
+ # order to achieve more consistent, realistic test data.
10
+ class OverrideAccounts < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # `investment:` Investment account
15
+ # `credit:` Credit card
16
+ # `depository:` Depository account
17
+ # `loan:` Loan account
18
+ # `payroll:` Payroll acccount
19
+ # `other:` Non-specified account type
20
+ # See the [Account type
21
+ # schema](https://plaid.com/docs/api/accounts#account-type-schema) for a
22
+ # full listing of account types and corresponding subtypes.
23
+ # @return [OverrideAccountType]
24
+ attr_accessor :type
25
+
26
+ # See the [Account type
27
+ # schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a
28
+ # full listing of account types and corresponding subtypes.
29
+ # @return [AccountSubtype]
30
+ attr_accessor :subtype
31
+
32
+ # If provided, the account will start with this amount as the current
33
+ # balance.
34
+ # @return [Float]
35
+ attr_accessor :starting_balance
36
+
37
+ # If provided, the account will always have this amount as its available
38
+ # balance, regardless of current balance or changes in transactions over
39
+ # time.
40
+ # @return [Float]
41
+ attr_accessor :force_available_balance
42
+
43
+ # ISO-4217 currency code. If provided, the account will be denominated in
44
+ # the given currency. Transactions will also be in this currency by default.
45
+ # @return [String]
46
+ attr_accessor :currency
47
+
48
+ # Allows specifying the metadata of the test account
49
+ # @return [Meta]
50
+ attr_accessor :meta
51
+
52
+ # Account and bank identifier number data used to configure the test
53
+ # account. All values are optional.
54
+ # @return [Numbers]
55
+ attr_accessor :numbers
56
+
57
+ # Specify the list of transactions on the account.
58
+ # @return [Array[TransactionOverride]]
59
+ attr_accessor :transactions
60
+
61
+ # Specify the holdings on the account.
62
+ # @return [HoldingsOverride]
63
+ attr_accessor :holdings
64
+
65
+ # Specify the list of investments transactions on the account.
66
+ # @return [InvestmentsTransactionsOverride]
67
+ attr_accessor :investment_transactions
68
+
69
+ # Data about the owner or owners of an account. Any fields not specified
70
+ # will be filled in with default Sandbox information.
71
+ # @return [OwnerOverride]
72
+ attr_accessor :identity
73
+
74
+ # Used to configure Sandbox test data for the Liabilities product
75
+ # @return [LiabilityOverride]
76
+ attr_accessor :liability
77
+
78
+ # The `inflow_model` allows you to model a test account that receives
79
+ # regular income or make regular payments on a loan. Any transactions
80
+ # generated by the `inflow_model` will appear in addition to randomly
81
+ # generated test data or transactions specified by `override_accounts`.
82
+ # @return [InflowModel]
83
+ attr_accessor :inflow_model
84
+
85
+ # Specify payroll data on the account.
86
+ # @return [IncomeOverride]
87
+ attr_accessor :income
88
+
89
+ # A mapping from model property names to API property names.
90
+ def self.names
91
+ @_hash = {} if @_hash.nil?
92
+ @_hash['type'] = 'type'
93
+ @_hash['subtype'] = 'subtype'
94
+ @_hash['starting_balance'] = 'starting_balance'
95
+ @_hash['force_available_balance'] = 'force_available_balance'
96
+ @_hash['currency'] = 'currency'
97
+ @_hash['meta'] = 'meta'
98
+ @_hash['numbers'] = 'numbers'
99
+ @_hash['transactions'] = 'transactions'
100
+ @_hash['holdings'] = 'holdings'
101
+ @_hash['investment_transactions'] = 'investment_transactions'
102
+ @_hash['identity'] = 'identity'
103
+ @_hash['liability'] = 'liability'
104
+ @_hash['inflow_model'] = 'inflow_model'
105
+ @_hash['income'] = 'income'
106
+ @_hash
107
+ end
108
+
109
+ # An array for optional fields
110
+ def self.optionals
111
+ %w[
112
+ holdings
113
+ investment_transactions
114
+ income
115
+ ]
116
+ end
117
+
118
+ # An array for nullable fields
119
+ def self.nullables
120
+ []
121
+ end
122
+
123
+ def initialize(type:, subtype:, starting_balance:, force_available_balance:,
124
+ currency:, meta:, numbers:, transactions:, identity:,
125
+ liability:, inflow_model:, holdings: SKIP,
126
+ investment_transactions: SKIP, income: SKIP,
127
+ additional_properties: nil)
128
+ # Add additional model properties to the instance
129
+ additional_properties = {} if additional_properties.nil?
130
+
131
+ @type = type
132
+ @subtype = subtype
133
+ @starting_balance = starting_balance
134
+ @force_available_balance = force_available_balance
135
+ @currency = currency
136
+ @meta = meta
137
+ @numbers = numbers
138
+ @transactions = transactions
139
+ @holdings = holdings unless holdings == SKIP
140
+ @investment_transactions = investment_transactions unless investment_transactions == SKIP
141
+ @identity = identity
142
+ @liability = liability
143
+ @inflow_model = inflow_model
144
+ @income = income unless income == SKIP
145
+ @additional_properties = additional_properties
146
+ end
147
+
148
+ # Creates an instance of the object from a hash.
149
+ def self.from_hash(hash)
150
+ return nil unless hash
151
+
152
+ # Extract variables from the hash.
153
+ type = hash.key?('type') ? hash['type'] : nil
154
+ subtype = hash.key?('subtype') ? hash['subtype'] : nil
155
+ starting_balance =
156
+ hash.key?('starting_balance') ? hash['starting_balance'] : nil
157
+ force_available_balance =
158
+ hash.key?('force_available_balance') ? hash['force_available_balance'] : nil
159
+ currency = hash.key?('currency') ? hash['currency'] : nil
160
+ meta = Meta.from_hash(hash['meta']) if hash['meta']
161
+ numbers = Numbers.from_hash(hash['numbers']) if hash['numbers']
162
+ # Parameter is an array, so we need to iterate through it
163
+ transactions = nil
164
+ unless hash['transactions'].nil?
165
+ transactions = []
166
+ hash['transactions'].each do |structure|
167
+ transactions << (TransactionOverride.from_hash(structure) if structure)
168
+ end
169
+ end
170
+
171
+ transactions = nil unless hash.key?('transactions')
172
+ identity = OwnerOverride.from_hash(hash['identity']) if hash['identity']
173
+ liability = LiabilityOverride.from_hash(hash['liability']) if hash['liability']
174
+ inflow_model = InflowModel.from_hash(hash['inflow_model']) if hash['inflow_model']
175
+ holdings = HoldingsOverride.from_hash(hash['holdings']) if hash['holdings']
176
+ if hash['investment_transactions']
177
+ investment_transactions = InvestmentsTransactionsOverride.from_hash(hash['investment_transactions'])
178
+ end
179
+ income = IncomeOverride.from_hash(hash['income']) if hash['income']
180
+
181
+ # Create a new hash for additional properties, removing known properties.
182
+ new_hash = hash.reject { |k, _| names.value?(k) }
183
+
184
+ additional_properties = APIHelper.get_additional_properties(
185
+ new_hash, proc { |value| value }
186
+ )
187
+
188
+ # Create object from extracted values.
189
+ OverrideAccounts.new(type: type,
190
+ subtype: subtype,
191
+ starting_balance: starting_balance,
192
+ force_available_balance: force_available_balance,
193
+ currency: currency,
194
+ meta: meta,
195
+ numbers: numbers,
196
+ transactions: transactions,
197
+ identity: identity,
198
+ liability: liability,
199
+ inflow_model: inflow_model,
200
+ holdings: holdings,
201
+ investment_transactions: investment_transactions,
202
+ income: income,
203
+ additional_properties: additional_properties)
204
+ end
205
+
206
+ # Provides a human-readable string representation of the object.
207
+ def to_s
208
+ class_name = self.class.name.split('::').last
209
+ "<#{class_name} type: #{@type}, subtype: #{@subtype}, starting_balance:"\
210
+ " #{@starting_balance}, force_available_balance: #{@force_available_balance}, currency:"\
211
+ " #{@currency}, meta: #{@meta}, numbers: #{@numbers}, transactions: #{@transactions},"\
212
+ " holdings: #{@holdings}, investment_transactions: #{@investment_transactions}, identity:"\
213
+ " #{@identity}, liability: #{@liability}, inflow_model: #{@inflow_model}, income:"\
214
+ " #{@income}, additional_properties: #{@additional_properties}>"
215
+ end
216
+
217
+ # Provides a debugging-friendly string with detailed object information.
218
+ def inspect
219
+ class_name = self.class.name.split('::').last
220
+ "<#{class_name} type: #{@type.inspect}, subtype: #{@subtype.inspect}, starting_balance:"\
221
+ " #{@starting_balance.inspect}, force_available_balance:"\
222
+ " #{@force_available_balance.inspect}, currency: #{@currency.inspect}, meta:"\
223
+ " #{@meta.inspect}, numbers: #{@numbers.inspect}, transactions: #{@transactions.inspect},"\
224
+ " holdings: #{@holdings.inspect}, investment_transactions:"\
225
+ " #{@investment_transactions.inspect}, identity: #{@identity.inspect}, liability:"\
226
+ " #{@liability.inspect}, inflow_model: #{@inflow_model.inspect}, income: #{@income.inspect},"\
227
+ " additional_properties: #{@additional_properties}>"
228
+ end
229
+ end
230
+ end
@@ -0,0 +1,141 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Data returned from the financial institution about the owner or owners of an
8
+ # account. Only the `names` array must be non-empty.
9
+ class Owner < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # A list of names associated with the account by the financial institution.
14
+ # These should always be the names of individuals, even for business
15
+ # accounts. If the name of a business is reported, please contact Plaid
16
+ # Support. In the case of a joint account, Plaid will make a best effort to
17
+ # report the names of all account holders.
18
+ # If an Item contains multiple accounts with different owner names, some
19
+ # institutions will report all names associated with the Item in each
20
+ # account's `names` array.
21
+ # @return [Array[String]]
22
+ attr_accessor :names
23
+
24
+ # A list of phone numbers associated with the account by the financial
25
+ # institution. May be an empty array if no relevant information is returned
26
+ # from the financial institution.
27
+ # @return [Array[PhoneNumber]]
28
+ attr_accessor :phone_numbers
29
+
30
+ # A list of email addresses associated with the account by the financial
31
+ # institution. May be an empty array if no relevant information is returned
32
+ # from the financial institution.
33
+ # @return [Array[Email]]
34
+ attr_accessor :emails
35
+
36
+ # Data about the various addresses associated with the account by the
37
+ # financial institution. May be an empty array if no relevant information is
38
+ # returned from the financial institution.
39
+ # @return [Array[Address]]
40
+ attr_accessor :addresses
41
+
42
+ # A mapping from model property names to API property names.
43
+ def self.names
44
+ @_hash = {} if @_hash.nil?
45
+ @_hash['names'] = 'names'
46
+ @_hash['phone_numbers'] = 'phone_numbers'
47
+ @_hash['emails'] = 'emails'
48
+ @_hash['addresses'] = 'addresses'
49
+ @_hash
50
+ end
51
+
52
+ # An array for optional fields
53
+ def self.optionals
54
+ []
55
+ end
56
+
57
+ # An array for nullable fields
58
+ def self.nullables
59
+ []
60
+ end
61
+
62
+ def initialize(names:, phone_numbers:, emails:, addresses:,
63
+ additional_properties: nil)
64
+ # Add additional model properties to the instance
65
+ additional_properties = {} if additional_properties.nil?
66
+
67
+ @names = names
68
+ @phone_numbers = phone_numbers
69
+ @emails = emails
70
+ @addresses = addresses
71
+ @additional_properties = additional_properties
72
+ end
73
+
74
+ # Creates an instance of the object from a hash.
75
+ def self.from_hash(hash)
76
+ return nil unless hash
77
+
78
+ # Extract variables from the hash.
79
+ names = hash.key?('names') ? hash['names'] : nil
80
+ # Parameter is an array, so we need to iterate through it
81
+ phone_numbers = nil
82
+ unless hash['phone_numbers'].nil?
83
+ phone_numbers = []
84
+ hash['phone_numbers'].each do |structure|
85
+ phone_numbers << (PhoneNumber.from_hash(structure) if structure)
86
+ end
87
+ end
88
+
89
+ phone_numbers = nil unless hash.key?('phone_numbers')
90
+ # Parameter is an array, so we need to iterate through it
91
+ emails = nil
92
+ unless hash['emails'].nil?
93
+ emails = []
94
+ hash['emails'].each do |structure|
95
+ emails << (Email.from_hash(structure) if structure)
96
+ end
97
+ end
98
+
99
+ emails = nil unless hash.key?('emails')
100
+ # Parameter is an array, so we need to iterate through it
101
+ addresses = nil
102
+ unless hash['addresses'].nil?
103
+ addresses = []
104
+ hash['addresses'].each do |structure|
105
+ addresses << (Address.from_hash(structure) if structure)
106
+ end
107
+ end
108
+
109
+ addresses = nil unless hash.key?('addresses')
110
+
111
+ # Create a new hash for additional properties, removing known properties.
112
+ new_hash = hash.reject { |k, _| names.value?(k) }
113
+
114
+ additional_properties = APIHelper.get_additional_properties(
115
+ new_hash, proc { |value| value }
116
+ )
117
+
118
+ # Create object from extracted values.
119
+ Owner.new(names: names,
120
+ phone_numbers: phone_numbers,
121
+ emails: emails,
122
+ addresses: addresses,
123
+ additional_properties: additional_properties)
124
+ end
125
+
126
+ # Provides a human-readable string representation of the object.
127
+ def to_s
128
+ class_name = self.class.name.split('::').last
129
+ "<#{class_name} names: #{@names}, phone_numbers: #{@phone_numbers}, emails: #{@emails},"\
130
+ " addresses: #{@addresses}, additional_properties: #{@additional_properties}>"
131
+ end
132
+
133
+ # Provides a debugging-friendly string with detailed object information.
134
+ def inspect
135
+ class_name = self.class.name.split('::').last
136
+ "<#{class_name} names: #{@names.inspect}, phone_numbers: #{@phone_numbers.inspect}, emails:"\
137
+ " #{@emails.inspect}, addresses: #{@addresses.inspect}, additional_properties:"\
138
+ " #{@additional_properties}>"
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,131 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Data about the owner or owners of an account. Any fields not specified will
8
+ # be filled in with default Sandbox information.
9
+ class OwnerOverride < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # A list of names associated with the account by the financial institution.
14
+ # These should always be the names of individuals, even for business
15
+ # accounts. Note that the same name data will be used for all accounts
16
+ # associated with an Item.
17
+ # @return [Array[String]]
18
+ attr_accessor :names
19
+
20
+ # A list of phone numbers associated with the account.
21
+ # @return [Array[PhoneNumber]]
22
+ attr_accessor :phone_numbers
23
+
24
+ # A list of email addresses associated with the account.
25
+ # @return [Array[Email]]
26
+ attr_accessor :emails
27
+
28
+ # Data about the various addresses associated with the account.
29
+ # @return [Array[Address]]
30
+ attr_accessor :addresses
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['names'] = 'names'
36
+ @_hash['phone_numbers'] = 'phone_numbers'
37
+ @_hash['emails'] = 'emails'
38
+ @_hash['addresses'] = 'addresses'
39
+ @_hash
40
+ end
41
+
42
+ # An array for optional fields
43
+ def self.optionals
44
+ []
45
+ end
46
+
47
+ # An array for nullable fields
48
+ def self.nullables
49
+ []
50
+ end
51
+
52
+ def initialize(names:, phone_numbers:, emails:, addresses:,
53
+ additional_properties: nil)
54
+ # Add additional model properties to the instance
55
+ additional_properties = {} if additional_properties.nil?
56
+
57
+ @names = names
58
+ @phone_numbers = phone_numbers
59
+ @emails = emails
60
+ @addresses = addresses
61
+ @additional_properties = additional_properties
62
+ end
63
+
64
+ # Creates an instance of the object from a hash.
65
+ def self.from_hash(hash)
66
+ return nil unless hash
67
+
68
+ # Extract variables from the hash.
69
+ names = hash.key?('names') ? hash['names'] : nil
70
+ # Parameter is an array, so we need to iterate through it
71
+ phone_numbers = nil
72
+ unless hash['phone_numbers'].nil?
73
+ phone_numbers = []
74
+ hash['phone_numbers'].each do |structure|
75
+ phone_numbers << (PhoneNumber.from_hash(structure) if structure)
76
+ end
77
+ end
78
+
79
+ phone_numbers = nil unless hash.key?('phone_numbers')
80
+ # Parameter is an array, so we need to iterate through it
81
+ emails = nil
82
+ unless hash['emails'].nil?
83
+ emails = []
84
+ hash['emails'].each do |structure|
85
+ emails << (Email.from_hash(structure) if structure)
86
+ end
87
+ end
88
+
89
+ emails = nil unless hash.key?('emails')
90
+ # Parameter is an array, so we need to iterate through it
91
+ addresses = nil
92
+ unless hash['addresses'].nil?
93
+ addresses = []
94
+ hash['addresses'].each do |structure|
95
+ addresses << (Address.from_hash(structure) if structure)
96
+ end
97
+ end
98
+
99
+ addresses = nil unless hash.key?('addresses')
100
+
101
+ # Create a new hash for additional properties, removing known properties.
102
+ new_hash = hash.reject { |k, _| names.value?(k) }
103
+
104
+ additional_properties = APIHelper.get_additional_properties(
105
+ new_hash, proc { |value| value }
106
+ )
107
+
108
+ # Create object from extracted values.
109
+ OwnerOverride.new(names: names,
110
+ phone_numbers: phone_numbers,
111
+ emails: emails,
112
+ addresses: addresses,
113
+ additional_properties: additional_properties)
114
+ end
115
+
116
+ # Provides a human-readable string representation of the object.
117
+ def to_s
118
+ class_name = self.class.name.split('::').last
119
+ "<#{class_name} names: #{@names}, phone_numbers: #{@phone_numbers}, emails: #{@emails},"\
120
+ " addresses: #{@addresses}, additional_properties: #{@additional_properties}>"
121
+ end
122
+
123
+ # Provides a debugging-friendly string with detailed object information.
124
+ def inspect
125
+ class_name = self.class.name.split('::').last
126
+ "<#{class_name} names: #{@names.inspect}, phone_numbers: #{@phone_numbers.inspect}, emails:"\
127
+ " #{@emails.inspect}, addresses: #{@addresses.inspect}, additional_properties:"\
128
+ " #{@additional_properties}>"
129
+ end
130
+ end
131
+ end