plaid 13.2.0 → 17.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1087) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1374 -1
  3. data/CONTRIBUTING.md +12 -60
  4. data/Dockerfile +14 -0
  5. data/Gemfile.lock +51 -44
  6. data/LICENSE.txt +1 -1
  7. data/Makefile +11 -0
  8. data/README.md +174 -101
  9. data/Rakefile +8 -79
  10. data/UPGRADING.md +4 -0
  11. data/lib/plaid/api/plaid_api.rb +12307 -0
  12. data/lib/plaid/api_client.rb +393 -0
  13. data/lib/plaid/api_error.rb +57 -0
  14. data/lib/plaid/configuration.rb +298 -0
  15. data/lib/plaid/models/account_access.rb +248 -0
  16. data/lib/plaid/models/account_assets.rb +428 -0
  17. data/lib/plaid/models/account_assets_all_of.rb +265 -0
  18. data/lib/plaid/models/account_balance.rb +276 -0
  19. data/lib/plaid/models/account_base.rb +344 -0
  20. data/lib/plaid/models/account_filter.rb +258 -0
  21. data/lib/plaid/models/account_filters_response.rb +246 -0
  22. data/lib/plaid/models/account_identity.rb +369 -0
  23. data/lib/plaid/models/account_identity_all_of.rb +226 -0
  24. data/lib/plaid/models/account_identity_match_score.rb +392 -0
  25. data/lib/plaid/models/account_identity_match_score_all_of.rb +249 -0
  26. data/lib/plaid/models/account_product_access.rb +249 -0
  27. data/lib/plaid/models/account_product_access_nullable.rb +256 -0
  28. data/lib/plaid/models/account_selection_cardinality.rb +40 -0
  29. data/lib/plaid/models/account_subtype.rb +111 -0
  30. data/lib/plaid/models/account_type.rb +43 -0
  31. data/lib/plaid/models/accounts_balance_get_request.rb +254 -0
  32. data/lib/plaid/models/accounts_balance_get_request_options.rb +232 -0
  33. data/lib/plaid/models/accounts_get_request.rb +254 -0
  34. data/lib/plaid/models/accounts_get_request_options.rb +222 -0
  35. data/lib/plaid/models/accounts_get_response.rb +256 -0
  36. data/lib/plaid/models/ach_class.rb +41 -0
  37. data/lib/plaid/models/address.rb +234 -0
  38. data/lib/plaid/models/address_data.rb +273 -0
  39. data/lib/plaid/models/address_data_nullable.rb +280 -0
  40. data/lib/plaid/models/address_match_score.rb +232 -0
  41. data/lib/plaid/models/address_nullable.rb +241 -0
  42. data/lib/plaid/models/address_purpose_label.rb +40 -0
  43. data/lib/plaid/models/application.rb +365 -0
  44. data/lib/plaid/models/application_get_request.rb +255 -0
  45. data/lib/plaid/models/application_get_response.rb +239 -0
  46. data/lib/plaid/models/apr.rb +296 -0
  47. data/lib/plaid/models/asset.rb +280 -0
  48. data/lib/plaid/models/asset_detail.rb +347 -0
  49. data/lib/plaid/models/asset_holder.rb +224 -0
  50. data/lib/plaid/models/asset_holder_name.rb +225 -0
  51. data/lib/plaid/models/asset_owner.rb +221 -0
  52. data/lib/plaid/models/asset_owners.rb +227 -0
  53. data/lib/plaid/models/asset_report.rb +297 -0
  54. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +255 -0
  55. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +240 -0
  56. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +245 -0
  57. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +245 -0
  58. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +240 -0
  59. data/lib/plaid/models/asset_report_create_request.rb +323 -0
  60. data/lib/plaid/models/asset_report_create_request_options.rb +264 -0
  61. data/lib/plaid/models/asset_report_create_response.rb +255 -0
  62. data/lib/plaid/models/asset_report_filter_request.rb +262 -0
  63. data/lib/plaid/models/asset_report_filter_response.rb +255 -0
  64. data/lib/plaid/models/asset_report_freddie.rb +252 -0
  65. data/lib/plaid/models/asset_report_freddie_get_request.rb +245 -0
  66. data/lib/plaid/models/asset_report_freddie_get_response.rb +254 -0
  67. data/lib/plaid/models/asset_report_get_request.rb +278 -0
  68. data/lib/plaid/models/asset_report_get_request_options.rb +247 -0
  69. data/lib/plaid/models/asset_report_get_response.rb +256 -0
  70. data/lib/plaid/models/asset_report_item.rb +287 -0
  71. data/lib/plaid/models/asset_report_pdf_get_request.rb +254 -0
  72. data/lib/plaid/models/asset_report_pdf_get_request_options.rb +247 -0
  73. data/lib/plaid/models/asset_report_refresh_request.rb +291 -0
  74. data/lib/plaid/models/asset_report_refresh_request_options.rb +241 -0
  75. data/lib/plaid/models/asset_report_refresh_response.rb +255 -0
  76. data/lib/plaid/models/asset_report_remove_request.rb +245 -0
  77. data/lib/plaid/models/asset_report_remove_response.rb +240 -0
  78. data/lib/plaid/models/asset_report_transaction.rb +487 -0
  79. data/lib/plaid/models/asset_report_transaction_all_of.rb +230 -0
  80. data/lib/plaid/models/asset_report_user.rb +287 -0
  81. data/lib/plaid/models/asset_transaction.rb +241 -0
  82. data/lib/plaid/models/asset_transaction_category_type.rb +144 -0
  83. data/lib/plaid/models/asset_transaction_description.rb +225 -0
  84. data/lib/plaid/models/asset_transaction_detail.rb +327 -0
  85. data/lib/plaid/models/asset_transaction_type.rb +39 -0
  86. data/lib/plaid/models/asset_transactions.rb +226 -0
  87. data/lib/plaid/models/asset_type.rb +42 -0
  88. data/lib/plaid/models/assets.rb +227 -0
  89. data/lib/plaid/models/assets_error_webhook.rb +265 -0
  90. data/lib/plaid/models/assets_product_ready_webhook.rb +255 -0
  91. data/lib/plaid/models/auth_get_numbers.rb +278 -0
  92. data/lib/plaid/models/auth_get_request.rb +254 -0
  93. data/lib/plaid/models/auth_get_request_options.rb +222 -0
  94. data/lib/plaid/models/auth_get_response.rb +270 -0
  95. data/lib/plaid/models/auth_metadata.rb +220 -0
  96. data/lib/plaid/models/auth_supported_methods.rb +255 -0
  97. data/lib/plaid/models/automatically_verified_webhook.rb +284 -0
  98. data/lib/plaid/models/bank_initiated_return_risk.rb +300 -0
  99. data/lib/plaid/models/bank_transfer.rb +453 -0
  100. data/lib/plaid/models/bank_transfer_balance.rb +240 -0
  101. data/lib/plaid/models/bank_transfer_balance_get_request.rb +241 -0
  102. data/lib/plaid/models/bank_transfer_balance_get_response.rb +250 -0
  103. data/lib/plaid/models/bank_transfer_cancel_request.rb +245 -0
  104. data/lib/plaid/models/bank_transfer_cancel_response.rb +225 -0
  105. data/lib/plaid/models/bank_transfer_create_request.rb +474 -0
  106. data/lib/plaid/models/bank_transfer_create_response.rb +239 -0
  107. data/lib/plaid/models/bank_transfer_direction.rb +40 -0
  108. data/lib/plaid/models/bank_transfer_event.rb +380 -0
  109. data/lib/plaid/models/bank_transfer_event_list_bank_transfer_type.rb +40 -0
  110. data/lib/plaid/models/bank_transfer_event_list_direction.rb +40 -0
  111. data/lib/plaid/models/bank_transfer_event_list_request.rb +386 -0
  112. data/lib/plaid/models/bank_transfer_event_list_response.rb +241 -0
  113. data/lib/plaid/models/bank_transfer_event_sync_request.rb +305 -0
  114. data/lib/plaid/models/bank_transfer_event_sync_response.rb +241 -0
  115. data/lib/plaid/models/bank_transfer_event_type.rb +42 -0
  116. data/lib/plaid/models/bank_transfer_failure.rb +231 -0
  117. data/lib/plaid/models/bank_transfer_get_request.rb +245 -0
  118. data/lib/plaid/models/bank_transfer_get_response.rb +239 -0
  119. data/lib/plaid/models/bank_transfer_list_request.rb +340 -0
  120. data/lib/plaid/models/bank_transfer_list_response.rb +241 -0
  121. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +285 -0
  122. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +255 -0
  123. data/lib/plaid/models/bank_transfer_network.rb +40 -0
  124. data/lib/plaid/models/bank_transfer_status.rb +42 -0
  125. data/lib/plaid/models/bank_transfer_sweep.rb +270 -0
  126. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +245 -0
  127. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +239 -0
  128. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +302 -0
  129. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +241 -0
  130. data/lib/plaid/models/bank_transfer_type.rb +39 -0
  131. data/lib/plaid/models/bank_transfer_user.rb +246 -0
  132. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +254 -0
  133. data/lib/plaid/models/categories_get_response.rb +242 -0
  134. data/lib/plaid/models/category.rb +257 -0
  135. data/lib/plaid/models/cause.rb +342 -0
  136. data/lib/plaid/models/cause_all_of.rb +219 -0
  137. data/lib/plaid/models/client_provided_enhanced_transaction.rb +284 -0
  138. data/lib/plaid/models/client_provided_enriched_transaction.rb +293 -0
  139. data/lib/plaid/models/client_provided_raw_transaction.rb +270 -0
  140. data/lib/plaid/models/client_provided_transaction.rb +279 -0
  141. data/lib/plaid/models/connected_application.rb +309 -0
  142. data/lib/plaid/models/counterparty.rb +239 -0
  143. data/lib/plaid/models/counterparty_type.rb +41 -0
  144. data/lib/plaid/models/country_code.rb +53 -0
  145. data/lib/plaid/models/credit1099.rb +772 -0
  146. data/lib/plaid/models/credit1099_filer.rb +252 -0
  147. data/lib/plaid/models/credit1099_payer.rb +252 -0
  148. data/lib/plaid/models/credit1099_recipient.rb +274 -0
  149. data/lib/plaid/models/credit_account_subtype.rb +40 -0
  150. data/lib/plaid/models/credit_audit_copy_token_create_request.rb +247 -0
  151. data/lib/plaid/models/credit_audit_copy_token_create_response.rb +240 -0
  152. data/lib/plaid/models/credit_audit_copy_token_remove_request.rb +245 -0
  153. data/lib/plaid/models/credit_audit_copy_token_remove_response.rb +240 -0
  154. data/lib/plaid/models/credit_bank_income.rb +273 -0
  155. data/lib/plaid/models/credit_bank_income_account.rb +281 -0
  156. data/lib/plaid/models/credit_bank_income_account_type.rb +38 -0
  157. data/lib/plaid/models/credit_bank_income_category.rb +51 -0
  158. data/lib/plaid/models/credit_bank_income_cause.rb +259 -0
  159. data/lib/plaid/models/credit_bank_income_error_type.rb +53 -0
  160. data/lib/plaid/models/credit_bank_income_get_request.rb +249 -0
  161. data/lib/plaid/models/credit_bank_income_get_request_options.rb +222 -0
  162. data/lib/plaid/models/credit_bank_income_get_response.rb +236 -0
  163. data/lib/plaid/models/credit_bank_income_historical_summary.rb +273 -0
  164. data/lib/plaid/models/credit_bank_income_item.rb +274 -0
  165. data/lib/plaid/models/credit_bank_income_pay_frequency.rb +42 -0
  166. data/lib/plaid/models/credit_bank_income_pdf_get_request.rb +245 -0
  167. data/lib/plaid/models/credit_bank_income_refresh_request.rb +254 -0
  168. data/lib/plaid/models/credit_bank_income_refresh_request_options.rb +230 -0
  169. data/lib/plaid/models/credit_bank_income_refresh_response.rb +225 -0
  170. data/lib/plaid/models/credit_bank_income_source.rb +309 -0
  171. data/lib/plaid/models/credit_bank_income_summary.rb +303 -0
  172. data/lib/plaid/models/credit_bank_income_transaction.rb +304 -0
  173. data/lib/plaid/models/credit_bank_income_warning.rb +237 -0
  174. data/lib/plaid/models/credit_bank_income_warning_code.rb +41 -0
  175. data/lib/plaid/models/credit_bank_income_warning_type.rb +38 -0
  176. data/lib/plaid/models/credit_card_liability.rb +315 -0
  177. data/lib/plaid/models/credit_category.rb +240 -0
  178. data/lib/plaid/models/credit_document_metadata.rb +258 -0
  179. data/lib/plaid/models/credit_employer_verification.rb +221 -0
  180. data/lib/plaid/models/credit_employment_get_request.rb +245 -0
  181. data/lib/plaid/models/credit_employment_get_response.rb +242 -0
  182. data/lib/plaid/models/credit_employment_item.rb +251 -0
  183. data/lib/plaid/models/credit_employment_verification.rb +315 -0
  184. data/lib/plaid/models/credit_filter.rb +227 -0
  185. data/lib/plaid/models/credit_pay_stub.rb +319 -0
  186. data/lib/plaid/models/credit_pay_stub_address.rb +265 -0
  187. data/lib/plaid/models/credit_pay_stub_deductions.rb +240 -0
  188. data/lib/plaid/models/credit_pay_stub_earnings.rb +240 -0
  189. data/lib/plaid/models/credit_pay_stub_employee.rb +260 -0
  190. data/lib/plaid/models/credit_pay_stub_employer.rb +235 -0
  191. data/lib/plaid/models/credit_pay_stub_net_pay.rb +265 -0
  192. data/lib/plaid/models/credit_payroll_income_get_request.rb +240 -0
  193. data/lib/plaid/models/credit_payroll_income_get_response.rb +252 -0
  194. data/lib/plaid/models/credit_payroll_income_precheck_request.rb +282 -0
  195. data/lib/plaid/models/credit_payroll_income_precheck_response.rb +239 -0
  196. data/lib/plaid/models/credit_payroll_income_refresh_request.rb +240 -0
  197. data/lib/plaid/models/credit_payroll_income_refresh_response.rb +240 -0
  198. data/lib/plaid/models/credit_payroll_income_risk_signals_get_request.rb +240 -0
  199. data/lib/plaid/models/credit_payroll_income_risk_signals_get_response.rb +252 -0
  200. data/lib/plaid/models/credit_platform_ids.rb +243 -0
  201. data/lib/plaid/models/credit_relay_create_request.rb +273 -0
  202. data/lib/plaid/models/credit_relay_create_response.rb +240 -0
  203. data/lib/plaid/models/credit_relay_get_request.rb +259 -0
  204. data/lib/plaid/models/credit_relay_refresh_request.rb +270 -0
  205. data/lib/plaid/models/credit_relay_refresh_response.rb +249 -0
  206. data/lib/plaid/models/credit_relay_remove_request.rb +245 -0
  207. data/lib/plaid/models/credit_relay_remove_response.rb +240 -0
  208. data/lib/plaid/models/credit_session.rb +251 -0
  209. data/lib/plaid/models/credit_session_bank_income_result.rb +239 -0
  210. data/lib/plaid/models/credit_session_bank_income_status.rb +40 -0
  211. data/lib/plaid/models/credit_session_document_income_result.rb +240 -0
  212. data/lib/plaid/models/credit_session_error.rb +251 -0
  213. data/lib/plaid/models/credit_session_item_add_result.rb +240 -0
  214. data/lib/plaid/models/credit_session_payroll_income_result.rb +250 -0
  215. data/lib/plaid/models/credit_session_results.rb +256 -0
  216. data/lib/plaid/models/credit_sessions_get_request.rb +245 -0
  217. data/lib/plaid/models/credit_sessions_get_response.rb +237 -0
  218. data/lib/plaid/models/credit_w2.rb +486 -0
  219. data/lib/plaid/models/customer_initiated_return_risk.rb +300 -0
  220. data/lib/plaid/models/dashboard_user.rb +269 -0
  221. data/lib/plaid/models/dashboard_user_get_request.rb +245 -0
  222. data/lib/plaid/models/dashboard_user_get_response.rb +284 -0
  223. data/lib/plaid/models/dashboard_user_list_request.rb +241 -0
  224. data/lib/plaid/models/dashboard_user_list_response.rb +253 -0
  225. data/lib/plaid/models/dashboard_user_status.rb +40 -0
  226. data/lib/plaid/models/date_range.rb +240 -0
  227. data/lib/plaid/models/deductions.rb +262 -0
  228. data/lib/plaid/models/deductions_breakdown.rb +265 -0
  229. data/lib/plaid/models/deductions_total.rb +254 -0
  230. data/lib/plaid/models/default_update_webhook.rb +294 -0
  231. data/lib/plaid/models/deposit_switch_address_data.rb +285 -0
  232. data/lib/plaid/models/deposit_switch_alt_create_request.rb +312 -0
  233. data/lib/plaid/models/deposit_switch_alt_create_response.rb +240 -0
  234. data/lib/plaid/models/deposit_switch_create_request.rb +314 -0
  235. data/lib/plaid/models/deposit_switch_create_request_options.rb +251 -0
  236. data/lib/plaid/models/deposit_switch_create_response.rb +240 -0
  237. data/lib/plaid/models/deposit_switch_get_request.rb +245 -0
  238. data/lib/plaid/models/deposit_switch_get_response.rb +448 -0
  239. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +259 -0
  240. data/lib/plaid/models/deposit_switch_target_account.rb +304 -0
  241. data/lib/plaid/models/deposit_switch_target_user.rb +289 -0
  242. data/lib/plaid/models/deposit_switch_token_create_request.rb +245 -0
  243. data/lib/plaid/models/deposit_switch_token_create_response.rb +255 -0
  244. data/lib/plaid/models/depository_account_subtype.rb +47 -0
  245. data/lib/plaid/models/depository_filter.rb +227 -0
  246. data/lib/plaid/models/disbursement_limits.rb +255 -0
  247. data/lib/plaid/models/distribution_breakdown.rb +296 -0
  248. data/lib/plaid/models/doc_type.rb +49 -0
  249. data/lib/plaid/models/document_analysis.rb +248 -0
  250. data/lib/plaid/models/document_authenticity_match_code.rb +41 -0
  251. data/lib/plaid/models/document_date_of_birth_match_code.rb +40 -0
  252. data/lib/plaid/models/document_metadata.rb +249 -0
  253. data/lib/plaid/models/document_name_match_code.rb +40 -0
  254. data/lib/plaid/models/document_risk_signal.rb +297 -0
  255. data/lib/plaid/models/document_risk_signal_institution_metadata.rb +225 -0
  256. data/lib/plaid/models/document_risk_signals_object.rb +255 -0
  257. data/lib/plaid/models/document_risk_summary.rb +221 -0
  258. data/lib/plaid/models/document_status.rb +40 -0
  259. data/lib/plaid/models/documentary_verification.rb +242 -0
  260. data/lib/plaid/models/documentary_verification_document.rb +277 -0
  261. data/lib/plaid/models/earnings.rb +252 -0
  262. data/lib/plaid/models/earnings_breakdown.rb +297 -0
  263. data/lib/plaid/models/earnings_breakdown_canonical_description.rb +47 -0
  264. data/lib/plaid/models/earnings_total.rb +283 -0
  265. data/lib/plaid/models/email.rb +289 -0
  266. data/lib/plaid/models/email_address_match_score.rb +221 -0
  267. data/lib/plaid/models/employee.rb +255 -0
  268. data/lib/plaid/models/employee_income_summary_field_string.rb +246 -0
  269. data/lib/plaid/models/employer.rb +265 -0
  270. data/lib/plaid/models/employer_income_summary_field_string.rb +246 -0
  271. data/lib/plaid/models/employer_verification.rb +221 -0
  272. data/lib/plaid/models/employers_search_request.rb +262 -0
  273. data/lib/plaid/models/employers_search_response.rb +242 -0
  274. data/lib/plaid/models/employment_details.rb +230 -0
  275. data/lib/plaid/models/employment_verification.rb +271 -0
  276. data/lib/plaid/models/employment_verification_get_request.rb +245 -0
  277. data/lib/plaid/models/employment_verification_get_response.rb +242 -0
  278. data/lib/plaid/models/employment_verification_status.rb +40 -0
  279. data/lib/plaid/models/enhancements.rb +342 -0
  280. data/lib/plaid/models/enrich_transaction_direction.rb +39 -0
  281. data/lib/plaid/models/enrichments.rb +342 -0
  282. data/lib/plaid/models/entity_document.rb +260 -0
  283. data/lib/plaid/models/entity_document_type.rb +43 -0
  284. data/lib/plaid/models/entity_screening_hit_analysis.rb +279 -0
  285. data/lib/plaid/models/entity_screening_hit_data.rb +282 -0
  286. data/lib/plaid/models/entity_screening_hit_documents_items.rb +228 -0
  287. data/lib/plaid/models/entity_screening_hit_emails.rb +225 -0
  288. data/lib/plaid/models/entity_screening_hit_emails_items.rb +228 -0
  289. data/lib/plaid/models/entity_screening_hit_names.rb +254 -0
  290. data/lib/plaid/models/entity_screening_hit_names_items.rb +228 -0
  291. data/lib/plaid/models/entity_screening_hit_phone_numbers.rb +239 -0
  292. data/lib/plaid/models/entity_screening_hit_urls.rb +225 -0
  293. data/lib/plaid/models/entity_screening_hit_urls_items.rb +228 -0
  294. data/lib/plaid/models/entity_screening_hits_phone_number_items.rb +228 -0
  295. data/lib/plaid/models/entity_screening_status_updated_webhook.rb +265 -0
  296. data/lib/plaid/models/entity_watchlist_code.rb +50 -0
  297. data/lib/plaid/models/entity_watchlist_program.rb +363 -0
  298. data/lib/plaid/models/entity_watchlist_screening.rb +306 -0
  299. data/lib/plaid/models/entity_watchlist_screening_hit.rb +351 -0
  300. data/lib/plaid/models/entity_watchlist_screening_review.rb +301 -0
  301. data/lib/plaid/models/entity_watchlist_screening_search_terms.rb +365 -0
  302. data/lib/plaid/models/entity_watchlist_search_terms.rb +350 -0
  303. data/lib/plaid/models/expiration_date.rb +40 -0
  304. data/lib/plaid/models/external_payment_initiation_consent_options.rb +296 -0
  305. data/lib/plaid/models/external_payment_options.rb +306 -0
  306. data/lib/plaid/models/external_payment_refund_details.rb +246 -0
  307. data/lib/plaid/models/external_payment_schedule_base.rb +261 -0
  308. data/lib/plaid/models/external_payment_schedule_get.rb +283 -0
  309. data/lib/plaid/models/external_payment_schedule_request.rb +283 -0
  310. data/lib/plaid/models/fdx_content_types.rb +43 -0
  311. data/lib/plaid/models/fdx_hateoas_link.rb +256 -0
  312. data/lib/plaid/models/fdx_hateoas_link_action.rb +42 -0
  313. data/lib/plaid/models/fdx_notification.rb +332 -0
  314. data/lib/plaid/models/fdx_notification_category.rb +42 -0
  315. data/lib/plaid/models/fdx_notification_payload.rb +238 -0
  316. data/lib/plaid/models/fdx_notification_payload_id_type.rb +42 -0
  317. data/lib/plaid/models/fdx_notification_priority.rb +40 -0
  318. data/lib/plaid/models/fdx_notification_severity.rb +42 -0
  319. data/lib/plaid/models/fdx_notification_type.rb +43 -0
  320. data/lib/plaid/models/fdx_party.rb +288 -0
  321. data/lib/plaid/models/fdx_party_registry.rb +41 -0
  322. data/lib/plaid/models/fdx_party_type.rb +43 -0
  323. data/lib/plaid/models/fdxfi_attribute.rb +230 -0
  324. data/lib/plaid/models/form1099_type.rb +40 -0
  325. data/lib/plaid/models/generic_screening_hit_location_items.rb +228 -0
  326. data/lib/plaid/models/health_incident.rb +268 -0
  327. data/lib/plaid/models/historical_balance.rb +262 -0
  328. data/lib/plaid/models/historical_update_webhook.rb +294 -0
  329. data/lib/plaid/models/holding.rb +340 -0
  330. data/lib/plaid/models/holdings_default_update_webhook.rb +309 -0
  331. data/lib/plaid/models/holdings_override.rb +289 -0
  332. data/lib/plaid/models/id_number_type.rb +72 -0
  333. data/lib/plaid/models/identity_default_update_webhook.rb +296 -0
  334. data/lib/plaid/models/identity_get_request.rb +254 -0
  335. data/lib/plaid/models/identity_get_request_options.rb +222 -0
  336. data/lib/plaid/models/identity_get_response.rb +256 -0
  337. data/lib/plaid/models/identity_match_request.rb +263 -0
  338. data/lib/plaid/models/identity_match_request_options.rb +222 -0
  339. data/lib/plaid/models/identity_match_response.rb +256 -0
  340. data/lib/plaid/models/identity_match_user.rb +253 -0
  341. data/lib/plaid/models/identity_update_types.rb +41 -0
  342. data/lib/plaid/models/identity_verification.rb +396 -0
  343. data/lib/plaid/models/identity_verification_create_request.rb +302 -0
  344. data/lib/plaid/models/identity_verification_create_response.rb +411 -0
  345. data/lib/plaid/models/identity_verification_get_request.rb +245 -0
  346. data/lib/plaid/models/identity_verification_get_response.rb +411 -0
  347. data/lib/plaid/models/identity_verification_list_request.rb +292 -0
  348. data/lib/plaid/models/identity_verification_list_response.rb +253 -0
  349. data/lib/plaid/models/identity_verification_request_user.rb +307 -0
  350. data/lib/plaid/models/identity_verification_retried_webhook.rb +265 -0
  351. data/lib/plaid/models/identity_verification_retry_request.rb +305 -0
  352. data/lib/plaid/models/identity_verification_retry_request_steps_object.rb +270 -0
  353. data/lib/plaid/models/identity_verification_retry_response.rb +411 -0
  354. data/lib/plaid/models/identity_verification_status.rb +43 -0
  355. data/lib/plaid/models/identity_verification_status_updated_webhook.rb +265 -0
  356. data/lib/plaid/models/identity_verification_step_status.rb +48 -0
  357. data/lib/plaid/models/identity_verification_step_summary.rb +308 -0
  358. data/lib/plaid/models/identity_verification_step_updated_webhook.rb +265 -0
  359. data/lib/plaid/models/identity_verification_template_reference.rb +240 -0
  360. data/lib/plaid/models/identity_verification_user_address.rb +301 -0
  361. data/lib/plaid/models/identity_verification_user_data.rb +284 -0
  362. data/lib/plaid/models/image_quality.rb +40 -0
  363. data/lib/plaid/models/incident_update.rb +274 -0
  364. data/lib/plaid/models/income_breakdown.rb +253 -0
  365. data/lib/plaid/models/income_breakdown_type.rb +41 -0
  366. data/lib/plaid/models/income_override.rb +222 -0
  367. data/lib/plaid/models/income_summary.rb +300 -0
  368. data/lib/plaid/models/income_summary_field_number.rb +239 -0
  369. data/lib/plaid/models/income_summary_field_string.rb +239 -0
  370. data/lib/plaid/models/income_verification_create_request.rb +264 -0
  371. data/lib/plaid/models/income_verification_create_request_options.rb +222 -0
  372. data/lib/plaid/models/income_verification_create_response.rb +240 -0
  373. data/lib/plaid/models/income_verification_documents_download_request.rb +263 -0
  374. data/lib/plaid/models/income_verification_payroll_flow_type.rb +39 -0
  375. data/lib/plaid/models/income_verification_paystubs_get_request.rb +252 -0
  376. data/lib/plaid/models/income_verification_paystubs_get_response.rb +263 -0
  377. data/lib/plaid/models/income_verification_precheck_confidence.rb +40 -0
  378. data/lib/plaid/models/income_verification_precheck_employer.rb +253 -0
  379. data/lib/plaid/models/income_verification_precheck_employer_address.rb +267 -0
  380. data/lib/plaid/models/income_verification_precheck_employer_address_data.rb +260 -0
  381. data/lib/plaid/models/income_verification_precheck_military_info.rb +232 -0
  382. data/lib/plaid/models/income_verification_precheck_payroll_institution.rb +221 -0
  383. data/lib/plaid/models/income_verification_precheck_request.rb +291 -0
  384. data/lib/plaid/models/income_verification_precheck_response.rb +254 -0
  385. data/lib/plaid/models/income_verification_precheck_user.rb +253 -0
  386. data/lib/plaid/models/income_verification_source_type.rb +39 -0
  387. data/lib/plaid/models/income_verification_status_webhook.rb +294 -0
  388. data/lib/plaid/models/income_verification_taxforms_get_request.rb +252 -0
  389. data/lib/plaid/models/income_verification_taxforms_get_response.rb +263 -0
  390. data/lib/plaid/models/income_verification_webhook_status.rb +224 -0
  391. data/lib/plaid/models/individual_name.rb +240 -0
  392. data/lib/plaid/models/individual_screening_hit_names.rb +254 -0
  393. data/lib/plaid/models/individual_watchlist_code.rb +59 -0
  394. data/lib/plaid/models/individual_watchlist_program.rb +363 -0
  395. data/lib/plaid/models/inflow_model.rb +285 -0
  396. data/lib/plaid/models/initial_update_webhook.rb +295 -0
  397. data/lib/plaid/models/institution.rb +369 -0
  398. data/lib/plaid/models/institution_status.rb +303 -0
  399. data/lib/plaid/models/institutions_get_by_id_request.rb +292 -0
  400. data/lib/plaid/models/institutions_get_by_id_request_options.rb +258 -0
  401. data/lib/plaid/models/institutions_get_by_id_response.rb +239 -0
  402. data/lib/plaid/models/institutions_get_request.rb +358 -0
  403. data/lib/plaid/models/institutions_get_request_options.rb +298 -0
  404. data/lib/plaid/models/institutions_get_response.rb +257 -0
  405. data/lib/plaid/models/institutions_search_account_filter.rb +254 -0
  406. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +232 -0
  407. data/lib/plaid/models/institutions_search_request.rb +322 -0
  408. data/lib/plaid/models/institutions_search_request_options.rb +267 -0
  409. data/lib/plaid/models/institutions_search_response.rb +242 -0
  410. data/lib/plaid/models/investment_account_subtype.rb +87 -0
  411. data/lib/plaid/models/investment_filter.rb +227 -0
  412. data/lib/plaid/models/investment_holdings_get_request_options.rb +222 -0
  413. data/lib/plaid/models/investment_transaction.rb +398 -0
  414. data/lib/plaid/models/investment_transaction_subtype.rb +85 -0
  415. data/lib/plaid/models/investment_transaction_type.rb +43 -0
  416. data/lib/plaid/models/investments_default_update_webhook.rb +309 -0
  417. data/lib/plaid/models/investments_holdings_get_request.rb +254 -0
  418. data/lib/plaid/models/investments_holdings_get_response.rb +290 -0
  419. data/lib/plaid/models/investments_transactions_get_request.rb +284 -0
  420. data/lib/plaid/models/investments_transactions_get_request_options.rb +289 -0
  421. data/lib/plaid/models/investments_transactions_get_response.rb +305 -0
  422. data/lib/plaid/models/investments_transactions_override.rb +319 -0
  423. data/lib/plaid/models/issuing_country.rb +39 -0
  424. data/lib/plaid/models/item.rb +375 -0
  425. data/lib/plaid/models/item_access_token_invalidate_request.rb +245 -0
  426. data/lib/plaid/models/item_access_token_invalidate_response.rb +240 -0
  427. data/lib/plaid/models/item_application_list_request.rb +241 -0
  428. data/lib/plaid/models/item_application_list_response.rb +237 -0
  429. data/lib/plaid/models/item_application_list_user_auth.rb +232 -0
  430. data/lib/plaid/models/item_application_scopes_update_request.rb +298 -0
  431. data/lib/plaid/models/item_application_scopes_update_response.rb +225 -0
  432. data/lib/plaid/models/item_error_webhook.rb +279 -0
  433. data/lib/plaid/models/item_get_request.rb +245 -0
  434. data/lib/plaid/models/item_get_response.rb +249 -0
  435. data/lib/plaid/models/item_import_request.rb +291 -0
  436. data/lib/plaid/models/item_import_request_options.rb +220 -0
  437. data/lib/plaid/models/item_import_request_user_auth.rb +240 -0
  438. data/lib/plaid/models/item_import_response.rb +240 -0
  439. data/lib/plaid/models/item_product_ready_webhook.rb +279 -0
  440. data/lib/plaid/models/item_public_token_create_request.rb +245 -0
  441. data/lib/plaid/models/item_public_token_create_response.rb +249 -0
  442. data/lib/plaid/models/item_public_token_exchange_request.rb +245 -0
  443. data/lib/plaid/models/item_public_token_exchange_response.rb +255 -0
  444. data/lib/plaid/models/item_remove_request.rb +245 -0
  445. data/lib/plaid/models/item_remove_response.rb +225 -0
  446. data/lib/plaid/models/item_status.rb +240 -0
  447. data/lib/plaid/models/item_status_investments.rb +232 -0
  448. data/lib/plaid/models/item_status_last_webhook.rb +232 -0
  449. data/lib/plaid/models/item_status_nullable.rb +247 -0
  450. data/lib/plaid/models/item_status_transactions.rb +232 -0
  451. data/lib/plaid/models/item_webhook_update_request.rb +256 -0
  452. data/lib/plaid/models/item_webhook_update_response.rb +239 -0
  453. data/lib/plaid/models/jwk_public_key.rb +341 -0
  454. data/lib/plaid/models/jwt_header.rb +224 -0
  455. data/lib/plaid/models/kyc_check_address_summary.rb +252 -0
  456. data/lib/plaid/models/kyc_check_date_of_birth_summary.rb +224 -0
  457. data/lib/plaid/models/kyc_check_details.rb +295 -0
  458. data/lib/plaid/models/kyc_check_id_number_summary.rb +224 -0
  459. data/lib/plaid/models/kyc_check_name_summary.rb +224 -0
  460. data/lib/plaid/models/kyc_check_phone_summary.rb +224 -0
  461. data/lib/plaid/models/liabilities_default_update_webhook.rb +313 -0
  462. data/lib/plaid/models/liabilities_get_request.rb +254 -0
  463. data/lib/plaid/models/liabilities_get_request_options.rb +222 -0
  464. data/lib/plaid/models/liabilities_get_response.rb +270 -0
  465. data/lib/plaid/models/liabilities_object.rb +249 -0
  466. data/lib/plaid/models/liability_override.rb +566 -0
  467. data/lib/plaid/models/link_delivery_create_request.rb +274 -0
  468. data/lib/plaid/models/link_delivery_create_response.rb +255 -0
  469. data/lib/plaid/models/link_delivery_delivery_method.rb +39 -0
  470. data/lib/plaid/models/link_delivery_get_request.rb +245 -0
  471. data/lib/plaid/models/link_delivery_get_response.rb +277 -0
  472. data/lib/plaid/models/link_delivery_session_status.rb +41 -0
  473. data/lib/plaid/models/link_o_auth_correlation_id_exchange_request.rb +245 -0
  474. data/lib/plaid/models/link_o_auth_correlation_id_exchange_response.rb +240 -0
  475. data/lib/plaid/models/link_token_account_filters.rb +246 -0
  476. data/lib/plaid/models/link_token_create_credit_filter.rb +222 -0
  477. data/lib/plaid/models/link_token_create_depository_filter.rb +222 -0
  478. data/lib/plaid/models/link_token_create_institution_data.rb +220 -0
  479. data/lib/plaid/models/link_token_create_investment_filter.rb +222 -0
  480. data/lib/plaid/models/link_token_create_loan_filter.rb +222 -0
  481. data/lib/plaid/models/link_token_create_request.rb +505 -0
  482. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +246 -0
  483. data/lib/plaid/models/link_token_create_request_auth.rb +296 -0
  484. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +225 -0
  485. data/lib/plaid/models/link_token_create_request_identity_verification.rb +246 -0
  486. data/lib/plaid/models/link_token_create_request_income_verification.rb +294 -0
  487. data/lib/plaid/models/link_token_create_request_income_verification_bank_income.rb +233 -0
  488. data/lib/plaid/models/link_token_create_request_income_verification_payroll_income.rb +233 -0
  489. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +264 -0
  490. data/lib/plaid/models/link_token_create_request_transfer.rb +230 -0
  491. data/lib/plaid/models/link_token_create_request_update.rb +222 -0
  492. data/lib/plaid/models/link_token_create_request_user.rb +324 -0
  493. data/lib/plaid/models/link_token_create_request_user_stated_income_source.rb +267 -0
  494. data/lib/plaid/models/link_token_create_response.rb +255 -0
  495. data/lib/plaid/models/link_token_eu_config.rb +220 -0
  496. data/lib/plaid/models/link_token_get_metadata_response.rb +306 -0
  497. data/lib/plaid/models/link_token_get_request.rb +245 -0
  498. data/lib/plaid/models/link_token_get_response.rb +276 -0
  499. data/lib/plaid/models/link_token_investments.rb +220 -0
  500. data/lib/plaid/models/loan.rb +224 -0
  501. data/lib/plaid/models/loan_account_subtype.rb +49 -0
  502. data/lib/plaid/models/loan_filter.rb +227 -0
  503. data/lib/plaid/models/loan_identifier.rb +231 -0
  504. data/lib/plaid/models/loan_identifier_type.rb +39 -0
  505. data/lib/plaid/models/loan_identifiers.rb +224 -0
  506. data/lib/plaid/models/loans.rb +224 -0
  507. data/lib/plaid/models/location.rb +298 -0
  508. data/lib/plaid/models/match_summary.rb +224 -0
  509. data/lib/plaid/models/match_summary_code.rb +42 -0
  510. data/lib/plaid/models/meta.rb +311 -0
  511. data/lib/plaid/models/mfa.rb +285 -0
  512. data/lib/plaid/models/mortgage_interest_rate.rb +232 -0
  513. data/lib/plaid/models/mortgage_liability.rb +444 -0
  514. data/lib/plaid/models/mortgage_property_address.rb +265 -0
  515. data/lib/plaid/models/multi_document_risk_signal.rb +244 -0
  516. data/lib/plaid/models/name_match_score.rb +254 -0
  517. data/lib/plaid/models/net_pay.rb +274 -0
  518. data/lib/plaid/models/new_accounts_available_webhook.rb +259 -0
  519. data/lib/plaid/models/numbers.rb +290 -0
  520. data/lib/plaid/models/numbers_ach.rb +288 -0
  521. data/lib/plaid/models/numbers_ach_nullable.rb +295 -0
  522. data/lib/plaid/models/numbers_bacs.rb +255 -0
  523. data/lib/plaid/models/numbers_bacs_nullable.rb +262 -0
  524. data/lib/plaid/models/numbers_eft.rb +270 -0
  525. data/lib/plaid/models/numbers_eft_nullable.rb +277 -0
  526. data/lib/plaid/models/numbers_iban_nullable.rb +210 -0
  527. data/lib/plaid/models/numbers_international.rb +255 -0
  528. data/lib/plaid/models/numbers_international_iban.rb +300 -0
  529. data/lib/plaid/models/numbers_international_nullable.rb +262 -0
  530. data/lib/plaid/models/originator.rb +239 -0
  531. data/lib/plaid/models/override_account_type.rb +43 -0
  532. data/lib/plaid/models/override_accounts.rb +393 -0
  533. data/lib/plaid/models/owner.rb +278 -0
  534. data/lib/plaid/models/owner_override.rb +278 -0
  535. data/lib/plaid/models/ownership_type.rb +42 -0
  536. data/lib/plaid/models/parties.rb +226 -0
  537. data/lib/plaid/models/partner_customer_create_request.rb +398 -0
  538. data/lib/plaid/models/partner_customer_create_response.rb +229 -0
  539. data/lib/plaid/models/partner_customer_enable_request.rb +244 -0
  540. data/lib/plaid/models/partner_customer_enable_response.rb +230 -0
  541. data/lib/plaid/models/partner_customer_get_request.rb +244 -0
  542. data/lib/plaid/models/partner_customer_get_response.rb +229 -0
  543. data/lib/plaid/models/partner_customer_remove_request.rb +244 -0
  544. data/lib/plaid/models/partner_customer_remove_response.rb +220 -0
  545. data/lib/plaid/models/partner_end_customer.rb +237 -0
  546. data/lib/plaid/models/partner_end_customer_address.rb +256 -0
  547. data/lib/plaid/models/partner_end_customer_assets_under_management.rb +238 -0
  548. data/lib/plaid/models/partner_end_customer_billing_contact.rb +237 -0
  549. data/lib/plaid/models/partner_end_customer_secrets.rb +230 -0
  550. data/lib/plaid/models/partner_end_customer_status.rb +41 -0
  551. data/lib/plaid/models/partner_end_customer_technical_contact.rb +237 -0
  552. data/lib/plaid/models/partner_end_customer_with_secrets.rb +254 -0
  553. data/lib/plaid/models/partner_end_customer_with_secrets_all_of.rb +218 -0
  554. data/lib/plaid/models/party.rb +252 -0
  555. data/lib/plaid/models/party_individual.rb +224 -0
  556. data/lib/plaid/models/party_role_type.rb +38 -0
  557. data/lib/plaid/models/pay.rb +232 -0
  558. data/lib/plaid/models/pay_frequency.rb +238 -0
  559. data/lib/plaid/models/pay_frequency_value.rb +43 -0
  560. data/lib/plaid/models/pay_period_details.rb +332 -0
  561. data/lib/plaid/models/pay_stub_deductions_breakdown.rb +265 -0
  562. data/lib/plaid/models/pay_stub_deductions_total.rb +254 -0
  563. data/lib/plaid/models/pay_stub_distribution_breakdown.rb +287 -0
  564. data/lib/plaid/models/pay_stub_earnings_breakdown.rb +298 -0
  565. data/lib/plaid/models/pay_stub_earnings_total.rb +265 -0
  566. data/lib/plaid/models/pay_stub_pay_period_details.rb +314 -0
  567. data/lib/plaid/models/pay_stub_taxpayer_id.rb +232 -0
  568. data/lib/plaid/models/payment_amount.rb +239 -0
  569. data/lib/plaid/models/payment_amount_currency.rb +45 -0
  570. data/lib/plaid/models/payment_amount_nullable.rb +239 -0
  571. data/lib/plaid/models/payment_amount_refunded.rb +246 -0
  572. data/lib/plaid/models/payment_amount_to_refund.rb +246 -0
  573. data/lib/plaid/models/payment_channel.rb +40 -0
  574. data/lib/plaid/models/payment_consent_max_payment_amount.rb +246 -0
  575. data/lib/plaid/models/payment_consent_periodic_alignment.rb +39 -0
  576. data/lib/plaid/models/payment_consent_periodic_amount.rb +252 -0
  577. data/lib/plaid/models/payment_consent_periodic_amount_amount.rb +246 -0
  578. data/lib/plaid/models/payment_consent_periodic_interval.rb +41 -0
  579. data/lib/plaid/models/payment_consent_valid_date_time.rb +232 -0
  580. data/lib/plaid/models/payment_initiation_address.rb +383 -0
  581. data/lib/plaid/models/payment_initiation_consent.rb +357 -0
  582. data/lib/plaid/models/payment_initiation_consent_constraints.rb +272 -0
  583. data/lib/plaid/models/payment_initiation_consent_create_request.rb +373 -0
  584. data/lib/plaid/models/payment_initiation_consent_create_response.rb +254 -0
  585. data/lib/plaid/models/payment_initiation_consent_get_request.rb +266 -0
  586. data/lib/plaid/models/payment_initiation_consent_get_response.rb +380 -0
  587. data/lib/plaid/models/payment_initiation_consent_payment_execute_request.rb +325 -0
  588. data/lib/plaid/models/payment_initiation_consent_payment_execute_response.rb +254 -0
  589. data/lib/plaid/models/payment_initiation_consent_revoke_request.rb +266 -0
  590. data/lib/plaid/models/payment_initiation_consent_revoke_response.rb +220 -0
  591. data/lib/plaid/models/payment_initiation_consent_scope.rb +39 -0
  592. data/lib/plaid/models/payment_initiation_consent_status.rb +42 -0
  593. data/lib/plaid/models/payment_initiation_metadata.rb +282 -0
  594. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +289 -0
  595. data/lib/plaid/models/payment_initiation_payment.rb +425 -0
  596. data/lib/plaid/models/payment_initiation_payment_create_request.rb +344 -0
  597. data/lib/plaid/models/payment_initiation_payment_create_response.rb +254 -0
  598. data/lib/plaid/models/payment_initiation_payment_create_status.rb +38 -0
  599. data/lib/plaid/models/payment_initiation_payment_get_request.rb +266 -0
  600. data/lib/plaid/models/payment_initiation_payment_get_response.rb +448 -0
  601. data/lib/plaid/models/payment_initiation_payment_list_request.rb +308 -0
  602. data/lib/plaid/models/payment_initiation_payment_list_response.rb +253 -0
  603. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +365 -0
  604. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +254 -0
  605. data/lib/plaid/models/payment_initiation_payment_status.rb +51 -0
  606. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +266 -0
  607. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +255 -0
  608. data/lib/plaid/models/payment_initiation_recipient.rb +271 -0
  609. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +323 -0
  610. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +240 -0
  611. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +266 -0
  612. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +294 -0
  613. data/lib/plaid/models/payment_initiation_recipient_get_response_all_of.rb +219 -0
  614. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +230 -0
  615. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +242 -0
  616. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +257 -0
  617. data/lib/plaid/models/payment_limits.rb +255 -0
  618. data/lib/plaid/models/payment_meta.rb +298 -0
  619. data/lib/plaid/models/payment_profile_create_request.rb +230 -0
  620. data/lib/plaid/models/payment_profile_create_response.rb +240 -0
  621. data/lib/plaid/models/payment_profile_get_request.rb +245 -0
  622. data/lib/plaid/models/payment_profile_get_response.rb +280 -0
  623. data/lib/plaid/models/payment_profile_remove_request.rb +245 -0
  624. data/lib/plaid/models/payment_profile_remove_response.rb +225 -0
  625. data/lib/plaid/models/payment_profile_status.rb +40 -0
  626. data/lib/plaid/models/payment_schedule_interval.rb +39 -0
  627. data/lib/plaid/models/payment_scheme.rb +41 -0
  628. data/lib/plaid/models/payment_status_update_webhook.rb +366 -0
  629. data/lib/plaid/models/payroll_income_account_data.rb +246 -0
  630. data/lib/plaid/models/payroll_income_object.rb +272 -0
  631. data/lib/plaid/models/payroll_income_rate_of_pay.rb +232 -0
  632. data/lib/plaid/models/payroll_item.rb +308 -0
  633. data/lib/plaid/models/payroll_item_status.rb +221 -0
  634. data/lib/plaid/models/payroll_risk_signals_item.rb +242 -0
  635. data/lib/plaid/models/paystub.rb +347 -0
  636. data/lib/plaid/models/paystub_address.rb +298 -0
  637. data/lib/plaid/models/paystub_deduction.rb +243 -0
  638. data/lib/plaid/models/paystub_details.rb +264 -0
  639. data/lib/plaid/models/paystub_employer.rb +230 -0
  640. data/lib/plaid/models/paystub_override.rb +248 -0
  641. data/lib/plaid/models/paystub_override_employee.rb +229 -0
  642. data/lib/plaid/models/paystub_override_employee_address.rb +260 -0
  643. data/lib/plaid/models/paystub_override_employer.rb +220 -0
  644. data/lib/plaid/models/paystub_pay_frequency.rb +42 -0
  645. data/lib/plaid/models/paystub_ytd_details.rb +232 -0
  646. data/lib/plaid/models/pending_expiration_webhook.rb +284 -0
  647. data/lib/plaid/models/personal_finance_category.rb +240 -0
  648. data/lib/plaid/models/phone_number.rb +289 -0
  649. data/lib/plaid/models/phone_number_match_score.rb +221 -0
  650. data/lib/plaid/models/phone_type.rb +39 -0
  651. data/lib/plaid/models/physical_document_category.rb +42 -0
  652. data/lib/plaid/models/physical_document_extracted_data.rb +293 -0
  653. data/lib/plaid/models/physical_document_extracted_data_analysis.rb +266 -0
  654. data/lib/plaid/models/physical_document_images.rb +269 -0
  655. data/lib/plaid/models/plaid_error.rb +319 -0
  656. data/lib/plaid/models/plaid_error_type.rb +51 -0
  657. data/lib/plaid/models/platform_ids.rb +243 -0
  658. data/lib/plaid/models/po_box_status.rb +40 -0
  659. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +260 -0
  660. data/lib/plaid/models/processor_auth_get_request.rb +245 -0
  661. data/lib/plaid/models/processor_auth_get_response.rb +253 -0
  662. data/lib/plaid/models/processor_balance_get_request.rb +254 -0
  663. data/lib/plaid/models/processor_balance_get_request_options.rb +220 -0
  664. data/lib/plaid/models/processor_balance_get_response.rb +239 -0
  665. data/lib/plaid/models/processor_bank_transfer_create_request.rb +459 -0
  666. data/lib/plaid/models/processor_bank_transfer_create_response.rb +239 -0
  667. data/lib/plaid/models/processor_identity_get_request.rb +245 -0
  668. data/lib/plaid/models/processor_identity_get_response.rb +239 -0
  669. data/lib/plaid/models/processor_number.rb +250 -0
  670. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +260 -0
  671. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +240 -0
  672. data/lib/plaid/models/processor_token_create_request.rb +309 -0
  673. data/lib/plaid/models/processor_token_create_response.rb +240 -0
  674. data/lib/plaid/models/product_access.rb +327 -0
  675. data/lib/plaid/models/product_status.rb +288 -0
  676. data/lib/plaid/models/product_status_breakdown.rb +299 -0
  677. data/lib/plaid/models/products.rb +54 -0
  678. data/lib/plaid/models/program_name_sensitivity.rb +41 -0
  679. data/lib/plaid/models/projected_income_summary_field_number.rb +246 -0
  680. data/lib/plaid/models/pslf_status.rb +243 -0
  681. data/lib/plaid/models/recaptcha_required_error.rb +314 -0
  682. data/lib/plaid/models/recipient_bacs.rb +282 -0
  683. data/lib/plaid/models/recipient_bacs_nullable.rb +289 -0
  684. data/lib/plaid/models/recurring_transaction_frequency.rb +42 -0
  685. data/lib/plaid/models/recurring_transactions_update_webhook.rb +286 -0
  686. data/lib/plaid/models/recurring_transfer.rb +431 -0
  687. data/lib/plaid/models/removed_transaction.rb +220 -0
  688. data/lib/plaid/models/report_type.rb +39 -0
  689. data/lib/plaid/models/reporting_information.rb +225 -0
  690. data/lib/plaid/models/risk_signal_document_reference.rb +231 -0
  691. data/lib/plaid/models/role.rb +224 -0
  692. data/lib/plaid/models/role_detail.rb +224 -0
  693. data/lib/plaid/models/roles.rb +224 -0
  694. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +245 -0
  695. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +225 -0
  696. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +270 -0
  697. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +225 -0
  698. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +319 -0
  699. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +225 -0
  700. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +303 -0
  701. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +240 -0
  702. data/lib/plaid/models/sandbox_item_reset_login_request.rb +245 -0
  703. data/lib/plaid/models/sandbox_item_reset_login_response.rb +240 -0
  704. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +309 -0
  705. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +225 -0
  706. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +240 -0
  707. data/lib/plaid/models/sandbox_payment_profile_reset_login_request.rb +245 -0
  708. data/lib/plaid/models/sandbox_payment_profile_reset_login_response.rb +240 -0
  709. data/lib/plaid/models/sandbox_processor_token_create_request.rb +254 -0
  710. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +236 -0
  711. data/lib/plaid/models/sandbox_processor_token_create_response.rb +240 -0
  712. data/lib/plaid/models/sandbox_public_token_create_request.rb +302 -0
  713. data/lib/plaid/models/sandbox_public_token_create_request_income_verification_bank_income.rb +220 -0
  714. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +264 -0
  715. data/lib/plaid/models/sandbox_public_token_create_request_options_income_verification.rb +231 -0
  716. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +230 -0
  717. data/lib/plaid/models/sandbox_public_token_create_response.rb +240 -0
  718. data/lib/plaid/models/sandbox_transfer_fire_webhook_request.rb +245 -0
  719. data/lib/plaid/models/sandbox_transfer_fire_webhook_response.rb +225 -0
  720. data/lib/plaid/models/sandbox_transfer_repayment_simulate_request.rb +230 -0
  721. data/lib/plaid/models/sandbox_transfer_repayment_simulate_response.rb +225 -0
  722. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +270 -0
  723. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +225 -0
  724. data/lib/plaid/models/sandbox_transfer_sweep_simulate_request.rb +230 -0
  725. data/lib/plaid/models/sandbox_transfer_sweep_simulate_response.rb +234 -0
  726. data/lib/plaid/models/sandbox_transfer_test_clock_advance_request.rb +266 -0
  727. data/lib/plaid/models/sandbox_transfer_test_clock_advance_response.rb +225 -0
  728. data/lib/plaid/models/sandbox_transfer_test_clock_create_request.rb +255 -0
  729. data/lib/plaid/models/sandbox_transfer_test_clock_create_response.rb +239 -0
  730. data/lib/plaid/models/sandbox_transfer_test_clock_get_request.rb +251 -0
  731. data/lib/plaid/models/sandbox_transfer_test_clock_get_response.rb +239 -0
  732. data/lib/plaid/models/scopes.rb +243 -0
  733. data/lib/plaid/models/scopes_context.rb +39 -0
  734. data/lib/plaid/models/scopes_nullable.rb +250 -0
  735. data/lib/plaid/models/screening_hit_analysis.rb +261 -0
  736. data/lib/plaid/models/screening_hit_data.rb +258 -0
  737. data/lib/plaid/models/screening_hit_date_of_birth_item.rb +228 -0
  738. data/lib/plaid/models/screening_hit_documents_items.rb +228 -0
  739. data/lib/plaid/models/screening_hit_names_items.rb +228 -0
  740. data/lib/plaid/models/screening_status_updated_webhook.rb +265 -0
  741. data/lib/plaid/models/security.rb +390 -0
  742. data/lib/plaid/models/security_override.rb +270 -0
  743. data/lib/plaid/models/sender_bacs_nullable.rb +289 -0
  744. data/lib/plaid/models/service.rb +238 -0
  745. data/lib/plaid/models/service_product_fulfillment.rb +224 -0
  746. data/lib/plaid/models/service_product_fulfillment_detail.rb +235 -0
  747. data/lib/plaid/models/service_product_fulfillment_identifier.rb +38 -0
  748. data/lib/plaid/models/servicer_address_data.rb +265 -0
  749. data/lib/plaid/models/services.rb +224 -0
  750. data/lib/plaid/models/signal_address_data.rb +263 -0
  751. data/lib/plaid/models/signal_decision_outcome.rb +42 -0
  752. data/lib/plaid/models/signal_decision_report_request.rb +349 -0
  753. data/lib/plaid/models/signal_decision_report_response.rb +225 -0
  754. data/lib/plaid/models/signal_device.rb +232 -0
  755. data/lib/plaid/models/signal_evaluate_core_attributes.rb +925 -0
  756. data/lib/plaid/models/signal_evaluate_request.rb +398 -0
  757. data/lib/plaid/models/signal_evaluate_response.rb +248 -0
  758. data/lib/plaid/models/signal_payment_method.rb +43 -0
  759. data/lib/plaid/models/signal_person_name.rb +265 -0
  760. data/lib/plaid/models/signal_prepare_request.rb +245 -0
  761. data/lib/plaid/models/signal_prepare_response.rb +225 -0
  762. data/lib/plaid/models/signal_return_report_request.rb +301 -0
  763. data/lib/plaid/models/signal_return_report_response.rb +225 -0
  764. data/lib/plaid/models/signal_scores.rb +228 -0
  765. data/lib/plaid/models/signal_user.rb +252 -0
  766. data/lib/plaid/models/simulated_transfer_sweep.rb +288 -0
  767. data/lib/plaid/models/single_document_risk_signal.rb +255 -0
  768. data/lib/plaid/models/source.rb +41 -0
  769. data/lib/plaid/models/standalone_account_type.rb +285 -0
  770. data/lib/plaid/models/standalone_currency_code_list.rb +240 -0
  771. data/lib/plaid/models/standalone_investment_transaction_type.rb +300 -0
  772. data/lib/plaid/models/status.rb +232 -0
  773. data/lib/plaid/models/statuses.rb +224 -0
  774. data/lib/plaid/models/strategy.rb +41 -0
  775. data/lib/plaid/models/student_loan.rb +492 -0
  776. data/lib/plaid/models/student_loan_repayment_model.rb +255 -0
  777. data/lib/plaid/models/student_loan_status.rb +266 -0
  778. data/lib/plaid/models/student_repayment_plan.rb +266 -0
  779. data/lib/plaid/models/sync_updates_available_webhook.rb +299 -0
  780. data/lib/plaid/models/taxform.rb +244 -0
  781. data/lib/plaid/models/taxpayer_id.rb +269 -0
  782. data/lib/plaid/models/taxpayer_identifier.rb +231 -0
  783. data/lib/plaid/models/taxpayer_identifier_type.rb +39 -0
  784. data/lib/plaid/models/taxpayer_identifiers.rb +224 -0
  785. data/lib/plaid/models/total.rb +249 -0
  786. data/lib/plaid/models/total_canonical_description.rb +54 -0
  787. data/lib/plaid/models/transaction.rb +561 -0
  788. data/lib/plaid/models/transaction_all_of.rb +311 -0
  789. data/lib/plaid/models/transaction_base.rb +458 -0
  790. data/lib/plaid/models/transaction_code.rb +50 -0
  791. data/lib/plaid/models/transaction_data.rb +285 -0
  792. data/lib/plaid/models/transaction_frequency.rb +41 -0
  793. data/lib/plaid/models/transaction_override.rb +280 -0
  794. data/lib/plaid/models/transaction_stream.rb +426 -0
  795. data/lib/plaid/models/transaction_stream_amount.rb +242 -0
  796. data/lib/plaid/models/transaction_stream_status.rb +41 -0
  797. data/lib/plaid/models/transactions_category_rule.rb +259 -0
  798. data/lib/plaid/models/transactions_enhance_get_request.rb +262 -0
  799. data/lib/plaid/models/transactions_enhance_get_response.rb +227 -0
  800. data/lib/plaid/models/transactions_enrich_get_request.rb +274 -0
  801. data/lib/plaid/models/transactions_enrich_get_response.rb +237 -0
  802. data/lib/plaid/models/transactions_get_request.rb +284 -0
  803. data/lib/plaid/models/transactions_get_request_options.rb +326 -0
  804. data/lib/plaid/models/transactions_get_response.rb +288 -0
  805. data/lib/plaid/models/transactions_recurring_get_request.rb +271 -0
  806. data/lib/plaid/models/transactions_recurring_get_request_options.rb +222 -0
  807. data/lib/plaid/models/transactions_recurring_get_response.rb +274 -0
  808. data/lib/plaid/models/transactions_refresh_request.rb +245 -0
  809. data/lib/plaid/models/transactions_refresh_response.rb +225 -0
  810. data/lib/plaid/models/transactions_removed_webhook.rb +296 -0
  811. data/lib/plaid/models/transactions_rule_details.rb +253 -0
  812. data/lib/plaid/models/transactions_rule_field.rb +39 -0
  813. data/lib/plaid/models/transactions_rule_type.rb +39 -0
  814. data/lib/plaid/models/transactions_rules_create_request.rb +274 -0
  815. data/lib/plaid/models/transactions_rules_create_response.rb +239 -0
  816. data/lib/plaid/models/transactions_rules_list_request.rb +245 -0
  817. data/lib/plaid/models/transactions_rules_list_response.rb +242 -0
  818. data/lib/plaid/models/transactions_rules_remove_request.rb +260 -0
  819. data/lib/plaid/models/transactions_rules_remove_response.rb +225 -0
  820. data/lib/plaid/models/transactions_sync_request.rb +302 -0
  821. data/lib/plaid/models/transactions_sync_request_options.rb +235 -0
  822. data/lib/plaid/models/transactions_sync_response.rb +306 -0
  823. data/lib/plaid/models/transfer.rb +502 -0
  824. data/lib/plaid/models/transfer_authorization.rb +298 -0
  825. data/lib/plaid/models/transfer_authorization_create_request.rb +429 -0
  826. data/lib/plaid/models/transfer_authorization_create_response.rb +239 -0
  827. data/lib/plaid/models/transfer_authorization_decision.rb +39 -0
  828. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +239 -0
  829. data/lib/plaid/models/transfer_authorization_decision_rationale_code.rb +45 -0
  830. data/lib/plaid/models/transfer_authorization_device.rb +230 -0
  831. data/lib/plaid/models/transfer_authorization_guarantee_decision.rb +40 -0
  832. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale.rb +239 -0
  833. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale_code.rb +42 -0
  834. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +328 -0
  835. data/lib/plaid/models/transfer_authorization_user_in_request.rb +254 -0
  836. data/lib/plaid/models/transfer_cancel_request.rb +245 -0
  837. data/lib/plaid/models/transfer_cancel_response.rb +225 -0
  838. data/lib/plaid/models/transfer_create_request.rb +428 -0
  839. data/lib/plaid/models/transfer_create_response.rb +239 -0
  840. data/lib/plaid/models/transfer_device.rb +240 -0
  841. data/lib/plaid/models/transfer_diligence_status.rb +40 -0
  842. data/lib/plaid/models/transfer_event.rb +399 -0
  843. data/lib/plaid/models/transfer_event_list_request.rb +397 -0
  844. data/lib/plaid/models/transfer_event_list_response.rb +241 -0
  845. data/lib/plaid/models/transfer_event_list_transfer_type.rb +40 -0
  846. data/lib/plaid/models/transfer_event_sync_request.rb +305 -0
  847. data/lib/plaid/models/transfer_event_sync_response.rb +241 -0
  848. data/lib/plaid/models/transfer_event_type.rb +46 -0
  849. data/lib/plaid/models/transfer_events_update_webhook.rb +254 -0
  850. data/lib/plaid/models/transfer_failure.rb +231 -0
  851. data/lib/plaid/models/transfer_get_request.rb +245 -0
  852. data/lib/plaid/models/transfer_get_response.rb +239 -0
  853. data/lib/plaid/models/transfer_intent_authorization_decision.rb +39 -0
  854. data/lib/plaid/models/transfer_intent_create.rb +395 -0
  855. data/lib/plaid/models/transfer_intent_create_mode.rb +39 -0
  856. data/lib/plaid/models/transfer_intent_create_request.rb +394 -0
  857. data/lib/plaid/models/transfer_intent_create_response.rb +239 -0
  858. data/lib/plaid/models/transfer_intent_get.rb +456 -0
  859. data/lib/plaid/models/transfer_intent_get_failure_reason.rb +240 -0
  860. data/lib/plaid/models/transfer_intent_get_request.rb +245 -0
  861. data/lib/plaid/models/transfer_intent_get_response.rb +239 -0
  862. data/lib/plaid/models/transfer_intent_status.rb +40 -0
  863. data/lib/plaid/models/transfer_list_request.rb +341 -0
  864. data/lib/plaid/models/transfer_list_response.rb +241 -0
  865. data/lib/plaid/models/transfer_migrate_account_request.rb +285 -0
  866. data/lib/plaid/models/transfer_migrate_account_response.rb +255 -0
  867. data/lib/plaid/models/transfer_network.rb +40 -0
  868. data/lib/plaid/models/transfer_originator_create_request.rb +245 -0
  869. data/lib/plaid/models/transfer_originator_create_response.rb +255 -0
  870. data/lib/plaid/models/transfer_originator_get_request.rb +245 -0
  871. data/lib/plaid/models/transfer_originator_get_response.rb +239 -0
  872. data/lib/plaid/models/transfer_originator_list_request.rb +297 -0
  873. data/lib/plaid/models/transfer_originator_list_response.rb +241 -0
  874. data/lib/plaid/models/transfer_questionnaire_create_request.rb +302 -0
  875. data/lib/plaid/models/transfer_questionnaire_create_response.rb +240 -0
  876. data/lib/plaid/models/transfer_recurring_cancel_request.rb +255 -0
  877. data/lib/plaid/models/transfer_recurring_cancel_response.rb +225 -0
  878. data/lib/plaid/models/transfer_recurring_create_request.rb +424 -0
  879. data/lib/plaid/models/transfer_recurring_create_response.rb +239 -0
  880. data/lib/plaid/models/transfer_recurring_get_request.rb +255 -0
  881. data/lib/plaid/models/transfer_recurring_get_response.rb +239 -0
  882. data/lib/plaid/models/transfer_recurring_list_request.rb +329 -0
  883. data/lib/plaid/models/transfer_recurring_list_response.rb +241 -0
  884. data/lib/plaid/models/transfer_recurring_schedule.rb +260 -0
  885. data/lib/plaid/models/transfer_recurring_status.rb +40 -0
  886. data/lib/plaid/models/transfer_refund.rb +284 -0
  887. data/lib/plaid/models/transfer_refund_cancel_request.rb +245 -0
  888. data/lib/plaid/models/transfer_refund_cancel_response.rb +225 -0
  889. data/lib/plaid/models/transfer_refund_create_request.rb +296 -0
  890. data/lib/plaid/models/transfer_refund_create_response.rb +239 -0
  891. data/lib/plaid/models/transfer_refund_get_request.rb +245 -0
  892. data/lib/plaid/models/transfer_refund_get_response.rb +239 -0
  893. data/lib/plaid/models/transfer_refund_status.rb +41 -0
  894. data/lib/plaid/models/transfer_repayment.rb +270 -0
  895. data/lib/plaid/models/transfer_repayment_list_request.rb +320 -0
  896. data/lib/plaid/models/transfer_repayment_list_response.rb +241 -0
  897. data/lib/plaid/models/transfer_repayment_return.rb +291 -0
  898. data/lib/plaid/models/transfer_repayment_return_list_request.rb +313 -0
  899. data/lib/plaid/models/transfer_repayment_return_list_response.rb +241 -0
  900. data/lib/plaid/models/transfer_schedule_interval_unit.rb +39 -0
  901. data/lib/plaid/models/transfer_status.rb +43 -0
  902. data/lib/plaid/models/transfer_sweep.rb +281 -0
  903. data/lib/plaid/models/transfer_sweep_get_request.rb +245 -0
  904. data/lib/plaid/models/transfer_sweep_get_response.rb +239 -0
  905. data/lib/plaid/models/transfer_sweep_list_request.rb +331 -0
  906. data/lib/plaid/models/transfer_sweep_list_response.rb +241 -0
  907. data/lib/plaid/models/transfer_sweep_status.rb +42 -0
  908. data/lib/plaid/models/transfer_test_clock.rb +236 -0
  909. data/lib/plaid/models/transfer_type.rb +39 -0
  910. data/lib/plaid/models/transfer_user_address_in_request.rb +260 -0
  911. data/lib/plaid/models/transfer_user_address_in_response.rb +265 -0
  912. data/lib/plaid/models/transfer_user_in_request.rb +254 -0
  913. data/lib/plaid/models/transfer_user_in_request_deprecated.rb +249 -0
  914. data/lib/plaid/models/transfer_user_in_response.rb +257 -0
  915. data/lib/plaid/models/update_entity_screening_request_search_terms.rb +366 -0
  916. data/lib/plaid/models/update_individual_screening_request_search_terms.rb +311 -0
  917. data/lib/plaid/models/user_address.rb +317 -0
  918. data/lib/plaid/models/user_create_request.rb +275 -0
  919. data/lib/plaid/models/user_create_response.rb +255 -0
  920. data/lib/plaid/models/user_custom_password.rb +297 -0
  921. data/lib/plaid/models/user_id_number.rb +239 -0
  922. data/lib/plaid/models/user_name.rb +240 -0
  923. data/lib/plaid/models/user_permission_revoked_webhook.rb +279 -0
  924. data/lib/plaid/models/user_stated_income_source_category.rb +48 -0
  925. data/lib/plaid/models/user_stated_income_source_frequency.rb +42 -0
  926. data/lib/plaid/models/user_stated_income_source_pay_type.rb +40 -0
  927. data/lib/plaid/models/validation_source.rb +232 -0
  928. data/lib/plaid/models/validation_sources.rb +227 -0
  929. data/lib/plaid/models/verification_expired_webhook.rb +284 -0
  930. data/lib/plaid/models/verification_of_asset.rb +252 -0
  931. data/lib/plaid/models/verification_of_asset_response.rb +224 -0
  932. data/lib/plaid/models/verification_refresh_status.rb +40 -0
  933. data/lib/plaid/models/verification_status.rb +42 -0
  934. data/lib/plaid/models/w2.rb +437 -0
  935. data/lib/plaid/models/w2_box12.rb +232 -0
  936. data/lib/plaid/models/w2_state_and_local_wages.rb +287 -0
  937. data/lib/plaid/models/wallet.rb +263 -0
  938. data/lib/plaid/models/wallet_balance.rb +240 -0
  939. data/lib/plaid/models/wallet_create_request.rb +244 -0
  940. data/lib/plaid/models/wallet_create_response.rb +286 -0
  941. data/lib/plaid/models/wallet_get_request.rb +266 -0
  942. data/lib/plaid/models/wallet_get_response.rb +286 -0
  943. data/lib/plaid/models/wallet_iso_currency_code.rb +39 -0
  944. data/lib/plaid/models/wallet_list_request.rb +304 -0
  945. data/lib/plaid/models/wallet_list_response.rb +252 -0
  946. data/lib/plaid/models/wallet_numbers.rb +230 -0
  947. data/lib/plaid/models/wallet_transaction.rb +372 -0
  948. data/lib/plaid/models/wallet_transaction_amount.rb +260 -0
  949. data/lib/plaid/models/wallet_transaction_counterparty.rb +260 -0
  950. data/lib/plaid/models/wallet_transaction_counterparty_bacs.rb +289 -0
  951. data/lib/plaid/models/wallet_transaction_counterparty_international.rb +246 -0
  952. data/lib/plaid/models/wallet_transaction_counterparty_numbers.rb +229 -0
  953. data/lib/plaid/models/wallet_transaction_execute_request.rb +384 -0
  954. data/lib/plaid/models/wallet_transaction_execute_response.rb +254 -0
  955. data/lib/plaid/models/wallet_transaction_get_request.rb +266 -0
  956. data/lib/plaid/models/wallet_transaction_get_response.rb +395 -0
  957. data/lib/plaid/models/wallet_transaction_list_request.rb +341 -0
  958. data/lib/plaid/models/wallet_transaction_list_request_options.rb +230 -0
  959. data/lib/plaid/models/wallet_transaction_list_response.rb +252 -0
  960. data/lib/plaid/models/wallet_transaction_status.rb +43 -0
  961. data/lib/plaid/models/wallet_transaction_status_update_webhook.rb +312 -0
  962. data/lib/plaid/models/wallet_transactions_list_request.rb +341 -0
  963. data/lib/plaid/models/warning.rb +288 -0
  964. data/lib/plaid/models/watchlist_screening_audit_trail.rb +250 -0
  965. data/lib/plaid/models/watchlist_screening_document.rb +260 -0
  966. data/lib/plaid/models/watchlist_screening_document_type.rb +50 -0
  967. data/lib/plaid/models/watchlist_screening_entity_create_request.rb +271 -0
  968. data/lib/plaid/models/watchlist_screening_entity_create_response.rb +321 -0
  969. data/lib/plaid/models/watchlist_screening_entity_get_request.rb +245 -0
  970. data/lib/plaid/models/watchlist_screening_entity_get_response.rb +321 -0
  971. data/lib/plaid/models/watchlist_screening_entity_history_list_request.rb +256 -0
  972. data/lib/plaid/models/watchlist_screening_entity_history_list_response.rb +253 -0
  973. data/lib/plaid/models/watchlist_screening_entity_hit_list_request.rb +256 -0
  974. data/lib/plaid/models/watchlist_screening_entity_hit_list_response.rb +253 -0
  975. data/lib/plaid/models/watchlist_screening_entity_list_request.rb +302 -0
  976. data/lib/plaid/models/watchlist_screening_entity_list_response.rb +253 -0
  977. data/lib/plaid/models/watchlist_screening_entity_program_get_request.rb +245 -0
  978. data/lib/plaid/models/watchlist_screening_entity_program_get_response.rb +378 -0
  979. data/lib/plaid/models/watchlist_screening_entity_program_list_request.rb +241 -0
  980. data/lib/plaid/models/watchlist_screening_entity_program_list_response.rb +253 -0
  981. data/lib/plaid/models/watchlist_screening_entity_review_create_request.rb +307 -0
  982. data/lib/plaid/models/watchlist_screening_entity_review_create_response.rb +316 -0
  983. data/lib/plaid/models/watchlist_screening_entity_review_list_request.rb +256 -0
  984. data/lib/plaid/models/watchlist_screening_entity_review_list_response.rb +253 -0
  985. data/lib/plaid/models/watchlist_screening_entity_update_request.rb +314 -0
  986. data/lib/plaid/models/watchlist_screening_entity_update_request_resettable_field.rb +38 -0
  987. data/lib/plaid/models/watchlist_screening_entity_update_response.rb +321 -0
  988. data/lib/plaid/models/watchlist_screening_hit.rb +351 -0
  989. data/lib/plaid/models/watchlist_screening_hit_locations.rb +261 -0
  990. data/lib/plaid/models/watchlist_screening_hit_status.rb +40 -0
  991. data/lib/plaid/models/watchlist_screening_individual.rb +306 -0
  992. data/lib/plaid/models/watchlist_screening_individual_create_request.rb +271 -0
  993. data/lib/plaid/models/watchlist_screening_individual_create_response.rb +321 -0
  994. data/lib/plaid/models/watchlist_screening_individual_get_request.rb +245 -0
  995. data/lib/plaid/models/watchlist_screening_individual_get_response.rb +321 -0
  996. data/lib/plaid/models/watchlist_screening_individual_history_list_request.rb +256 -0
  997. data/lib/plaid/models/watchlist_screening_individual_history_list_response.rb +253 -0
  998. data/lib/plaid/models/watchlist_screening_individual_hit_list_request.rb +256 -0
  999. data/lib/plaid/models/watchlist_screening_individual_hit_list_response.rb +253 -0
  1000. data/lib/plaid/models/watchlist_screening_individual_list_request.rb +302 -0
  1001. data/lib/plaid/models/watchlist_screening_individual_list_response.rb +253 -0
  1002. data/lib/plaid/models/watchlist_screening_individual_program_get_request.rb +245 -0
  1003. data/lib/plaid/models/watchlist_screening_individual_program_get_response.rb +378 -0
  1004. data/lib/plaid/models/watchlist_screening_individual_program_list_request.rb +241 -0
  1005. data/lib/plaid/models/watchlist_screening_individual_program_list_response.rb +253 -0
  1006. data/lib/plaid/models/watchlist_screening_individual_review_create_request.rb +307 -0
  1007. data/lib/plaid/models/watchlist_screening_individual_review_create_response.rb +316 -0
  1008. data/lib/plaid/models/watchlist_screening_individual_review_list_request.rb +256 -0
  1009. data/lib/plaid/models/watchlist_screening_individual_review_list_response.rb +253 -0
  1010. data/lib/plaid/models/watchlist_screening_individual_update_request.rb +314 -0
  1011. data/lib/plaid/models/watchlist_screening_individual_update_request_resettable_field.rb +38 -0
  1012. data/lib/plaid/models/watchlist_screening_individual_update_response.rb +321 -0
  1013. data/lib/plaid/models/watchlist_screening_request_search_terms.rb +325 -0
  1014. data/lib/plaid/models/watchlist_screening_review.rb +301 -0
  1015. data/lib/plaid/models/watchlist_screening_search_terms.rb +343 -0
  1016. data/lib/plaid/models/watchlist_screening_status.rb +40 -0
  1017. data/lib/plaid/models/weak_alias_determination.rb +40 -0
  1018. data/lib/plaid/models/webhook_environment_values.rb +40 -0
  1019. data/lib/plaid/models/webhook_type.rb +43 -0
  1020. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +294 -0
  1021. data/lib/plaid/models/webhook_verification_key_get_request.rb +245 -0
  1022. data/lib/plaid/models/webhook_verification_key_get_response.rb +239 -0
  1023. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +246 -0
  1024. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +246 -0
  1025. data/lib/plaid/version.rb +13 -2
  1026. data/lib/plaid.rb +1043 -61
  1027. data/plaid.gemspec +44 -48
  1028. data/templates/ruby/api_client.mustache +278 -0
  1029. data/templates/ruby/api_client_faraday_partial.mustache +118 -0
  1030. data/templates/ruby/api_error.mustache +49 -0
  1031. data/templates/ruby/configuration.mustache +355 -0
  1032. data/templates/ruby/gemspec.mustache +42 -0
  1033. data/templates/ruby/partial_model_enum_class.mustache +22 -0
  1034. data/templates/ruby/partial_model_generic.mustache +362 -0
  1035. data/test/test_accounts.rb +99 -0
  1036. data/test/test_api_client.rb +23 -0
  1037. data/test/test_asset_report.rb +147 -0
  1038. data/test/test_auth.rb +61 -0
  1039. data/test/test_bank_transfers.rb +219 -0
  1040. data/test/test_categories.rb +10 -0
  1041. data/test/test_configuration.rb +26 -0
  1042. data/test/test_deposit_switch.rb +73 -0
  1043. data/test/test_helper.rb +109 -0
  1044. data/test/test_identity.rb +38 -0
  1045. data/test/test_identity_verification.rb +51 -0
  1046. data/test/test_institutions.rb +159 -0
  1047. data/test/test_investments.rb +208 -0
  1048. data/test/test_item.rb +275 -0
  1049. data/test/test_liabilities.rb +45 -0
  1050. data/test/test_link_token.rb +131 -0
  1051. data/test/test_monitor.rb +55 -0
  1052. data/test/test_payment_initiation.rb +94 -0
  1053. data/test/test_processor.rb +52 -0
  1054. data/test/test_sandbox.rb +31 -0
  1055. data/test/test_transactions.rb +168 -0
  1056. data/test/test_webhooks.rb +22 -0
  1057. metadata +1092 -88
  1058. data/.circleci/config.yml +0 -21
  1059. data/.env.sample +0 -3
  1060. data/.github/workflows/add_to_project.yml +0 -21
  1061. data/.rubocop.yml +0 -18
  1062. data/PUBLISH.md +0 -20
  1063. data/bin/console +0 -14
  1064. data/bin/setup +0 -8
  1065. data/lib/plaid/client.rb +0 -190
  1066. data/lib/plaid/errors.rb +0 -89
  1067. data/lib/plaid/middleware.rb +0 -31
  1068. data/lib/plaid/models.rb +0 -2221
  1069. data/lib/plaid/products/accounts.rb +0 -63
  1070. data/lib/plaid/products/asset_report.rb +0 -199
  1071. data/lib/plaid/products/auth.rb +0 -42
  1072. data/lib/plaid/products/base_product.rb +0 -64
  1073. data/lib/plaid/products/categories.rb +0 -21
  1074. data/lib/plaid/products/credit_details.rb +0 -40
  1075. data/lib/plaid/products/deposit_switch.rb +0 -99
  1076. data/lib/plaid/products/identity.rb +0 -31
  1077. data/lib/plaid/products/income.rb +0 -31
  1078. data/lib/plaid/products/institutions.rb +0 -91
  1079. data/lib/plaid/products/investments.rb +0 -127
  1080. data/lib/plaid/products/item.rb +0 -209
  1081. data/lib/plaid/products/liabilities.rb +0 -39
  1082. data/lib/plaid/products/link_token.rb +0 -74
  1083. data/lib/plaid/products/payment_initiation.rb +0 -251
  1084. data/lib/plaid/products/processor.rb +0 -190
  1085. data/lib/plaid/products/sandbox.rb +0 -148
  1086. data/lib/plaid/products/transactions.rb +0 -81
  1087. data/lib/plaid/products/webhooks.rb +0 -23
@@ -0,0 +1,369 @@
1
+ =begin
2
+ #The Plaid API
3
+
4
+ #The Plaid REST API. Please see https://plaid.com/docs/api for more details.
5
+
6
+ The version of the OpenAPI document: 2020-09-14_1.205.3
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Plaid
17
+ # Identity information about an account
18
+ class AccountIdentity
19
+ # Plaid’s unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new `account_id` will be assigned to the account. The `account_id` can also change if the `access_token` is deleted and the same credentials that were used to generate that `access_token` are used to generate a new `access_token` on a later date. In that case, the new `account_id` will be different from the old `account_id`. If an account with a specific `account_id` disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API. Like all Plaid identifiers, the `account_id` is case sensitive.
20
+ attr_accessor :account_id
21
+
22
+ attr_accessor :balances
23
+
24
+ # The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user.
25
+ attr_accessor :mask
26
+
27
+ # The name of the account, either assigned by the user or by the financial institution itself
28
+ attr_accessor :name
29
+
30
+ # The official name of the account as given by the financial institution
31
+ attr_accessor :official_name
32
+
33
+ attr_accessor :type
34
+
35
+ attr_accessor :subtype
36
+
37
+ # The current verification status of an Auth Item initiated through Automated or Manual micro-deposits. Returned for Auth Items only. `pending_automatic_verification`: The Item is pending automatic verification `pending_manual_verification`: The Item is pending manual micro-deposit verification. Items remain in this state until the user successfully verifies the two amounts. `automatically_verified`: The Item has successfully been automatically verified `manually_verified`: The Item has successfully been manually verified `verification_expired`: Plaid was unable to automatically verify the deposit within 7 calendar days and will no longer attempt to validate the Item. Users may retry by submitting their information again through Link. `verification_failed`: The Item failed manual micro-deposit verification because the user exhausted all 3 verification attempts. Users may retry by submitting their information again through Link.
38
+ attr_accessor :verification_status
39
+
40
+ # Data returned by the financial institution about the account owner or owners. Only returned by Identity or Assets endpoints. For business accounts, the name reported may be either the name of the individual or the name of the business, depending on the institution. Multiple owners on a single account will be represented in the same `owner` object, not in multiple owner objects within the array. In API versions 2018-05-22 and earlier, the `owners` object is not returned, and instead identity information is returned in the top level `identity` object. For more details, see [Plaid API versioning](https://plaid.com/docs/api/versioning/#version-2019-05-29)
41
+ attr_accessor :owners
42
+
43
+ class EnumAttributeValidator
44
+ attr_reader :datatype
45
+ attr_reader :allowable_values
46
+
47
+ def initialize(datatype, allowable_values)
48
+ @allowable_values = allowable_values.map do |value|
49
+ case datatype.to_s
50
+ when /Integer/i
51
+ value.to_i
52
+ when /Float/i
53
+ value.to_f
54
+ else
55
+ value
56
+ end
57
+ end
58
+ end
59
+
60
+ def valid?(value)
61
+ !value || allowable_values.include?(value)
62
+ end
63
+ end
64
+
65
+ # Attribute mapping from ruby-style variable name to JSON key.
66
+ def self.attribute_map
67
+ {
68
+ :'account_id' => :'account_id',
69
+ :'balances' => :'balances',
70
+ :'mask' => :'mask',
71
+ :'name' => :'name',
72
+ :'official_name' => :'official_name',
73
+ :'type' => :'type',
74
+ :'subtype' => :'subtype',
75
+ :'verification_status' => :'verification_status',
76
+ :'owners' => :'owners'
77
+ }
78
+ end
79
+
80
+ # Returns all the JSON keys this model knows about
81
+ def self.acceptable_attributes
82
+ attribute_map.values
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ def self.openapi_types
87
+ {
88
+ :'account_id' => :'String',
89
+ :'balances' => :'AccountBalance',
90
+ :'mask' => :'String',
91
+ :'name' => :'String',
92
+ :'official_name' => :'String',
93
+ :'type' => :'AccountType',
94
+ :'subtype' => :'AccountSubtype',
95
+ :'verification_status' => :'String',
96
+ :'owners' => :'Array<Owner>'
97
+ }
98
+ end
99
+
100
+ # List of attributes with nullable: true
101
+ def self.openapi_nullable
102
+ Set.new([
103
+ :'mask',
104
+ :'official_name',
105
+ :'subtype',
106
+ ])
107
+ end
108
+
109
+ # List of class defined in allOf (OpenAPI v3)
110
+ def self.openapi_all_of
111
+ [
112
+ :'AccountBase',
113
+ :'AccountIdentityAllOf'
114
+ ]
115
+ end
116
+
117
+ # Initializes the object
118
+ # @param [Hash] attributes Model attributes in the form of hash
119
+ def initialize(attributes = {})
120
+ if (!attributes.is_a?(Hash))
121
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::AccountIdentity` initialize method"
122
+ end
123
+
124
+ # check to see if the attribute exists and convert string to symbol for hash key
125
+ attributes = attributes.each_with_object({}) { |(k, v), h|
126
+ if (!self.class.attribute_map.key?(k.to_sym))
127
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::AccountIdentity`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
128
+ end
129
+ h[k.to_sym] = v
130
+ }
131
+
132
+ if attributes.key?(:'account_id')
133
+ self.account_id = attributes[:'account_id']
134
+ end
135
+
136
+ if attributes.key?(:'balances')
137
+ self.balances = attributes[:'balances']
138
+ end
139
+
140
+ if attributes.key?(:'mask')
141
+ self.mask = attributes[:'mask']
142
+ end
143
+
144
+ if attributes.key?(:'name')
145
+ self.name = attributes[:'name']
146
+ end
147
+
148
+ if attributes.key?(:'official_name')
149
+ self.official_name = attributes[:'official_name']
150
+ end
151
+
152
+ if attributes.key?(:'type')
153
+ self.type = attributes[:'type']
154
+ end
155
+
156
+ if attributes.key?(:'subtype')
157
+ self.subtype = attributes[:'subtype']
158
+ end
159
+
160
+ if attributes.key?(:'verification_status')
161
+ self.verification_status = attributes[:'verification_status']
162
+ end
163
+
164
+ if attributes.key?(:'owners')
165
+ if (value = attributes[:'owners']).is_a?(Array)
166
+ self.owners = value
167
+ end
168
+ end
169
+ end
170
+
171
+ # Show invalid properties with the reasons. Usually used together with valid?
172
+ # @return Array for valid properties with the reasons
173
+ def list_invalid_properties
174
+ invalid_properties = Array.new
175
+ if @account_id.nil?
176
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
177
+ end
178
+
179
+ if @balances.nil?
180
+ invalid_properties.push('invalid value for "balances", balances cannot be nil.')
181
+ end
182
+
183
+ if @name.nil?
184
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
185
+ end
186
+
187
+ if @type.nil?
188
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
189
+ end
190
+
191
+ if @owners.nil?
192
+ invalid_properties.push('invalid value for "owners", owners cannot be nil.')
193
+ end
194
+
195
+ invalid_properties
196
+ end
197
+
198
+ # Check to see if the all the properties in the model are valid
199
+ # @return true if the model is valid
200
+ def valid?
201
+ return false if @account_id.nil?
202
+ return false if @balances.nil?
203
+ return false if @name.nil?
204
+ return false if @type.nil?
205
+ verification_status_validator = EnumAttributeValidator.new('String', ["automatically_verified", "pending_automatic_verification", "pending_manual_verification", "manually_verified", "verification_expired", "verification_failed"])
206
+ return false unless verification_status_validator.valid?(@verification_status)
207
+ return false if @owners.nil?
208
+ true
209
+ end
210
+
211
+ # Custom attribute writer method checking allowed values (enum).
212
+ # @param [Object] verification_status Object to be assigned
213
+ def verification_status=(verification_status)
214
+ validator = EnumAttributeValidator.new('String', ["automatically_verified", "pending_automatic_verification", "pending_manual_verification", "manually_verified", "verification_expired", "verification_failed"])
215
+ unless validator.valid?(verification_status)
216
+ fail ArgumentError, "invalid value for \"verification_status\", must be one of #{validator.allowable_values}."
217
+ end
218
+ @verification_status = verification_status
219
+ end
220
+
221
+ # Checks equality by comparing each attribute.
222
+ # @param [Object] Object to be compared
223
+ def ==(o)
224
+ return true if self.equal?(o)
225
+ self.class == o.class &&
226
+ account_id == o.account_id &&
227
+ balances == o.balances &&
228
+ mask == o.mask &&
229
+ name == o.name &&
230
+ official_name == o.official_name &&
231
+ type == o.type &&
232
+ subtype == o.subtype &&
233
+ verification_status == o.verification_status &&
234
+ owners == o.owners
235
+ end
236
+
237
+ # @see the `==` method
238
+ # @param [Object] Object to be compared
239
+ def eql?(o)
240
+ self == o
241
+ end
242
+
243
+ # Calculates hash code according to all attributes.
244
+ # @return [Integer] Hash code
245
+ def hash
246
+ [account_id, balances, mask, name, official_name, type, subtype, verification_status, owners].hash
247
+ end
248
+
249
+ # Builds the object from hash
250
+ # @param [Hash] attributes Model attributes in the form of hash
251
+ # @return [Object] Returns the model itself
252
+ def self.build_from_hash(attributes)
253
+ new.build_from_hash(attributes)
254
+ end
255
+
256
+ # Builds the object from hash
257
+ # @param [Hash] attributes Model attributes in the form of hash
258
+ # @return [Object] Returns the model itself
259
+ def build_from_hash(attributes)
260
+ return nil unless attributes.is_a?(Hash)
261
+ self.class.openapi_types.each_pair do |key, type|
262
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
263
+ self.send("#{key}=", nil)
264
+ elsif type =~ /\AArray<(.*)>/i
265
+ # check to ensure the input is an array given that the attribute
266
+ # is documented as an array but the input is not
267
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
268
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
269
+ end
270
+ elsif !attributes[self.class.attribute_map[key]].nil?
271
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
272
+ end
273
+ end
274
+
275
+ self
276
+ end
277
+
278
+ # Deserializes the data based on type
279
+ # @param string type Data type
280
+ # @param string value Value to be deserialized
281
+ # @return [Object] Deserialized data
282
+ def _deserialize(type, value)
283
+ case type.to_sym
284
+ when :Time
285
+ Time.parse(value)
286
+ when :Date
287
+ Date.parse(value)
288
+ when :String
289
+ value.to_s
290
+ when :Integer
291
+ value.to_i
292
+ when :Float
293
+ value.to_f
294
+ when :Boolean
295
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
296
+ true
297
+ else
298
+ false
299
+ end
300
+ when :Object
301
+ # generic object (usually a Hash), return directly
302
+ value
303
+ when /\AArray<(?<inner_type>.+)>\z/
304
+ inner_type = Regexp.last_match[:inner_type]
305
+ value.map { |v| _deserialize(inner_type, v) }
306
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
307
+ k_type = Regexp.last_match[:k_type]
308
+ v_type = Regexp.last_match[:v_type]
309
+ {}.tap do |hash|
310
+ value.each do |k, v|
311
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
312
+ end
313
+ end
314
+ else # model
315
+ # models (e.g. Pet) or oneOf
316
+ klass = Plaid.const_get(type)
317
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
318
+ end
319
+ end
320
+
321
+ # Returns the string representation of the object
322
+ # @return [String] String presentation of the object
323
+ def to_s
324
+ to_hash.to_s
325
+ end
326
+
327
+ # to_body is an alias to to_hash (backward compatibility)
328
+ # @return [Hash] Returns the object in the form of hash
329
+ def to_body
330
+ to_hash
331
+ end
332
+
333
+ # Returns the object in the form of hash
334
+ # @return [Hash] Returns the object in the form of hash
335
+ def to_hash
336
+ hash = {}
337
+ self.class.attribute_map.each_pair do |attr, param|
338
+ value = self.send(attr)
339
+ if value.nil?
340
+ is_nullable = self.class.openapi_nullable.include?(attr)
341
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
342
+ end
343
+
344
+ hash[param] = _to_hash(value)
345
+ end
346
+ hash
347
+ end
348
+
349
+ # Outputs non-array value in the form of hash
350
+ # For object, use to_hash. Otherwise, just return the value
351
+ # @param [Object] value Any valid value
352
+ # @return [Hash] Returns the value in the form of hash
353
+ def _to_hash(value)
354
+ if value.is_a?(Array)
355
+ value.compact.map { |v| _to_hash(v) }
356
+ elsif value.is_a?(Hash)
357
+ {}.tap do |hash|
358
+ value.each { |k, v| hash[k] = _to_hash(v) }
359
+ end
360
+ elsif value.respond_to? :to_hash
361
+ value.to_hash
362
+ else
363
+ value
364
+ end
365
+ end
366
+
367
+ end
368
+
369
+ end
@@ -0,0 +1,226 @@
1
+ =begin
2
+ #The Plaid API
3
+
4
+ #The Plaid REST API. Please see https://plaid.com/docs/api for more details.
5
+
6
+ The version of the OpenAPI document: 2020-09-14_1.205.3
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Plaid
17
+ class AccountIdentityAllOf
18
+ # Data returned by the financial institution about the account owner or owners. Only returned by Identity or Assets endpoints. For business accounts, the name reported may be either the name of the individual or the name of the business, depending on the institution. Multiple owners on a single account will be represented in the same `owner` object, not in multiple owner objects within the array. In API versions 2018-05-22 and earlier, the `owners` object is not returned, and instead identity information is returned in the top level `identity` object. For more details, see [Plaid API versioning](https://plaid.com/docs/api/versioning/#version-2019-05-29)
19
+ attr_accessor :owners
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'owners' => :'owners'
25
+ }
26
+ end
27
+
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.openapi_types
35
+ {
36
+ :'owners' => :'Array<Owner>'
37
+ }
38
+ end
39
+
40
+ # List of attributes with nullable: true
41
+ def self.openapi_nullable
42
+ Set.new([
43
+ ])
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::AccountIdentityAllOf` initialize method"
51
+ end
52
+
53
+ # check to see if the attribute exists and convert string to symbol for hash key
54
+ attributes = attributes.each_with_object({}) { |(k, v), h|
55
+ if (!self.class.attribute_map.key?(k.to_sym))
56
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::AccountIdentityAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
+ end
58
+ h[k.to_sym] = v
59
+ }
60
+
61
+ if attributes.key?(:'owners')
62
+ if (value = attributes[:'owners']).is_a?(Array)
63
+ self.owners = value
64
+ end
65
+ end
66
+ end
67
+
68
+ # Show invalid properties with the reasons. Usually used together with valid?
69
+ # @return Array for valid properties with the reasons
70
+ def list_invalid_properties
71
+ invalid_properties = Array.new
72
+ if @owners.nil?
73
+ invalid_properties.push('invalid value for "owners", owners cannot be nil.')
74
+ end
75
+
76
+ invalid_properties
77
+ end
78
+
79
+ # Check to see if the all the properties in the model are valid
80
+ # @return true if the model is valid
81
+ def valid?
82
+ return false if @owners.nil?
83
+ true
84
+ end
85
+
86
+ # Checks equality by comparing each attribute.
87
+ # @param [Object] Object to be compared
88
+ def ==(o)
89
+ return true if self.equal?(o)
90
+ self.class == o.class &&
91
+ owners == o.owners
92
+ end
93
+
94
+ # @see the `==` method
95
+ # @param [Object] Object to be compared
96
+ def eql?(o)
97
+ self == o
98
+ end
99
+
100
+ # Calculates hash code according to all attributes.
101
+ # @return [Integer] Hash code
102
+ def hash
103
+ [owners].hash
104
+ end
105
+
106
+ # Builds the object from hash
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ # @return [Object] Returns the model itself
109
+ def self.build_from_hash(attributes)
110
+ new.build_from_hash(attributes)
111
+ end
112
+
113
+ # Builds the object from hash
114
+ # @param [Hash] attributes Model attributes in the form of hash
115
+ # @return [Object] Returns the model itself
116
+ def build_from_hash(attributes)
117
+ return nil unless attributes.is_a?(Hash)
118
+ self.class.openapi_types.each_pair do |key, type|
119
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
120
+ self.send("#{key}=", nil)
121
+ elsif type =~ /\AArray<(.*)>/i
122
+ # check to ensure the input is an array given that the attribute
123
+ # is documented as an array but the input is not
124
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
125
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
126
+ end
127
+ elsif !attributes[self.class.attribute_map[key]].nil?
128
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
129
+ end
130
+ end
131
+
132
+ self
133
+ end
134
+
135
+ # Deserializes the data based on type
136
+ # @param string type Data type
137
+ # @param string value Value to be deserialized
138
+ # @return [Object] Deserialized data
139
+ def _deserialize(type, value)
140
+ case type.to_sym
141
+ when :Time
142
+ Time.parse(value)
143
+ when :Date
144
+ Date.parse(value)
145
+ when :String
146
+ value.to_s
147
+ when :Integer
148
+ value.to_i
149
+ when :Float
150
+ value.to_f
151
+ when :Boolean
152
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
153
+ true
154
+ else
155
+ false
156
+ end
157
+ when :Object
158
+ # generic object (usually a Hash), return directly
159
+ value
160
+ when /\AArray<(?<inner_type>.+)>\z/
161
+ inner_type = Regexp.last_match[:inner_type]
162
+ value.map { |v| _deserialize(inner_type, v) }
163
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
164
+ k_type = Regexp.last_match[:k_type]
165
+ v_type = Regexp.last_match[:v_type]
166
+ {}.tap do |hash|
167
+ value.each do |k, v|
168
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
169
+ end
170
+ end
171
+ else # model
172
+ # models (e.g. Pet) or oneOf
173
+ klass = Plaid.const_get(type)
174
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
175
+ end
176
+ end
177
+
178
+ # Returns the string representation of the object
179
+ # @return [String] String presentation of the object
180
+ def to_s
181
+ to_hash.to_s
182
+ end
183
+
184
+ # to_body is an alias to to_hash (backward compatibility)
185
+ # @return [Hash] Returns the object in the form of hash
186
+ def to_body
187
+ to_hash
188
+ end
189
+
190
+ # Returns the object in the form of hash
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_hash
193
+ hash = {}
194
+ self.class.attribute_map.each_pair do |attr, param|
195
+ value = self.send(attr)
196
+ if value.nil?
197
+ is_nullable = self.class.openapi_nullable.include?(attr)
198
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
199
+ end
200
+
201
+ hash[param] = _to_hash(value)
202
+ end
203
+ hash
204
+ end
205
+
206
+ # Outputs non-array value in the form of hash
207
+ # For object, use to_hash. Otherwise, just return the value
208
+ # @param [Object] value Any valid value
209
+ # @return [Hash] Returns the value in the form of hash
210
+ def _to_hash(value)
211
+ if value.is_a?(Array)
212
+ value.compact.map { |v| _to_hash(v) }
213
+ elsif value.is_a?(Hash)
214
+ {}.tap do |hash|
215
+ value.each { |k, v| hash[k] = _to_hash(v) }
216
+ end
217
+ elsif value.respond_to? :to_hash
218
+ value.to_hash
219
+ else
220
+ value
221
+ end
222
+ end
223
+
224
+ end
225
+
226
+ end