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,258 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # AccountAssets Model.
8
+ class AccountAssets < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Plaid’s unique identifier for the account. This value will not change
13
+ # unless Plaid can't reconcile the account with the data returned by the
14
+ # financial institution. This may occur, for example, when the name of the
15
+ # account changes. If this happens a new `account_id` will be assigned to
16
+ # the account.
17
+ # The `account_id` can also change if the `access_token` is deleted and the
18
+ # same credentials that were used to generate that `access_token` are used
19
+ # to generate a new `access_token` on a later date. In that case, the new
20
+ # `account_id` will be different from the old `account_id`.
21
+ # If an account with a specific `account_id` disappears instead of changing,
22
+ # the account is likely closed. Closed accounts are not returned by the
23
+ # Plaid API.
24
+ # Like all Plaid identifiers, the `account_id` is case sensitive.
25
+ # @return [String]
26
+ attr_accessor :account_id
27
+
28
+ # A set of fields describing the balance for an account. Balance information
29
+ # may be cached unless the balance object was returned by
30
+ # `/accounts/balance/get`.
31
+ # @return [AccountBalance]
32
+ attr_accessor :balances
33
+
34
+ # The last 2-4 alphanumeric characters of an account's official account
35
+ # number. Note that the mask may be non-unique between an Item's accounts,
36
+ # and it may also not match the mask that the bank displays to the user.
37
+ # @return [String]
38
+ attr_accessor :mask
39
+
40
+ # The name of the account, either assigned by the user or by the financial
41
+ # institution itself
42
+ # @return [String]
43
+ attr_accessor :name
44
+
45
+ # The official name of the account as given by the financial institution
46
+ # @return [String]
47
+ attr_accessor :official_name
48
+
49
+ # `investment:` Investment account
50
+ # `credit:` Credit card
51
+ # `depository:` Depository account
52
+ # `loan:` Loan account
53
+ # `brokerage`: An investment account. Used for `/assets/` endpoints only;
54
+ # other endpoints use `investment`.
55
+ # `other:` Non-specified account type
56
+ # See the [Account type
57
+ # schema](https://plaid.com/docs/api/accounts#account-type-schema) for a
58
+ # full listing of account types and corresponding subtypes.
59
+ # @return [AccountType]
60
+ attr_accessor :type
61
+
62
+ # See the [Account type
63
+ # schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a
64
+ # full listing of account types and corresponding subtypes.
65
+ # @return [AccountSubtype]
66
+ attr_accessor :subtype
67
+
68
+ # The current verification status of an Auth Item initiated through
69
+ # Automated or Manual micro-deposits. Returned for Auth Items only.
70
+ # `pending_automatic_verification`: The Item is pending automatic
71
+ # verification
72
+ # `pending_manual_verification`: The Item is pending manual micro-deposit
73
+ # verification. Items remain in this state until the user successfully
74
+ # verifies the two amounts.
75
+ # `automatically_verified`: The Item has successfully been automatically
76
+ # verified
77
+ # `manually_verified`: The Item has successfully been manually verified
78
+ # `verification_expired`: Plaid was unable to automatically verify the
79
+ # deposit within 7 calendar days and will no longer attempt to validate the
80
+ # Item. Users may retry by submitting their information again through Link.
81
+ # `verification_failed`: The Item failed manual micro-deposit verification
82
+ # because the user exhausted all 3 verification attempts. Users may retry by
83
+ # submitting their information again through Link.
84
+ # @return [VerificationStatus4]
85
+ attr_accessor :verification_status
86
+
87
+ # The duration of transaction history available for this Item, typically
88
+ # defined as the time since the date of the earliest transaction in that
89
+ # account. Only returned by Assets endpoints.
90
+ # @return [Float]
91
+ attr_accessor :days_available
92
+
93
+ # Transaction history associated with the account. Only returned by Assets
94
+ # endpoints. Transaction history returned by endpoints such as
95
+ # `/transactions/get` or `/investments/transactions/get` will be returned in
96
+ # the top-level `transactions` field instead.
97
+ # @return [Array[AssetReportTransaction]]
98
+ attr_accessor :transactions
99
+
100
+ # Data returned by the financial institution about the account owner or
101
+ # owners. Only returned by Identity or Assets endpoints. Multiple owners on
102
+ # a single account will be represented in the same `owner` object, not in
103
+ # multiple owner objects within the array.
104
+ # @return [Array[Owner]]
105
+ attr_accessor :owners
106
+
107
+ # Calculated data about the historical balances on the account. Only
108
+ # returned by Assets endpoints.
109
+ # @return [Array[HistoricalBalance]]
110
+ attr_accessor :historical_balances
111
+
112
+ # A mapping from model property names to API property names.
113
+ def self.names
114
+ @_hash = {} if @_hash.nil?
115
+ @_hash['account_id'] = 'account_id'
116
+ @_hash['balances'] = 'balances'
117
+ @_hash['mask'] = 'mask'
118
+ @_hash['name'] = 'name'
119
+ @_hash['official_name'] = 'official_name'
120
+ @_hash['type'] = 'type'
121
+ @_hash['subtype'] = 'subtype'
122
+ @_hash['verification_status'] = 'verification_status'
123
+ @_hash['days_available'] = 'days_available'
124
+ @_hash['transactions'] = 'transactions'
125
+ @_hash['owners'] = 'owners'
126
+ @_hash['historical_balances'] = 'historical_balances'
127
+ @_hash
128
+ end
129
+
130
+ # An array for optional fields
131
+ def self.optionals
132
+ %w[
133
+ verification_status
134
+ ]
135
+ end
136
+
137
+ # An array for nullable fields
138
+ def self.nullables
139
+ %w[
140
+ mask
141
+ official_name
142
+ ]
143
+ end
144
+
145
+ def initialize(account_id:, balances:, mask:, name:, official_name:, type:,
146
+ subtype:, days_available:, transactions:, owners:,
147
+ historical_balances:, verification_status: SKIP,
148
+ additional_properties: nil)
149
+ # Add additional model properties to the instance
150
+ additional_properties = {} if additional_properties.nil?
151
+
152
+ @account_id = account_id
153
+ @balances = balances
154
+ @mask = mask
155
+ @name = name
156
+ @official_name = official_name
157
+ @type = type
158
+ @subtype = subtype
159
+ @verification_status = verification_status unless verification_status == SKIP
160
+ @days_available = days_available
161
+ @transactions = transactions
162
+ @owners = owners
163
+ @historical_balances = historical_balances
164
+ @additional_properties = additional_properties
165
+ end
166
+
167
+ # Creates an instance of the object from a hash.
168
+ def self.from_hash(hash)
169
+ return nil unless hash
170
+
171
+ # Extract variables from the hash.
172
+ account_id = hash.key?('account_id') ? hash['account_id'] : nil
173
+ balances = AccountBalance.from_hash(hash['balances']) if hash['balances']
174
+ mask = hash.key?('mask') ? hash['mask'] : nil
175
+ name = hash.key?('name') ? hash['name'] : nil
176
+ official_name = hash.key?('official_name') ? hash['official_name'] : nil
177
+ type = hash.key?('type') ? hash['type'] : nil
178
+ subtype = hash.key?('subtype') ? hash['subtype'] : nil
179
+ days_available =
180
+ hash.key?('days_available') ? hash['days_available'] : nil
181
+ # Parameter is an array, so we need to iterate through it
182
+ transactions = nil
183
+ unless hash['transactions'].nil?
184
+ transactions = []
185
+ hash['transactions'].each do |structure|
186
+ transactions << (AssetReportTransaction.from_hash(structure) if structure)
187
+ end
188
+ end
189
+
190
+ transactions = nil unless hash.key?('transactions')
191
+ # Parameter is an array, so we need to iterate through it
192
+ owners = nil
193
+ unless hash['owners'].nil?
194
+ owners = []
195
+ hash['owners'].each do |structure|
196
+ owners << (Owner.from_hash(structure) if structure)
197
+ end
198
+ end
199
+
200
+ owners = nil unless hash.key?('owners')
201
+ # Parameter is an array, so we need to iterate through it
202
+ historical_balances = nil
203
+ unless hash['historical_balances'].nil?
204
+ historical_balances = []
205
+ hash['historical_balances'].each do |structure|
206
+ historical_balances << (HistoricalBalance.from_hash(structure) if structure)
207
+ end
208
+ end
209
+
210
+ historical_balances = nil unless hash.key?('historical_balances')
211
+ verification_status =
212
+ hash.key?('verification_status') ? hash['verification_status'] : SKIP
213
+
214
+ # Create a new hash for additional properties, removing known properties.
215
+ new_hash = hash.reject { |k, _| names.value?(k) }
216
+
217
+ additional_properties = APIHelper.get_additional_properties(
218
+ new_hash, proc { |value| value }
219
+ )
220
+
221
+ # Create object from extracted values.
222
+ AccountAssets.new(account_id: account_id,
223
+ balances: balances,
224
+ mask: mask,
225
+ name: name,
226
+ official_name: official_name,
227
+ type: type,
228
+ subtype: subtype,
229
+ days_available: days_available,
230
+ transactions: transactions,
231
+ owners: owners,
232
+ historical_balances: historical_balances,
233
+ verification_status: verification_status,
234
+ additional_properties: additional_properties)
235
+ end
236
+
237
+ # Provides a human-readable string representation of the object.
238
+ def to_s
239
+ class_name = self.class.name.split('::').last
240
+ "<#{class_name} account_id: #{@account_id}, balances: #{@balances}, mask: #{@mask}, name:"\
241
+ " #{@name}, official_name: #{@official_name}, type: #{@type}, subtype: #{@subtype},"\
242
+ " verification_status: #{@verification_status}, days_available: #{@days_available},"\
243
+ " transactions: #{@transactions}, owners: #{@owners}, historical_balances:"\
244
+ " #{@historical_balances}, additional_properties: #{@additional_properties}>"
245
+ end
246
+
247
+ # Provides a debugging-friendly string with detailed object information.
248
+ def inspect
249
+ class_name = self.class.name.split('::').last
250
+ "<#{class_name} account_id: #{@account_id.inspect}, balances: #{@balances.inspect}, mask:"\
251
+ " #{@mask.inspect}, name: #{@name.inspect}, official_name: #{@official_name.inspect}, type:"\
252
+ " #{@type.inspect}, subtype: #{@subtype.inspect}, verification_status:"\
253
+ " #{@verification_status.inspect}, days_available: #{@days_available.inspect}, transactions:"\
254
+ " #{@transactions.inspect}, owners: #{@owners.inspect}, historical_balances:"\
255
+ " #{@historical_balances.inspect}, additional_properties: #{@additional_properties}>"
256
+ end
257
+ end
258
+ end
@@ -0,0 +1,189 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module Plaid
8
+ # A set of fields describing the balance for an account. Balance information
9
+ # may be cached unless the balance object was returned by
10
+ # `/accounts/balance/get`.
11
+ class AccountBalance < BaseModel
12
+ SKIP = Object.new
13
+ private_constant :SKIP
14
+
15
+ # The amount of funds available to be withdrawn from the account, as
16
+ # determined by the financial institution.
17
+ # For `credit`-type accounts, the `available` balance typically equals the
18
+ # `limit` less the `current` balance, less any pending outflows plus any
19
+ # pending inflows.
20
+ # For `depository`-type accounts, the `available` balance typically equals
21
+ # the `current` balance less any pending outflows plus any pending inflows.
22
+ # For `depository`-type accounts, the `available` balance does not include
23
+ # the overdraft limit.
24
+ # For `investment`-type accounts, the `available` balance is the total cash
25
+ # available to withdraw as presented by the institution.
26
+ # Note that not all institutions calculate the `available` balance. In the
27
+ # event that `available` balance is unavailable, Plaid will return an
28
+ # `available` balance value of `null`.
29
+ # Available balance may be cached and is not guaranteed to be up-to-date in
30
+ # realtime unless the value was returned by `/accounts/balance/get`.
31
+ # If `current` is `null` this field is guaranteed not to be `null`.
32
+ # @return [Float]
33
+ attr_accessor :available
34
+
35
+ # The total amount of funds in or owed by the account.
36
+ # For `credit`-type accounts, a positive balance indicates the amount owed;
37
+ # a negative amount indicates the lender owing the account holder.
38
+ # For `loan`-type accounts, the current balance is the principal remaining
39
+ # on the loan, except in the case of student loan accounts at Sallie Mae
40
+ # (`ins_116944`). For Sallie Mae student loans, the account's balance
41
+ # includes both principal and any outstanding interest.
42
+ # For `investment`-type accounts, the current balance is the total value of
43
+ # assets as presented by the institution.
44
+ # Note that balance information may be cached unless the value was returned
45
+ # by `/accounts/balance/get`; if the Item is enabled for Transactions, the
46
+ # balance will be at least as recent as the most recent Transaction update.
47
+ # If you require realtime balance information, use the `available` balance
48
+ # as provided by `/accounts/balance/get`.
49
+ # When returned by `/accounts/balance/get`, this field may be `null`. When
50
+ # this happens, `available` is guaranteed not to be `null`.
51
+ # @return [Float]
52
+ attr_accessor :current
53
+
54
+ # For `credit`-type accounts, this represents the credit limit.
55
+ # For `depository`-type accounts, this represents the pre-arranged overdraft
56
+ # limit, which is common for current (checking) accounts in Europe.
57
+ # In North America, this field is typically only available for `credit`-type
58
+ # accounts.
59
+ # @return [Float]
60
+ attr_accessor :limit
61
+
62
+ # The ISO-4217 currency code of the balance. Always null if
63
+ # `unofficial_currency_code` is non-null.
64
+ # @return [String]
65
+ attr_accessor :iso_currency_code
66
+
67
+ # The unofficial currency code associated with the balance. Always null if
68
+ # `iso_currency_code` is non-null. Unofficial currency codes are used for
69
+ # currencies that do not have official ISO currency codes, such as
70
+ # cryptocurrencies and the currencies of certain countries.
71
+ # See the [currency code
72
+ # schema](https://plaid.com/docs/api/accounts#currency-code-schema) for a
73
+ # full listing of supported `unofficial_currency_code`s.
74
+ # @return [String]
75
+ attr_accessor :unofficial_currency_code
76
+
77
+ # Timestamp in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format
78
+ # (`YYYY-MM-DDTHH:mm:ssZ`) indicating the last time that the balance for the
79
+ # given account has been updated
80
+ # This is currently only provided when the `min_last_updated_datetime` is
81
+ # passed when calling `/accounts/balance/get` for `ins_128026` (Capital
82
+ # One).
83
+ # @return [DateTime]
84
+ attr_accessor :last_updated_datetime
85
+
86
+ # A mapping from model property names to API property names.
87
+ def self.names
88
+ @_hash = {} if @_hash.nil?
89
+ @_hash['available'] = 'available'
90
+ @_hash['current'] = 'current'
91
+ @_hash['limit'] = 'limit'
92
+ @_hash['iso_currency_code'] = 'iso_currency_code'
93
+ @_hash['unofficial_currency_code'] = 'unofficial_currency_code'
94
+ @_hash['last_updated_datetime'] = 'last_updated_datetime'
95
+ @_hash
96
+ end
97
+
98
+ # An array for optional fields
99
+ def self.optionals
100
+ %w[
101
+ last_updated_datetime
102
+ ]
103
+ end
104
+
105
+ # An array for nullable fields
106
+ def self.nullables
107
+ %w[
108
+ available
109
+ current
110
+ limit
111
+ iso_currency_code
112
+ unofficial_currency_code
113
+ last_updated_datetime
114
+ ]
115
+ end
116
+
117
+ def initialize(available:, current:, limit:, iso_currency_code:,
118
+ unofficial_currency_code:, last_updated_datetime: SKIP,
119
+ additional_properties: nil)
120
+ # Add additional model properties to the instance
121
+ additional_properties = {} if additional_properties.nil?
122
+
123
+ @available = available
124
+ @current = current
125
+ @limit = limit
126
+ @iso_currency_code = iso_currency_code
127
+ @unofficial_currency_code = unofficial_currency_code
128
+ @last_updated_datetime = last_updated_datetime unless last_updated_datetime == SKIP
129
+ @additional_properties = additional_properties
130
+ end
131
+
132
+ # Creates an instance of the object from a hash.
133
+ def self.from_hash(hash)
134
+ return nil unless hash
135
+
136
+ # Extract variables from the hash.
137
+ available = hash.key?('available') ? hash['available'] : nil
138
+ current = hash.key?('current') ? hash['current'] : nil
139
+ limit = hash.key?('limit') ? hash['limit'] : nil
140
+ iso_currency_code =
141
+ hash.key?('iso_currency_code') ? hash['iso_currency_code'] : nil
142
+ unofficial_currency_code =
143
+ hash.key?('unofficial_currency_code') ? hash['unofficial_currency_code'] : nil
144
+ last_updated_datetime = if hash.key?('last_updated_datetime')
145
+ (DateTimeHelper.from_rfc3339(hash['last_updated_datetime']) if hash['last_updated_datetime'])
146
+ else
147
+ SKIP
148
+ end
149
+
150
+ # Create a new hash for additional properties, removing known properties.
151
+ new_hash = hash.reject { |k, _| names.value?(k) }
152
+
153
+ additional_properties = APIHelper.get_additional_properties(
154
+ new_hash, proc { |value| value }
155
+ )
156
+
157
+ # Create object from extracted values.
158
+ AccountBalance.new(available: available,
159
+ current: current,
160
+ limit: limit,
161
+ iso_currency_code: iso_currency_code,
162
+ unofficial_currency_code: unofficial_currency_code,
163
+ last_updated_datetime: last_updated_datetime,
164
+ additional_properties: additional_properties)
165
+ end
166
+
167
+ def to_custom_last_updated_datetime
168
+ DateTimeHelper.to_rfc3339(last_updated_datetime)
169
+ end
170
+
171
+ # Provides a human-readable string representation of the object.
172
+ def to_s
173
+ class_name = self.class.name.split('::').last
174
+ "<#{class_name} available: #{@available}, current: #{@current}, limit: #{@limit},"\
175
+ " iso_currency_code: #{@iso_currency_code}, unofficial_currency_code:"\
176
+ " #{@unofficial_currency_code}, last_updated_datetime: #{@last_updated_datetime},"\
177
+ " additional_properties: #{@additional_properties}>"
178
+ end
179
+
180
+ # Provides a debugging-friendly string with detailed object information.
181
+ def inspect
182
+ class_name = self.class.name.split('::').last
183
+ "<#{class_name} available: #{@available.inspect}, current: #{@current.inspect}, limit:"\
184
+ " #{@limit.inspect}, iso_currency_code: #{@iso_currency_code.inspect},"\
185
+ " unofficial_currency_code: #{@unofficial_currency_code.inspect}, last_updated_datetime:"\
186
+ " #{@last_updated_datetime.inspect}, additional_properties: #{@additional_properties}>"
187
+ end
188
+ end
189
+ end
@@ -0,0 +1,107 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Enumerates the account subtypes that the application wishes for the user to
8
+ # be able to select from. For more details refer to Plaid documentation on
9
+ # account filters.
10
+ class AccountFilter < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # A list of account subtypes to be filtered.
15
+ # @return [Array[String]]
16
+ attr_accessor :depository
17
+
18
+ # A list of account subtypes to be filtered.
19
+ # @return [Array[String]]
20
+ attr_accessor :credit
21
+
22
+ # A list of account subtypes to be filtered.
23
+ # @return [Array[String]]
24
+ attr_accessor :loan
25
+
26
+ # A list of account subtypes to be filtered.
27
+ # @return [Array[String]]
28
+ attr_accessor :investment
29
+
30
+ # A mapping from model property names to API property names.
31
+ def self.names
32
+ @_hash = {} if @_hash.nil?
33
+ @_hash['depository'] = 'depository'
34
+ @_hash['credit'] = 'credit'
35
+ @_hash['loan'] = 'loan'
36
+ @_hash['investment'] = 'investment'
37
+ @_hash
38
+ end
39
+
40
+ # An array for optional fields
41
+ def self.optionals
42
+ %w[
43
+ depository
44
+ credit
45
+ loan
46
+ investment
47
+ ]
48
+ end
49
+
50
+ # An array for nullable fields
51
+ def self.nullables
52
+ []
53
+ end
54
+
55
+ def initialize(depository: SKIP, credit: SKIP, loan: SKIP, investment: SKIP,
56
+ additional_properties: nil)
57
+ # Add additional model properties to the instance
58
+ additional_properties = {} if additional_properties.nil?
59
+
60
+ @depository = depository unless depository == SKIP
61
+ @credit = credit unless credit == SKIP
62
+ @loan = loan unless loan == SKIP
63
+ @investment = investment unless investment == SKIP
64
+ @additional_properties = additional_properties
65
+ end
66
+
67
+ # Creates an instance of the object from a hash.
68
+ def self.from_hash(hash)
69
+ return nil unless hash
70
+
71
+ # Extract variables from the hash.
72
+ depository = hash.key?('depository') ? hash['depository'] : SKIP
73
+ credit = hash.key?('credit') ? hash['credit'] : SKIP
74
+ loan = hash.key?('loan') ? hash['loan'] : SKIP
75
+ investment = hash.key?('investment') ? hash['investment'] : SKIP
76
+
77
+ # Create a new hash for additional properties, removing known properties.
78
+ new_hash = hash.reject { |k, _| names.value?(k) }
79
+
80
+ additional_properties = APIHelper.get_additional_properties(
81
+ new_hash, proc { |value| value }
82
+ )
83
+
84
+ # Create object from extracted values.
85
+ AccountFilter.new(depository: depository,
86
+ credit: credit,
87
+ loan: loan,
88
+ investment: investment,
89
+ additional_properties: additional_properties)
90
+ end
91
+
92
+ # Provides a human-readable string representation of the object.
93
+ def to_s
94
+ class_name = self.class.name.split('::').last
95
+ "<#{class_name} depository: #{@depository}, credit: #{@credit}, loan: #{@loan}, investment:"\
96
+ " #{@investment}, additional_properties: #{@additional_properties}>"
97
+ end
98
+
99
+ # Provides a debugging-friendly string with detailed object information.
100
+ def inspect
101
+ class_name = self.class.name.split('::').last
102
+ "<#{class_name} depository: #{@depository.inspect}, credit: #{@credit.inspect}, loan:"\
103
+ " #{@loan.inspect}, investment: #{@investment.inspect}, additional_properties:"\
104
+ " #{@additional_properties}>"
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,106 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # The `account_filters` specified in the original call to
8
+ # `/link/token/create`.
9
+ class AccountFiltersResponse < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # A filter to apply to `depository`-type accounts
14
+ # @return [DepositoryFilter]
15
+ attr_accessor :depository
16
+
17
+ # A filter to apply to `credit`-type accounts
18
+ # @return [CreditFilter]
19
+ attr_accessor :credit
20
+
21
+ # A filter to apply to `loan`-type accounts
22
+ # @return [LoanFilter]
23
+ attr_accessor :loan
24
+
25
+ # A filter to apply to `investment`-type accounts
26
+ # @return [InvestmentFilter]
27
+ attr_accessor :investment
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['depository'] = 'depository'
33
+ @_hash['credit'] = 'credit'
34
+ @_hash['loan'] = 'loan'
35
+ @_hash['investment'] = 'investment'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ depository
43
+ credit
44
+ loan
45
+ investment
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ []
52
+ end
53
+
54
+ def initialize(depository: SKIP, credit: SKIP, loan: SKIP, investment: SKIP,
55
+ additional_properties: nil)
56
+ # Add additional model properties to the instance
57
+ additional_properties = {} if additional_properties.nil?
58
+
59
+ @depository = depository unless depository == SKIP
60
+ @credit = credit unless credit == SKIP
61
+ @loan = loan unless loan == SKIP
62
+ @investment = investment unless investment == SKIP
63
+ @additional_properties = additional_properties
64
+ end
65
+
66
+ # Creates an instance of the object from a hash.
67
+ def self.from_hash(hash)
68
+ return nil unless hash
69
+
70
+ # Extract variables from the hash.
71
+ depository = DepositoryFilter.from_hash(hash['depository']) if hash['depository']
72
+ credit = CreditFilter.from_hash(hash['credit']) if hash['credit']
73
+ loan = LoanFilter.from_hash(hash['loan']) if hash['loan']
74
+ investment = InvestmentFilter.from_hash(hash['investment']) if hash['investment']
75
+
76
+ # Create a new hash for additional properties, removing known properties.
77
+ new_hash = hash.reject { |k, _| names.value?(k) }
78
+
79
+ additional_properties = APIHelper.get_additional_properties(
80
+ new_hash, proc { |value| value }
81
+ )
82
+
83
+ # Create object from extracted values.
84
+ AccountFiltersResponse.new(depository: depository,
85
+ credit: credit,
86
+ loan: loan,
87
+ investment: investment,
88
+ additional_properties: additional_properties)
89
+ end
90
+
91
+ # Provides a human-readable string representation of the object.
92
+ def to_s
93
+ class_name = self.class.name.split('::').last
94
+ "<#{class_name} depository: #{@depository}, credit: #{@credit}, loan: #{@loan}, investment:"\
95
+ " #{@investment}, additional_properties: #{@additional_properties}>"
96
+ end
97
+
98
+ # Provides a debugging-friendly string with detailed object information.
99
+ def inspect
100
+ class_name = self.class.name.split('::').last
101
+ "<#{class_name} depository: #{@depository.inspect}, credit: #{@credit.inspect}, loan:"\
102
+ " #{@loan.inspect}, investment: #{@investment.inspect}, additional_properties:"\
103
+ " #{@additional_properties}>"
104
+ end
105
+ end
106
+ end