plaid 14.0.0.beta.4 → 14.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (772) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -1
  3. data/CONTRIBUTING.md +1 -5
  4. data/Gemfile.lock +18 -4
  5. data/LICENSE.txt +1 -1
  6. data/Makefile +2 -2
  7. data/PUBLISH.md +1 -1
  8. data/README.md +12 -11
  9. data/lib/plaid/api/plaid_api.rb +2392 -812
  10. data/lib/plaid/api_client.rb +5 -4
  11. data/lib/plaid/api_error.rb +3 -3
  12. data/lib/plaid/configuration.rb +4 -2
  13. data/lib/plaid/models/account_access.rb +238 -0
  14. data/lib/plaid/models/account_assets.rb +18 -7
  15. data/lib/plaid/models/account_assets_all_of.rb +16 -4
  16. data/lib/plaid/models/account_balance.rb +21 -14
  17. data/lib/plaid/models/account_base.rb +3 -4
  18. data/lib/plaid/models/account_filter.rb +258 -0
  19. data/lib/plaid/models/account_filters_response.rb +1 -1
  20. data/lib/plaid/models/account_identity.rb +3 -4
  21. data/lib/plaid/models/account_identity_all_of.rb +1 -1
  22. data/lib/plaid/models/account_selection_cardinality.rb +38 -0
  23. data/lib/plaid/models/account_subtype.rb +7 -1
  24. data/lib/plaid/models/account_type.rb +1 -1
  25. data/lib/plaid/models/accounts_balance_get_request.rb +1 -1
  26. data/lib/plaid/models/accounts_balance_get_request_options.rb +15 -5
  27. data/lib/plaid/models/accounts_get_request.rb +1 -1
  28. data/lib/plaid/models/accounts_get_request_options.rb +1 -1
  29. data/lib/plaid/models/accounts_get_response.rb +1 -1
  30. data/lib/plaid/models/ach_class.rb +1 -1
  31. data/lib/plaid/models/address.rb +1 -2
  32. data/lib/plaid/models/address_data.rb +2 -6
  33. data/lib/plaid/models/{nullable_address_data.rb → address_data_nullable.rb} +5 -9
  34. data/lib/plaid/models/{nullable_address.rb → address_nullable.rb} +4 -5
  35. data/lib/plaid/models/application.rb +288 -0
  36. data/lib/plaid/models/application_get_request.rb +255 -0
  37. data/lib/plaid/models/application_get_response.rb +239 -0
  38. data/lib/plaid/models/apr.rb +1 -1
  39. data/lib/plaid/models/asset_report.rb +3 -3
  40. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +1 -1
  41. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +1 -1
  42. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +1 -1
  43. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +1 -1
  44. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +1 -1
  45. data/lib/plaid/models/asset_report_create_request.rb +1 -1
  46. data/lib/plaid/models/asset_report_create_request_options.rb +1 -1
  47. data/lib/plaid/models/asset_report_create_response.rb +1 -1
  48. data/lib/plaid/models/asset_report_filter_request.rb +1 -1
  49. data/lib/plaid/models/asset_report_filter_response.rb +1 -1
  50. data/lib/plaid/models/asset_report_get_request.rb +2 -2
  51. data/lib/plaid/models/asset_report_get_response.rb +1 -1
  52. data/lib/plaid/models/asset_report_item.rb +3 -3
  53. data/lib/plaid/models/asset_report_pdf_get_request.rb +1 -1
  54. data/lib/plaid/models/asset_report_refresh_request.rb +1 -1
  55. data/lib/plaid/models/asset_report_refresh_request_options.rb +1 -1
  56. data/lib/plaid/models/asset_report_refresh_response.rb +1 -1
  57. data/lib/plaid/models/asset_report_remove_request.rb +1 -1
  58. data/lib/plaid/models/asset_report_remove_response.rb +1 -1
  59. data/lib/plaid/models/asset_report_transaction.rb +108 -187
  60. data/lib/plaid/models/asset_report_transaction_all_of.rb +6 -21
  61. data/lib/plaid/models/asset_report_user.rb +2 -2
  62. data/lib/plaid/models/assets_error_webhook.rb +1 -1
  63. data/lib/plaid/models/assets_product_ready_webhook.rb +1 -1
  64. data/lib/plaid/models/auth_get_numbers.rb +21 -1
  65. data/lib/plaid/models/auth_get_request.rb +1 -1
  66. data/lib/plaid/models/auth_get_request_options.rb +1 -1
  67. data/lib/plaid/models/auth_get_response.rb +1 -1
  68. data/lib/plaid/models/auth_metadata.rb +220 -0
  69. data/lib/plaid/models/auth_supported_methods.rb +255 -0
  70. data/lib/plaid/models/automatically_verified_webhook.rb +2 -2
  71. data/lib/plaid/models/bank_initiated_return_risk.rb +300 -0
  72. data/lib/plaid/models/bank_transfer.rb +3 -3
  73. data/lib/plaid/models/bank_transfer_balance.rb +1 -1
  74. data/lib/plaid/models/bank_transfer_balance_get_request.rb +2 -2
  75. data/lib/plaid/models/bank_transfer_balance_get_response.rb +2 -2
  76. data/lib/plaid/models/bank_transfer_cancel_request.rb +2 -2
  77. data/lib/plaid/models/bank_transfer_cancel_response.rb +2 -2
  78. data/lib/plaid/models/bank_transfer_create_request.rb +4 -4
  79. data/lib/plaid/models/bank_transfer_create_response.rb +2 -2
  80. data/lib/plaid/models/bank_transfer_direction.rb +2 -1
  81. data/lib/plaid/models/bank_transfer_event.rb +2 -2
  82. data/lib/plaid/models/bank_transfer_event_list_request.rb +17 -5
  83. data/lib/plaid/models/bank_transfer_event_list_response.rb +2 -2
  84. data/lib/plaid/models/bank_transfer_event_sync_request.rb +2 -2
  85. data/lib/plaid/models/bank_transfer_event_sync_response.rb +2 -2
  86. data/lib/plaid/models/bank_transfer_event_type.rb +1 -1
  87. data/lib/plaid/models/bank_transfer_failure.rb +2 -2
  88. data/lib/plaid/models/bank_transfer_get_request.rb +2 -2
  89. data/lib/plaid/models/bank_transfer_get_response.rb +2 -2
  90. data/lib/plaid/models/bank_transfer_list_request.rb +2 -2
  91. data/lib/plaid/models/bank_transfer_list_response.rb +2 -2
  92. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +2 -2
  93. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +2 -2
  94. data/lib/plaid/models/bank_transfer_network.rb +1 -1
  95. data/lib/plaid/models/bank_transfer_receiver_details.rb +3 -3
  96. data/lib/plaid/models/bank_transfer_status.rb +1 -1
  97. data/lib/plaid/models/bank_transfer_sweep.rb +316 -0
  98. data/lib/plaid/models/bank_transfer_sweep_account.rb +238 -0
  99. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +277 -0
  100. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +239 -0
  101. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +330 -0
  102. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +241 -0
  103. data/lib/plaid/models/bank_transfer_type.rb +1 -1
  104. data/lib/plaid/models/bank_transfer_user.rb +3 -3
  105. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +1 -1
  106. data/lib/plaid/models/categories_get_response.rb +1 -1
  107. data/lib/plaid/models/category.rb +1 -1
  108. data/lib/plaid/models/cause.rb +1 -1
  109. data/lib/plaid/models/connected_application.rb +357 -0
  110. data/lib/plaid/models/country_code.rb +1 -1
  111. data/lib/plaid/models/credit_card_liability.rb +9 -28
  112. data/lib/plaid/models/credit_filter.rb +2 -2
  113. data/lib/plaid/models/customer_initiated_return_risk.rb +300 -0
  114. data/lib/plaid/models/deductions.rb +232 -0
  115. data/lib/plaid/models/default_update_webhook.rb +1 -1
  116. data/lib/plaid/models/deposit_switch_address_data.rb +1 -1
  117. data/lib/plaid/models/deposit_switch_alt_create_request.rb +59 -5
  118. data/lib/plaid/models/deposit_switch_alt_create_response.rb +1 -1
  119. data/lib/plaid/models/deposit_switch_create_request.rb +59 -5
  120. data/lib/plaid/models/deposit_switch_create_request_options.rb +251 -0
  121. data/lib/plaid/models/deposit_switch_create_response.rb +1 -1
  122. data/lib/plaid/models/deposit_switch_get_request.rb +1 -1
  123. data/lib/plaid/models/deposit_switch_get_response.rb +76 -9
  124. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +250 -0
  125. data/lib/plaid/models/deposit_switch_target_account.rb +1 -1
  126. data/lib/plaid/models/deposit_switch_target_user.rb +1 -1
  127. data/lib/plaid/models/deposit_switch_token_create_request.rb +1 -1
  128. data/lib/plaid/models/deposit_switch_token_create_response.rb +2 -2
  129. data/lib/plaid/models/depository_filter.rb +2 -2
  130. data/lib/plaid/models/distribution_details.rb +263 -0
  131. data/lib/plaid/models/document_metadata.rb +240 -0
  132. data/lib/plaid/models/earnings.rb +232 -0
  133. data/lib/plaid/models/earnings_total.rb +304 -0
  134. data/lib/plaid/models/email.rb +1 -1
  135. data/lib/plaid/models/employee.rb +25 -12
  136. data/lib/plaid/models/employee_income_summary_field_string.rb +1 -1
  137. data/lib/plaid/models/employer.rb +7 -3
  138. data/lib/plaid/models/employer_income_summary_field_string.rb +1 -1
  139. data/lib/plaid/models/employers_search_request.rb +1 -1
  140. data/lib/plaid/models/employers_search_response.rb +1 -1
  141. data/lib/plaid/models/employment_details.rb +230 -0
  142. data/lib/plaid/models/error.rb +4 -11
  143. data/lib/plaid/models/external_payment_options.rb +296 -0
  144. data/lib/plaid/models/external_payment_refund_details.rb +245 -0
  145. data/lib/plaid/models/{external_payment_schedule.rb → external_payment_schedule_base.rb} +24 -28
  146. data/lib/plaid/models/external_payment_schedule_get.rb +22 -22
  147. data/lib/plaid/models/external_payment_schedule_request.rb +283 -0
  148. data/lib/plaid/models/health_incident.rb +20 -7
  149. data/lib/plaid/models/historical_balance.rb +4 -4
  150. data/lib/plaid/models/historical_update_webhook.rb +1 -1
  151. data/lib/plaid/models/holding.rb +4 -4
  152. data/lib/plaid/models/holdings_default_update_webhook.rb +1 -1
  153. data/lib/plaid/models/holdings_override.rb +289 -0
  154. data/lib/plaid/models/identity_get_request.rb +1 -1
  155. data/lib/plaid/models/identity_get_request_options.rb +1 -1
  156. data/lib/plaid/models/identity_get_response.rb +1 -1
  157. data/lib/plaid/models/incident_update.rb +5 -5
  158. data/lib/plaid/models/income_breakdown.rb +37 -2
  159. data/lib/plaid/models/income_summary.rb +26 -1
  160. data/lib/plaid/models/income_summary_field_number.rb +1 -1
  161. data/lib/plaid/models/income_summary_field_string.rb +1 -1
  162. data/lib/plaid/models/income_verification_create_request.rb +1 -1
  163. data/lib/plaid/models/income_verification_create_response.rb +1 -1
  164. data/lib/plaid/models/income_verification_documents_download_request.rb +17 -10
  165. data/lib/plaid/models/income_verification_documents_download_response.rb +1 -1
  166. data/lib/plaid/models/income_verification_paystub_get_request.rb +17 -10
  167. data/lib/plaid/models/income_verification_paystub_get_response.rb +22 -2
  168. data/lib/plaid/models/income_verification_paystubs_get_request.rb +252 -0
  169. data/lib/plaid/models/income_verification_paystubs_get_response.rb +262 -0
  170. data/lib/plaid/models/income_verification_precheck_employer.rb +229 -0
  171. data/lib/plaid/models/{amount.rb → income_verification_precheck_military_info.rb} +29 -38
  172. data/lib/plaid/models/income_verification_precheck_request.rb +271 -0
  173. data/lib/plaid/models/income_verification_precheck_response.rb +289 -0
  174. data/lib/plaid/models/income_verification_precheck_user.rb +252 -0
  175. data/lib/plaid/models/income_verification_refresh_request.rb +252 -0
  176. data/lib/plaid/models/income_verification_refresh_response.rb +239 -0
  177. data/lib/plaid/models/income_verification_status_webhook.rb +2 -2
  178. data/lib/plaid/models/income_verification_summary_get_request.rb +17 -10
  179. data/lib/plaid/models/income_verification_summary_get_response.rb +12 -2
  180. data/lib/plaid/models/income_verification_taxforms_get_request.rb +252 -0
  181. data/lib/plaid/models/income_verification_taxforms_get_response.rb +263 -0
  182. data/lib/plaid/models/income_verification_webhook_status.rb +1 -1
  183. data/lib/plaid/models/inflow_model.rb +1 -1
  184. data/lib/plaid/models/initial_update_webhook.rb +1 -1
  185. data/lib/plaid/models/institution.rb +26 -6
  186. data/lib/plaid/models/institution_status.rb +30 -3
  187. data/lib/plaid/models/institutions_get_by_id_request.rb +1 -1
  188. data/lib/plaid/models/institutions_get_by_id_request_options.rb +29 -5
  189. data/lib/plaid/models/institutions_get_by_id_response.rb +1 -1
  190. data/lib/plaid/models/institutions_get_request.rb +1 -1
  191. data/lib/plaid/models/institutions_get_request_options.rb +29 -5
  192. data/lib/plaid/models/institutions_get_response.rb +1 -1
  193. data/lib/plaid/models/institutions_search_account_filter.rb +1 -1
  194. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +220 -0
  195. data/lib/plaid/models/institutions_search_request.rb +2 -2
  196. data/lib/plaid/models/institutions_search_request_options.rb +40 -6
  197. data/lib/plaid/models/institutions_search_response.rb +1 -1
  198. data/lib/plaid/models/investment_filter.rb +2 -2
  199. data/lib/plaid/models/investment_holdings_get_request_options.rb +1 -1
  200. data/lib/plaid/models/investment_transaction.rb +7 -7
  201. data/lib/plaid/models/investments_default_update_webhook.rb +1 -1
  202. data/lib/plaid/models/investments_holdings_get_request.rb +1 -1
  203. data/lib/plaid/models/investments_holdings_get_response.rb +1 -1
  204. data/lib/plaid/models/investments_transactions_get_request.rb +1 -1
  205. data/lib/plaid/models/investments_transactions_get_request_options.rb +6 -6
  206. data/lib/plaid/models/investments_transactions_get_response.rb +1 -1
  207. data/lib/plaid/models/investments_transactions_override.rb +319 -0
  208. data/lib/plaid/models/item.rb +6 -6
  209. data/lib/plaid/models/item_access_token_invalidate_request.rb +1 -1
  210. data/lib/plaid/models/item_access_token_invalidate_response.rb +1 -1
  211. data/lib/plaid/models/item_application_list_request.rb +241 -0
  212. data/lib/plaid/models/item_application_list_response.rb +237 -0
  213. data/lib/plaid/models/item_application_list_user_auth.rb +232 -0
  214. data/lib/plaid/models/item_application_scopes_update_request.rb +298 -0
  215. data/lib/plaid/models/item_application_scopes_update_response.rb +225 -0
  216. data/lib/plaid/models/item_error_webhook.rb +1 -1
  217. data/lib/plaid/models/item_get_request.rb +1 -1
  218. data/lib/plaid/models/item_get_response.rb +6 -16
  219. data/lib/plaid/models/item_import_request.rb +1 -1
  220. data/lib/plaid/models/item_import_request_options.rb +1 -1
  221. data/lib/plaid/models/item_import_request_user_auth.rb +1 -1
  222. data/lib/plaid/models/item_import_response.rb +1 -1
  223. data/lib/plaid/models/item_product_ready_webhook.rb +1 -1
  224. data/lib/plaid/models/item_public_token_create_request.rb +1 -1
  225. data/lib/plaid/models/item_public_token_create_response.rb +1 -1
  226. data/lib/plaid/models/item_public_token_exchange_request.rb +1 -1
  227. data/lib/plaid/models/item_public_token_exchange_response.rb +1 -1
  228. data/lib/plaid/models/item_remove_request.rb +1 -1
  229. data/lib/plaid/models/item_remove_response.rb +1 -1
  230. data/lib/plaid/models/item_status.rb +7 -16
  231. data/lib/plaid/models/item_status_investments.rb +232 -0
  232. data/lib/plaid/models/{nullable_recipient_bacs.rb → item_status_last_webhook.rb} +22 -26
  233. data/lib/plaid/models/{nullable_item_status.rb → item_status_nullable.rb} +10 -19
  234. data/lib/plaid/models/item_status_transactions.rb +232 -0
  235. data/lib/plaid/models/item_webhook_update_request.rb +1 -1
  236. data/lib/plaid/models/item_webhook_update_response.rb +1 -1
  237. data/lib/plaid/models/jwk_public_key.rb +43 -1
  238. data/lib/plaid/models/jwt_header.rb +1 -1
  239. data/lib/plaid/models/liabilities_default_update_webhook.rb +299 -0
  240. data/lib/plaid/models/liabilities_get_request.rb +1 -1
  241. data/lib/plaid/models/liabilities_get_request_options.rb +1 -1
  242. data/lib/plaid/models/liabilities_get_response.rb +1 -1
  243. data/lib/plaid/models/liabilities_object.rb +4 -4
  244. data/lib/plaid/models/liability_override.rb +6 -21
  245. data/lib/plaid/models/link_token_account_filters.rb +2 -2
  246. data/lib/plaid/models/link_token_create_request.rb +16 -7
  247. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +2 -2
  248. data/lib/plaid/models/link_token_create_request_auth.rb +18 -18
  249. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +1 -1
  250. data/lib/plaid/models/link_token_create_request_income_verification.rb +2 -3
  251. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +22 -1
  252. data/lib/plaid/models/link_token_create_request_user.rb +9 -9
  253. data/lib/plaid/models/link_token_create_response.rb +2 -2
  254. data/lib/plaid/models/{nullable_access_token.rb → link_token_eu_config.rb} +17 -6
  255. data/lib/plaid/models/link_token_get_metadata_response.rb +11 -1
  256. data/lib/plaid/models/link_token_get_request.rb +1 -1
  257. data/lib/plaid/models/link_token_get_response.rb +13 -3
  258. data/lib/plaid/models/loan_filter.rb +2 -2
  259. data/lib/plaid/models/location.rb +1 -1
  260. data/lib/plaid/models/meta.rb +1 -1
  261. data/lib/plaid/models/mfa.rb +1 -1
  262. data/lib/plaid/models/mortgage_interest_rate.rb +1 -1
  263. data/lib/plaid/models/mortgage_liability.rb +24 -10
  264. data/lib/plaid/models/mortgage_property_address.rb +1 -1
  265. data/lib/plaid/models/net_pay.rb +230 -0
  266. data/lib/plaid/models/numbers.rb +1 -41
  267. data/lib/plaid/models/numbers_ach.rb +3 -3
  268. data/lib/plaid/models/{nullable_numbers_ach.rb → numbers_ach_nullable.rb} +6 -6
  269. data/lib/plaid/models/numbers_bacs.rb +1 -1
  270. data/lib/plaid/models/{nullable_numbers_bacs.rb → numbers_bacs_nullable.rb} +4 -4
  271. data/lib/plaid/models/numbers_eft.rb +1 -1
  272. data/lib/plaid/models/{nullable_numbers_eft.rb → numbers_eft_nullable.rb} +4 -4
  273. data/lib/plaid/models/numbers_international.rb +1 -1
  274. data/lib/plaid/models/{nullable_numbers_international.rb → numbers_international_nullable.rb} +4 -4
  275. data/lib/plaid/models/override_account_type.rb +40 -0
  276. data/lib/plaid/models/override_accounts.rb +21 -3
  277. data/lib/plaid/models/owner.rb +2 -2
  278. data/lib/plaid/models/owner_override.rb +1 -1
  279. data/lib/plaid/models/pay.rb +258 -0
  280. data/lib/plaid/models/pay_frequency.rb +1 -1
  281. data/lib/plaid/models/pay_period_details.rb +7 -7
  282. data/lib/plaid/models/payment_amount.rb +48 -3
  283. data/lib/plaid/models/payment_initiation_address.rb +118 -4
  284. data/lib/plaid/models/payment_initiation_metadata.rb +267 -0
  285. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +288 -0
  286. data/lib/plaid/models/payment_initiation_payment.rb +425 -0
  287. data/lib/plaid/models/payment_initiation_payment_create_request.rb +67 -7
  288. data/lib/plaid/models/payment_initiation_payment_create_response.rb +35 -1
  289. data/lib/plaid/models/payment_initiation_payment_get_request.rb +22 -1
  290. data/lib/plaid/models/payment_initiation_payment_get_response.rb +101 -17
  291. data/lib/plaid/models/payment_initiation_payment_list_request.rb +13 -2
  292. data/lib/plaid/models/payment_initiation_payment_list_response.rb +4 -8
  293. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +266 -0
  294. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +289 -0
  295. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +22 -1
  296. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +3 -3
  297. data/lib/plaid/models/payment_initiation_recipient.rb +21 -12
  298. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +50 -2
  299. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +1 -1
  300. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +22 -1
  301. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +22 -3
  302. data/lib/plaid/models/payment_initiation_recipient_get_response_all_of.rb +219 -0
  303. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +1 -1
  304. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +1 -1
  305. data/lib/plaid/models/payment_initiation_refund.rb +303 -0
  306. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +257 -0
  307. data/lib/plaid/models/payment_meta.rb +2 -2
  308. data/lib/plaid/models/payment_schedule_interval.rb +37 -0
  309. data/lib/plaid/models/payment_status_update_webhook.rb +4 -4
  310. data/lib/plaid/models/paystub.rb +56 -25
  311. data/lib/plaid/models/paystub_address.rb +297 -0
  312. data/lib/plaid/models/paystub_deduction.rb +1 -1
  313. data/lib/plaid/models/paystub_details.rb +299 -0
  314. data/lib/plaid/models/paystub_employer.rb +229 -0
  315. data/lib/plaid/models/paystub_ytd_details.rb +4 -11
  316. data/lib/plaid/models/pending_expiration_webhook.rb +3 -3
  317. data/lib/plaid/models/personal_finance_category.rb +240 -0
  318. data/lib/plaid/models/phone_number.rb +11 -3
  319. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +1 -1
  320. data/lib/plaid/models/processor_auth_get_request.rb +1 -1
  321. data/lib/plaid/models/processor_auth_get_response.rb +1 -1
  322. data/lib/plaid/models/processor_balance_get_request.rb +14 -5
  323. data/lib/plaid/models/processor_balance_get_request_options.rb +220 -0
  324. data/lib/plaid/models/processor_balance_get_response.rb +1 -1
  325. data/lib/plaid/models/processor_bank_transfer_create_request.rb +459 -0
  326. data/lib/plaid/models/processor_bank_transfer_create_response.rb +239 -0
  327. data/lib/plaid/models/processor_identity_get_request.rb +1 -1
  328. data/lib/plaid/models/processor_identity_get_response.rb +1 -1
  329. data/lib/plaid/models/processor_number.rb +5 -5
  330. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +1 -1
  331. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +1 -1
  332. data/lib/plaid/models/processor_token_create_request.rb +36 -2
  333. data/lib/plaid/models/processor_token_create_response.rb +1 -1
  334. data/lib/plaid/models/product_access.rb +262 -0
  335. data/lib/plaid/models/product_status.rb +4 -4
  336. data/lib/plaid/models/product_status_breakdown.rb +1 -2
  337. data/lib/plaid/models/products.rb +3 -1
  338. data/lib/plaid/models/projected_income_summary_field_number.rb +1 -1
  339. data/lib/plaid/models/pslf_status.rb +3 -3
  340. data/lib/plaid/models/recaptcha_required_error.rb +1 -1
  341. data/lib/plaid/models/recipient_bacs.rb +53 -1
  342. data/lib/plaid/models/recipient_bacs_nullable.rb +288 -0
  343. data/lib/plaid/models/requested_scopes.rb +261 -0
  344. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +2 -2
  345. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +2 -2
  346. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +2 -2
  347. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +2 -2
  348. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +309 -0
  349. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +225 -0
  350. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +6 -1
  351. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +1 -1
  352. data/lib/plaid/models/sandbox_item_reset_login_request.rb +1 -1
  353. data/lib/plaid/models/sandbox_item_reset_login_response.rb +1 -1
  354. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +1 -1
  355. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +1 -1
  356. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +240 -0
  357. data/lib/plaid/models/sandbox_processor_token_create_request.rb +1 -1
  358. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +1 -1
  359. data/lib/plaid/models/sandbox_processor_token_create_response.rb +1 -1
  360. data/lib/plaid/models/sandbox_public_token_create_request.rb +1 -1
  361. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +1 -1
  362. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +4 -4
  363. data/lib/plaid/models/sandbox_public_token_create_response.rb +1 -1
  364. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +270 -0
  365. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +225 -0
  366. data/lib/plaid/models/scopes.rb +243 -0
  367. data/lib/plaid/models/scopes_context.rb +37 -0
  368. data/lib/plaid/models/scopes_nullable.rb +249 -0
  369. data/lib/plaid/models/security.rb +6 -9
  370. data/lib/plaid/models/security_override.rb +270 -0
  371. data/lib/plaid/models/sender_bacs_nullable.rb +288 -0
  372. data/lib/plaid/models/servicer_address_data.rb +1 -1
  373. data/lib/plaid/models/signal_address_data.rb +263 -0
  374. data/lib/plaid/models/signal_decision_report_request.rb +260 -0
  375. data/lib/plaid/models/signal_decision_report_response.rb +225 -0
  376. data/lib/plaid/models/signal_device.rb +232 -0
  377. data/lib/plaid/models/signal_evaluate_core_attributes.rb +584 -0
  378. data/lib/plaid/models/signal_evaluate_request.rb +356 -0
  379. data/lib/plaid/models/signal_evaluate_response.rb +253 -0
  380. data/lib/plaid/models/signal_person_name.rb +265 -0
  381. data/lib/plaid/models/signal_return_report_request.rb +260 -0
  382. data/lib/plaid/models/signal_return_report_response.rb +225 -0
  383. data/lib/plaid/models/signal_scores.rb +228 -0
  384. data/lib/plaid/models/signal_user.rb +252 -0
  385. data/lib/plaid/models/standalone_account_type.rb +1 -1
  386. data/lib/plaid/models/standalone_currency_code_list.rb +1 -1
  387. data/lib/plaid/models/standalone_investment_transaction_type.rb +3 -3
  388. data/lib/plaid/models/student_loan.rb +34 -25
  389. data/lib/plaid/models/student_loan_repayment_model.rb +1 -1
  390. data/lib/plaid/models/student_loan_status.rb +3 -3
  391. data/lib/plaid/models/student_repayment_plan.rb +3 -3
  392. data/lib/plaid/models/taxform.rb +233 -0
  393. data/lib/plaid/models/taxpayer_id.rb +257 -0
  394. data/lib/plaid/models/total.rb +284 -0
  395. data/lib/plaid/models/transaction.rb +191 -130
  396. data/lib/plaid/models/transaction_all_of.rb +333 -0
  397. data/lib/plaid/models/transaction_base.rb +436 -0
  398. data/lib/plaid/models/transaction_code.rb +1 -1
  399. data/lib/plaid/models/transaction_data.rb +3 -3
  400. data/lib/plaid/models/transaction_override.rb +5 -5
  401. data/lib/plaid/models/transactions_get_request.rb +1 -1
  402. data/lib/plaid/models/transactions_get_request_options.rb +30 -5
  403. data/lib/plaid/models/transactions_get_response.rb +1 -1
  404. data/lib/plaid/models/transactions_refresh_request.rb +1 -1
  405. data/lib/plaid/models/transactions_refresh_response.rb +1 -1
  406. data/lib/plaid/models/transactions_removed_webhook.rb +1 -1
  407. data/lib/plaid/models/transfer.rb +417 -0
  408. data/lib/plaid/models/transfer_authorization.rb +313 -0
  409. data/lib/plaid/models/transfer_authorization_create_request.rb +350 -0
  410. data/lib/plaid/models/transfer_authorization_create_response.rb +239 -0
  411. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +274 -0
  412. data/lib/plaid/models/transfer_authorization_device.rb +230 -0
  413. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +312 -0
  414. data/lib/plaid/models/transfer_cancel_request.rb +245 -0
  415. data/lib/plaid/models/transfer_cancel_response.rb +225 -0
  416. data/lib/plaid/models/transfer_create_request.rb +451 -0
  417. data/lib/plaid/models/transfer_create_response.rb +239 -0
  418. data/lib/plaid/models/transfer_event.rb +355 -0
  419. data/lib/plaid/models/transfer_event_list_request.rb +411 -0
  420. data/lib/plaid/models/transfer_event_list_response.rb +241 -0
  421. data/lib/plaid/models/transfer_event_sync_request.rb +305 -0
  422. data/lib/plaid/models/transfer_event_sync_response.rb +241 -0
  423. data/lib/plaid/models/transfer_event_type.rb +40 -0
  424. data/lib/plaid/models/transfer_failure.rb +231 -0
  425. data/lib/plaid/models/transfer_get_request.rb +245 -0
  426. data/lib/plaid/models/transfer_get_response.rb +239 -0
  427. data/lib/plaid/models/transfer_list_request.rb +330 -0
  428. data/lib/plaid/models/transfer_list_response.rb +241 -0
  429. data/lib/plaid/models/transfer_network.rb +37 -0
  430. data/lib/plaid/models/transfer_status.rb +40 -0
  431. data/lib/plaid/models/transfer_type.rb +37 -0
  432. data/lib/plaid/models/transfer_user_address_in_request.rb +260 -0
  433. data/lib/plaid/models/transfer_user_address_in_response.rb +265 -0
  434. data/lib/plaid/models/transfer_user_in_request.rb +254 -0
  435. data/lib/plaid/models/transfer_user_in_response.rb +257 -0
  436. data/lib/plaid/models/user_custom_password.rb +1 -1
  437. data/lib/plaid/models/user_permission_revoked_webhook.rb +1 -1
  438. data/lib/plaid/models/verification_expired_webhook.rb +2 -2
  439. data/lib/plaid/models/verification_refresh_status.rb +36 -0
  440. data/lib/plaid/models/verification_status.rb +1 -1
  441. data/lib/plaid/models/w2.rb +437 -0
  442. data/lib/plaid/models/w2_box12.rb +231 -0
  443. data/lib/plaid/models/w2_state_and_local_wages.rb +286 -0
  444. data/lib/plaid/models/warning.rb +35 -1
  445. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +1 -1
  446. data/lib/plaid/models/webhook_verification_key_get_request.rb +1 -1
  447. data/lib/plaid/models/webhook_verification_key_get_response.rb +1 -1
  448. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +1 -1
  449. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +1 -1
  450. data/lib/plaid/version.rb +2 -2
  451. data/lib/plaid.rb +143 -13
  452. data/plaid.gemspec +1 -1
  453. data/templates/ruby/api_client.mustache +3 -2
  454. data/templates/ruby/api_client_faraday_partial.mustache +2 -1
  455. data/templates/ruby/api_error.mustache +49 -0
  456. data/templates/ruby/configuration.mustache +3 -1
  457. data/test/test_accounts.rb +4 -8
  458. data/test/test_bank_transfers.rb +2 -3
  459. data/test/test_item.rb +0 -10
  460. data/test/test_payment_initiation.rb +2 -3
  461. data/test/test_processor.rb +1 -16
  462. metadata +147 -325
  463. data/docs/ACHClass.md +0 -15
  464. data/docs/APR.md +0 -24
  465. data/docs/AccountAssets.md +0 -40
  466. data/docs/AccountAssetsAllOf.md +0 -24
  467. data/docs/AccountBalance.md +0 -26
  468. data/docs/AccountBase.md +0 -32
  469. data/docs/AccountFiltersResponse.md +0 -24
  470. data/docs/AccountIdentity.md +0 -34
  471. data/docs/AccountIdentityAllOf.md +0 -18
  472. data/docs/AccountSubtype.md +0 -15
  473. data/docs/AccountType.md +0 -15
  474. data/docs/AccountsBalanceGetRequest.md +0 -24
  475. data/docs/AccountsBalanceGetRequestOptions.md +0 -18
  476. data/docs/AccountsGetRequest.md +0 -24
  477. data/docs/AccountsGetRequestOptions.md +0 -18
  478. data/docs/AccountsGetResponse.md +0 -22
  479. data/docs/Address.md +0 -20
  480. data/docs/AddressData.md +0 -26
  481. data/docs/Amount.md +0 -20
  482. data/docs/AssetReport.md +0 -28
  483. data/docs/AssetReportAuditCopyCreateRequest.md +0 -24
  484. data/docs/AssetReportAuditCopyCreateResponse.md +0 -20
  485. data/docs/AssetReportAuditCopyGetRequest.md +0 -22
  486. data/docs/AssetReportAuditCopyRemoveRequest.md +0 -22
  487. data/docs/AssetReportAuditCopyRemoveResponse.md +0 -20
  488. data/docs/AssetReportCreateRequest.md +0 -26
  489. data/docs/AssetReportCreateRequestOptions.md +0 -22
  490. data/docs/AssetReportCreateResponse.md +0 -22
  491. data/docs/AssetReportFilterRequest.md +0 -24
  492. data/docs/AssetReportFilterResponse.md +0 -22
  493. data/docs/AssetReportGetRequest.md +0 -24
  494. data/docs/AssetReportGetResponse.md +0 -22
  495. data/docs/AssetReportItem.md +0 -26
  496. data/docs/AssetReportPDFGetRequest.md +0 -22
  497. data/docs/AssetReportRefreshRequest.md +0 -26
  498. data/docs/AssetReportRefreshRequestOptions.md +0 -22
  499. data/docs/AssetReportRefreshResponse.md +0 -22
  500. data/docs/AssetReportRemoveRequest.md +0 -22
  501. data/docs/AssetReportRemoveResponse.md +0 -20
  502. data/docs/AssetReportTransaction.md +0 -62
  503. data/docs/AssetReportTransactionAllOf.md +0 -20
  504. data/docs/AssetReportUser.md +0 -30
  505. data/docs/AssetsErrorWebhook.md +0 -24
  506. data/docs/AssetsProductReadyWebhook.md +0 -22
  507. data/docs/AuthGetNumbers.md +0 -24
  508. data/docs/AuthGetRequest.md +0 -24
  509. data/docs/AuthGetRequestOptions.md +0 -18
  510. data/docs/AuthGetResponse.md +0 -24
  511. data/docs/AutomaticallyVerifiedWebhook.md +0 -24
  512. data/docs/BankTransfer.md +0 -50
  513. data/docs/BankTransferBalance.md +0 -20
  514. data/docs/BankTransferBalanceGetRequest.md +0 -22
  515. data/docs/BankTransferBalanceGetResponse.md +0 -22
  516. data/docs/BankTransferCancelRequest.md +0 -22
  517. data/docs/BankTransferCancelResponse.md +0 -18
  518. data/docs/BankTransferCreateRequest.md +0 -46
  519. data/docs/BankTransferCreateResponse.md +0 -20
  520. data/docs/BankTransferDirection.md +0 -15
  521. data/docs/BankTransferEvent.md +0 -40
  522. data/docs/BankTransferEventListRequest.md +0 -40
  523. data/docs/BankTransferEventListResponse.md +0 -20
  524. data/docs/BankTransferEventSyncRequest.md +0 -24
  525. data/docs/BankTransferEventSyncResponse.md +0 -20
  526. data/docs/BankTransferEventType.md +0 -15
  527. data/docs/BankTransferFailure.md +0 -20
  528. data/docs/BankTransferGetRequest.md +0 -22
  529. data/docs/BankTransferGetResponse.md +0 -20
  530. data/docs/BankTransferListRequest.md +0 -32
  531. data/docs/BankTransferListResponse.md +0 -20
  532. data/docs/BankTransferMigrateAccountRequest.md +0 -26
  533. data/docs/BankTransferMigrateAccountResponse.md +0 -22
  534. data/docs/BankTransferNetwork.md +0 -15
  535. data/docs/BankTransferReceiverDetails.md +0 -18
  536. data/docs/BankTransferStatus.md +0 -15
  537. data/docs/BankTransferType.md +0 -15
  538. data/docs/BankTransferUser.md +0 -22
  539. data/docs/BankTransfersEventsUpdateWebhook.md +0 -20
  540. data/docs/CategoriesGetResponse.md +0 -20
  541. data/docs/Category.md +0 -22
  542. data/docs/Cause.md +0 -20
  543. data/docs/CountryCode.md +0 -15
  544. data/docs/CreditCardLiability.md +0 -34
  545. data/docs/CreditFilter.md +0 -18
  546. data/docs/DefaultUpdateWebhook.md +0 -26
  547. data/docs/DepositSwitchAddressData.md +0 -26
  548. data/docs/DepositSwitchAltCreateRequest.md +0 -24
  549. data/docs/DepositSwitchAltCreateResponse.md +0 -20
  550. data/docs/DepositSwitchCreateRequest.md +0 -24
  551. data/docs/DepositSwitchCreateResponse.md +0 -20
  552. data/docs/DepositSwitchGetRequest.md +0 -22
  553. data/docs/DepositSwitchGetResponse.md +0 -38
  554. data/docs/DepositSwitchTargetAccount.md +0 -24
  555. data/docs/DepositSwitchTargetUser.md +0 -28
  556. data/docs/DepositSwitchTokenCreateRequest.md +0 -22
  557. data/docs/DepositSwitchTokenCreateResponse.md +0 -22
  558. data/docs/DepositoryFilter.md +0 -18
  559. data/docs/Email.md +0 -22
  560. data/docs/Employee.md +0 -22
  561. data/docs/EmployeeIncomeSummaryFieldString.md +0 -20
  562. data/docs/Employer.md +0 -24
  563. data/docs/EmployerIncomeSummaryFieldString.md +0 -20
  564. data/docs/EmployersSearchRequest.md +0 -24
  565. data/docs/EmployersSearchResponse.md +0 -20
  566. data/docs/Error.md +0 -34
  567. data/docs/ExternalPaymentSchedule.md +0 -24
  568. data/docs/ExternalPaymentScheduleGet.md +0 -26
  569. data/docs/HealthIncident.md +0 -24
  570. data/docs/HistoricalBalance.md +0 -24
  571. data/docs/HistoricalUpdateWebhook.md +0 -26
  572. data/docs/Holding.md +0 -34
  573. data/docs/HoldingsDefaultUpdateWebhook.md +0 -28
  574. data/docs/IdentityGetRequest.md +0 -24
  575. data/docs/IdentityGetRequestOptions.md +0 -18
  576. data/docs/IdentityGetResponse.md +0 -22
  577. data/docs/IncidentUpdate.md +0 -22
  578. data/docs/IncomeBreakdown.md +0 -24
  579. data/docs/IncomeSummary.md +0 -30
  580. data/docs/IncomeSummaryFieldNumber.md +0 -20
  581. data/docs/IncomeSummaryFieldString.md +0 -20
  582. data/docs/IncomeVerificationCreateRequest.md +0 -22
  583. data/docs/IncomeVerificationCreateResponse.md +0 -20
  584. data/docs/IncomeVerificationDocumentsDownloadRequest.md +0 -22
  585. data/docs/IncomeVerificationDocumentsDownloadResponse.md +0 -18
  586. data/docs/IncomeVerificationPaystubGetRequest.md +0 -22
  587. data/docs/IncomeVerificationPaystubGetResponse.md +0 -20
  588. data/docs/IncomeVerificationStatusWebhook.md +0 -24
  589. data/docs/IncomeVerificationSummaryGetRequest.md +0 -22
  590. data/docs/IncomeVerificationSummaryGetResponse.md +0 -20
  591. data/docs/IncomeVerificationWebhookStatus.md +0 -18
  592. data/docs/InflowModel.md +0 -26
  593. data/docs/InitialUpdateWebhook.md +0 -26
  594. data/docs/Institution.md +0 -36
  595. data/docs/InstitutionStatus.md +0 -30
  596. data/docs/InstitutionsGetByIdRequest.md +0 -26
  597. data/docs/InstitutionsGetByIdRequestOptions.md +0 -20
  598. data/docs/InstitutionsGetByIdResponse.md +0 -20
  599. data/docs/InstitutionsGetRequest.md +0 -28
  600. data/docs/InstitutionsGetRequestOptions.md +0 -24
  601. data/docs/InstitutionsGetResponse.md +0 -22
  602. data/docs/InstitutionsSearchAccountFilter.md +0 -24
  603. data/docs/InstitutionsSearchRequest.md +0 -28
  604. data/docs/InstitutionsSearchRequestOptions.md +0 -20
  605. data/docs/InstitutionsSearchResponse.md +0 -20
  606. data/docs/InvestmentFilter.md +0 -18
  607. data/docs/InvestmentHoldingsGetRequestOptions.md +0 -18
  608. data/docs/InvestmentTransaction.md +0 -44
  609. data/docs/InvestmentsDefaultUpdateWebhook.md +0 -28
  610. data/docs/InvestmentsHoldingsGetRequest.md +0 -24
  611. data/docs/InvestmentsHoldingsGetResponse.md +0 -26
  612. data/docs/InvestmentsTransactionsGetRequest.md +0 -28
  613. data/docs/InvestmentsTransactionsGetRequestOptions.md +0 -22
  614. data/docs/InvestmentsTransactionsGetResponse.md +0 -28
  615. data/docs/Item.md +0 -32
  616. data/docs/ItemAccessTokenInvalidateRequest.md +0 -22
  617. data/docs/ItemAccessTokenInvalidateResponse.md +0 -20
  618. data/docs/ItemErrorWebhook.md +0 -24
  619. data/docs/ItemGetRequest.md +0 -22
  620. data/docs/ItemGetResponse.md +0 -24
  621. data/docs/ItemImportRequest.md +0 -26
  622. data/docs/ItemImportRequestOptions.md +0 -18
  623. data/docs/ItemImportRequestUserAuth.md +0 -20
  624. data/docs/ItemImportResponse.md +0 -20
  625. data/docs/ItemProductReadyWebhook.md +0 -24
  626. data/docs/ItemPublicTokenCreateRequest.md +0 -22
  627. data/docs/ItemPublicTokenCreateResponse.md +0 -22
  628. data/docs/ItemPublicTokenExchangeRequest.md +0 -22
  629. data/docs/ItemPublicTokenExchangeResponse.md +0 -22
  630. data/docs/ItemRemoveRequest.md +0 -22
  631. data/docs/ItemRemoveResponse.md +0 -18
  632. data/docs/ItemStatus.md +0 -22
  633. data/docs/ItemWebhookUpdateRequest.md +0 -24
  634. data/docs/ItemWebhookUpdateResponse.md +0 -20
  635. data/docs/JWKPublicKey.md +0 -34
  636. data/docs/JWTHeader.md +0 -18
  637. data/docs/LiabilitiesGetRequest.md +0 -24
  638. data/docs/LiabilitiesGetRequestOptions.md +0 -18
  639. data/docs/LiabilitiesGetResponse.md +0 -24
  640. data/docs/LiabilitiesObject.md +0 -22
  641. data/docs/LiabilityOverride.md +0 -66
  642. data/docs/LinkTokenAccountFilters.md +0 -24
  643. data/docs/LinkTokenCreateRequest.md +0 -52
  644. data/docs/LinkTokenCreateRequestAccountSubtypes.md +0 -24
  645. data/docs/LinkTokenCreateRequestAuth.md +0 -18
  646. data/docs/LinkTokenCreateRequestDepositSwitch.md +0 -18
  647. data/docs/LinkTokenCreateRequestIncomeVerification.md +0 -20
  648. data/docs/LinkTokenCreateRequestPaymentInitiation.md +0 -18
  649. data/docs/LinkTokenCreateRequestUser.md +0 -32
  650. data/docs/LinkTokenCreateResponse.md +0 -22
  651. data/docs/LinkTokenGetMetadataResponse.md +0 -30
  652. data/docs/LinkTokenGetRequest.md +0 -22
  653. data/docs/LinkTokenGetResponse.md +0 -26
  654. data/docs/LoanFilter.md +0 -18
  655. data/docs/Location.md +0 -32
  656. data/docs/MFA.md +0 -26
  657. data/docs/Meta.md +0 -22
  658. data/docs/MortgageInterestRate.md +0 -20
  659. data/docs/MortgageLiability.md +0 -56
  660. data/docs/MortgagePropertyAddress.md +0 -26
  661. data/docs/NullableAccessToken.md +0 -15
  662. data/docs/NullableAddress.md +0 -20
  663. data/docs/NullableAddressData.md +0 -26
  664. data/docs/NullableItemStatus.md +0 -22
  665. data/docs/NullableNumbersACH.md +0 -24
  666. data/docs/NullableNumbersBACS.md +0 -22
  667. data/docs/NullableNumbersEFT.md +0 -24
  668. data/docs/NullableNumbersInternational.md +0 -22
  669. data/docs/NullableRecipientBACS.md +0 -20
  670. data/docs/Numbers.md +0 -32
  671. data/docs/NumbersACH.md +0 -24
  672. data/docs/NumbersBACS.md +0 -22
  673. data/docs/NumbersEFT.md +0 -24
  674. data/docs/NumbersInternational.md +0 -22
  675. data/docs/OverrideAccounts.md +0 -38
  676. data/docs/Owner.md +0 -24
  677. data/docs/OwnerOverride.md +0 -24
  678. data/docs/PSLFStatus.md +0 -22
  679. data/docs/PayFrequency.md +0 -20
  680. data/docs/PayPeriodDetails.md +0 -26
  681. data/docs/PaymentAmount.md +0 -20
  682. data/docs/PaymentInitiationAddress.md +0 -24
  683. data/docs/PaymentInitiationPaymentCreateRequest.md +0 -28
  684. data/docs/PaymentInitiationPaymentCreateResponse.md +0 -22
  685. data/docs/PaymentInitiationPaymentGetRequest.md +0 -22
  686. data/docs/PaymentInitiationPaymentGetResponse.md +0 -34
  687. data/docs/PaymentInitiationPaymentListRequest.md +0 -24
  688. data/docs/PaymentInitiationPaymentListResponse.md +0 -22
  689. data/docs/PaymentInitiationPaymentTokenCreateRequest.md +0 -22
  690. data/docs/PaymentInitiationPaymentTokenCreateResponse.md +0 -22
  691. data/docs/PaymentInitiationRecipient.md +0 -26
  692. data/docs/PaymentInitiationRecipientCreateRequest.md +0 -28
  693. data/docs/PaymentInitiationRecipientCreateResponse.md +0 -20
  694. data/docs/PaymentInitiationRecipientGetRequest.md +0 -22
  695. data/docs/PaymentInitiationRecipientGetResponse.md +0 -28
  696. data/docs/PaymentInitiationRecipientListRequest.md +0 -20
  697. data/docs/PaymentInitiationRecipientListResponse.md +0 -20
  698. data/docs/PaymentMeta.md +0 -32
  699. data/docs/PaymentStatusUpdateWebhook.md +0 -38
  700. data/docs/Paystub.md +0 -30
  701. data/docs/PaystubDeduction.md +0 -22
  702. data/docs/PaystubYTDDetails.md +0 -20
  703. data/docs/PendingExpirationWebhook.md +0 -24
  704. data/docs/PhoneNumber.md +0 -22
  705. data/docs/PlaidApi.md +0 -5660
  706. data/docs/ProcessorApexProcessorTokenCreateRequest.md +0 -24
  707. data/docs/ProcessorAuthGetRequest.md +0 -22
  708. data/docs/ProcessorAuthGetResponse.md +0 -22
  709. data/docs/ProcessorBalanceGetRequest.md +0 -22
  710. data/docs/ProcessorBalanceGetResponse.md +0 -20
  711. data/docs/ProcessorIdentityGetRequest.md +0 -22
  712. data/docs/ProcessorIdentityGetResponse.md +0 -20
  713. data/docs/ProcessorNumber.md +0 -24
  714. data/docs/ProcessorStripeBankAccountTokenCreateRequest.md +0 -24
  715. data/docs/ProcessorStripeBankAccountTokenCreateResponse.md +0 -20
  716. data/docs/ProcessorTokenCreateRequest.md +0 -26
  717. data/docs/ProcessorTokenCreateResponse.md +0 -20
  718. data/docs/ProductStatus.md +0 -22
  719. data/docs/ProductStatusBreakdown.md +0 -24
  720. data/docs/Products.md +0 -15
  721. data/docs/ProjectedIncomeSummaryFieldNumber.md +0 -20
  722. data/docs/RecaptchaRequiredError.md +0 -30
  723. data/docs/RecipientBACS.md +0 -20
  724. data/docs/SandboxBankTransferFireWebhookRequest.md +0 -22
  725. data/docs/SandboxBankTransferFireWebhookResponse.md +0 -18
  726. data/docs/SandboxBankTransferSimulateRequest.md +0 -26
  727. data/docs/SandboxBankTransferSimulateResponse.md +0 -18
  728. data/docs/SandboxItemFireWebhookRequest.md +0 -24
  729. data/docs/SandboxItemFireWebhookResponse.md +0 -20
  730. data/docs/SandboxItemResetLoginRequest.md +0 -22
  731. data/docs/SandboxItemResetLoginResponse.md +0 -20
  732. data/docs/SandboxItemSetVerificationStatusRequest.md +0 -26
  733. data/docs/SandboxItemSetVerificationStatusResponse.md +0 -18
  734. data/docs/SandboxProcessorTokenCreateRequest.md +0 -24
  735. data/docs/SandboxProcessorTokenCreateRequestOptions.md +0 -20
  736. data/docs/SandboxProcessorTokenCreateResponse.md +0 -20
  737. data/docs/SandboxPublicTokenCreateRequest.md +0 -26
  738. data/docs/SandboxPublicTokenCreateRequestOptions.md +0 -24
  739. data/docs/SandboxPublicTokenCreateRequestOptionsTransactions.md +0 -20
  740. data/docs/SandboxPublicTokenCreateResponse.md +0 -20
  741. data/docs/Security.md +0 -46
  742. data/docs/ServicerAddressData.md +0 -26
  743. data/docs/StandaloneAccountType.md +0 -26
  744. data/docs/StandaloneCurrencyCodeList.md +0 -20
  745. data/docs/StandaloneInvestmentTransactionSubtype.md +0 -104
  746. data/docs/StandaloneInvestmentTransactionType.md +0 -28
  747. data/docs/StudentLoan.md +0 -66
  748. data/docs/StudentLoanRepaymentModel.md +0 -22
  749. data/docs/StudentLoanStatus.md +0 -20
  750. data/docs/StudentRepaymentPlan.md +0 -20
  751. data/docs/Transaction.md +0 -58
  752. data/docs/TransactionCode.md +0 -15
  753. data/docs/TransactionData.md +0 -26
  754. data/docs/TransactionOverride.md +0 -26
  755. data/docs/TransactionsGetRequest.md +0 -28
  756. data/docs/TransactionsGetRequestOptions.md +0 -22
  757. data/docs/TransactionsGetResponse.md +0 -26
  758. data/docs/TransactionsRefreshRequest.md +0 -22
  759. data/docs/TransactionsRefreshResponse.md +0 -18
  760. data/docs/TransactionsRemovedWebhook.md +0 -26
  761. data/docs/UserCustomPassword.md +0 -28
  762. data/docs/UserPermissionRevokedWebhook.md +0 -24
  763. data/docs/VerificationExpiredWebhook.md +0 -24
  764. data/docs/VerificationStatus.md +0 -15
  765. data/docs/Warning.md +0 -22
  766. data/docs/WebhookUpdateAcknowledgedWebhook.md +0 -26
  767. data/docs/WebhookVerificationKeyGetRequest.md +0 -22
  768. data/docs/WebhookVerificationKeyGetResponse.md +0 -20
  769. data/docs/YTDGrossIncomeSummaryFieldNumber.md +0 -20
  770. data/docs/YTDNetIncomeSummaryFieldNumber.md +0 -20
  771. data/lib/plaid/models/standalone_investment_transaction_subtype.rb +0 -650
  772. data/pkg/plaid-14.0.0.beta.4.gem +0 -0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Plaid REST API. Please see https://plaid.com/docs/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2020-09-14_1.11.0
6
+ The version of the OpenAPI document: 2020-09-14_1.31.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Plaid
17
- # Fired when the status of an income verification instance has changed. It will typically take several minutes for this webhook to fire after the end user has uploaded their documents, and may take up to 15 minutes.
17
+ # Fired when the status of an income verification instance has changed. It will typically take several minutes for this webhook to fire after the end user has uploaded their documents in the Document Income flow.
18
18
  class IncomeVerificationStatusWebhook
19
19
  # `\"INCOME\"`
20
20
  attr_accessor :webhook_type
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Plaid REST API. Please see https://plaid.com/docs/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2020-09-14_1.11.0
6
+ The version of the OpenAPI document: 2020-09-14_1.31.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -25,12 +25,16 @@ module Plaid
25
25
  # The ID of the verification.
26
26
  attr_accessor :income_verification_id
27
27
 
28
+ # The access token associated with the Item data is being requested for.
29
+ attr_accessor :access_token
30
+
28
31
  # Attribute mapping from ruby-style variable name to JSON key.
29
32
  def self.attribute_map
30
33
  {
31
34
  :'client_id' => :'client_id',
32
35
  :'secret' => :'secret',
33
- :'income_verification_id' => :'income_verification_id'
36
+ :'income_verification_id' => :'income_verification_id',
37
+ :'access_token' => :'access_token'
34
38
  }
35
39
  end
36
40
 
@@ -44,13 +48,16 @@ module Plaid
44
48
  {
45
49
  :'client_id' => :'String',
46
50
  :'secret' => :'String',
47
- :'income_verification_id' => :'String'
51
+ :'income_verification_id' => :'String',
52
+ :'access_token' => :'String'
48
53
  }
49
54
  end
50
55
 
51
56
  # List of attributes with nullable: true
52
57
  def self.openapi_nullable
53
58
  Set.new([
59
+ :'income_verification_id',
60
+ :'access_token'
54
61
  ])
55
62
  end
56
63
 
@@ -80,23 +87,22 @@ module Plaid
80
87
  if attributes.key?(:'income_verification_id')
81
88
  self.income_verification_id = attributes[:'income_verification_id']
82
89
  end
90
+
91
+ if attributes.key?(:'access_token')
92
+ self.access_token = attributes[:'access_token']
93
+ end
83
94
  end
84
95
 
85
96
  # Show invalid properties with the reasons. Usually used together with valid?
86
97
  # @return Array for valid properties with the reasons
87
98
  def list_invalid_properties
88
99
  invalid_properties = Array.new
89
- if @income_verification_id.nil?
90
- invalid_properties.push('invalid value for "income_verification_id", income_verification_id cannot be nil.')
91
- end
92
-
93
100
  invalid_properties
94
101
  end
95
102
 
96
103
  # Check to see if the all the properties in the model are valid
97
104
  # @return true if the model is valid
98
105
  def valid?
99
- return false if @income_verification_id.nil?
100
106
  true
101
107
  end
102
108
 
@@ -107,7 +113,8 @@ module Plaid
107
113
  self.class == o.class &&
108
114
  client_id == o.client_id &&
109
115
  secret == o.secret &&
110
- income_verification_id == o.income_verification_id
116
+ income_verification_id == o.income_verification_id &&
117
+ access_token == o.access_token
111
118
  end
112
119
 
113
120
  # @see the `==` method
@@ -119,7 +126,7 @@ module Plaid
119
126
  # Calculates hash code according to all attributes.
120
127
  # @return [Integer] Hash code
121
128
  def hash
122
- [client_id, secret, income_verification_id].hash
129
+ [client_id, secret, income_verification_id, access_token].hash
123
130
  end
124
131
 
125
132
  # Builds the object from hash
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The Plaid REST API. Please see https://plaid.com/docs/api for more details.
5
5
 
6
- The version of the OpenAPI document: 2020-09-14_1.11.0
6
+ The version of the OpenAPI document: 2020-09-14_1.31.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -19,6 +19,8 @@ module Plaid
19
19
  # A list of income summaries.
20
20
  attr_accessor :income_summaries
21
21
 
22
+ attr_accessor :error
23
+
22
24
  # A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
23
25
  attr_accessor :request_id
24
26
 
@@ -26,6 +28,7 @@ module Plaid
26
28
  def self.attribute_map
27
29
  {
28
30
  :'income_summaries' => :'income_summaries',
31
+ :'error' => :'error',
29
32
  :'request_id' => :'request_id'
30
33
  }
31
34
  end
@@ -39,6 +42,7 @@ module Plaid
39
42
  def self.openapi_types
40
43
  {
41
44
  :'income_summaries' => :'Array<IncomeSummary>',
45
+ :'error' => :'Error',
42
46
  :'request_id' => :'String'
43
47
  }
44
48
  end
@@ -46,6 +50,7 @@ module Plaid
46
50
  # List of attributes with nullable: true
47
51
  def self.openapi_nullable
48
52
  Set.new([
53
+ :'error',
49
54
  ])
50
55
  end
51
56
 
@@ -70,6 +75,10 @@ module Plaid
70
75
  end
71
76
  end
72
77
 
78
+ if attributes.key?(:'error')
79
+ self.error = attributes[:'error']
80
+ end
81
+
73
82
  if attributes.key?(:'request_id')
74
83
  self.request_id = attributes[:'request_id']
75
84
  end
@@ -104,6 +113,7 @@ module Plaid
104
113
  return true if self.equal?(o)
105
114
  self.class == o.class &&
106
115
  income_summaries == o.income_summaries &&
116
+ error == o.error &&
107
117
  request_id == o.request_id
108
118
  end
109
119
 
@@ -116,7 +126,7 @@ module Plaid
116
126
  # Calculates hash code according to all attributes.
117
127
  # @return [Integer] Hash code
118
128
  def hash
119
- [income_summaries, request_id].hash
129
+ [income_summaries, error, request_id].hash
120
130
  end
121
131
 
122
132
  # Builds the object from hash
@@ -0,0 +1,252 @@
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.31.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Plaid
17
+ # IncomeVerificationTaxformsGetRequest defines the request schema for `/income/verification/taxforms/get`
18
+ class IncomeVerificationTaxformsGetRequest
19
+ # Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.
20
+ attr_accessor :client_id
21
+
22
+ # Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.
23
+ attr_accessor :secret
24
+
25
+ # The ID of the verification.
26
+ attr_accessor :income_verification_id
27
+
28
+ # The access token associated with the Item data is being requested for.
29
+ attr_accessor :access_token
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+ :'client_id' => :'client_id',
35
+ :'secret' => :'secret',
36
+ :'income_verification_id' => :'income_verification_id',
37
+ :'access_token' => :'access_token'
38
+ }
39
+ end
40
+
41
+ # Returns all the JSON keys this model knows about
42
+ def self.acceptable_attributes
43
+ attribute_map.values
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.openapi_types
48
+ {
49
+ :'client_id' => :'String',
50
+ :'secret' => :'String',
51
+ :'income_verification_id' => :'String',
52
+ :'access_token' => :'String'
53
+ }
54
+ end
55
+
56
+ # List of attributes with nullable: true
57
+ def self.openapi_nullable
58
+ Set.new([
59
+ :'income_verification_id',
60
+ :'access_token'
61
+ ])
62
+ end
63
+
64
+ # Initializes the object
65
+ # @param [Hash] attributes Model attributes in the form of hash
66
+ def initialize(attributes = {})
67
+ if (!attributes.is_a?(Hash))
68
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::IncomeVerificationTaxformsGetRequest` initialize method"
69
+ end
70
+
71
+ # check to see if the attribute exists and convert string to symbol for hash key
72
+ attributes = attributes.each_with_object({}) { |(k, v), h|
73
+ if (!self.class.attribute_map.key?(k.to_sym))
74
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::IncomeVerificationTaxformsGetRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
+ end
76
+ h[k.to_sym] = v
77
+ }
78
+
79
+ if attributes.key?(:'client_id')
80
+ self.client_id = attributes[:'client_id']
81
+ end
82
+
83
+ if attributes.key?(:'secret')
84
+ self.secret = attributes[:'secret']
85
+ end
86
+
87
+ if attributes.key?(:'income_verification_id')
88
+ self.income_verification_id = attributes[:'income_verification_id']
89
+ end
90
+
91
+ if attributes.key?(:'access_token')
92
+ self.access_token = attributes[:'access_token']
93
+ end
94
+ end
95
+
96
+ # Show invalid properties with the reasons. Usually used together with valid?
97
+ # @return Array for valid properties with the reasons
98
+ def list_invalid_properties
99
+ invalid_properties = Array.new
100
+ invalid_properties
101
+ end
102
+
103
+ # Check to see if the all the properties in the model are valid
104
+ # @return true if the model is valid
105
+ def valid?
106
+ true
107
+ end
108
+
109
+ # Checks equality by comparing each attribute.
110
+ # @param [Object] Object to be compared
111
+ def ==(o)
112
+ return true if self.equal?(o)
113
+ self.class == o.class &&
114
+ client_id == o.client_id &&
115
+ secret == o.secret &&
116
+ income_verification_id == o.income_verification_id &&
117
+ access_token == o.access_token
118
+ end
119
+
120
+ # @see the `==` method
121
+ # @param [Object] Object to be compared
122
+ def eql?(o)
123
+ self == o
124
+ end
125
+
126
+ # Calculates hash code according to all attributes.
127
+ # @return [Integer] Hash code
128
+ def hash
129
+ [client_id, secret, income_verification_id, access_token].hash
130
+ end
131
+
132
+ # Builds the object from hash
133
+ # @param [Hash] attributes Model attributes in the form of hash
134
+ # @return [Object] Returns the model itself
135
+ def self.build_from_hash(attributes)
136
+ new.build_from_hash(attributes)
137
+ end
138
+
139
+ # Builds the object from hash
140
+ # @param [Hash] attributes Model attributes in the form of hash
141
+ # @return [Object] Returns the model itself
142
+ def build_from_hash(attributes)
143
+ return nil unless attributes.is_a?(Hash)
144
+ self.class.openapi_types.each_pair do |key, type|
145
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
146
+ self.send("#{key}=", nil)
147
+ elsif type =~ /\AArray<(.*)>/i
148
+ # check to ensure the input is an array given that the attribute
149
+ # is documented as an array but the input is not
150
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
151
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
152
+ end
153
+ elsif !attributes[self.class.attribute_map[key]].nil?
154
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
+ end
156
+ end
157
+
158
+ self
159
+ end
160
+
161
+ # Deserializes the data based on type
162
+ # @param string type Data type
163
+ # @param string value Value to be deserialized
164
+ # @return [Object] Deserialized data
165
+ def _deserialize(type, value)
166
+ case type.to_sym
167
+ when :Time
168
+ Time.parse(value)
169
+ when :Date
170
+ Date.parse(value)
171
+ when :String
172
+ value.to_s
173
+ when :Integer
174
+ value.to_i
175
+ when :Float
176
+ value.to_f
177
+ when :Boolean
178
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
179
+ true
180
+ else
181
+ false
182
+ end
183
+ when :Object
184
+ # generic object (usually a Hash), return directly
185
+ value
186
+ when /\AArray<(?<inner_type>.+)>\z/
187
+ inner_type = Regexp.last_match[:inner_type]
188
+ value.map { |v| _deserialize(inner_type, v) }
189
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
190
+ k_type = Regexp.last_match[:k_type]
191
+ v_type = Regexp.last_match[:v_type]
192
+ {}.tap do |hash|
193
+ value.each do |k, v|
194
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
195
+ end
196
+ end
197
+ else # model
198
+ # models (e.g. Pet) or oneOf
199
+ klass = Plaid.const_get(type)
200
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
201
+ end
202
+ end
203
+
204
+ # Returns the string representation of the object
205
+ # @return [String] String presentation of the object
206
+ def to_s
207
+ to_hash.to_s
208
+ end
209
+
210
+ # to_body is an alias to to_hash (backward compatibility)
211
+ # @return [Hash] Returns the object in the form of hash
212
+ def to_body
213
+ to_hash
214
+ end
215
+
216
+ # Returns the object in the form of hash
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_hash
219
+ hash = {}
220
+ self.class.attribute_map.each_pair do |attr, param|
221
+ value = self.send(attr)
222
+ if value.nil?
223
+ is_nullable = self.class.openapi_nullable.include?(attr)
224
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
225
+ end
226
+
227
+ hash[param] = _to_hash(value)
228
+ end
229
+ hash
230
+ end
231
+
232
+ # Outputs non-array value in the form of hash
233
+ # For object, use to_hash. Otherwise, just return the value
234
+ # @param [Object] value Any valid value
235
+ # @return [Hash] Returns the value in the form of hash
236
+ def _to_hash(value)
237
+ if value.is_a?(Array)
238
+ value.compact.map { |v| _to_hash(v) }
239
+ elsif value.is_a?(Hash)
240
+ {}.tap do |hash|
241
+ value.each { |k, v| hash[k] = _to_hash(v) }
242
+ end
243
+ elsif value.respond_to? :to_hash
244
+ value.to_hash
245
+ else
246
+ value
247
+ end
248
+ end
249
+
250
+ end
251
+
252
+ end
@@ -0,0 +1,263 @@
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.31.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Plaid
17
+ # IncomeVerificationTaxformsGetResponse defines the response schema for `/income/verification/taxforms/get`
18
+ class IncomeVerificationTaxformsGetResponse
19
+ # A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
20
+ attr_accessor :request_id
21
+
22
+ # A list of taxforms.
23
+ attr_accessor :taxforms
24
+
25
+ attr_accessor :document_metadata
26
+
27
+ attr_accessor :error
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'request_id' => :'request_id',
33
+ :'taxforms' => :'taxforms',
34
+ :'document_metadata' => :'document_metadata',
35
+ :'error' => :'error'
36
+ }
37
+ end
38
+
39
+ # Returns all the JSON keys this model knows about
40
+ def self.acceptable_attributes
41
+ attribute_map.values
42
+ end
43
+
44
+ # Attribute type mapping.
45
+ def self.openapi_types
46
+ {
47
+ :'request_id' => :'String',
48
+ :'taxforms' => :'Array<Taxform>',
49
+ :'document_metadata' => :'Array<DocumentMetadata>',
50
+ :'error' => :'Error'
51
+ }
52
+ end
53
+
54
+ # List of attributes with nullable: true
55
+ def self.openapi_nullable
56
+ Set.new([
57
+ :'error'
58
+ ])
59
+ end
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::IncomeVerificationTaxformsGetResponse` initialize method"
66
+ end
67
+
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h|
70
+ if (!self.class.attribute_map.key?(k.to_sym))
71
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::IncomeVerificationTaxformsGetResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ end
73
+ h[k.to_sym] = v
74
+ }
75
+
76
+ if attributes.key?(:'request_id')
77
+ self.request_id = attributes[:'request_id']
78
+ end
79
+
80
+ if attributes.key?(:'taxforms')
81
+ if (value = attributes[:'taxforms']).is_a?(Array)
82
+ self.taxforms = value
83
+ end
84
+ end
85
+
86
+ if attributes.key?(:'document_metadata')
87
+ if (value = attributes[:'document_metadata']).is_a?(Array)
88
+ self.document_metadata = value
89
+ end
90
+ end
91
+
92
+ if attributes.key?(:'error')
93
+ self.error = attributes[:'error']
94
+ end
95
+ end
96
+
97
+ # Show invalid properties with the reasons. Usually used together with valid?
98
+ # @return Array for valid properties with the reasons
99
+ def list_invalid_properties
100
+ invalid_properties = Array.new
101
+ if @taxforms.nil?
102
+ invalid_properties.push('invalid value for "taxforms", taxforms cannot be nil.')
103
+ end
104
+
105
+ if @document_metadata.nil?
106
+ invalid_properties.push('invalid value for "document_metadata", document_metadata cannot be nil.')
107
+ end
108
+
109
+ invalid_properties
110
+ end
111
+
112
+ # Check to see if the all the properties in the model are valid
113
+ # @return true if the model is valid
114
+ def valid?
115
+ return false if @taxforms.nil?
116
+ return false if @document_metadata.nil?
117
+ true
118
+ end
119
+
120
+ # Checks equality by comparing each attribute.
121
+ # @param [Object] Object to be compared
122
+ def ==(o)
123
+ return true if self.equal?(o)
124
+ self.class == o.class &&
125
+ request_id == o.request_id &&
126
+ taxforms == o.taxforms &&
127
+ document_metadata == o.document_metadata &&
128
+ error == o.error
129
+ end
130
+
131
+ # @see the `==` method
132
+ # @param [Object] Object to be compared
133
+ def eql?(o)
134
+ self == o
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Integer] Hash code
139
+ def hash
140
+ [request_id, taxforms, document_metadata, error].hash
141
+ end
142
+
143
+ # Builds the object from hash
144
+ # @param [Hash] attributes Model attributes in the form of hash
145
+ # @return [Object] Returns the model itself
146
+ def self.build_from_hash(attributes)
147
+ new.build_from_hash(attributes)
148
+ end
149
+
150
+ # Builds the object from hash
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ # @return [Object] Returns the model itself
153
+ def build_from_hash(attributes)
154
+ return nil unless attributes.is_a?(Hash)
155
+ self.class.openapi_types.each_pair do |key, type|
156
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
157
+ self.send("#{key}=", nil)
158
+ elsif type =~ /\AArray<(.*)>/i
159
+ # check to ensure the input is an array given that the attribute
160
+ # is documented as an array but the input is not
161
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
162
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
163
+ end
164
+ elsif !attributes[self.class.attribute_map[key]].nil?
165
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
166
+ end
167
+ end
168
+
169
+ self
170
+ end
171
+
172
+ # Deserializes the data based on type
173
+ # @param string type Data type
174
+ # @param string value Value to be deserialized
175
+ # @return [Object] Deserialized data
176
+ def _deserialize(type, value)
177
+ case type.to_sym
178
+ when :Time
179
+ Time.parse(value)
180
+ when :Date
181
+ Date.parse(value)
182
+ when :String
183
+ value.to_s
184
+ when :Integer
185
+ value.to_i
186
+ when :Float
187
+ value.to_f
188
+ when :Boolean
189
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
190
+ true
191
+ else
192
+ false
193
+ end
194
+ when :Object
195
+ # generic object (usually a Hash), return directly
196
+ value
197
+ when /\AArray<(?<inner_type>.+)>\z/
198
+ inner_type = Regexp.last_match[:inner_type]
199
+ value.map { |v| _deserialize(inner_type, v) }
200
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
201
+ k_type = Regexp.last_match[:k_type]
202
+ v_type = Regexp.last_match[:v_type]
203
+ {}.tap do |hash|
204
+ value.each do |k, v|
205
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
206
+ end
207
+ end
208
+ else # model
209
+ # models (e.g. Pet) or oneOf
210
+ klass = Plaid.const_get(type)
211
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
212
+ end
213
+ end
214
+
215
+ # Returns the string representation of the object
216
+ # @return [String] String presentation of the object
217
+ def to_s
218
+ to_hash.to_s
219
+ end
220
+
221
+ # to_body is an alias to to_hash (backward compatibility)
222
+ # @return [Hash] Returns the object in the form of hash
223
+ def to_body
224
+ to_hash
225
+ end
226
+
227
+ # Returns the object in the form of hash
228
+ # @return [Hash] Returns the object in the form of hash
229
+ def to_hash
230
+ hash = {}
231
+ self.class.attribute_map.each_pair do |attr, param|
232
+ value = self.send(attr)
233
+ if value.nil?
234
+ is_nullable = self.class.openapi_nullable.include?(attr)
235
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
236
+ end
237
+
238
+ hash[param] = _to_hash(value)
239
+ end
240
+ hash
241
+ end
242
+
243
+ # Outputs non-array value in the form of hash
244
+ # For object, use to_hash. Otherwise, just return the value
245
+ # @param [Object] value Any valid value
246
+ # @return [Hash] Returns the value in the form of hash
247
+ def _to_hash(value)
248
+ if value.is_a?(Array)
249
+ value.compact.map { |v| _to_hash(v) }
250
+ elsif value.is_a?(Hash)
251
+ {}.tap do |hash|
252
+ value.each { |k, v| hash[k] = _to_hash(v) }
253
+ end
254
+ elsif value.respond_to? :to_hash
255
+ value.to_hash
256
+ else
257
+ value
258
+ end
259
+ end
260
+
261
+ end
262
+
263
+ end