plaid 14.0.0.beta.5.pre.plural.pre.income.pre.breakdown → 15.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (673) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +405 -5
  3. data/CONTRIBUTING.md +1 -5
  4. data/Dockerfile +4 -2
  5. data/Gemfile.lock +10 -6
  6. data/Makefile +10 -1
  7. data/README.md +28 -21
  8. data/lib/plaid/api/plaid_api.rb +4490 -980
  9. data/lib/plaid/api_client.rb +6 -5
  10. data/lib/plaid/api_error.rb +4 -4
  11. data/lib/plaid/configuration.rb +7 -6
  12. data/lib/plaid/models/account_access.rb +248 -0
  13. data/lib/plaid/models/account_assets.rb +22 -10
  14. data/lib/plaid/models/account_assets_all_of.rb +19 -7
  15. data/lib/plaid/models/account_balance.rb +8 -12
  16. data/lib/plaid/models/account_base.rb +4 -5
  17. data/lib/plaid/models/account_filter.rb +258 -0
  18. data/lib/plaid/models/account_filters_response.rb +2 -2
  19. data/lib/plaid/models/account_identity.rb +6 -6
  20. data/lib/plaid/models/account_identity_all_of.rb +3 -3
  21. data/lib/plaid/models/account_product_access.rb +249 -0
  22. data/lib/plaid/models/account_product_access_nullable.rb +256 -0
  23. data/lib/plaid/models/account_selection_cardinality.rb +40 -0
  24. data/lib/plaid/models/account_subtype.rb +12 -5
  25. data/lib/plaid/models/account_type.rb +6 -4
  26. data/lib/plaid/models/accounts_balance_get_request.rb +2 -2
  27. data/lib/plaid/models/accounts_balance_get_request_options.rb +3 -3
  28. data/lib/plaid/models/accounts_get_request.rb +2 -2
  29. data/lib/plaid/models/accounts_get_request_options.rb +2 -2
  30. data/lib/plaid/models/accounts_get_response.rb +2 -2
  31. data/lib/plaid/models/ach_class.rb +6 -4
  32. data/lib/plaid/models/address.rb +2 -3
  33. data/lib/plaid/models/address_data.rb +5 -9
  34. data/lib/plaid/models/{nullable_address_data.rb → address_data_nullable.rb} +9 -12
  35. data/lib/plaid/models/{nullable_address.rb → address_nullable.rb} +6 -6
  36. data/lib/plaid/models/application.rb +98 -7
  37. data/lib/plaid/models/application_get_request.rb +3 -3
  38. data/lib/plaid/models/application_get_response.rb +3 -3
  39. data/lib/plaid/models/apr.rb +2 -2
  40. data/lib/plaid/models/asset_report.rb +5 -9
  41. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +2 -2
  42. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +2 -2
  43. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +2 -2
  44. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +2 -2
  45. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +2 -2
  46. data/lib/plaid/models/asset_report_create_request.rb +7 -7
  47. data/lib/plaid/models/asset_report_create_request_options.rb +4 -2
  48. data/lib/plaid/models/asset_report_create_response.rb +2 -2
  49. data/lib/plaid/models/asset_report_filter_request.rb +2 -2
  50. data/lib/plaid/models/asset_report_filter_response.rb +2 -2
  51. data/lib/plaid/models/asset_report_get_request.rb +4 -2
  52. data/lib/plaid/models/asset_report_get_response.rb +2 -2
  53. data/lib/plaid/models/asset_report_item.rb +4 -4
  54. data/lib/plaid/models/asset_report_pdf_get_request.rb +2 -2
  55. data/lib/plaid/models/asset_report_refresh_request.rb +8 -7
  56. data/lib/plaid/models/asset_report_refresh_request_options.rb +4 -2
  57. data/lib/plaid/models/asset_report_refresh_response.rb +2 -2
  58. data/lib/plaid/models/asset_report_relay_create_request.rb +271 -0
  59. data/lib/plaid/models/asset_report_relay_create_response.rb +240 -0
  60. data/lib/plaid/models/asset_report_relay_get_request.rb +245 -0
  61. data/lib/plaid/models/asset_report_relay_refresh_request.rb +255 -0
  62. data/lib/plaid/models/asset_report_relay_refresh_response.rb +254 -0
  63. data/lib/plaid/models/asset_report_relay_remove_request.rb +245 -0
  64. data/lib/plaid/models/asset_report_relay_remove_response.rb +240 -0
  65. data/lib/plaid/models/asset_report_remove_request.rb +2 -2
  66. data/lib/plaid/models/asset_report_remove_response.rb +2 -2
  67. data/lib/plaid/models/asset_report_transaction.rb +129 -185
  68. data/lib/plaid/models/asset_report_transaction_all_of.rb +7 -22
  69. data/lib/plaid/models/asset_report_user.rb +3 -3
  70. data/lib/plaid/models/assets_error_webhook.rb +8 -4
  71. data/lib/plaid/models/assets_product_ready_webhook.rb +2 -2
  72. data/lib/plaid/models/assets_relay_webhook.rb +299 -0
  73. data/lib/plaid/models/auth_get_numbers.rb +22 -2
  74. data/lib/plaid/models/auth_get_request.rb +2 -2
  75. data/lib/plaid/models/auth_get_request_options.rb +2 -2
  76. data/lib/plaid/models/auth_get_response.rb +2 -2
  77. data/lib/plaid/models/auth_metadata.rb +220 -0
  78. data/lib/plaid/models/auth_supported_methods.rb +255 -0
  79. data/lib/plaid/models/automatically_verified_webhook.rb +2 -2
  80. data/lib/plaid/models/bank_initiated_return_risk.rb +300 -0
  81. data/lib/plaid/models/bank_transfer.rb +4 -4
  82. data/lib/plaid/models/bank_transfer_balance.rb +3 -2
  83. data/lib/plaid/models/bank_transfer_balance_get_request.rb +3 -3
  84. data/lib/plaid/models/bank_transfer_balance_get_response.rb +3 -3
  85. data/lib/plaid/models/bank_transfer_cancel_request.rb +3 -3
  86. data/lib/plaid/models/bank_transfer_cancel_response.rb +3 -3
  87. data/lib/plaid/models/bank_transfer_create_request.rb +6 -6
  88. data/lib/plaid/models/bank_transfer_create_response.rb +3 -3
  89. data/lib/plaid/models/bank_transfer_direction.rb +7 -4
  90. data/lib/plaid/models/bank_transfer_event.rb +8 -18
  91. data/lib/plaid/models/bank_transfer_event_list_bank_transfer_type.rb +40 -0
  92. data/lib/plaid/models/bank_transfer_event_list_direction.rb +40 -0
  93. data/lib/plaid/models/bank_transfer_event_list_request.rb +5 -41
  94. data/lib/plaid/models/bank_transfer_event_list_response.rb +3 -3
  95. data/lib/plaid/models/bank_transfer_event_sync_request.rb +3 -3
  96. data/lib/plaid/models/bank_transfer_event_sync_response.rb +3 -3
  97. data/lib/plaid/models/bank_transfer_event_type.rb +6 -6
  98. data/lib/plaid/models/bank_transfer_failure.rb +3 -3
  99. data/lib/plaid/models/bank_transfer_get_request.rb +3 -3
  100. data/lib/plaid/models/bank_transfer_get_response.rb +3 -3
  101. data/lib/plaid/models/bank_transfer_list_request.rb +3 -3
  102. data/lib/plaid/models/bank_transfer_list_response.rb +3 -3
  103. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +14 -4
  104. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +3 -3
  105. data/lib/plaid/models/bank_transfer_network.rb +6 -4
  106. data/lib/plaid/models/bank_transfer_status.rb +6 -4
  107. data/lib/plaid/models/bank_transfer_sweep.rb +270 -0
  108. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +245 -0
  109. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +239 -0
  110. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +302 -0
  111. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +241 -0
  112. data/lib/plaid/models/bank_transfer_type.rb +6 -4
  113. data/lib/plaid/models/bank_transfer_user.rb +4 -4
  114. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +2 -2
  115. data/lib/plaid/models/categories_get_response.rb +2 -2
  116. data/lib/plaid/models/category.rb +2 -2
  117. data/lib/plaid/models/cause.rb +156 -15
  118. data/lib/plaid/models/cause_all_of.rb +219 -0
  119. data/lib/plaid/models/client_provided_enhanced_transaction.rb +284 -0
  120. data/lib/plaid/models/client_provided_raw_transaction.rb +270 -0
  121. data/lib/plaid/models/connected_application.rb +298 -0
  122. data/lib/plaid/models/country_code.rb +8 -4
  123. data/lib/plaid/models/credit_account_subtype.rb +40 -0
  124. data/lib/plaid/models/credit_bank_income.rb +273 -0
  125. data/lib/plaid/models/credit_bank_income_account.rb +281 -0
  126. data/lib/plaid/models/credit_bank_income_account_type.rb +38 -0
  127. data/lib/plaid/models/credit_bank_income_category.rb +48 -0
  128. data/lib/plaid/models/credit_bank_income_cause.rb +259 -0
  129. data/lib/plaid/models/credit_bank_income_error_type.rb +53 -0
  130. data/lib/plaid/models/credit_bank_income_get_request.rb +249 -0
  131. data/lib/plaid/models/credit_bank_income_get_request_options.rb +222 -0
  132. data/lib/plaid/models/credit_bank_income_get_response.rb +236 -0
  133. data/lib/plaid/models/credit_bank_income_historical_summary.rb +273 -0
  134. data/lib/plaid/models/credit_bank_income_item.rb +274 -0
  135. data/lib/plaid/models/credit_bank_income_pay_frequency.rb +42 -0
  136. data/lib/plaid/models/credit_bank_income_source.rb +309 -0
  137. data/lib/plaid/models/credit_bank_income_summary.rb +303 -0
  138. data/lib/plaid/models/credit_bank_income_transaction.rb +304 -0
  139. data/lib/plaid/models/credit_bank_income_warning.rb +237 -0
  140. data/lib/plaid/models/credit_bank_income_warning_code.rb +41 -0
  141. data/lib/plaid/models/credit_bank_income_warning_type.rb +38 -0
  142. data/lib/plaid/models/credit_card_liability.rb +26 -35
  143. data/lib/plaid/models/credit_document_metadata.rb +258 -0
  144. data/lib/plaid/models/credit_employer_verification.rb +221 -0
  145. data/lib/plaid/models/credit_employment_get_request.rb +245 -0
  146. data/lib/plaid/models/credit_employment_get_response.rb +242 -0
  147. data/lib/plaid/models/credit_employment_verification.rb +282 -0
  148. data/lib/plaid/models/credit_filter.rb +4 -4
  149. data/lib/plaid/models/credit_pay_stub.rb +329 -0
  150. data/lib/plaid/models/credit_pay_stub_address.rb +265 -0
  151. data/lib/plaid/models/credit_pay_stub_deductions.rb +240 -0
  152. data/lib/plaid/models/credit_pay_stub_earnings.rb +240 -0
  153. data/lib/plaid/models/credit_pay_stub_employee.rb +260 -0
  154. data/lib/plaid/models/{nullable_recipient_bacs.rb → credit_pay_stub_employer.rb} +26 -27
  155. data/lib/plaid/models/credit_pay_stub_net_pay.rb +265 -0
  156. data/lib/plaid/models/credit_pay_stub_verification.rb +237 -0
  157. data/lib/plaid/models/credit_payroll_income_get_request.rb +240 -0
  158. data/lib/plaid/models/credit_payroll_income_get_response.rb +251 -0
  159. data/lib/plaid/models/credit_payroll_income_precheck_request.rb +272 -0
  160. data/lib/plaid/models/credit_payroll_income_precheck_response.rb +239 -0
  161. data/lib/plaid/models/credit_platform_ids.rb +243 -0
  162. data/lib/plaid/models/credit_w2.rb +486 -0
  163. data/lib/plaid/models/customer_initiated_return_risk.rb +300 -0
  164. data/lib/plaid/models/deductions.rb +262 -0
  165. data/lib/plaid/models/deductions_breakdown.rb +265 -0
  166. data/lib/plaid/models/deductions_total.rb +254 -0
  167. data/lib/plaid/models/default_update_webhook.rb +3 -4
  168. data/lib/plaid/models/deposit_switch_address_data.rb +2 -2
  169. data/lib/plaid/models/deposit_switch_alt_create_request.rb +60 -6
  170. data/lib/plaid/models/deposit_switch_alt_create_response.rb +2 -2
  171. data/lib/plaid/models/deposit_switch_create_request.rb +60 -6
  172. data/lib/plaid/models/deposit_switch_create_request_options.rb +251 -0
  173. data/lib/plaid/models/deposit_switch_create_response.rb +2 -2
  174. data/lib/plaid/models/deposit_switch_get_request.rb +2 -2
  175. data/lib/plaid/models/deposit_switch_get_response.rb +77 -10
  176. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +250 -0
  177. data/lib/plaid/models/deposit_switch_target_account.rb +3 -2
  178. data/lib/plaid/models/deposit_switch_target_user.rb +3 -2
  179. data/lib/plaid/models/deposit_switch_token_create_request.rb +2 -2
  180. data/lib/plaid/models/deposit_switch_token_create_response.rb +3 -3
  181. data/lib/plaid/models/depository_account_subtype.rb +47 -0
  182. data/lib/plaid/models/depository_filter.rb +4 -4
  183. data/lib/plaid/models/distribution_breakdown.rb +296 -0
  184. data/lib/plaid/models/doc_type.rb +46 -0
  185. data/lib/plaid/models/document_metadata.rb +249 -0
  186. data/lib/plaid/models/earnings.rb +252 -0
  187. data/lib/plaid/models/earnings_breakdown.rb +297 -0
  188. data/lib/plaid/models/earnings_breakdown_canonical_description.rb +47 -0
  189. data/lib/plaid/models/earnings_total.rb +283 -0
  190. data/lib/plaid/models/email.rb +2 -2
  191. data/lib/plaid/models/employee.rb +31 -18
  192. data/lib/plaid/models/employee_income_summary_field_string.rb +3 -2
  193. data/lib/plaid/models/employer.rb +8 -4
  194. data/lib/plaid/models/employer_income_summary_field_string.rb +3 -2
  195. data/lib/plaid/models/employer_verification.rb +221 -0
  196. data/lib/plaid/models/employers_search_request.rb +2 -2
  197. data/lib/plaid/models/employers_search_response.rb +2 -2
  198. data/lib/plaid/models/employment_details.rb +230 -0
  199. data/lib/plaid/models/employment_verification.rb +271 -0
  200. data/lib/plaid/models/employment_verification_get_request.rb +245 -0
  201. data/lib/plaid/models/employment_verification_get_response.rb +242 -0
  202. data/lib/plaid/models/employment_verification_status.rb +40 -0
  203. data/lib/plaid/models/enhancements.rb +298 -0
  204. data/lib/plaid/models/error.rb +7 -14
  205. data/lib/plaid/models/external_payment_initiation_consent_options.rb +249 -0
  206. data/lib/plaid/models/external_payment_options.rb +72 -8
  207. data/lib/plaid/models/external_payment_refund_details.rb +9 -3
  208. data/lib/plaid/models/{external_payment_schedule.rb → external_payment_schedule_base.rb} +23 -27
  209. data/lib/plaid/models/external_payment_schedule_get.rb +21 -21
  210. data/lib/plaid/models/external_payment_schedule_request.rb +283 -0
  211. data/lib/plaid/models/health_incident.rb +22 -8
  212. data/lib/plaid/models/historical_balance.rb +5 -5
  213. data/lib/plaid/models/historical_update_webhook.rb +4 -5
  214. data/lib/plaid/models/holding.rb +4 -4
  215. data/lib/plaid/models/holdings_default_update_webhook.rb +3 -4
  216. data/lib/plaid/models/holdings_override.rb +289 -0
  217. data/lib/plaid/models/identity_default_update_webhook.rb +286 -0
  218. data/lib/plaid/models/identity_get_request.rb +2 -2
  219. data/lib/plaid/models/identity_get_request_options.rb +2 -2
  220. data/lib/plaid/models/identity_get_response.rb +2 -2
  221. data/lib/plaid/models/identity_update_types.rb +41 -0
  222. data/lib/plaid/models/incident_update.rb +7 -6
  223. data/lib/plaid/models/income_breakdown.rb +4 -4
  224. data/lib/plaid/models/income_breakdown_type.rb +41 -0
  225. data/lib/plaid/models/income_override.rb +222 -0
  226. data/lib/plaid/models/income_summary.rb +27 -2
  227. data/lib/plaid/models/income_summary_field_number.rb +3 -2
  228. data/lib/plaid/models/income_summary_field_string.rb +3 -2
  229. data/lib/plaid/models/income_verification_create_request.rb +25 -6
  230. data/lib/plaid/models/income_verification_create_request_options.rb +222 -0
  231. data/lib/plaid/models/income_verification_create_response.rb +2 -2
  232. data/lib/plaid/models/income_verification_documents_download_request.rb +29 -11
  233. data/lib/plaid/models/income_verification_payroll_flow_type.rb +39 -0
  234. data/lib/plaid/models/{income_verification_paystub_get_request.rb → income_verification_paystubs_get_request.rb} +22 -15
  235. data/lib/plaid/models/income_verification_paystubs_get_response.rb +262 -0
  236. data/lib/plaid/models/income_verification_precheck_confidence.rb +40 -0
  237. data/lib/plaid/models/income_verification_precheck_employer.rb +253 -0
  238. data/lib/plaid/models/income_verification_precheck_employer_address.rb +267 -0
  239. data/lib/plaid/models/income_verification_precheck_employer_address_data.rb +260 -0
  240. data/lib/plaid/models/income_verification_precheck_military_info.rb +232 -0
  241. data/lib/plaid/models/income_verification_precheck_request.rb +281 -0
  242. data/lib/plaid/models/income_verification_precheck_response.rb +254 -0
  243. data/lib/plaid/models/income_verification_precheck_user.rb +253 -0
  244. data/lib/plaid/models/{income_verification_summary_get_request.rb → income_verification_refresh_request.rb} +22 -15
  245. data/lib/plaid/models/income_verification_refresh_response.rb +239 -0
  246. data/lib/plaid/models/income_verification_source_type.rb +39 -0
  247. data/lib/plaid/models/income_verification_status_webhook.rb +16 -16
  248. data/lib/plaid/models/income_verification_taxforms_get_request.rb +252 -0
  249. data/lib/plaid/models/income_verification_taxforms_get_response.rb +262 -0
  250. data/lib/plaid/models/income_verification_webhook_status.rb +3 -2
  251. data/lib/plaid/models/inflow_model.rb +3 -3
  252. data/lib/plaid/models/initial_update_webhook.rb +3 -3
  253. data/lib/plaid/models/institution.rb +25 -10
  254. data/lib/plaid/models/institution_status.rb +31 -18
  255. data/lib/plaid/models/institutions_get_by_id_request.rb +24 -3
  256. data/lib/plaid/models/institutions_get_by_id_request_options.rb +16 -4
  257. data/lib/plaid/models/institutions_get_by_id_response.rb +2 -2
  258. data/lib/plaid/models/institutions_get_request.rb +33 -3
  259. data/lib/plaid/models/institutions_get_request_options.rb +38 -6
  260. data/lib/plaid/models/institutions_get_response.rb +3 -3
  261. data/lib/plaid/models/institutions_search_account_filter.rb +3 -2
  262. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +18 -6
  263. data/lib/plaid/models/institutions_search_request.rb +24 -11
  264. data/lib/plaid/models/institutions_search_request_options.rb +20 -5
  265. data/lib/plaid/models/institutions_search_response.rb +2 -2
  266. data/lib/plaid/models/investment_account_subtype.rb +85 -0
  267. data/lib/plaid/models/investment_filter.rb +5 -5
  268. data/lib/plaid/models/investment_holdings_get_request_options.rb +2 -2
  269. data/lib/plaid/models/investment_transaction.rb +8 -56
  270. data/lib/plaid/models/investment_transaction_subtype.rb +82 -0
  271. data/lib/plaid/models/investment_transaction_type.rb +43 -0
  272. data/lib/plaid/models/investments_default_update_webhook.rb +3 -4
  273. data/lib/plaid/models/investments_holdings_get_request.rb +2 -2
  274. data/lib/plaid/models/investments_holdings_get_response.rb +2 -2
  275. data/lib/plaid/models/investments_transactions_get_request.rb +2 -2
  276. data/lib/plaid/models/investments_transactions_get_request_options.rb +2 -2
  277. data/lib/plaid/models/investments_transactions_get_response.rb +2 -2
  278. data/lib/plaid/models/investments_transactions_override.rb +319 -0
  279. data/lib/plaid/models/item.rb +31 -7
  280. data/lib/plaid/models/item_access_token_invalidate_request.rb +2 -2
  281. data/lib/plaid/models/item_access_token_invalidate_response.rb +2 -2
  282. data/lib/plaid/models/item_application_list_request.rb +241 -0
  283. data/lib/plaid/models/item_application_list_response.rb +237 -0
  284. data/lib/plaid/models/item_application_list_user_auth.rb +232 -0
  285. data/lib/plaid/models/item_application_scopes_update_request.rb +298 -0
  286. data/lib/plaid/models/item_application_scopes_update_response.rb +225 -0
  287. data/lib/plaid/models/item_error_webhook.rb +8 -4
  288. data/lib/plaid/models/item_get_request.rb +2 -2
  289. data/lib/plaid/models/item_get_response.rb +3 -3
  290. data/lib/plaid/models/item_import_request.rb +2 -2
  291. data/lib/plaid/models/item_import_request_options.rb +2 -2
  292. data/lib/plaid/models/item_import_request_user_auth.rb +2 -2
  293. data/lib/plaid/models/item_import_response.rb +2 -2
  294. data/lib/plaid/models/item_product_ready_webhook.rb +3 -4
  295. data/lib/plaid/models/item_public_token_create_request.rb +2 -2
  296. data/lib/plaid/models/item_public_token_create_response.rb +2 -2
  297. data/lib/plaid/models/item_public_token_exchange_request.rb +2 -2
  298. data/lib/plaid/models/item_public_token_exchange_response.rb +2 -2
  299. data/lib/plaid/models/item_remove_request.rb +2 -2
  300. data/lib/plaid/models/item_remove_response.rb +2 -2
  301. data/lib/plaid/models/item_status.rb +8 -17
  302. data/lib/plaid/models/item_status_investments.rb +232 -0
  303. data/lib/plaid/models/item_status_last_webhook.rb +232 -0
  304. data/lib/plaid/models/{nullable_item_status.rb → item_status_nullable.rb} +12 -20
  305. data/lib/plaid/models/item_status_transactions.rb +232 -0
  306. data/lib/plaid/models/item_webhook_update_request.rb +4 -8
  307. data/lib/plaid/models/item_webhook_update_response.rb +2 -2
  308. data/lib/plaid/models/jwk_public_key.rb +4 -2
  309. data/lib/plaid/models/jwt_header.rb +2 -2
  310. data/lib/plaid/models/liabilities_default_update_webhook.rb +35 -6
  311. data/lib/plaid/models/liabilities_get_request.rb +2 -2
  312. data/lib/plaid/models/liabilities_get_request_options.rb +2 -2
  313. data/lib/plaid/models/liabilities_get_response.rb +2 -2
  314. data/lib/plaid/models/liabilities_object.rb +5 -5
  315. data/lib/plaid/models/liability_override.rb +5 -5
  316. data/lib/plaid/models/link_token_account_filters.rb +3 -3
  317. data/lib/plaid/models/link_token_create_credit_filter.rb +222 -0
  318. data/lib/plaid/models/link_token_create_depository_filter.rb +222 -0
  319. data/lib/plaid/models/link_token_create_institution_data.rb +220 -0
  320. data/lib/plaid/models/link_token_create_investment_filter.rb +222 -0
  321. data/lib/plaid/models/link_token_create_loan_filter.rb +222 -0
  322. data/lib/plaid/models/link_token_create_request.rb +56 -10
  323. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +11 -23
  324. data/lib/plaid/models/link_token_create_request_auth.rb +2 -2
  325. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +2 -2
  326. data/lib/plaid/models/link_token_create_request_income_verification.rb +59 -13
  327. data/lib/plaid/models/link_token_create_request_income_verification_bank_income.rb +220 -0
  328. data/lib/plaid/models/link_token_create_request_income_verification_payroll_income.rb +223 -0
  329. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +23 -2
  330. data/lib/plaid/models/link_token_create_request_transfer.rb +220 -0
  331. data/lib/plaid/models/link_token_create_request_update.rb +222 -0
  332. data/lib/plaid/models/link_token_create_request_user.rb +10 -10
  333. data/lib/plaid/models/link_token_create_response.rb +3 -3
  334. data/lib/plaid/models/link_token_eu_config.rb +220 -0
  335. data/lib/plaid/models/link_token_get_metadata_response.rb +22 -3
  336. data/lib/plaid/models/link_token_get_request.rb +2 -2
  337. data/lib/plaid/models/link_token_get_response.rb +14 -4
  338. data/lib/plaid/models/loan_account_subtype.rb +49 -0
  339. data/lib/plaid/models/loan_filter.rb +4 -4
  340. data/lib/plaid/models/location.rb +4 -4
  341. data/lib/plaid/models/meta.rb +2 -2
  342. data/lib/plaid/models/mfa.rb +2 -2
  343. data/lib/plaid/models/mortgage_interest_rate.rb +2 -2
  344. data/lib/plaid/models/mortgage_liability.rb +25 -11
  345. data/lib/plaid/models/mortgage_property_address.rb +2 -2
  346. data/lib/plaid/models/net_pay.rb +274 -0
  347. data/lib/plaid/models/new_accounts_available_webhook.rb +249 -0
  348. data/lib/plaid/models/numbers.rb +2 -42
  349. data/lib/plaid/models/numbers_ach.rb +3 -3
  350. data/lib/plaid/models/{nullable_numbers_ach.rb → numbers_ach_nullable.rb} +7 -6
  351. data/lib/plaid/models/numbers_bacs.rb +2 -2
  352. data/lib/plaid/models/{nullable_numbers_bacs.rb → numbers_bacs_nullable.rb} +6 -5
  353. data/lib/plaid/models/numbers_eft.rb +2 -2
  354. data/lib/plaid/models/{nullable_numbers_eft.rb → numbers_eft_nullable.rb} +6 -5
  355. data/lib/plaid/models/numbers_international.rb +2 -2
  356. data/lib/plaid/models/{nullable_numbers_international.rb → numbers_international_nullable.rb} +6 -5
  357. data/lib/plaid/models/override_account_type.rb +43 -0
  358. data/lib/plaid/models/override_accounts.rb +34 -7
  359. data/lib/plaid/models/owner.rb +2 -2
  360. data/lib/plaid/models/owner_override.rb +2 -2
  361. data/lib/plaid/models/pay.rb +232 -0
  362. data/lib/plaid/models/pay_frequency.rb +4 -38
  363. data/lib/plaid/models/pay_frequency_value.rb +43 -0
  364. data/lib/plaid/models/pay_period_details.rb +99 -32
  365. data/lib/plaid/models/pay_stub_deductions_breakdown.rb +265 -0
  366. data/lib/plaid/models/pay_stub_deductions_total.rb +254 -0
  367. data/lib/plaid/models/pay_stub_distribution_breakdown.rb +287 -0
  368. data/lib/plaid/models/pay_stub_earnings_breakdown.rb +298 -0
  369. data/lib/plaid/models/pay_stub_earnings_total.rb +265 -0
  370. data/lib/plaid/models/pay_stub_pay_period_details.rb +314 -0
  371. data/lib/plaid/models/pay_stub_taxpayer_id.rb +232 -0
  372. data/lib/plaid/models/pay_stub_verification_attribute.rb +221 -0
  373. data/lib/plaid/models/payment_amount.rb +3 -38
  374. data/lib/plaid/models/payment_amount_currency.rb +39 -0
  375. data/lib/plaid/models/payment_channel.rb +40 -0
  376. data/lib/plaid/models/payment_consent_max_payment_amount.rb +246 -0
  377. data/lib/plaid/models/payment_consent_periodic_alignment.rb +39 -0
  378. data/lib/plaid/models/payment_consent_periodic_amount.rb +247 -0
  379. data/lib/plaid/models/payment_consent_periodic_amount_amount.rb +246 -0
  380. data/lib/plaid/models/payment_consent_periodic_interval.rb +41 -0
  381. data/lib/plaid/models/payment_consent_valid_date_time.rb +232 -0
  382. data/lib/plaid/models/payment_initiation_address.rb +119 -5
  383. data/lib/plaid/models/payment_initiation_consent.rb +357 -0
  384. data/lib/plaid/models/payment_initiation_consent_constraints.rb +241 -0
  385. data/lib/plaid/models/payment_initiation_consent_create_request.rb +373 -0
  386. data/lib/plaid/models/payment_initiation_consent_create_response.rb +254 -0
  387. data/lib/plaid/models/payment_initiation_consent_get_request.rb +266 -0
  388. data/lib/plaid/models/payment_initiation_consent_get_response.rb +380 -0
  389. data/lib/plaid/models/payment_initiation_consent_payment_execute_request.rb +325 -0
  390. data/lib/plaid/models/payment_initiation_consent_payment_execute_response.rb +254 -0
  391. data/lib/plaid/models/payment_initiation_consent_revoke_request.rb +266 -0
  392. data/lib/plaid/models/payment_initiation_consent_revoke_response.rb +220 -0
  393. data/lib/plaid/models/payment_initiation_consent_scope.rb +39 -0
  394. data/lib/plaid/models/payment_initiation_consent_status.rb +42 -0
  395. data/lib/plaid/models/payment_initiation_metadata.rb +18 -3
  396. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +55 -2
  397. data/lib/plaid/models/payment_initiation_payment.rb +55 -47
  398. data/lib/plaid/models/payment_initiation_payment_create_request.rb +54 -4
  399. data/lib/plaid/models/payment_initiation_payment_create_response.rb +3 -4
  400. data/lib/plaid/models/payment_initiation_payment_create_status.rb +38 -0
  401. data/lib/plaid/models/payment_initiation_payment_get_request.rb +23 -2
  402. data/lib/plaid/models/payment_initiation_payment_get_response.rb +56 -48
  403. data/lib/plaid/models/payment_initiation_payment_list_request.rb +12 -3
  404. data/lib/plaid/models/payment_initiation_payment_list_response.rb +2 -2
  405. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +266 -0
  406. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +254 -0
  407. data/lib/plaid/models/payment_initiation_payment_status.rb +50 -0
  408. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +23 -2
  409. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +3 -3
  410. data/lib/plaid/models/payment_initiation_recipient.rb +3 -3
  411. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +50 -3
  412. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +2 -2
  413. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +23 -2
  414. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +3 -3
  415. data/lib/plaid/models/payment_initiation_recipient_get_response_all_of.rb +2 -2
  416. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +2 -2
  417. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +2 -2
  418. data/lib/plaid/models/payment_initiation_refund.rb +268 -0
  419. data/lib/plaid/models/payment_initiation_refund_status.rb +41 -0
  420. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +17 -2
  421. data/lib/plaid/models/payment_meta.rb +2 -2
  422. data/lib/plaid/models/payment_schedule_interval.rb +6 -4
  423. data/lib/plaid/models/payment_scheme.rb +41 -0
  424. data/lib/plaid/models/payment_status_update_webhook.rb +8 -57
  425. data/lib/plaid/models/payroll_income_object.rb +255 -0
  426. data/lib/plaid/models/payroll_item.rb +251 -0
  427. data/lib/plaid/models/payroll_item_status.rb +221 -0
  428. data/lib/plaid/models/paystub.rb +90 -41
  429. data/lib/plaid/models/paystub_address.rb +298 -0
  430. data/lib/plaid/models/paystub_deduction.rb +3 -2
  431. data/lib/plaid/models/paystub_details.rb +264 -0
  432. data/lib/plaid/models/paystub_employer.rb +230 -0
  433. data/lib/plaid/models/paystub_override.rb +248 -0
  434. data/lib/plaid/models/paystub_override_employee.rb +229 -0
  435. data/lib/plaid/models/paystub_override_employee_address.rb +260 -0
  436. data/lib/plaid/models/paystub_override_employer.rb +220 -0
  437. data/lib/plaid/models/paystub_pay_frequency.rb +42 -0
  438. data/lib/plaid/models/paystub_verification.rb +236 -0
  439. data/lib/plaid/models/paystub_verification_status.rb +41 -0
  440. data/lib/plaid/models/paystub_ytd_details.rb +5 -12
  441. data/lib/plaid/models/pending_expiration_webhook.rb +4 -4
  442. data/lib/plaid/models/personal_finance_category.rb +240 -0
  443. data/lib/plaid/models/phone_number.rb +12 -4
  444. data/lib/plaid/models/plaid_error.rb +360 -0
  445. data/lib/plaid/models/platform_ids.rb +243 -0
  446. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +2 -2
  447. data/lib/plaid/models/processor_auth_get_request.rb +2 -2
  448. data/lib/plaid/models/processor_auth_get_response.rb +2 -2
  449. data/lib/plaid/models/processor_balance_get_request.rb +15 -6
  450. data/lib/plaid/models/processor_balance_get_request_options.rb +220 -0
  451. data/lib/plaid/models/processor_balance_get_response.rb +2 -2
  452. data/lib/plaid/models/processor_bank_transfer_create_request.rb +459 -0
  453. data/lib/plaid/models/processor_bank_transfer_create_response.rb +239 -0
  454. data/lib/plaid/models/processor_identity_get_request.rb +2 -2
  455. data/lib/plaid/models/processor_identity_get_response.rb +2 -2
  456. data/lib/plaid/models/processor_number.rb +6 -6
  457. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +2 -2
  458. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +2 -2
  459. data/lib/plaid/models/processor_token_create_request.rb +37 -3
  460. data/lib/plaid/models/processor_token_create_response.rb +2 -2
  461. data/lib/plaid/models/product_access.rb +327 -0
  462. data/lib/plaid/models/product_status.rb +6 -6
  463. data/lib/plaid/models/product_status_breakdown.rb +2 -3
  464. data/lib/plaid/models/products.rb +10 -4
  465. data/lib/plaid/models/projected_income_summary_field_number.rb +3 -2
  466. data/lib/plaid/models/pslf_status.rb +4 -4
  467. data/lib/plaid/models/recaptcha_required_error.rb +2 -2
  468. data/lib/plaid/models/recipient_bacs.rb +55 -3
  469. data/lib/plaid/models/recipient_bacs_nullable.rb +289 -0
  470. data/lib/plaid/models/recurring_transaction_frequency.rb +42 -0
  471. data/lib/plaid/models/relay_event.rb +40 -0
  472. data/lib/plaid/models/removed_transaction.rb +220 -0
  473. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +3 -3
  474. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +3 -3
  475. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +3 -3
  476. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +3 -3
  477. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +309 -0
  478. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +225 -0
  479. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +15 -6
  480. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +2 -2
  481. data/lib/plaid/models/sandbox_item_reset_login_request.rb +2 -2
  482. data/lib/plaid/models/sandbox_item_reset_login_response.rb +2 -2
  483. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +2 -2
  484. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +2 -2
  485. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +240 -0
  486. data/lib/plaid/models/sandbox_processor_token_create_request.rb +3 -2
  487. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +2 -2
  488. data/lib/plaid/models/sandbox_processor_token_create_response.rb +3 -2
  489. data/lib/plaid/models/sandbox_public_token_create_request.rb +2 -2
  490. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +2 -2
  491. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +5 -5
  492. data/lib/plaid/models/sandbox_public_token_create_response.rb +2 -2
  493. data/lib/plaid/models/sandbox_transfer_fire_webhook_request.rb +245 -0
  494. data/lib/plaid/models/sandbox_transfer_fire_webhook_response.rb +225 -0
  495. data/lib/plaid/models/sandbox_transfer_repayment_simulate_request.rb +230 -0
  496. data/lib/plaid/models/sandbox_transfer_repayment_simulate_response.rb +225 -0
  497. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +270 -0
  498. data/lib/plaid/models/{income_verification_paystub_get_response.rb → sandbox_transfer_simulate_response.rb} +12 -16
  499. data/lib/plaid/models/sandbox_transfer_sweep_simulate_request.rb +230 -0
  500. data/lib/plaid/models/{income_verification_summary_get_response.rb → sandbox_transfer_sweep_simulate_response.rb} +13 -21
  501. data/lib/plaid/models/scopes.rb +243 -0
  502. data/lib/plaid/models/scopes_context.rb +39 -0
  503. data/lib/plaid/models/scopes_nullable.rb +250 -0
  504. data/lib/plaid/models/security.rb +4 -4
  505. data/lib/plaid/models/security_override.rb +270 -0
  506. data/lib/plaid/models/sender_bacs_nullable.rb +289 -0
  507. data/lib/plaid/models/servicer_address_data.rb +2 -2
  508. data/lib/plaid/models/signal_address_data.rb +263 -0
  509. data/lib/plaid/models/signal_decision_report_request.rb +318 -0
  510. data/lib/plaid/models/signal_decision_report_response.rb +225 -0
  511. data/lib/plaid/models/signal_device.rb +232 -0
  512. data/lib/plaid/models/signal_evaluate_core_attributes.rb +903 -0
  513. data/lib/plaid/models/signal_evaluate_request.rb +376 -0
  514. data/lib/plaid/models/signal_evaluate_response.rb +248 -0
  515. data/lib/plaid/models/signal_person_name.rb +265 -0
  516. data/lib/plaid/models/signal_return_report_request.rb +290 -0
  517. data/lib/plaid/models/signal_return_report_response.rb +225 -0
  518. data/lib/plaid/models/signal_scores.rb +228 -0
  519. data/lib/plaid/models/signal_user.rb +252 -0
  520. data/lib/plaid/models/simulated_transfer_sweep.rb +277 -0
  521. data/lib/plaid/models/standalone_account_type.rb +4 -4
  522. data/lib/plaid/models/standalone_currency_code_list.rb +2 -2
  523. data/lib/plaid/models/standalone_investment_transaction_type.rb +4 -4
  524. data/lib/plaid/models/student_loan.rb +35 -15
  525. data/lib/plaid/models/student_loan_repayment_model.rb +2 -2
  526. data/lib/plaid/models/student_loan_status.rb +4 -4
  527. data/lib/plaid/models/student_repayment_plan.rb +4 -4
  528. data/lib/plaid/models/taxform.rb +244 -0
  529. data/lib/plaid/models/taxpayer_id.rb +269 -0
  530. data/lib/plaid/models/total.rb +249 -0
  531. data/lib/plaid/models/total_canonical_description.rb +54 -0
  532. data/lib/plaid/models/transaction.rb +191 -130
  533. data/lib/plaid/models/transaction_all_of.rb +311 -0
  534. data/lib/plaid/models/transaction_base.rb +458 -0
  535. data/lib/plaid/models/transaction_code.rb +6 -4
  536. data/lib/plaid/models/transaction_data.rb +4 -4
  537. data/lib/plaid/models/transaction_override.rb +6 -6
  538. data/lib/plaid/models/transaction_stream.rb +430 -0
  539. data/lib/plaid/models/transaction_stream_amount.rb +242 -0
  540. data/lib/plaid/models/transaction_stream_status.rb +41 -0
  541. data/lib/plaid/models/transactions_category_rule.rb +259 -0
  542. data/lib/plaid/models/transactions_enhance_get_request.rb +262 -0
  543. data/lib/plaid/models/transactions_enhance_get_response.rb +227 -0
  544. data/lib/plaid/models/transactions_get_request.rb +2 -2
  545. data/lib/plaid/models/transactions_get_request_options.rb +43 -6
  546. data/lib/plaid/models/transactions_get_response.rb +2 -2
  547. data/lib/plaid/models/transactions_recurring_get_request.rb +271 -0
  548. data/lib/plaid/models/transactions_recurring_get_request_options.rb +222 -0
  549. data/lib/plaid/models/transactions_recurring_get_response.rb +274 -0
  550. data/lib/plaid/models/transactions_refresh_request.rb +2 -2
  551. data/lib/plaid/models/transactions_refresh_response.rb +2 -2
  552. data/lib/plaid/models/transactions_removed_webhook.rb +3 -4
  553. data/lib/plaid/models/transactions_rule_details.rb +253 -0
  554. data/lib/plaid/models/transactions_rule_field.rb +39 -0
  555. data/lib/plaid/models/transactions_rule_type.rb +39 -0
  556. data/lib/plaid/models/transactions_rules_create_request.rb +284 -0
  557. data/lib/plaid/models/transactions_rules_create_response.rb +239 -0
  558. data/lib/plaid/models/transactions_rules_list_request.rb +255 -0
  559. data/lib/plaid/models/transactions_rules_list_response.rb +242 -0
  560. data/lib/plaid/models/transactions_rules_remove_request.rb +270 -0
  561. data/lib/plaid/models/transactions_rules_remove_response.rb +225 -0
  562. data/lib/plaid/models/transactions_sync_request.rb +293 -0
  563. data/lib/plaid/models/transactions_sync_response.rb +306 -0
  564. data/lib/plaid/models/transfer.rb +462 -0
  565. data/lib/plaid/models/transfer_authorization.rb +298 -0
  566. data/lib/plaid/models/transfer_authorization_create_request.rb +360 -0
  567. data/lib/plaid/models/transfer_authorization_create_response.rb +239 -0
  568. data/lib/plaid/models/transfer_authorization_decision.rb +39 -0
  569. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +239 -0
  570. data/lib/plaid/models/transfer_authorization_decision_rationale_code.rb +42 -0
  571. data/lib/plaid/models/transfer_authorization_device.rb +230 -0
  572. data/lib/plaid/models/transfer_authorization_guarantee_decision.rb +40 -0
  573. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale.rb +239 -0
  574. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale_code.rb +41 -0
  575. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +327 -0
  576. data/lib/plaid/models/transfer_cancel_request.rb +245 -0
  577. data/lib/plaid/models/transfer_cancel_response.rb +225 -0
  578. data/lib/plaid/models/transfer_create_request.rb +452 -0
  579. data/lib/plaid/models/transfer_create_response.rb +239 -0
  580. data/lib/plaid/models/transfer_event.rb +377 -0
  581. data/lib/plaid/models/transfer_event_list_request.rb +386 -0
  582. data/lib/plaid/models/transfer_event_list_response.rb +241 -0
  583. data/lib/plaid/models/transfer_event_list_transfer_type.rb +40 -0
  584. data/lib/plaid/models/transfer_event_sync_request.rb +305 -0
  585. data/lib/plaid/models/transfer_event_sync_response.rb +241 -0
  586. data/lib/plaid/models/transfer_event_type.rb +44 -0
  587. data/lib/plaid/models/transfer_events_update_webhook.rb +240 -0
  588. data/lib/plaid/models/transfer_failure.rb +231 -0
  589. data/lib/plaid/models/transfer_get_request.rb +245 -0
  590. data/lib/plaid/models/transfer_get_response.rb +239 -0
  591. data/lib/plaid/models/transfer_intent_authorization_decision.rb +39 -0
  592. data/lib/plaid/models/transfer_intent_create.rb +389 -0
  593. data/lib/plaid/models/transfer_intent_create_mode.rb +39 -0
  594. data/lib/plaid/models/transfer_intent_create_request.rb +396 -0
  595. data/lib/plaid/models/transfer_intent_create_response.rb +239 -0
  596. data/lib/plaid/models/transfer_intent_get.rb +430 -0
  597. data/lib/plaid/models/transfer_intent_get_failure_reason.rb +240 -0
  598. data/lib/plaid/models/transfer_intent_get_request.rb +255 -0
  599. data/lib/plaid/models/transfer_intent_get_response.rb +239 -0
  600. data/lib/plaid/models/transfer_intent_status.rb +40 -0
  601. data/lib/plaid/models/transfer_list_request.rb +330 -0
  602. data/lib/plaid/models/transfer_list_response.rb +241 -0
  603. data/lib/plaid/models/transfer_migrate_account_request.rb +285 -0
  604. data/lib/plaid/models/transfer_migrate_account_response.rb +255 -0
  605. data/lib/plaid/models/transfer_network.rb +39 -0
  606. data/lib/plaid/models/transfer_repayment.rb +270 -0
  607. data/lib/plaid/models/transfer_repayment_list_request.rb +320 -0
  608. data/lib/plaid/models/transfer_repayment_list_response.rb +241 -0
  609. data/lib/plaid/models/transfer_repayment_return.rb +291 -0
  610. data/lib/plaid/models/transfer_repayment_return_list_request.rb +313 -0
  611. data/lib/plaid/models/transfer_repayment_return_list_response.rb +241 -0
  612. data/lib/plaid/models/transfer_status.rb +42 -0
  613. data/lib/plaid/models/transfer_sweep.rb +270 -0
  614. data/lib/plaid/models/transfer_sweep_get_request.rb +245 -0
  615. data/lib/plaid/models/transfer_sweep_get_response.rb +239 -0
  616. data/lib/plaid/models/transfer_sweep_list_request.rb +320 -0
  617. data/lib/plaid/models/transfer_sweep_list_response.rb +241 -0
  618. data/lib/plaid/models/transfer_sweep_status.rb +41 -0
  619. data/lib/plaid/models/transfer_type.rb +39 -0
  620. data/lib/plaid/models/transfer_user_address_in_request.rb +260 -0
  621. data/lib/plaid/models/transfer_user_address_in_response.rb +265 -0
  622. data/lib/plaid/models/transfer_user_in_request.rb +254 -0
  623. data/lib/plaid/models/transfer_user_in_response.rb +257 -0
  624. data/lib/plaid/models/user_create_request.rb +245 -0
  625. data/lib/plaid/models/user_create_response.rb +254 -0
  626. data/lib/plaid/models/user_custom_password.rb +2 -2
  627. data/lib/plaid/models/user_permission_revoked_webhook.rb +3 -4
  628. data/lib/plaid/models/{bank_transfer_receiver_details.rb → verification_attribute.rb} +23 -23
  629. data/lib/plaid/models/verification_expired_webhook.rb +3 -3
  630. data/lib/plaid/models/verification_refresh_status.rb +40 -0
  631. data/lib/plaid/models/verification_status.rb +6 -4
  632. data/lib/plaid/models/w2.rb +437 -0
  633. data/lib/plaid/models/{income_verification_documents_download_response.rb → w2_box12.rb} +26 -18
  634. data/lib/plaid/models/w2_state_and_local_wages.rb +287 -0
  635. data/lib/plaid/models/wallet_balance.rb +240 -0
  636. data/lib/plaid/models/wallet_get_request.rb +266 -0
  637. data/lib/plaid/models/wallet_get_response.rb +259 -0
  638. data/lib/plaid/models/{nullable_access_token.rb → wallet_numbers.rb} +18 -7
  639. data/lib/plaid/models/wallet_transaction.rb +346 -0
  640. data/lib/plaid/models/wallet_transaction_amount.rb +306 -0
  641. data/lib/plaid/models/wallet_transaction_counterparty.rb +260 -0
  642. data/lib/plaid/models/wallet_transaction_counterparty_bacs.rb +289 -0
  643. data/lib/plaid/models/wallet_transaction_counterparty_numbers.rb +224 -0
  644. data/lib/plaid/models/wallet_transaction_execute_request.rb +384 -0
  645. data/lib/plaid/models/wallet_transaction_execute_response.rb +254 -0
  646. data/lib/plaid/models/wallet_transaction_status.rb +41 -0
  647. data/lib/plaid/models/wallet_transactions_list_request.rb +331 -0
  648. data/lib/plaid/models/wallet_transactions_list_response.rb +252 -0
  649. data/lib/plaid/models/warning.rb +36 -2
  650. data/lib/plaid/models/webhook_type.rb +43 -0
  651. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +3 -4
  652. data/lib/plaid/models/webhook_verification_key_get_request.rb +2 -2
  653. data/lib/plaid/models/webhook_verification_key_get_response.rb +2 -2
  654. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +3 -2
  655. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +3 -2
  656. data/lib/plaid/version.rb +3 -3
  657. data/lib/plaid.rb +344 -19
  658. data/plaid.gemspec +2 -2
  659. data/templates/ruby/api_client.mustache +3 -2
  660. data/templates/ruby/api_client_faraday_partial.mustache +2 -1
  661. data/templates/ruby/api_error.mustache +49 -0
  662. data/templates/ruby/configuration.mustache +6 -4
  663. data/templates/ruby/partial_model_enum_class.mustache +22 -0
  664. data/test/test_accounts.rb +4 -8
  665. data/test/test_asset_report.rb +1 -1
  666. data/test/test_bank_transfers.rb +1 -1
  667. data/test/test_item.rb +0 -10
  668. data/test/test_payment_initiation.rb +1 -1
  669. data/test/test_processor.rb +1 -16
  670. metadata +349 -24
  671. data/PUBLISH.md +0 -19
  672. data/lib/plaid/models/standalone_investment_transaction_subtype.rb +0 -650
  673. data/pkg/plaid-14.2.0.gem +0 -0
@@ -0,0 +1,903 @@
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.97.0
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
+ # The core attributes object contains additional data that can be used to assess the ACH return risk. Examples of data include: `days_since_first_plaid_connection`: The number of days since the first time the Item was connected to an application via Plaid `plaid_connections_count_7d`: The number of times the Item has been connected to applications via Plaid over the past 7 days `plaid_connections_count_30d`: The number of times the Item has been connected to applications via Plaid over the past 30 days `total_plaid_connections_count`: The number of times the Item has been connected to applications via Plaid `is_savings_or_money_market_account`: Indicates whether the ACH transaction funding account is a savings/money market account For the full list and detailed documentation of core attributes available, or to request that core attributes not be returned, contact Sales or your Plaid account manager
18
+ class SignalEvaluateCoreAttributes
19
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 7 days from the account that will be debited.
20
+ attr_accessor :unauthorized_transactions_count_7d
21
+
22
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 30 days from the account that will be debited.
23
+ attr_accessor :unauthorized_transactions_count_30d
24
+
25
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 60 days from the account that will be debited.
26
+ attr_accessor :unauthorized_transactions_count_60d
27
+
28
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 90 days from the account that will be debited.
29
+ attr_accessor :unauthorized_transactions_count_90d
30
+
31
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 7 days from the account that will be debited.
32
+ attr_accessor :nsf_overdraft_transactions_count_7d
33
+
34
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 30 days from the account that will be debited.
35
+ attr_accessor :nsf_overdraft_transactions_count_30d
36
+
37
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 60 days from the account that will be debited.
38
+ attr_accessor :nsf_overdraft_transactions_count_60d
39
+
40
+ # We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 90 days from the account that will be debited.
41
+ attr_accessor :nsf_overdraft_transactions_count_90d
42
+
43
+ # The number of days since the first time the Item was connected to an application via Plaid
44
+ attr_accessor :days_since_first_plaid_connection
45
+
46
+ # The number of times the Item has been connected to applications via Plaid over the past 7 days
47
+ attr_accessor :plaid_connections_count_7d
48
+
49
+ # The number of times the Item has been connected to applications via Plaid over the past 30 days
50
+ attr_accessor :plaid_connections_count_30d
51
+
52
+ # The total number of times the Item has been connected to applications via Plaid
53
+ attr_accessor :total_plaid_connections_count
54
+
55
+ # Indicates if the ACH transaction funding account is a savings/money market account
56
+ attr_accessor :is_savings_or_money_market_account
57
+
58
+ # The total credit (inflow) transaction amount over the past 10 days from the account that will be debited
59
+ attr_accessor :total_credit_transactions_amount_10d
60
+
61
+ # The total debit (outflow) transaction amount over the past 10 days from the account that will be debited
62
+ attr_accessor :total_debit_transactions_amount_10d
63
+
64
+ # The 50th percentile of all credit (inflow) transaction amounts over the past 28 days from the account that will be debited
65
+ attr_accessor :p50_credit_transactions_amount_28d
66
+
67
+ # The 50th percentile of all debit (outflow) transaction amounts over the past 28 days from the account that will be debited
68
+ attr_accessor :p50_debit_transactions_amount_28d
69
+
70
+ # The 95th percentile of all credit (inflow) transaction amounts over the past 28 days from the account that will be debited
71
+ attr_accessor :p95_credit_transactions_amount_28d
72
+
73
+ # The 95th percentile of all debit (outflow) transaction amounts over the past 28 days from the account that will be debited
74
+ attr_accessor :p95_debit_transactions_amount_28d
75
+
76
+ # The number of days within the past 90 days when the account that will be debited had a negative end-of-day available balance
77
+ attr_accessor :days_with_negative_balance_count_90d
78
+
79
+ # The 90th percentile of the end-of-day available balance over the past 30 days of the account that will be debited
80
+ attr_accessor :p90_eod_balance_30d
81
+
82
+ # The 90th percentile of the end-of-day available balance over the past 60 days of the account that will be debited
83
+ attr_accessor :p90_eod_balance_60d
84
+
85
+ # The 90th percentile of the end-of-day available balance over the past 90 days of the account that will be debited
86
+ attr_accessor :p90_eod_balance_90d
87
+
88
+ # The 10th percentile of the end-of-day available balance over the past 30 days of the account that will be debited
89
+ attr_accessor :p10_eod_balance_30d
90
+
91
+ # The 10th percentile of the end-of-day available balance over the past 60 days of the account that will be debited
92
+ attr_accessor :p10_eod_balance_60d
93
+
94
+ # The 10th percentile of the end-of-day available balance over the past 90 days of the account that will be debited
95
+ attr_accessor :p10_eod_balance_90d
96
+
97
+ # Available balance, as of the `balance_last_updated` time. The available balance is the current balance less any outstanding holds or debits that have not yet posted to the account.
98
+ attr_accessor :available_balance
99
+
100
+ # Current balance, as of the `balance_last_updated` time. The current balance is the total amount of funds in the account.
101
+ attr_accessor :current_balance
102
+
103
+ # Timestamp in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DDTHH:mm:ssZ) indicating the last time that the balance for the given account has been updated.
104
+ attr_accessor :balance_last_updated
105
+
106
+ # The number of times the account's phone numbers on file have changed over the past 28 days
107
+ attr_accessor :phone_change_count_28d
108
+
109
+ # The number of times the account's phone numbers on file have changed over the past 90 days
110
+ attr_accessor :phone_change_count_90d
111
+
112
+ # The number of times the account's email addresses on file have changed over the past 28 days
113
+ attr_accessor :email_change_count_28d
114
+
115
+ # The number of times the account's email addresses on file have changed over the past 90 days
116
+ attr_accessor :email_change_count_90d
117
+
118
+ # The number of times the account's addresses on file have changed over the past 28 days
119
+ attr_accessor :address_change_count_28d
120
+
121
+ # The number of times the account's addresses on file have changed over the past 90 days
122
+ attr_accessor :address_change_count_90d
123
+
124
+ # The number of non-OAuth authentication attempts via Plaid for this bank account over the past 3 days
125
+ attr_accessor :plaid_non_oauth_authentication_attempts_count_3d
126
+
127
+ # The number of non-OAuth authentication attempts via Plaid for this bank account over the past 7 days
128
+ attr_accessor :plaid_non_oauth_authentication_attempts_count_7d
129
+
130
+ # The number of non-OAuth authentication attempts via Plaid for this bank account over the past 30 days
131
+ attr_accessor :plaid_non_oauth_authentication_attempts_count_30d
132
+
133
+ # The number of failed non-OAuth authentication attempts via Plaid for this bank account over the past 3 days
134
+ attr_accessor :failed_plaid_non_oauth_authentication_attempts_count_3d
135
+
136
+ # The number of failed non-OAuth authentication attempts via Plaid for this bank account over the past 7 days
137
+ attr_accessor :failed_plaid_non_oauth_authentication_attempts_count_7d
138
+
139
+ # The number of failed non-OAuth authentication attempts via Plaid for this bank account over the past 30 days
140
+ attr_accessor :failed_plaid_non_oauth_authentication_attempts_count_30d
141
+
142
+ # The total number of debit (outflow) transactions over the past 10 days from the account that will be debited
143
+ attr_accessor :debit_transactions_count_10d
144
+
145
+ # The total number of credit (inflow) transactions over the past 10 days from the account that will be debited
146
+ attr_accessor :credit_transactions_count_10d
147
+
148
+ # The total number of debit (outflow) transactions over the past 30 days from the account that will be debited
149
+ attr_accessor :debit_transactions_count_30d
150
+
151
+ # The total number of credit (inflow) transactions over the past 30 days from the account that will be debited
152
+ attr_accessor :credit_transactions_count_30d
153
+
154
+ # The total number of debit (outflow) transactions over the past 60 days from the account that will be debited
155
+ attr_accessor :debit_transactions_count_60d
156
+
157
+ # The total number of credit (inflow) transactions over the past 60 days from the account that will be debited
158
+ attr_accessor :credit_transactions_count_60d
159
+
160
+ # The total number of debit (outflow) transactions over the past 90 days from the account that will be debited
161
+ attr_accessor :debit_transactions_count_90d
162
+
163
+ # The total number of credit (inflow) transactions over the past 90 days from the account that will be debited
164
+ attr_accessor :credit_transactions_count_90d
165
+
166
+ # The total debit (outflow) transaction amount over the past 30 days from the account that will be debited
167
+ attr_accessor :total_debit_transactions_amount_30d
168
+
169
+ # The total credit (inflow) transaction amount over the past 30 days from the account that will be debited
170
+ attr_accessor :total_credit_transactions_amount_30d
171
+
172
+ # The total debit (outflow) transaction amount over the past 60 days from the account that will be debited
173
+ attr_accessor :total_debit_transactions_amount_60d
174
+
175
+ # The total credit (inflow) transaction amount over the past 60 days from the account that will be debited
176
+ attr_accessor :total_credit_transactions_amount_60d
177
+
178
+ # The total debit (outflow) transaction amount over the past 90 days from the account that will be debited
179
+ attr_accessor :total_debit_transactions_amount_90d
180
+
181
+ # The total credit (inflow) transaction amount over the past 90 days from the account that will be debited
182
+ attr_accessor :total_credit_transactions_amount_90d
183
+
184
+ # The 50th percentile of the end-of-day available balance over the past 30 days of the account that will be debited
185
+ attr_accessor :p50_eod_balance_30d
186
+
187
+ # The 50th percentile of the end-of-day available balance over the past 60 days of the account that will be debited
188
+ attr_accessor :p50_eod_balance_60d
189
+
190
+ # The 50th percentile of the end-of-day available balance over the past 90 days of the account that will be debited
191
+ attr_accessor :p50_eod_balance_90d
192
+
193
+ # The 50th percentile of the end-of-day available balance between day 31 and day 60 over the past 60 days of the account that will be debited
194
+ attr_accessor :p50_eod_balance_31d_to_60d
195
+
196
+ # The 50th percentile of the end-of-day available balance between day 61 and day 90 over the past 60 days of the account that will be debited
197
+ attr_accessor :p50_eod_balance_61d_to_90d
198
+
199
+ # The 90th percentile of the end-of-day available balance between day 31 and day 60 over the past 60 days of the account that will be debited
200
+ attr_accessor :p90_eod_balance_31d_to_60d
201
+
202
+ # The 90th percentile of the end-of-day available balance between day 61 and day 90 over the past 60 days of the account that will be debited
203
+ attr_accessor :p90_eod_balance_61d_to_90d
204
+
205
+ # The 10th percentile of the end-of-day available balance between day 31 and day 60 over the past 60 days of the account that will be debited
206
+ attr_accessor :p10_eod_balance_31d_to_60d
207
+
208
+ # The 10th percentile of the end-of-day available balance between day 61 and day 90 over the past 60 days of the account that will be debited
209
+ attr_accessor :p10_eod_balance_61d_to_90d
210
+
211
+ # Attribute mapping from ruby-style variable name to JSON key.
212
+ def self.attribute_map
213
+ {
214
+ :'unauthorized_transactions_count_7d' => :'unauthorized_transactions_count_7d',
215
+ :'unauthorized_transactions_count_30d' => :'unauthorized_transactions_count_30d',
216
+ :'unauthorized_transactions_count_60d' => :'unauthorized_transactions_count_60d',
217
+ :'unauthorized_transactions_count_90d' => :'unauthorized_transactions_count_90d',
218
+ :'nsf_overdraft_transactions_count_7d' => :'nsf_overdraft_transactions_count_7d',
219
+ :'nsf_overdraft_transactions_count_30d' => :'nsf_overdraft_transactions_count_30d',
220
+ :'nsf_overdraft_transactions_count_60d' => :'nsf_overdraft_transactions_count_60d',
221
+ :'nsf_overdraft_transactions_count_90d' => :'nsf_overdraft_transactions_count_90d',
222
+ :'days_since_first_plaid_connection' => :'days_since_first_plaid_connection',
223
+ :'plaid_connections_count_7d' => :'plaid_connections_count_7d',
224
+ :'plaid_connections_count_30d' => :'plaid_connections_count_30d',
225
+ :'total_plaid_connections_count' => :'total_plaid_connections_count',
226
+ :'is_savings_or_money_market_account' => :'is_savings_or_money_market_account',
227
+ :'total_credit_transactions_amount_10d' => :'total_credit_transactions_amount_10d',
228
+ :'total_debit_transactions_amount_10d' => :'total_debit_transactions_amount_10d',
229
+ :'p50_credit_transactions_amount_28d' => :'p50_credit_transactions_amount_28d',
230
+ :'p50_debit_transactions_amount_28d' => :'p50_debit_transactions_amount_28d',
231
+ :'p95_credit_transactions_amount_28d' => :'p95_credit_transactions_amount_28d',
232
+ :'p95_debit_transactions_amount_28d' => :'p95_debit_transactions_amount_28d',
233
+ :'days_with_negative_balance_count_90d' => :'days_with_negative_balance_count_90d',
234
+ :'p90_eod_balance_30d' => :'p90_eod_balance_30d',
235
+ :'p90_eod_balance_60d' => :'p90_eod_balance_60d',
236
+ :'p90_eod_balance_90d' => :'p90_eod_balance_90d',
237
+ :'p10_eod_balance_30d' => :'p10_eod_balance_30d',
238
+ :'p10_eod_balance_60d' => :'p10_eod_balance_60d',
239
+ :'p10_eod_balance_90d' => :'p10_eod_balance_90d',
240
+ :'available_balance' => :'available_balance',
241
+ :'current_balance' => :'current_balance',
242
+ :'balance_last_updated' => :'balance_last_updated',
243
+ :'phone_change_count_28d' => :'phone_change_count_28d',
244
+ :'phone_change_count_90d' => :'phone_change_count_90d',
245
+ :'email_change_count_28d' => :'email_change_count_28d',
246
+ :'email_change_count_90d' => :'email_change_count_90d',
247
+ :'address_change_count_28d' => :'address_change_count_28d',
248
+ :'address_change_count_90d' => :'address_change_count_90d',
249
+ :'plaid_non_oauth_authentication_attempts_count_3d' => :'plaid_non_oauth_authentication_attempts_count_3d',
250
+ :'plaid_non_oauth_authentication_attempts_count_7d' => :'plaid_non_oauth_authentication_attempts_count_7d',
251
+ :'plaid_non_oauth_authentication_attempts_count_30d' => :'plaid_non_oauth_authentication_attempts_count_30d',
252
+ :'failed_plaid_non_oauth_authentication_attempts_count_3d' => :'failed_plaid_non_oauth_authentication_attempts_count_3d',
253
+ :'failed_plaid_non_oauth_authentication_attempts_count_7d' => :'failed_plaid_non_oauth_authentication_attempts_count_7d',
254
+ :'failed_plaid_non_oauth_authentication_attempts_count_30d' => :'failed_plaid_non_oauth_authentication_attempts_count_30d',
255
+ :'debit_transactions_count_10d' => :'debit_transactions_count_10d',
256
+ :'credit_transactions_count_10d' => :'credit_transactions_count_10d',
257
+ :'debit_transactions_count_30d' => :'debit_transactions_count_30d',
258
+ :'credit_transactions_count_30d' => :'credit_transactions_count_30d',
259
+ :'debit_transactions_count_60d' => :'debit_transactions_count_60d',
260
+ :'credit_transactions_count_60d' => :'credit_transactions_count_60d',
261
+ :'debit_transactions_count_90d' => :'debit_transactions_count_90d',
262
+ :'credit_transactions_count_90d' => :'credit_transactions_count_90d',
263
+ :'total_debit_transactions_amount_30d' => :'total_debit_transactions_amount_30d',
264
+ :'total_credit_transactions_amount_30d' => :'total_credit_transactions_amount_30d',
265
+ :'total_debit_transactions_amount_60d' => :'total_debit_transactions_amount_60d',
266
+ :'total_credit_transactions_amount_60d' => :'total_credit_transactions_amount_60d',
267
+ :'total_debit_transactions_amount_90d' => :'total_debit_transactions_amount_90d',
268
+ :'total_credit_transactions_amount_90d' => :'total_credit_transactions_amount_90d',
269
+ :'p50_eod_balance_30d' => :'p50_eod_balance_30d',
270
+ :'p50_eod_balance_60d' => :'p50_eod_balance_60d',
271
+ :'p50_eod_balance_90d' => :'p50_eod_balance_90d',
272
+ :'p50_eod_balance_31d_to_60d' => :'p50_eod_balance_31d_to_60d',
273
+ :'p50_eod_balance_61d_to_90d' => :'p50_eod_balance_61d_to_90d',
274
+ :'p90_eod_balance_31d_to_60d' => :'p90_eod_balance_31d_to_60d',
275
+ :'p90_eod_balance_61d_to_90d' => :'p90_eod_balance_61d_to_90d',
276
+ :'p10_eod_balance_31d_to_60d' => :'p10_eod_balance_31d_to_60d',
277
+ :'p10_eod_balance_61d_to_90d' => :'p10_eod_balance_61d_to_90d'
278
+ }
279
+ end
280
+
281
+ # Returns all the JSON keys this model knows about
282
+ def self.acceptable_attributes
283
+ attribute_map.values
284
+ end
285
+
286
+ # Attribute type mapping.
287
+ def self.openapi_types
288
+ {
289
+ :'unauthorized_transactions_count_7d' => :'Integer',
290
+ :'unauthorized_transactions_count_30d' => :'Integer',
291
+ :'unauthorized_transactions_count_60d' => :'Integer',
292
+ :'unauthorized_transactions_count_90d' => :'Integer',
293
+ :'nsf_overdraft_transactions_count_7d' => :'Integer',
294
+ :'nsf_overdraft_transactions_count_30d' => :'Integer',
295
+ :'nsf_overdraft_transactions_count_60d' => :'Integer',
296
+ :'nsf_overdraft_transactions_count_90d' => :'Integer',
297
+ :'days_since_first_plaid_connection' => :'Integer',
298
+ :'plaid_connections_count_7d' => :'Integer',
299
+ :'plaid_connections_count_30d' => :'Integer',
300
+ :'total_plaid_connections_count' => :'Integer',
301
+ :'is_savings_or_money_market_account' => :'Boolean',
302
+ :'total_credit_transactions_amount_10d' => :'Float',
303
+ :'total_debit_transactions_amount_10d' => :'Float',
304
+ :'p50_credit_transactions_amount_28d' => :'Float',
305
+ :'p50_debit_transactions_amount_28d' => :'Float',
306
+ :'p95_credit_transactions_amount_28d' => :'Float',
307
+ :'p95_debit_transactions_amount_28d' => :'Float',
308
+ :'days_with_negative_balance_count_90d' => :'Integer',
309
+ :'p90_eod_balance_30d' => :'Float',
310
+ :'p90_eod_balance_60d' => :'Float',
311
+ :'p90_eod_balance_90d' => :'Float',
312
+ :'p10_eod_balance_30d' => :'Float',
313
+ :'p10_eod_balance_60d' => :'Float',
314
+ :'p10_eod_balance_90d' => :'Float',
315
+ :'available_balance' => :'Float',
316
+ :'current_balance' => :'Float',
317
+ :'balance_last_updated' => :'Time',
318
+ :'phone_change_count_28d' => :'Integer',
319
+ :'phone_change_count_90d' => :'Integer',
320
+ :'email_change_count_28d' => :'Integer',
321
+ :'email_change_count_90d' => :'Integer',
322
+ :'address_change_count_28d' => :'Integer',
323
+ :'address_change_count_90d' => :'Integer',
324
+ :'plaid_non_oauth_authentication_attempts_count_3d' => :'Integer',
325
+ :'plaid_non_oauth_authentication_attempts_count_7d' => :'Integer',
326
+ :'plaid_non_oauth_authentication_attempts_count_30d' => :'Integer',
327
+ :'failed_plaid_non_oauth_authentication_attempts_count_3d' => :'Integer',
328
+ :'failed_plaid_non_oauth_authentication_attempts_count_7d' => :'Integer',
329
+ :'failed_plaid_non_oauth_authentication_attempts_count_30d' => :'Integer',
330
+ :'debit_transactions_count_10d' => :'Integer',
331
+ :'credit_transactions_count_10d' => :'Integer',
332
+ :'debit_transactions_count_30d' => :'Integer',
333
+ :'credit_transactions_count_30d' => :'Integer',
334
+ :'debit_transactions_count_60d' => :'Integer',
335
+ :'credit_transactions_count_60d' => :'Integer',
336
+ :'debit_transactions_count_90d' => :'Integer',
337
+ :'credit_transactions_count_90d' => :'Integer',
338
+ :'total_debit_transactions_amount_30d' => :'Float',
339
+ :'total_credit_transactions_amount_30d' => :'Float',
340
+ :'total_debit_transactions_amount_60d' => :'Float',
341
+ :'total_credit_transactions_amount_60d' => :'Float',
342
+ :'total_debit_transactions_amount_90d' => :'Float',
343
+ :'total_credit_transactions_amount_90d' => :'Float',
344
+ :'p50_eod_balance_30d' => :'Float',
345
+ :'p50_eod_balance_60d' => :'Float',
346
+ :'p50_eod_balance_90d' => :'Float',
347
+ :'p50_eod_balance_31d_to_60d' => :'Float',
348
+ :'p50_eod_balance_61d_to_90d' => :'Float',
349
+ :'p90_eod_balance_31d_to_60d' => :'Float',
350
+ :'p90_eod_balance_61d_to_90d' => :'Float',
351
+ :'p10_eod_balance_31d_to_60d' => :'Float',
352
+ :'p10_eod_balance_61d_to_90d' => :'Float'
353
+ }
354
+ end
355
+
356
+ # List of attributes with nullable: true
357
+ def self.openapi_nullable
358
+ Set.new([
359
+ :'days_since_first_plaid_connection',
360
+ :'plaid_connections_count_7d',
361
+ :'plaid_connections_count_30d',
362
+ :'total_plaid_connections_count',
363
+ :'p50_credit_transactions_amount_28d',
364
+ :'p50_debit_transactions_amount_28d',
365
+ :'p95_credit_transactions_amount_28d',
366
+ :'p95_debit_transactions_amount_28d',
367
+ :'days_with_negative_balance_count_90d',
368
+ :'p90_eod_balance_30d',
369
+ :'p90_eod_balance_60d',
370
+ :'p90_eod_balance_90d',
371
+ :'p10_eod_balance_30d',
372
+ :'p10_eod_balance_60d',
373
+ :'p10_eod_balance_90d',
374
+ :'available_balance',
375
+ :'current_balance',
376
+ :'balance_last_updated',
377
+ :'phone_change_count_28d',
378
+ :'phone_change_count_90d',
379
+ :'email_change_count_28d',
380
+ :'email_change_count_90d',
381
+ :'address_change_count_28d',
382
+ :'address_change_count_90d',
383
+ :'plaid_non_oauth_authentication_attempts_count_3d',
384
+ :'plaid_non_oauth_authentication_attempts_count_7d',
385
+ :'plaid_non_oauth_authentication_attempts_count_30d',
386
+ :'failed_plaid_non_oauth_authentication_attempts_count_3d',
387
+ :'failed_plaid_non_oauth_authentication_attempts_count_7d',
388
+ :'failed_plaid_non_oauth_authentication_attempts_count_30d',
389
+ :'debit_transactions_count_10d',
390
+ :'credit_transactions_count_10d',
391
+ :'debit_transactions_count_30d',
392
+ :'credit_transactions_count_30d',
393
+ :'debit_transactions_count_60d',
394
+ :'credit_transactions_count_60d',
395
+ :'debit_transactions_count_90d',
396
+ :'credit_transactions_count_90d',
397
+ :'total_debit_transactions_amount_30d',
398
+ :'total_credit_transactions_amount_30d',
399
+ :'total_debit_transactions_amount_60d',
400
+ :'total_credit_transactions_amount_60d',
401
+ :'total_debit_transactions_amount_90d',
402
+ :'total_credit_transactions_amount_90d',
403
+ :'p50_eod_balance_30d',
404
+ :'p50_eod_balance_60d',
405
+ :'p50_eod_balance_90d',
406
+ :'p50_eod_balance_31d_to_60d',
407
+ :'p50_eod_balance_61d_to_90d',
408
+ :'p90_eod_balance_31d_to_60d',
409
+ :'p90_eod_balance_61d_to_90d',
410
+ :'p10_eod_balance_31d_to_60d',
411
+ :'p10_eod_balance_61d_to_90d'
412
+ ])
413
+ end
414
+
415
+ # Initializes the object
416
+ # @param [Hash] attributes Model attributes in the form of hash
417
+ def initialize(attributes = {})
418
+ if (!attributes.is_a?(Hash))
419
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::SignalEvaluateCoreAttributes` initialize method"
420
+ end
421
+
422
+ # check to see if the attribute exists and convert string to symbol for hash key
423
+ attributes = attributes.each_with_object({}) { |(k, v), h|
424
+ if (!self.class.attribute_map.key?(k.to_sym))
425
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::SignalEvaluateCoreAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
426
+ end
427
+ h[k.to_sym] = v
428
+ }
429
+
430
+ if attributes.key?(:'unauthorized_transactions_count_7d')
431
+ self.unauthorized_transactions_count_7d = attributes[:'unauthorized_transactions_count_7d']
432
+ end
433
+
434
+ if attributes.key?(:'unauthorized_transactions_count_30d')
435
+ self.unauthorized_transactions_count_30d = attributes[:'unauthorized_transactions_count_30d']
436
+ end
437
+
438
+ if attributes.key?(:'unauthorized_transactions_count_60d')
439
+ self.unauthorized_transactions_count_60d = attributes[:'unauthorized_transactions_count_60d']
440
+ end
441
+
442
+ if attributes.key?(:'unauthorized_transactions_count_90d')
443
+ self.unauthorized_transactions_count_90d = attributes[:'unauthorized_transactions_count_90d']
444
+ end
445
+
446
+ if attributes.key?(:'nsf_overdraft_transactions_count_7d')
447
+ self.nsf_overdraft_transactions_count_7d = attributes[:'nsf_overdraft_transactions_count_7d']
448
+ end
449
+
450
+ if attributes.key?(:'nsf_overdraft_transactions_count_30d')
451
+ self.nsf_overdraft_transactions_count_30d = attributes[:'nsf_overdraft_transactions_count_30d']
452
+ end
453
+
454
+ if attributes.key?(:'nsf_overdraft_transactions_count_60d')
455
+ self.nsf_overdraft_transactions_count_60d = attributes[:'nsf_overdraft_transactions_count_60d']
456
+ end
457
+
458
+ if attributes.key?(:'nsf_overdraft_transactions_count_90d')
459
+ self.nsf_overdraft_transactions_count_90d = attributes[:'nsf_overdraft_transactions_count_90d']
460
+ end
461
+
462
+ if attributes.key?(:'days_since_first_plaid_connection')
463
+ self.days_since_first_plaid_connection = attributes[:'days_since_first_plaid_connection']
464
+ end
465
+
466
+ if attributes.key?(:'plaid_connections_count_7d')
467
+ self.plaid_connections_count_7d = attributes[:'plaid_connections_count_7d']
468
+ end
469
+
470
+ if attributes.key?(:'plaid_connections_count_30d')
471
+ self.plaid_connections_count_30d = attributes[:'plaid_connections_count_30d']
472
+ end
473
+
474
+ if attributes.key?(:'total_plaid_connections_count')
475
+ self.total_plaid_connections_count = attributes[:'total_plaid_connections_count']
476
+ end
477
+
478
+ if attributes.key?(:'is_savings_or_money_market_account')
479
+ self.is_savings_or_money_market_account = attributes[:'is_savings_or_money_market_account']
480
+ end
481
+
482
+ if attributes.key?(:'total_credit_transactions_amount_10d')
483
+ self.total_credit_transactions_amount_10d = attributes[:'total_credit_transactions_amount_10d']
484
+ end
485
+
486
+ if attributes.key?(:'total_debit_transactions_amount_10d')
487
+ self.total_debit_transactions_amount_10d = attributes[:'total_debit_transactions_amount_10d']
488
+ end
489
+
490
+ if attributes.key?(:'p50_credit_transactions_amount_28d')
491
+ self.p50_credit_transactions_amount_28d = attributes[:'p50_credit_transactions_amount_28d']
492
+ end
493
+
494
+ if attributes.key?(:'p50_debit_transactions_amount_28d')
495
+ self.p50_debit_transactions_amount_28d = attributes[:'p50_debit_transactions_amount_28d']
496
+ end
497
+
498
+ if attributes.key?(:'p95_credit_transactions_amount_28d')
499
+ self.p95_credit_transactions_amount_28d = attributes[:'p95_credit_transactions_amount_28d']
500
+ end
501
+
502
+ if attributes.key?(:'p95_debit_transactions_amount_28d')
503
+ self.p95_debit_transactions_amount_28d = attributes[:'p95_debit_transactions_amount_28d']
504
+ end
505
+
506
+ if attributes.key?(:'days_with_negative_balance_count_90d')
507
+ self.days_with_negative_balance_count_90d = attributes[:'days_with_negative_balance_count_90d']
508
+ end
509
+
510
+ if attributes.key?(:'p90_eod_balance_30d')
511
+ self.p90_eod_balance_30d = attributes[:'p90_eod_balance_30d']
512
+ end
513
+
514
+ if attributes.key?(:'p90_eod_balance_60d')
515
+ self.p90_eod_balance_60d = attributes[:'p90_eod_balance_60d']
516
+ end
517
+
518
+ if attributes.key?(:'p90_eod_balance_90d')
519
+ self.p90_eod_balance_90d = attributes[:'p90_eod_balance_90d']
520
+ end
521
+
522
+ if attributes.key?(:'p10_eod_balance_30d')
523
+ self.p10_eod_balance_30d = attributes[:'p10_eod_balance_30d']
524
+ end
525
+
526
+ if attributes.key?(:'p10_eod_balance_60d')
527
+ self.p10_eod_balance_60d = attributes[:'p10_eod_balance_60d']
528
+ end
529
+
530
+ if attributes.key?(:'p10_eod_balance_90d')
531
+ self.p10_eod_balance_90d = attributes[:'p10_eod_balance_90d']
532
+ end
533
+
534
+ if attributes.key?(:'available_balance')
535
+ self.available_balance = attributes[:'available_balance']
536
+ end
537
+
538
+ if attributes.key?(:'current_balance')
539
+ self.current_balance = attributes[:'current_balance']
540
+ end
541
+
542
+ if attributes.key?(:'balance_last_updated')
543
+ self.balance_last_updated = attributes[:'balance_last_updated']
544
+ end
545
+
546
+ if attributes.key?(:'phone_change_count_28d')
547
+ self.phone_change_count_28d = attributes[:'phone_change_count_28d']
548
+ end
549
+
550
+ if attributes.key?(:'phone_change_count_90d')
551
+ self.phone_change_count_90d = attributes[:'phone_change_count_90d']
552
+ end
553
+
554
+ if attributes.key?(:'email_change_count_28d')
555
+ self.email_change_count_28d = attributes[:'email_change_count_28d']
556
+ end
557
+
558
+ if attributes.key?(:'email_change_count_90d')
559
+ self.email_change_count_90d = attributes[:'email_change_count_90d']
560
+ end
561
+
562
+ if attributes.key?(:'address_change_count_28d')
563
+ self.address_change_count_28d = attributes[:'address_change_count_28d']
564
+ end
565
+
566
+ if attributes.key?(:'address_change_count_90d')
567
+ self.address_change_count_90d = attributes[:'address_change_count_90d']
568
+ end
569
+
570
+ if attributes.key?(:'plaid_non_oauth_authentication_attempts_count_3d')
571
+ self.plaid_non_oauth_authentication_attempts_count_3d = attributes[:'plaid_non_oauth_authentication_attempts_count_3d']
572
+ end
573
+
574
+ if attributes.key?(:'plaid_non_oauth_authentication_attempts_count_7d')
575
+ self.plaid_non_oauth_authentication_attempts_count_7d = attributes[:'plaid_non_oauth_authentication_attempts_count_7d']
576
+ end
577
+
578
+ if attributes.key?(:'plaid_non_oauth_authentication_attempts_count_30d')
579
+ self.plaid_non_oauth_authentication_attempts_count_30d = attributes[:'plaid_non_oauth_authentication_attempts_count_30d']
580
+ end
581
+
582
+ if attributes.key?(:'failed_plaid_non_oauth_authentication_attempts_count_3d')
583
+ self.failed_plaid_non_oauth_authentication_attempts_count_3d = attributes[:'failed_plaid_non_oauth_authentication_attempts_count_3d']
584
+ end
585
+
586
+ if attributes.key?(:'failed_plaid_non_oauth_authentication_attempts_count_7d')
587
+ self.failed_plaid_non_oauth_authentication_attempts_count_7d = attributes[:'failed_plaid_non_oauth_authentication_attempts_count_7d']
588
+ end
589
+
590
+ if attributes.key?(:'failed_plaid_non_oauth_authentication_attempts_count_30d')
591
+ self.failed_plaid_non_oauth_authentication_attempts_count_30d = attributes[:'failed_plaid_non_oauth_authentication_attempts_count_30d']
592
+ end
593
+
594
+ if attributes.key?(:'debit_transactions_count_10d')
595
+ self.debit_transactions_count_10d = attributes[:'debit_transactions_count_10d']
596
+ end
597
+
598
+ if attributes.key?(:'credit_transactions_count_10d')
599
+ self.credit_transactions_count_10d = attributes[:'credit_transactions_count_10d']
600
+ end
601
+
602
+ if attributes.key?(:'debit_transactions_count_30d')
603
+ self.debit_transactions_count_30d = attributes[:'debit_transactions_count_30d']
604
+ end
605
+
606
+ if attributes.key?(:'credit_transactions_count_30d')
607
+ self.credit_transactions_count_30d = attributes[:'credit_transactions_count_30d']
608
+ end
609
+
610
+ if attributes.key?(:'debit_transactions_count_60d')
611
+ self.debit_transactions_count_60d = attributes[:'debit_transactions_count_60d']
612
+ end
613
+
614
+ if attributes.key?(:'credit_transactions_count_60d')
615
+ self.credit_transactions_count_60d = attributes[:'credit_transactions_count_60d']
616
+ end
617
+
618
+ if attributes.key?(:'debit_transactions_count_90d')
619
+ self.debit_transactions_count_90d = attributes[:'debit_transactions_count_90d']
620
+ end
621
+
622
+ if attributes.key?(:'credit_transactions_count_90d')
623
+ self.credit_transactions_count_90d = attributes[:'credit_transactions_count_90d']
624
+ end
625
+
626
+ if attributes.key?(:'total_debit_transactions_amount_30d')
627
+ self.total_debit_transactions_amount_30d = attributes[:'total_debit_transactions_amount_30d']
628
+ end
629
+
630
+ if attributes.key?(:'total_credit_transactions_amount_30d')
631
+ self.total_credit_transactions_amount_30d = attributes[:'total_credit_transactions_amount_30d']
632
+ end
633
+
634
+ if attributes.key?(:'total_debit_transactions_amount_60d')
635
+ self.total_debit_transactions_amount_60d = attributes[:'total_debit_transactions_amount_60d']
636
+ end
637
+
638
+ if attributes.key?(:'total_credit_transactions_amount_60d')
639
+ self.total_credit_transactions_amount_60d = attributes[:'total_credit_transactions_amount_60d']
640
+ end
641
+
642
+ if attributes.key?(:'total_debit_transactions_amount_90d')
643
+ self.total_debit_transactions_amount_90d = attributes[:'total_debit_transactions_amount_90d']
644
+ end
645
+
646
+ if attributes.key?(:'total_credit_transactions_amount_90d')
647
+ self.total_credit_transactions_amount_90d = attributes[:'total_credit_transactions_amount_90d']
648
+ end
649
+
650
+ if attributes.key?(:'p50_eod_balance_30d')
651
+ self.p50_eod_balance_30d = attributes[:'p50_eod_balance_30d']
652
+ end
653
+
654
+ if attributes.key?(:'p50_eod_balance_60d')
655
+ self.p50_eod_balance_60d = attributes[:'p50_eod_balance_60d']
656
+ end
657
+
658
+ if attributes.key?(:'p50_eod_balance_90d')
659
+ self.p50_eod_balance_90d = attributes[:'p50_eod_balance_90d']
660
+ end
661
+
662
+ if attributes.key?(:'p50_eod_balance_31d_to_60d')
663
+ self.p50_eod_balance_31d_to_60d = attributes[:'p50_eod_balance_31d_to_60d']
664
+ end
665
+
666
+ if attributes.key?(:'p50_eod_balance_61d_to_90d')
667
+ self.p50_eod_balance_61d_to_90d = attributes[:'p50_eod_balance_61d_to_90d']
668
+ end
669
+
670
+ if attributes.key?(:'p90_eod_balance_31d_to_60d')
671
+ self.p90_eod_balance_31d_to_60d = attributes[:'p90_eod_balance_31d_to_60d']
672
+ end
673
+
674
+ if attributes.key?(:'p90_eod_balance_61d_to_90d')
675
+ self.p90_eod_balance_61d_to_90d = attributes[:'p90_eod_balance_61d_to_90d']
676
+ end
677
+
678
+ if attributes.key?(:'p10_eod_balance_31d_to_60d')
679
+ self.p10_eod_balance_31d_to_60d = attributes[:'p10_eod_balance_31d_to_60d']
680
+ end
681
+
682
+ if attributes.key?(:'p10_eod_balance_61d_to_90d')
683
+ self.p10_eod_balance_61d_to_90d = attributes[:'p10_eod_balance_61d_to_90d']
684
+ end
685
+ end
686
+
687
+ # Show invalid properties with the reasons. Usually used together with valid?
688
+ # @return Array for valid properties with the reasons
689
+ def list_invalid_properties
690
+ invalid_properties = Array.new
691
+ invalid_properties
692
+ end
693
+
694
+ # Check to see if the all the properties in the model are valid
695
+ # @return true if the model is valid
696
+ def valid?
697
+ true
698
+ end
699
+
700
+ # Checks equality by comparing each attribute.
701
+ # @param [Object] Object to be compared
702
+ def ==(o)
703
+ return true if self.equal?(o)
704
+ self.class == o.class &&
705
+ unauthorized_transactions_count_7d == o.unauthorized_transactions_count_7d &&
706
+ unauthorized_transactions_count_30d == o.unauthorized_transactions_count_30d &&
707
+ unauthorized_transactions_count_60d == o.unauthorized_transactions_count_60d &&
708
+ unauthorized_transactions_count_90d == o.unauthorized_transactions_count_90d &&
709
+ nsf_overdraft_transactions_count_7d == o.nsf_overdraft_transactions_count_7d &&
710
+ nsf_overdraft_transactions_count_30d == o.nsf_overdraft_transactions_count_30d &&
711
+ nsf_overdraft_transactions_count_60d == o.nsf_overdraft_transactions_count_60d &&
712
+ nsf_overdraft_transactions_count_90d == o.nsf_overdraft_transactions_count_90d &&
713
+ days_since_first_plaid_connection == o.days_since_first_plaid_connection &&
714
+ plaid_connections_count_7d == o.plaid_connections_count_7d &&
715
+ plaid_connections_count_30d == o.plaid_connections_count_30d &&
716
+ total_plaid_connections_count == o.total_plaid_connections_count &&
717
+ is_savings_or_money_market_account == o.is_savings_or_money_market_account &&
718
+ total_credit_transactions_amount_10d == o.total_credit_transactions_amount_10d &&
719
+ total_debit_transactions_amount_10d == o.total_debit_transactions_amount_10d &&
720
+ p50_credit_transactions_amount_28d == o.p50_credit_transactions_amount_28d &&
721
+ p50_debit_transactions_amount_28d == o.p50_debit_transactions_amount_28d &&
722
+ p95_credit_transactions_amount_28d == o.p95_credit_transactions_amount_28d &&
723
+ p95_debit_transactions_amount_28d == o.p95_debit_transactions_amount_28d &&
724
+ days_with_negative_balance_count_90d == o.days_with_negative_balance_count_90d &&
725
+ p90_eod_balance_30d == o.p90_eod_balance_30d &&
726
+ p90_eod_balance_60d == o.p90_eod_balance_60d &&
727
+ p90_eod_balance_90d == o.p90_eod_balance_90d &&
728
+ p10_eod_balance_30d == o.p10_eod_balance_30d &&
729
+ p10_eod_balance_60d == o.p10_eod_balance_60d &&
730
+ p10_eod_balance_90d == o.p10_eod_balance_90d &&
731
+ available_balance == o.available_balance &&
732
+ current_balance == o.current_balance &&
733
+ balance_last_updated == o.balance_last_updated &&
734
+ phone_change_count_28d == o.phone_change_count_28d &&
735
+ phone_change_count_90d == o.phone_change_count_90d &&
736
+ email_change_count_28d == o.email_change_count_28d &&
737
+ email_change_count_90d == o.email_change_count_90d &&
738
+ address_change_count_28d == o.address_change_count_28d &&
739
+ address_change_count_90d == o.address_change_count_90d &&
740
+ plaid_non_oauth_authentication_attempts_count_3d == o.plaid_non_oauth_authentication_attempts_count_3d &&
741
+ plaid_non_oauth_authentication_attempts_count_7d == o.plaid_non_oauth_authentication_attempts_count_7d &&
742
+ plaid_non_oauth_authentication_attempts_count_30d == o.plaid_non_oauth_authentication_attempts_count_30d &&
743
+ failed_plaid_non_oauth_authentication_attempts_count_3d == o.failed_plaid_non_oauth_authentication_attempts_count_3d &&
744
+ failed_plaid_non_oauth_authentication_attempts_count_7d == o.failed_plaid_non_oauth_authentication_attempts_count_7d &&
745
+ failed_plaid_non_oauth_authentication_attempts_count_30d == o.failed_plaid_non_oauth_authentication_attempts_count_30d &&
746
+ debit_transactions_count_10d == o.debit_transactions_count_10d &&
747
+ credit_transactions_count_10d == o.credit_transactions_count_10d &&
748
+ debit_transactions_count_30d == o.debit_transactions_count_30d &&
749
+ credit_transactions_count_30d == o.credit_transactions_count_30d &&
750
+ debit_transactions_count_60d == o.debit_transactions_count_60d &&
751
+ credit_transactions_count_60d == o.credit_transactions_count_60d &&
752
+ debit_transactions_count_90d == o.debit_transactions_count_90d &&
753
+ credit_transactions_count_90d == o.credit_transactions_count_90d &&
754
+ total_debit_transactions_amount_30d == o.total_debit_transactions_amount_30d &&
755
+ total_credit_transactions_amount_30d == o.total_credit_transactions_amount_30d &&
756
+ total_debit_transactions_amount_60d == o.total_debit_transactions_amount_60d &&
757
+ total_credit_transactions_amount_60d == o.total_credit_transactions_amount_60d &&
758
+ total_debit_transactions_amount_90d == o.total_debit_transactions_amount_90d &&
759
+ total_credit_transactions_amount_90d == o.total_credit_transactions_amount_90d &&
760
+ p50_eod_balance_30d == o.p50_eod_balance_30d &&
761
+ p50_eod_balance_60d == o.p50_eod_balance_60d &&
762
+ p50_eod_balance_90d == o.p50_eod_balance_90d &&
763
+ p50_eod_balance_31d_to_60d == o.p50_eod_balance_31d_to_60d &&
764
+ p50_eod_balance_61d_to_90d == o.p50_eod_balance_61d_to_90d &&
765
+ p90_eod_balance_31d_to_60d == o.p90_eod_balance_31d_to_60d &&
766
+ p90_eod_balance_61d_to_90d == o.p90_eod_balance_61d_to_90d &&
767
+ p10_eod_balance_31d_to_60d == o.p10_eod_balance_31d_to_60d &&
768
+ p10_eod_balance_61d_to_90d == o.p10_eod_balance_61d_to_90d
769
+ end
770
+
771
+ # @see the `==` method
772
+ # @param [Object] Object to be compared
773
+ def eql?(o)
774
+ self == o
775
+ end
776
+
777
+ # Calculates hash code according to all attributes.
778
+ # @return [Integer] Hash code
779
+ def hash
780
+ [unauthorized_transactions_count_7d, unauthorized_transactions_count_30d, unauthorized_transactions_count_60d, unauthorized_transactions_count_90d, nsf_overdraft_transactions_count_7d, nsf_overdraft_transactions_count_30d, nsf_overdraft_transactions_count_60d, nsf_overdraft_transactions_count_90d, days_since_first_plaid_connection, plaid_connections_count_7d, plaid_connections_count_30d, total_plaid_connections_count, is_savings_or_money_market_account, total_credit_transactions_amount_10d, total_debit_transactions_amount_10d, p50_credit_transactions_amount_28d, p50_debit_transactions_amount_28d, p95_credit_transactions_amount_28d, p95_debit_transactions_amount_28d, days_with_negative_balance_count_90d, p90_eod_balance_30d, p90_eod_balance_60d, p90_eod_balance_90d, p10_eod_balance_30d, p10_eod_balance_60d, p10_eod_balance_90d, available_balance, current_balance, balance_last_updated, phone_change_count_28d, phone_change_count_90d, email_change_count_28d, email_change_count_90d, address_change_count_28d, address_change_count_90d, plaid_non_oauth_authentication_attempts_count_3d, plaid_non_oauth_authentication_attempts_count_7d, plaid_non_oauth_authentication_attempts_count_30d, failed_plaid_non_oauth_authentication_attempts_count_3d, failed_plaid_non_oauth_authentication_attempts_count_7d, failed_plaid_non_oauth_authentication_attempts_count_30d, debit_transactions_count_10d, credit_transactions_count_10d, debit_transactions_count_30d, credit_transactions_count_30d, debit_transactions_count_60d, credit_transactions_count_60d, debit_transactions_count_90d, credit_transactions_count_90d, total_debit_transactions_amount_30d, total_credit_transactions_amount_30d, total_debit_transactions_amount_60d, total_credit_transactions_amount_60d, total_debit_transactions_amount_90d, total_credit_transactions_amount_90d, p50_eod_balance_30d, p50_eod_balance_60d, p50_eod_balance_90d, p50_eod_balance_31d_to_60d, p50_eod_balance_61d_to_90d, p90_eod_balance_31d_to_60d, p90_eod_balance_61d_to_90d, p10_eod_balance_31d_to_60d, p10_eod_balance_61d_to_90d].hash
781
+ end
782
+
783
+ # Builds the object from hash
784
+ # @param [Hash] attributes Model attributes in the form of hash
785
+ # @return [Object] Returns the model itself
786
+ def self.build_from_hash(attributes)
787
+ new.build_from_hash(attributes)
788
+ end
789
+
790
+ # Builds the object from hash
791
+ # @param [Hash] attributes Model attributes in the form of hash
792
+ # @return [Object] Returns the model itself
793
+ def build_from_hash(attributes)
794
+ return nil unless attributes.is_a?(Hash)
795
+ self.class.openapi_types.each_pair do |key, type|
796
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
797
+ self.send("#{key}=", nil)
798
+ elsif type =~ /\AArray<(.*)>/i
799
+ # check to ensure the input is an array given that the attribute
800
+ # is documented as an array but the input is not
801
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
802
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
803
+ end
804
+ elsif !attributes[self.class.attribute_map[key]].nil?
805
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
806
+ end
807
+ end
808
+
809
+ self
810
+ end
811
+
812
+ # Deserializes the data based on type
813
+ # @param string type Data type
814
+ # @param string value Value to be deserialized
815
+ # @return [Object] Deserialized data
816
+ def _deserialize(type, value)
817
+ case type.to_sym
818
+ when :Time
819
+ Time.parse(value)
820
+ when :Date
821
+ Date.parse(value)
822
+ when :String
823
+ value.to_s
824
+ when :Integer
825
+ value.to_i
826
+ when :Float
827
+ value.to_f
828
+ when :Boolean
829
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
830
+ true
831
+ else
832
+ false
833
+ end
834
+ when :Object
835
+ # generic object (usually a Hash), return directly
836
+ value
837
+ when /\AArray<(?<inner_type>.+)>\z/
838
+ inner_type = Regexp.last_match[:inner_type]
839
+ value.map { |v| _deserialize(inner_type, v) }
840
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
841
+ k_type = Regexp.last_match[:k_type]
842
+ v_type = Regexp.last_match[:v_type]
843
+ {}.tap do |hash|
844
+ value.each do |k, v|
845
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
846
+ end
847
+ end
848
+ else # model
849
+ # models (e.g. Pet) or oneOf
850
+ klass = Plaid.const_get(type)
851
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
852
+ end
853
+ end
854
+
855
+ # Returns the string representation of the object
856
+ # @return [String] String presentation of the object
857
+ def to_s
858
+ to_hash.to_s
859
+ end
860
+
861
+ # to_body is an alias to to_hash (backward compatibility)
862
+ # @return [Hash] Returns the object in the form of hash
863
+ def to_body
864
+ to_hash
865
+ end
866
+
867
+ # Returns the object in the form of hash
868
+ # @return [Hash] Returns the object in the form of hash
869
+ def to_hash
870
+ hash = {}
871
+ self.class.attribute_map.each_pair do |attr, param|
872
+ value = self.send(attr)
873
+ if value.nil?
874
+ is_nullable = self.class.openapi_nullable.include?(attr)
875
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
876
+ end
877
+
878
+ hash[param] = _to_hash(value)
879
+ end
880
+ hash
881
+ end
882
+
883
+ # Outputs non-array value in the form of hash
884
+ # For object, use to_hash. Otherwise, just return the value
885
+ # @param [Object] value Any valid value
886
+ # @return [Hash] Returns the value in the form of hash
887
+ def _to_hash(value)
888
+ if value.is_a?(Array)
889
+ value.compact.map { |v| _to_hash(v) }
890
+ elsif value.is_a?(Hash)
891
+ {}.tap do |hash|
892
+ value.each { |k, v| hash[k] = _to_hash(v) }
893
+ end
894
+ elsif value.respond_to? :to_hash
895
+ value.to_hash
896
+ else
897
+ value
898
+ end
899
+ end
900
+
901
+ end
902
+
903
+ end