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,378 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # LinkTokenCreateRequest defines the request schema for `/link/token/create`
8
+ class LinkTokenCreateRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Your Plaid API `client_id`. The `client_id` is required and may be
13
+ # provided either in the `PLAID-CLIENT-ID` header or as part of a request
14
+ # body.
15
+ # @return [String]
16
+ attr_accessor :client_id
17
+
18
+ # Your Plaid API `secret`. The `secret` is required and may be provided
19
+ # either in the `PLAID-SECRET` header or as part of a request body.
20
+ # @return [String]
21
+ attr_accessor :secret
22
+
23
+ # The name of your application, as it should be displayed in Link. Maximum
24
+ # length of 30 characters.
25
+ # @return [String]
26
+ attr_accessor :client_name
27
+
28
+ # The language that Link should be displayed in.
29
+ # Supported languages are:
30
+ # - English (`'en'`)
31
+ # - French (`'fr'`)
32
+ # - Spanish (`'es'`)
33
+ # - Dutch (`'nl'`)
34
+ # When using a Link customization, the language configured here must match
35
+ # the setting in the customization, or the customization will not be
36
+ # applied.
37
+ # @return [String]
38
+ attr_accessor :language
39
+
40
+ # Specify an array of Plaid-supported country codes using the ISO-3166-1
41
+ # alpha-2 country code standard. Institutions from all listed countries will
42
+ # be shown. Supported country codes are: `US`, `CA`, `ES`, `FR`, `GB`,
43
+ # `IE`, `NL`.
44
+ # If Link is launched with multiple country codes, only products that you
45
+ # are enabled for in all countries will be used by Link. Note that while all
46
+ # countries are enabled by default in Sandbox and Development, in Production
47
+ # only US and Canada are enabled by default. To gain access to European
48
+ # institutions in the Production environment, [file a product access Support
49
+ # ticket](https://dashboard.plaid.com/support/new/product-and-development/pr
50
+ # oduct-troubleshooting/request-product-access) via the Plaid dashboard. If
51
+ # you initialize with a European country code, your users will see the
52
+ # European consent panel during the Link flow.
53
+ # If using a Link customization, make sure the country codes in the
54
+ # customization match those specified in `country_codes`. If both
55
+ # `country_codes` and a Link customization are used, the value in
56
+ # `country_codes` may override the value in the customization.
57
+ # If using the Auth features Instant Match, Same-day Micro-deposits, or
58
+ # Automated Micro-deposits, `country_codes` must be set to `['US']`.
59
+ # @return [Array[CountryCode]]
60
+ attr_accessor :country_codes
61
+
62
+ # An object specifying information about the end user who will be linking
63
+ # their account.
64
+ # @return [LinkTokenCreateRequestUser]
65
+ attr_accessor :user
66
+
67
+ # List of Plaid product(s) you wish to use. If launching Link in update
68
+ # mode, should be omitted; required otherwise. Valid products are:
69
+ # `transactions`, `auth`, `identity`, `assets`, `investments`,
70
+ # `liabilities`, `payment_initiation`, `deposit_switch`,
71
+ # `income_verification`, `transfer`
72
+ # `balance` is *not* a valid value, the Balance product does not require
73
+ # explicit initalization and will automatically be initialized when any
74
+ # other product is initialized.
75
+ # Only institutions that support *all* requested products will be shown in
76
+ # Link; to maximize the number of institutions listed, it is recommended to
77
+ # initialize Link with the minimal product set required for your use case.
78
+ # Additional products can be added after Link initialization by calling the
79
+ # relevant endpoints. For details and exceptions, see [Choosing when to
80
+ # initialize
81
+ # products](https://plaid.com/docs/link/best-practices/#choosing-when-to-ini
82
+ # tialize-products).
83
+ # Note that, unless you have opted to disable Instant Match support,
84
+ # institutions that support Instant Match will also be shown in Link if
85
+ # `auth` is specified as a product, even though these institutions do not
86
+ # contain `auth` in their product array.
87
+ # In Production, you will be billed for each product that you specify when
88
+ # initializing Link. Note that a product cannot be removed from an Item once
89
+ # the Item has been initialized with that product. To stop billing on an
90
+ # Item for subscription-based products, such as Liabilities, Investments,
91
+ # and Transactions, remove the Item via `/item/remove`.
92
+ # @return [Array[Products]]
93
+ attr_accessor :products
94
+
95
+ # The destination URL to which any webhooks should be sent.
96
+ # @return [String]
97
+ attr_accessor :webhook
98
+
99
+ # The `access_token` associated with the Item to update, used when updating
100
+ # or modifying an existing `access_token`. Used when launching Link in
101
+ # update mode, when completing the Same-day (manual) Micro-deposit flow, or
102
+ # (optionally) when initializing Link as part of the Payment Initiation (UK
103
+ # and Europe) flow.
104
+ # @return [String]
105
+ attr_accessor :access_token
106
+
107
+ # The name of the Link customization from the Plaid Dashboard to be applied
108
+ # to Link. If not specified, the `default` customization will be used. When
109
+ # using a Link customization, the language in the customization must match
110
+ # the language selected via the `language` parameter, and the countries in
111
+ # the customization should match the country codes selected via
112
+ # `country_codes`.
113
+ # @return [String]
114
+ attr_accessor :link_customization_name
115
+
116
+ # A URI indicating the destination where a user should be forwarded after
117
+ # completing the Link flow; used to support OAuth authentication flows when
118
+ # launching Link in the browser or via a webview. The `redirect_uri` should
119
+ # not contain any query parameters. When used in Production or Development,
120
+ # must be an https URI. To specify any subdomain, use `*` as a wildcard
121
+ # character, e.g. `https://*.example.com/oauth.html`. If
122
+ # `android_package_name` is specified, this field should be left blank.
123
+ # Note that any redirect URI must also be added to the Allowed redirect URIs
124
+ # list in the [developer dashboard](https://dashboard.plaid.com/team/api).
125
+ # @return [String]
126
+ attr_accessor :redirect_uri
127
+
128
+ # The name of your app's Android package. Required if using the `link_token`
129
+ # to initialize Link on Android. When creating a `link_token` for
130
+ # initializing Link on other platforms, this field must be left blank. Any
131
+ # package name specified here must also be added to the Allowed Android
132
+ # package names setting on the [developer
133
+ # dashboard](https://dashboard.plaid.com/team/api).
134
+ # @return [String]
135
+ attr_accessor :android_package_name
136
+
137
+ # By default, Link will provide limited account filtering: it will only
138
+ # display Institutions that are compatible with all products supplied in the
139
+ # `products` parameter of `/link/token/create`, and, if `auth` is specified
140
+ # in the `products` array, will also filter out accounts other than
141
+ # `checking` and `savings` accounts on the Account Select pane. You can
142
+ # further limit the accounts shown in Link by using `account_filters` to
143
+ # specify the account subtypes to be shown in Link. Only the specified
144
+ # subtypes will be shown. This filtering applies to both the Account Select
145
+ # view (if enabled) and the Institution Select view. Institutions that do
146
+ # not support the selected subtypes will be omitted from Link. To indicate
147
+ # that all subtypes should be shown, use the value `"all"`. If the
148
+ # `account_filters` filter is used, any account type for which a filter is
149
+ # not specified will be entirely omitted from Link. For a full list of valid
150
+ # types and subtypes, see the [Account
151
+ # schema](https://plaid.com/docs/api/accounts#accounts-schema).
152
+ # For institutions using OAuth, the filter will not affect the list of
153
+ # accounts shown by the bank in the OAuth window.
154
+ # @return [LinkTokenAccountFilters]
155
+ attr_accessor :account_filters
156
+
157
+ # Configuration parameters for EU flows
158
+ # @return [LinkTokenEuConfig]
159
+ attr_accessor :eu_config
160
+
161
+ # Used for certain Europe-only configurations, as well as certain legacy use
162
+ # cases in other regions.
163
+ # @return [String]
164
+ attr_accessor :institution_id
165
+
166
+ # Specifies options for initializing Link for use with the Payment
167
+ # Initiation (Europe) product. This field is required if
168
+ # `payment_initiation` is included in the `products` array.
169
+ # @return [LinkTokenCreateRequestPaymentInitiation]
170
+ attr_accessor :payment_initiation
171
+
172
+ # Specifies options for initializing Link for use with the Deposit Switch
173
+ # (beta) product. This field is required if `deposit_switch` is included in
174
+ # the `products` array.
175
+ # @return [LinkTokenCreateRequestDepositSwitch]
176
+ attr_accessor :deposit_switch
177
+
178
+ # Specifies options for initializing Link for use with the Income (beta)
179
+ # product. This field is required if `income_verification` is included in
180
+ # the `products` array.
181
+ # @return [LinkTokenCreateRequestIncomeVerification]
182
+ attr_accessor :income_verification
183
+
184
+ # Specifies options for initializing Link for use with the Auth product.
185
+ # This field is currently only required if using the Flexible Auth product
186
+ # (currently in closed beta).
187
+ # @return [LinkTokenCreateRequestAuth]
188
+ attr_accessor :auth
189
+
190
+ # Specifies options for initializing Link for [update
191
+ # mode](https://plaid.com/docs/link/update-mode).
192
+ # @return [LinkTokenCreateRequestUpdate]
193
+ attr_accessor :update
194
+
195
+ # A mapping from model property names to API property names.
196
+ def self.names
197
+ @_hash = {} if @_hash.nil?
198
+ @_hash['client_id'] = 'client_id'
199
+ @_hash['secret'] = 'secret'
200
+ @_hash['client_name'] = 'client_name'
201
+ @_hash['language'] = 'language'
202
+ @_hash['country_codes'] = 'country_codes'
203
+ @_hash['user'] = 'user'
204
+ @_hash['products'] = 'products'
205
+ @_hash['webhook'] = 'webhook'
206
+ @_hash['access_token'] = 'access_token'
207
+ @_hash['link_customization_name'] = 'link_customization_name'
208
+ @_hash['redirect_uri'] = 'redirect_uri'
209
+ @_hash['android_package_name'] = 'android_package_name'
210
+ @_hash['account_filters'] = 'account_filters'
211
+ @_hash['eu_config'] = 'eu_config'
212
+ @_hash['institution_id'] = 'institution_id'
213
+ @_hash['payment_initiation'] = 'payment_initiation'
214
+ @_hash['deposit_switch'] = 'deposit_switch'
215
+ @_hash['income_verification'] = 'income_verification'
216
+ @_hash['auth'] = 'auth'
217
+ @_hash['update'] = 'update'
218
+ @_hash
219
+ end
220
+
221
+ # An array for optional fields
222
+ def self.optionals
223
+ %w[
224
+ client_id
225
+ secret
226
+ products
227
+ webhook
228
+ access_token
229
+ link_customization_name
230
+ redirect_uri
231
+ android_package_name
232
+ account_filters
233
+ eu_config
234
+ institution_id
235
+ payment_initiation
236
+ deposit_switch
237
+ income_verification
238
+ auth
239
+ update
240
+ ]
241
+ end
242
+
243
+ # An array for nullable fields
244
+ def self.nullables
245
+ []
246
+ end
247
+
248
+ def initialize(client_name:, language:, country_codes:, user:,
249
+ client_id: SKIP, secret: SKIP, products: SKIP, webhook: SKIP,
250
+ access_token: SKIP, link_customization_name: SKIP,
251
+ redirect_uri: SKIP, android_package_name: SKIP,
252
+ account_filters: SKIP, eu_config: SKIP, institution_id: SKIP,
253
+ payment_initiation: SKIP, deposit_switch: SKIP,
254
+ income_verification: SKIP, auth: SKIP, update: SKIP,
255
+ additional_properties: nil)
256
+ # Add additional model properties to the instance
257
+ additional_properties = {} if additional_properties.nil?
258
+
259
+ @client_id = client_id unless client_id == SKIP
260
+ @secret = secret unless secret == SKIP
261
+ @client_name = client_name
262
+ @language = language
263
+ @country_codes = country_codes
264
+ @user = user
265
+ @products = products unless products == SKIP
266
+ @webhook = webhook unless webhook == SKIP
267
+ @access_token = access_token unless access_token == SKIP
268
+ @link_customization_name = link_customization_name unless link_customization_name == SKIP
269
+ @redirect_uri = redirect_uri unless redirect_uri == SKIP
270
+ @android_package_name = android_package_name unless android_package_name == SKIP
271
+ @account_filters = account_filters unless account_filters == SKIP
272
+ @eu_config = eu_config unless eu_config == SKIP
273
+ @institution_id = institution_id unless institution_id == SKIP
274
+ @payment_initiation = payment_initiation unless payment_initiation == SKIP
275
+ @deposit_switch = deposit_switch unless deposit_switch == SKIP
276
+ @income_verification = income_verification unless income_verification == SKIP
277
+ @auth = auth unless auth == SKIP
278
+ @update = update unless update == SKIP
279
+ @additional_properties = additional_properties
280
+ end
281
+
282
+ # Creates an instance of the object from a hash.
283
+ def self.from_hash(hash)
284
+ return nil unless hash
285
+
286
+ # Extract variables from the hash.
287
+ client_name = hash.key?('client_name') ? hash['client_name'] : nil
288
+ language = hash.key?('language') ? hash['language'] : nil
289
+ country_codes = hash.key?('country_codes') ? hash['country_codes'] : nil
290
+ user = LinkTokenCreateRequestUser.from_hash(hash['user']) if hash['user']
291
+ client_id = hash.key?('client_id') ? hash['client_id'] : SKIP
292
+ secret = hash.key?('secret') ? hash['secret'] : SKIP
293
+ products = hash.key?('products') ? hash['products'] : SKIP
294
+ webhook = hash.key?('webhook') ? hash['webhook'] : SKIP
295
+ access_token = hash.key?('access_token') ? hash['access_token'] : SKIP
296
+ link_customization_name =
297
+ hash.key?('link_customization_name') ? hash['link_customization_name'] : SKIP
298
+ redirect_uri = hash.key?('redirect_uri') ? hash['redirect_uri'] : SKIP
299
+ android_package_name =
300
+ hash.key?('android_package_name') ? hash['android_package_name'] : SKIP
301
+ account_filters = LinkTokenAccountFilters.from_hash(hash['account_filters']) if
302
+ hash['account_filters']
303
+ eu_config = LinkTokenEuConfig.from_hash(hash['eu_config']) if hash['eu_config']
304
+ institution_id =
305
+ hash.key?('institution_id') ? hash['institution_id'] : SKIP
306
+ if hash['payment_initiation']
307
+ payment_initiation = LinkTokenCreateRequestPaymentInitiation.from_hash(hash['payment_initiation'])
308
+ end
309
+ deposit_switch = LinkTokenCreateRequestDepositSwitch.from_hash(hash['deposit_switch']) if
310
+ hash['deposit_switch']
311
+ if hash['income_verification']
312
+ income_verification = LinkTokenCreateRequestIncomeVerification.from_hash(hash['income_verification'])
313
+ end
314
+ auth = LinkTokenCreateRequestAuth.from_hash(hash['auth']) if hash['auth']
315
+ update = LinkTokenCreateRequestUpdate.from_hash(hash['update']) if hash['update']
316
+
317
+ # Create a new hash for additional properties, removing known properties.
318
+ new_hash = hash.reject { |k, _| names.value?(k) }
319
+
320
+ additional_properties = APIHelper.get_additional_properties(
321
+ new_hash, proc { |value| value }
322
+ )
323
+
324
+ # Create object from extracted values.
325
+ LinkTokenCreateRequest.new(client_name: client_name,
326
+ language: language,
327
+ country_codes: country_codes,
328
+ user: user,
329
+ client_id: client_id,
330
+ secret: secret,
331
+ products: products,
332
+ webhook: webhook,
333
+ access_token: access_token,
334
+ link_customization_name: link_customization_name,
335
+ redirect_uri: redirect_uri,
336
+ android_package_name: android_package_name,
337
+ account_filters: account_filters,
338
+ eu_config: eu_config,
339
+ institution_id: institution_id,
340
+ payment_initiation: payment_initiation,
341
+ deposit_switch: deposit_switch,
342
+ income_verification: income_verification,
343
+ auth: auth,
344
+ update: update,
345
+ additional_properties: additional_properties)
346
+ end
347
+
348
+ # Provides a human-readable string representation of the object.
349
+ def to_s
350
+ class_name = self.class.name.split('::').last
351
+ "<#{class_name} client_id: #{@client_id}, secret: #{@secret}, client_name: #{@client_name},"\
352
+ " language: #{@language}, country_codes: #{@country_codes}, user: #{@user}, products:"\
353
+ " #{@products}, webhook: #{@webhook}, access_token: #{@access_token},"\
354
+ " link_customization_name: #{@link_customization_name}, redirect_uri: #{@redirect_uri},"\
355
+ " android_package_name: #{@android_package_name}, account_filters: #{@account_filters},"\
356
+ " eu_config: #{@eu_config}, institution_id: #{@institution_id}, payment_initiation:"\
357
+ " #{@payment_initiation}, deposit_switch: #{@deposit_switch}, income_verification:"\
358
+ " #{@income_verification}, auth: #{@auth}, update: #{@update}, additional_properties:"\
359
+ " #{@additional_properties}>"
360
+ end
361
+
362
+ # Provides a debugging-friendly string with detailed object information.
363
+ def inspect
364
+ class_name = self.class.name.split('::').last
365
+ "<#{class_name} client_id: #{@client_id.inspect}, secret: #{@secret.inspect}, client_name:"\
366
+ " #{@client_name.inspect}, language: #{@language.inspect}, country_codes:"\
367
+ " #{@country_codes.inspect}, user: #{@user.inspect}, products: #{@products.inspect},"\
368
+ " webhook: #{@webhook.inspect}, access_token: #{@access_token.inspect},"\
369
+ " link_customization_name: #{@link_customization_name.inspect}, redirect_uri:"\
370
+ " #{@redirect_uri.inspect}, android_package_name: #{@android_package_name.inspect},"\
371
+ " account_filters: #{@account_filters.inspect}, eu_config: #{@eu_config.inspect},"\
372
+ " institution_id: #{@institution_id.inspect}, payment_initiation:"\
373
+ " #{@payment_initiation.inspect}, deposit_switch: #{@deposit_switch.inspect},"\
374
+ " income_verification: #{@income_verification.inspect}, auth: #{@auth.inspect}, update:"\
375
+ " #{@update.inspect}, additional_properties: #{@additional_properties}>"
376
+ end
377
+ end
378
+ end
@@ -0,0 +1,118 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # By default, Link will only display account types that are compatible with
8
+ # all products supplied in the `products` parameter of `/link/token/create`.
9
+ # You can further limit the accounts shown in Link by using `account_filters`
10
+ # to specify the account subtypes to be shown in Link. Only the specified
11
+ # subtypes will be shown. This filtering applies to both the Account Select
12
+ # view (if enabled) and the Institution Select view. Institutions that do not
13
+ # support the selected subtypes will be omitted from Link. To indicate that
14
+ # all subtypes should be shown, use the value `"all"`. If the
15
+ # `account_filters` filter is used, any account type for which a filter is not
16
+ # specified will be entirely omitted from Link. For a full list of valid types
17
+ # and subtypes, see the [Account
18
+ # schema](https://plaid.com/docs/api/accounts#accounts-schema). For
19
+ # institutions using OAuth, the filter will not affect the list of
20
+ # institutions or accounts shown by the bank in the OAuth window.
21
+ class LinkTokenCreateRequestAccountSubtypes < BaseModel
22
+ SKIP = Object.new
23
+ private_constant :SKIP
24
+
25
+ # A filter to apply to `depository`-type accounts
26
+ # @return [Depository]
27
+ attr_accessor :depository
28
+
29
+ # A filter to apply to `credit`-type accounts
30
+ # @return [Credit]
31
+ attr_accessor :credit
32
+
33
+ # A filter to apply to `loan`-type accounts
34
+ # @return [Loan]
35
+ attr_accessor :loan
36
+
37
+ # A filter to apply to `investment`-type accounts
38
+ # @return [Investment]
39
+ attr_accessor :investment
40
+
41
+ # A mapping from model property names to API property names.
42
+ def self.names
43
+ @_hash = {} if @_hash.nil?
44
+ @_hash['depository'] = 'depository'
45
+ @_hash['credit'] = 'credit'
46
+ @_hash['loan'] = 'loan'
47
+ @_hash['investment'] = 'investment'
48
+ @_hash
49
+ end
50
+
51
+ # An array for optional fields
52
+ def self.optionals
53
+ %w[
54
+ depository
55
+ credit
56
+ loan
57
+ investment
58
+ ]
59
+ end
60
+
61
+ # An array for nullable fields
62
+ def self.nullables
63
+ []
64
+ end
65
+
66
+ def initialize(depository: SKIP, credit: SKIP, loan: SKIP, investment: SKIP,
67
+ additional_properties: nil)
68
+ # Add additional model properties to the instance
69
+ additional_properties = {} if additional_properties.nil?
70
+
71
+ @depository = depository unless depository == SKIP
72
+ @credit = credit unless credit == SKIP
73
+ @loan = loan unless loan == SKIP
74
+ @investment = investment unless investment == SKIP
75
+ @additional_properties = additional_properties
76
+ end
77
+
78
+ # Creates an instance of the object from a hash.
79
+ def self.from_hash(hash)
80
+ return nil unless hash
81
+
82
+ # Extract variables from the hash.
83
+ depository = Depository.from_hash(hash['depository']) if hash['depository']
84
+ credit = Credit.from_hash(hash['credit']) if hash['credit']
85
+ loan = Loan.from_hash(hash['loan']) if hash['loan']
86
+ investment = Investment.from_hash(hash['investment']) if hash['investment']
87
+
88
+ # Create a new hash for additional properties, removing known properties.
89
+ new_hash = hash.reject { |k, _| names.value?(k) }
90
+
91
+ additional_properties = APIHelper.get_additional_properties(
92
+ new_hash, proc { |value| value }
93
+ )
94
+
95
+ # Create object from extracted values.
96
+ LinkTokenCreateRequestAccountSubtypes.new(depository: depository,
97
+ credit: credit,
98
+ loan: loan,
99
+ investment: investment,
100
+ additional_properties: additional_properties)
101
+ end
102
+
103
+ # Provides a human-readable string representation of the object.
104
+ def to_s
105
+ class_name = self.class.name.split('::').last
106
+ "<#{class_name} depository: #{@depository}, credit: #{@credit}, loan: #{@loan}, investment:"\
107
+ " #{@investment}, additional_properties: #{@additional_properties}>"
108
+ end
109
+
110
+ # Provides a debugging-friendly string with detailed object information.
111
+ def inspect
112
+ class_name = self.class.name.split('::').last
113
+ "<#{class_name} depository: #{@depository.inspect}, credit: #{@credit.inspect}, loan:"\
114
+ " #{@loan.inspect}, investment: #{@investment.inspect}, additional_properties:"\
115
+ " #{@additional_properties}>"
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,77 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Specifies options for initializing Link for use with the Auth product. This
8
+ # field is currently only required if using the Flexible Auth product
9
+ # (currently in closed beta).
10
+ class LinkTokenCreateRequestAuth < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The optional Auth flow to use. Currently only used to enable Flexible
15
+ # Auth.
16
+ # @return [String]
17
+ attr_accessor :flow_type
18
+
19
+ # A mapping from model property names to API property names.
20
+ def self.names
21
+ @_hash = {} if @_hash.nil?
22
+ @_hash['flow_type'] = 'flow_type'
23
+ @_hash
24
+ end
25
+
26
+ # An array for optional fields
27
+ def self.optionals
28
+ []
29
+ end
30
+
31
+ # An array for nullable fields
32
+ def self.nullables
33
+ []
34
+ end
35
+
36
+ def initialize(flow_type:, additional_properties: nil)
37
+ # Add additional model properties to the instance
38
+ additional_properties = {} if additional_properties.nil?
39
+
40
+ @flow_type = flow_type
41
+ @additional_properties = additional_properties
42
+ end
43
+
44
+ # Creates an instance of the object from a hash.
45
+ def self.from_hash(hash)
46
+ return nil unless hash
47
+
48
+ # Extract variables from the hash.
49
+ flow_type = hash.key?('flow_type') ? hash['flow_type'] : nil
50
+
51
+ # Create a new hash for additional properties, removing known properties.
52
+ new_hash = hash.reject { |k, _| names.value?(k) }
53
+
54
+ additional_properties = APIHelper.get_additional_properties(
55
+ new_hash, proc { |value| value }
56
+ )
57
+
58
+ # Create object from extracted values.
59
+ LinkTokenCreateRequestAuth.new(flow_type: flow_type,
60
+ additional_properties: additional_properties)
61
+ end
62
+
63
+ # Provides a human-readable string representation of the object.
64
+ def to_s
65
+ class_name = self.class.name.split('::').last
66
+ "<#{class_name} flow_type: #{@flow_type}, additional_properties:"\
67
+ " #{@additional_properties}>"
68
+ end
69
+
70
+ # Provides a debugging-friendly string with detailed object information.
71
+ def inspect
72
+ class_name = self.class.name.split('::').last
73
+ "<#{class_name} flow_type: #{@flow_type.inspect}, additional_properties:"\
74
+ " #{@additional_properties}>"
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,77 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # Specifies options for initializing Link for use with the Deposit Switch
8
+ # (beta) product. This field is required if `deposit_switch` is included in
9
+ # the `products` array.
10
+ class LinkTokenCreateRequestDepositSwitch < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The `deposit_switch_id` provided by the `/deposit_switch/create` endpoint.
15
+ # @return [String]
16
+ attr_accessor :deposit_switch_id
17
+
18
+ # A mapping from model property names to API property names.
19
+ def self.names
20
+ @_hash = {} if @_hash.nil?
21
+ @_hash['deposit_switch_id'] = 'deposit_switch_id'
22
+ @_hash
23
+ end
24
+
25
+ # An array for optional fields
26
+ def self.optionals
27
+ []
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(deposit_switch_id:, additional_properties: nil)
36
+ # Add additional model properties to the instance
37
+ additional_properties = {} if additional_properties.nil?
38
+
39
+ @deposit_switch_id = deposit_switch_id
40
+ @additional_properties = additional_properties
41
+ end
42
+
43
+ # Creates an instance of the object from a hash.
44
+ def self.from_hash(hash)
45
+ return nil unless hash
46
+
47
+ # Extract variables from the hash.
48
+ deposit_switch_id =
49
+ hash.key?('deposit_switch_id') ? hash['deposit_switch_id'] : nil
50
+
51
+ # Create a new hash for additional properties, removing known properties.
52
+ new_hash = hash.reject { |k, _| names.value?(k) }
53
+
54
+ additional_properties = APIHelper.get_additional_properties(
55
+ new_hash, proc { |value| value }
56
+ )
57
+
58
+ # Create object from extracted values.
59
+ LinkTokenCreateRequestDepositSwitch.new(deposit_switch_id: deposit_switch_id,
60
+ additional_properties: additional_properties)
61
+ end
62
+
63
+ # Provides a human-readable string representation of the object.
64
+ def to_s
65
+ class_name = self.class.name.split('::').last
66
+ "<#{class_name} deposit_switch_id: #{@deposit_switch_id}, additional_properties:"\
67
+ " #{@additional_properties}>"
68
+ end
69
+
70
+ # Provides a debugging-friendly string with detailed object information.
71
+ def inspect
72
+ class_name = self.class.name.split('::').last
73
+ "<#{class_name} deposit_switch_id: #{@deposit_switch_id.inspect}, additional_properties:"\
74
+ " #{@additional_properties}>"
75
+ end
76
+ end
77
+ end