plaid 14.0.0.beta.5 → 14.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (473) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/CONTRIBUTING.md +1 -5
  4. data/Gemfile.lock +14 -4
  5. data/Makefile +1 -1
  6. data/README.md +10 -9
  7. data/doc/rdoc/.DS_Store +0 -0
  8. data/lib/plaid/.DS_Store +0 -0
  9. data/lib/plaid/api/plaid_api.rb +2257 -766
  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 +7 -11
  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 +2 -2
  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 +17 -2
  36. data/lib/plaid/models/application_get_request.rb +1 -1
  37. data/lib/plaid/models/application_get_response.rb +1 -1
  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 +1 -1
  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 +1 -1
  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 +8 -12
  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 +2 -9
  143. data/lib/plaid/models/external_payment_options.rb +61 -7
  144. data/lib/plaid/models/external_payment_refund_details.rb +7 -2
  145. data/lib/plaid/models/{external_payment_schedule.rb → external_payment_schedule_base.rb} +22 -26
  146. data/lib/plaid/models/external_payment_schedule_get.rb +20 -20
  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 +2 -2
  151. data/lib/plaid/models/holding.rb +3 -3
  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_override.rb +222 -0
  160. data/lib/plaid/models/income_summary.rb +26 -1
  161. data/lib/plaid/models/income_summary_field_number.rb +1 -1
  162. data/lib/plaid/models/income_summary_field_string.rb +1 -1
  163. data/lib/plaid/models/income_verification_create_request.rb +1 -1
  164. data/lib/plaid/models/income_verification_create_response.rb +1 -1
  165. data/lib/plaid/models/income_verification_documents_download_request.rb +17 -10
  166. data/lib/plaid/models/income_verification_documents_download_response.rb +1 -1
  167. data/lib/plaid/models/income_verification_paystub_get_request.rb +17 -10
  168. data/lib/plaid/models/income_verification_paystub_get_response.rb +22 -2
  169. data/lib/plaid/models/income_verification_paystubs_get_request.rb +252 -0
  170. data/lib/plaid/models/income_verification_paystubs_get_response.rb +262 -0
  171. data/lib/plaid/models/income_verification_precheck_employer.rb +231 -0
  172. data/lib/plaid/models/income_verification_precheck_military_info.rb +265 -0
  173. data/lib/plaid/models/income_verification_precheck_request.rb +271 -0
  174. data/lib/plaid/models/income_verification_precheck_response.rb +289 -0
  175. data/lib/plaid/models/income_verification_precheck_user.rb +252 -0
  176. data/lib/plaid/models/income_verification_refresh_request.rb +252 -0
  177. data/lib/plaid/models/income_verification_refresh_response.rb +239 -0
  178. data/lib/plaid/models/income_verification_status_webhook.rb +2 -2
  179. data/lib/plaid/models/income_verification_summary_get_request.rb +17 -10
  180. data/lib/plaid/models/income_verification_summary_get_response.rb +12 -2
  181. data/lib/plaid/models/income_verification_taxforms_get_request.rb +252 -0
  182. data/lib/plaid/models/income_verification_taxforms_get_response.rb +263 -0
  183. data/lib/plaid/models/income_verification_webhook_status.rb +1 -1
  184. data/lib/plaid/models/inflow_model.rb +1 -1
  185. data/lib/plaid/models/initial_update_webhook.rb +2 -2
  186. data/lib/plaid/models/institution.rb +17 -7
  187. data/lib/plaid/models/institution_status.rb +30 -3
  188. data/lib/plaid/models/institutions_get_by_id_request.rb +1 -1
  189. data/lib/plaid/models/institutions_get_by_id_request_options.rb +15 -3
  190. data/lib/plaid/models/institutions_get_by_id_response.rb +1 -1
  191. data/lib/plaid/models/institutions_get_request.rb +1 -1
  192. data/lib/plaid/models/institutions_get_request_options.rb +15 -3
  193. data/lib/plaid/models/institutions_get_response.rb +1 -1
  194. data/lib/plaid/models/institutions_search_account_filter.rb +1 -1
  195. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +1 -1
  196. data/lib/plaid/models/institutions_search_request.rb +2 -2
  197. data/lib/plaid/models/institutions_search_request_options.rb +15 -3
  198. data/lib/plaid/models/institutions_search_response.rb +1 -1
  199. data/lib/plaid/models/investment_filter.rb +2 -2
  200. data/lib/plaid/models/investment_holdings_get_request_options.rb +1 -1
  201. data/lib/plaid/models/investment_transaction.rb +7 -7
  202. data/lib/plaid/models/investments_default_update_webhook.rb +1 -1
  203. data/lib/plaid/models/investments_holdings_get_request.rb +1 -1
  204. data/lib/plaid/models/investments_holdings_get_response.rb +1 -1
  205. data/lib/plaid/models/investments_transactions_get_request.rb +1 -1
  206. data/lib/plaid/models/investments_transactions_get_request_options.rb +1 -1
  207. data/lib/plaid/models/investments_transactions_get_response.rb +1 -1
  208. data/lib/plaid/models/investments_transactions_override.rb +319 -0
  209. data/lib/plaid/models/item.rb +5 -5
  210. data/lib/plaid/models/item_access_token_invalidate_request.rb +1 -1
  211. data/lib/plaid/models/item_access_token_invalidate_response.rb +1 -1
  212. data/lib/plaid/models/item_application_list_request.rb +241 -0
  213. data/lib/plaid/models/item_application_list_response.rb +237 -0
  214. data/lib/plaid/models/item_application_list_user_auth.rb +232 -0
  215. data/lib/plaid/models/item_application_scopes_update_request.rb +298 -0
  216. data/lib/plaid/models/item_application_scopes_update_response.rb +225 -0
  217. data/lib/plaid/models/item_error_webhook.rb +1 -1
  218. data/lib/plaid/models/item_get_request.rb +1 -1
  219. data/lib/plaid/models/item_get_response.rb +2 -2
  220. data/lib/plaid/models/item_import_request.rb +1 -1
  221. data/lib/plaid/models/item_import_request_options.rb +1 -1
  222. data/lib/plaid/models/item_import_request_user_auth.rb +1 -1
  223. data/lib/plaid/models/item_import_response.rb +1 -1
  224. data/lib/plaid/models/item_product_ready_webhook.rb +1 -1
  225. data/lib/plaid/models/item_public_token_create_request.rb +1 -1
  226. data/lib/plaid/models/item_public_token_create_response.rb +1 -1
  227. data/lib/plaid/models/item_public_token_exchange_request.rb +1 -1
  228. data/lib/plaid/models/item_public_token_exchange_response.rb +1 -1
  229. data/lib/plaid/models/item_remove_request.rb +1 -1
  230. data/lib/plaid/models/item_remove_response.rb +1 -1
  231. data/lib/plaid/models/item_status.rb +7 -16
  232. data/lib/plaid/models/item_status_investments.rb +232 -0
  233. data/lib/plaid/models/{nullable_recipient_bacs.rb → item_status_last_webhook.rb} +22 -26
  234. data/lib/plaid/models/{nullable_item_status.rb → item_status_nullable.rb} +10 -19
  235. data/lib/plaid/models/item_status_transactions.rb +232 -0
  236. data/lib/plaid/models/item_webhook_update_request.rb +1 -1
  237. data/lib/plaid/models/item_webhook_update_response.rb +1 -1
  238. data/lib/plaid/models/jwk_public_key.rb +3 -1
  239. data/lib/plaid/models/jwt_header.rb +1 -1
  240. data/lib/plaid/models/liabilities_default_update_webhook.rb +27 -2
  241. data/lib/plaid/models/liabilities_get_request.rb +1 -1
  242. data/lib/plaid/models/liabilities_get_request_options.rb +1 -1
  243. data/lib/plaid/models/liabilities_get_response.rb +1 -1
  244. data/lib/plaid/models/liabilities_object.rb +4 -4
  245. data/lib/plaid/models/liability_override.rb +4 -4
  246. data/lib/plaid/models/link_token_account_filters.rb +2 -2
  247. data/lib/plaid/models/link_token_create_request.rb +25 -7
  248. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +2 -2
  249. data/lib/plaid/models/link_token_create_request_auth.rb +1 -1
  250. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +1 -1
  251. data/lib/plaid/models/link_token_create_request_income_verification.rb +2 -3
  252. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +22 -1
  253. data/lib/plaid/models/link_token_create_request_update.rb +222 -0
  254. data/lib/plaid/models/link_token_create_request_user.rb +9 -9
  255. data/lib/plaid/models/link_token_create_response.rb +2 -2
  256. data/lib/plaid/models/link_token_eu_config.rb +220 -0
  257. data/lib/plaid/models/link_token_get_metadata_response.rb +11 -1
  258. data/lib/plaid/models/link_token_get_request.rb +1 -1
  259. data/lib/plaid/models/link_token_get_response.rb +13 -3
  260. data/lib/plaid/models/loan_filter.rb +2 -2
  261. data/lib/plaid/models/location.rb +1 -1
  262. data/lib/plaid/models/meta.rb +1 -1
  263. data/lib/plaid/models/mfa.rb +1 -1
  264. data/lib/plaid/models/mortgage_interest_rate.rb +1 -1
  265. data/lib/plaid/models/mortgage_liability.rb +24 -10
  266. data/lib/plaid/models/mortgage_property_address.rb +1 -1
  267. data/lib/plaid/models/net_pay.rb +230 -0
  268. data/lib/plaid/models/new_accounts_available_webhook.rb +250 -0
  269. data/lib/plaid/models/numbers.rb +1 -41
  270. data/lib/plaid/models/numbers_ach.rb +2 -2
  271. data/lib/plaid/models/{nullable_numbers_ach.rb → numbers_ach_nullable.rb} +5 -5
  272. data/lib/plaid/models/numbers_bacs.rb +1 -1
  273. data/lib/plaid/models/{nullable_numbers_bacs.rb → numbers_bacs_nullable.rb} +4 -4
  274. data/lib/plaid/models/numbers_eft.rb +1 -1
  275. data/lib/plaid/models/{nullable_numbers_eft.rb → numbers_eft_nullable.rb} +4 -4
  276. data/lib/plaid/models/numbers_international.rb +1 -1
  277. data/lib/plaid/models/{nullable_numbers_international.rb → numbers_international_nullable.rb} +4 -4
  278. data/lib/plaid/models/override_account_type.rb +41 -0
  279. data/lib/plaid/models/override_accounts.rb +33 -6
  280. data/lib/plaid/models/owner.rb +1 -1
  281. data/lib/plaid/models/owner_override.rb +1 -1
  282. data/lib/plaid/models/pay.rb +258 -0
  283. data/lib/plaid/models/pay_frequency.rb +1 -1
  284. data/lib/plaid/models/pay_period_details.rb +7 -7
  285. data/lib/plaid/models/payment_amount.rb +12 -1
  286. data/lib/plaid/models/payment_initiation_address.rb +118 -4
  287. data/lib/plaid/models/payment_initiation_metadata.rb +16 -1
  288. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +53 -1
  289. data/lib/plaid/models/payment_initiation_payment.rb +33 -3
  290. data/lib/plaid/models/payment_initiation_payment_create_request.rb +53 -3
  291. data/lib/plaid/models/payment_initiation_payment_create_response.rb +35 -1
  292. data/lib/plaid/models/payment_initiation_payment_get_request.rb +22 -1
  293. data/lib/plaid/models/payment_initiation_payment_get_response.rb +33 -3
  294. data/lib/plaid/models/payment_initiation_payment_list_request.rb +11 -2
  295. data/lib/plaid/models/payment_initiation_payment_list_response.rb +1 -1
  296. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +266 -0
  297. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +289 -0
  298. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +22 -1
  299. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +2 -2
  300. data/lib/plaid/models/payment_initiation_recipient.rb +2 -2
  301. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +49 -2
  302. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +1 -1
  303. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +22 -1
  304. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +2 -2
  305. data/lib/plaid/models/payment_initiation_recipient_get_response_all_of.rb +1 -1
  306. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +1 -1
  307. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +1 -1
  308. data/lib/plaid/models/payment_initiation_refund.rb +303 -0
  309. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +16 -1
  310. data/lib/plaid/models/payment_meta.rb +1 -1
  311. data/lib/plaid/models/payment_schedule_interval.rb +1 -1
  312. data/lib/plaid/models/payment_status_update_webhook.rb +4 -4
  313. data/lib/plaid/models/paystub.rb +56 -25
  314. data/lib/plaid/models/paystub_address.rb +297 -0
  315. data/lib/plaid/models/paystub_deduction.rb +1 -1
  316. data/lib/plaid/models/paystub_details.rb +299 -0
  317. data/lib/plaid/models/paystub_employer.rb +229 -0
  318. data/lib/plaid/models/paystub_override.rb +248 -0
  319. data/lib/plaid/models/paystub_override_employee.rb +229 -0
  320. data/lib/plaid/models/paystub_override_employee_address.rb +260 -0
  321. data/lib/plaid/models/{nullable_access_token.rb → paystub_override_employer.rb} +17 -6
  322. data/lib/plaid/models/paystub_ytd_details.rb +4 -11
  323. data/lib/plaid/models/pending_expiration_webhook.rb +3 -3
  324. data/lib/plaid/models/personal_finance_category.rb +240 -0
  325. data/lib/plaid/models/phone_number.rb +11 -3
  326. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +1 -1
  327. data/lib/plaid/models/processor_auth_get_request.rb +1 -1
  328. data/lib/plaid/models/processor_auth_get_response.rb +1 -1
  329. data/lib/plaid/models/processor_balance_get_request.rb +14 -5
  330. data/lib/plaid/models/processor_balance_get_request_options.rb +220 -0
  331. data/lib/plaid/models/processor_balance_get_response.rb +1 -1
  332. data/lib/plaid/models/processor_bank_transfer_create_request.rb +459 -0
  333. data/lib/plaid/models/processor_bank_transfer_create_response.rb +239 -0
  334. data/lib/plaid/models/processor_identity_get_request.rb +1 -1
  335. data/lib/plaid/models/processor_identity_get_response.rb +1 -1
  336. data/lib/plaid/models/processor_number.rb +5 -5
  337. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +1 -1
  338. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +1 -1
  339. data/lib/plaid/models/processor_token_create_request.rb +36 -2
  340. data/lib/plaid/models/processor_token_create_response.rb +1 -1
  341. data/lib/plaid/models/product_access.rb +262 -0
  342. data/lib/plaid/models/product_status.rb +4 -4
  343. data/lib/plaid/models/product_status_breakdown.rb +1 -2
  344. data/lib/plaid/models/products.rb +3 -1
  345. data/lib/plaid/models/projected_income_summary_field_number.rb +1 -1
  346. data/lib/plaid/models/pslf_status.rb +3 -3
  347. data/lib/plaid/models/recaptcha_required_error.rb +1 -1
  348. data/lib/plaid/models/recipient_bacs.rb +53 -1
  349. data/lib/plaid/models/recipient_bacs_nullable.rb +288 -0
  350. data/lib/plaid/models/requested_scopes.rb +261 -0
  351. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +2 -2
  352. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +2 -2
  353. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +2 -2
  354. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +2 -2
  355. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +309 -0
  356. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +225 -0
  357. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +1 -1
  358. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +1 -1
  359. data/lib/plaid/models/sandbox_item_reset_login_request.rb +1 -1
  360. data/lib/plaid/models/sandbox_item_reset_login_response.rb +1 -1
  361. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +1 -1
  362. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +1 -1
  363. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +240 -0
  364. data/lib/plaid/models/sandbox_processor_token_create_request.rb +1 -1
  365. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +1 -1
  366. data/lib/plaid/models/sandbox_processor_token_create_response.rb +1 -1
  367. data/lib/plaid/models/sandbox_public_token_create_request.rb +1 -1
  368. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +1 -1
  369. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +4 -4
  370. data/lib/plaid/models/sandbox_public_token_create_response.rb +1 -1
  371. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +270 -0
  372. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +225 -0
  373. data/lib/plaid/models/scopes.rb +243 -0
  374. data/lib/plaid/models/scopes_context.rb +37 -0
  375. data/lib/plaid/models/scopes_nullable.rb +249 -0
  376. data/lib/plaid/models/security.rb +3 -3
  377. data/lib/plaid/models/security_override.rb +270 -0
  378. data/lib/plaid/models/sender_bacs_nullable.rb +288 -0
  379. data/lib/plaid/models/servicer_address_data.rb +1 -1
  380. data/lib/plaid/models/signal_address_data.rb +263 -0
  381. data/lib/plaid/models/signal_decision_report_request.rb +260 -0
  382. data/lib/plaid/models/signal_decision_report_response.rb +225 -0
  383. data/lib/plaid/models/signal_device.rb +232 -0
  384. data/lib/plaid/models/signal_evaluate_core_attributes.rb +584 -0
  385. data/lib/plaid/models/signal_evaluate_request.rb +356 -0
  386. data/lib/plaid/models/signal_evaluate_response.rb +253 -0
  387. data/lib/plaid/models/signal_person_name.rb +265 -0
  388. data/lib/plaid/models/signal_return_report_request.rb +260 -0
  389. data/lib/plaid/models/signal_return_report_response.rb +225 -0
  390. data/lib/plaid/models/signal_scores.rb +228 -0
  391. data/lib/plaid/models/signal_user.rb +252 -0
  392. data/lib/plaid/models/standalone_account_type.rb +1 -1
  393. data/lib/plaid/models/standalone_currency_code_list.rb +1 -1
  394. data/lib/plaid/models/standalone_investment_transaction_type.rb +3 -3
  395. data/lib/plaid/models/student_loan.rb +33 -13
  396. data/lib/plaid/models/student_loan_repayment_model.rb +1 -1
  397. data/lib/plaid/models/student_loan_status.rb +3 -3
  398. data/lib/plaid/models/student_repayment_plan.rb +3 -3
  399. data/lib/plaid/models/taxform.rb +233 -0
  400. data/lib/plaid/models/taxpayer_id.rb +257 -0
  401. data/lib/plaid/models/total.rb +284 -0
  402. data/lib/plaid/models/transaction.rb +190 -129
  403. data/lib/plaid/models/transaction_all_of.rb +333 -0
  404. data/lib/plaid/models/transaction_base.rb +436 -0
  405. data/lib/plaid/models/transaction_code.rb +1 -1
  406. data/lib/plaid/models/transaction_data.rb +3 -3
  407. data/lib/plaid/models/transaction_override.rb +5 -5
  408. data/lib/plaid/models/transactions_get_request.rb +1 -1
  409. data/lib/plaid/models/transactions_get_request_options.rb +30 -5
  410. data/lib/plaid/models/transactions_get_response.rb +1 -1
  411. data/lib/plaid/models/transactions_refresh_request.rb +1 -1
  412. data/lib/plaid/models/transactions_refresh_response.rb +1 -1
  413. data/lib/plaid/models/transactions_removed_webhook.rb +1 -1
  414. data/lib/plaid/models/transfer.rb +417 -0
  415. data/lib/plaid/models/transfer_authorization.rb +313 -0
  416. data/lib/plaid/models/transfer_authorization_create_request.rb +350 -0
  417. data/lib/plaid/models/transfer_authorization_create_response.rb +239 -0
  418. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +274 -0
  419. data/lib/plaid/models/transfer_authorization_device.rb +230 -0
  420. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +312 -0
  421. data/lib/plaid/models/transfer_cancel_request.rb +245 -0
  422. data/lib/plaid/models/transfer_cancel_response.rb +225 -0
  423. data/lib/plaid/models/transfer_create_request.rb +451 -0
  424. data/lib/plaid/models/transfer_create_response.rb +239 -0
  425. data/lib/plaid/models/transfer_event.rb +355 -0
  426. data/lib/plaid/models/transfer_event_list_request.rb +411 -0
  427. data/lib/plaid/models/transfer_event_list_response.rb +241 -0
  428. data/lib/plaid/models/transfer_event_sync_request.rb +305 -0
  429. data/lib/plaid/models/transfer_event_sync_response.rb +241 -0
  430. data/lib/plaid/models/transfer_event_type.rb +40 -0
  431. data/lib/plaid/models/transfer_failure.rb +231 -0
  432. data/lib/plaid/models/transfer_get_request.rb +245 -0
  433. data/lib/plaid/models/transfer_get_response.rb +239 -0
  434. data/lib/plaid/models/transfer_list_request.rb +330 -0
  435. data/lib/plaid/models/transfer_list_response.rb +241 -0
  436. data/lib/plaid/models/transfer_network.rb +37 -0
  437. data/lib/plaid/models/transfer_status.rb +40 -0
  438. data/lib/plaid/models/transfer_type.rb +37 -0
  439. data/lib/plaid/models/transfer_user_address_in_request.rb +260 -0
  440. data/lib/plaid/models/transfer_user_address_in_response.rb +265 -0
  441. data/lib/plaid/models/transfer_user_in_request.rb +254 -0
  442. data/lib/plaid/models/transfer_user_in_response.rb +257 -0
  443. data/lib/plaid/models/user_custom_password.rb +1 -1
  444. data/lib/plaid/models/user_permission_revoked_webhook.rb +1 -1
  445. data/lib/plaid/models/verification_expired_webhook.rb +1 -1
  446. data/lib/plaid/models/verification_refresh_status.rb +36 -0
  447. data/lib/plaid/models/verification_status.rb +1 -1
  448. data/lib/plaid/models/w2.rb +437 -0
  449. data/lib/plaid/models/w2_box12.rb +231 -0
  450. data/lib/plaid/models/w2_state_and_local_wages.rb +286 -0
  451. data/lib/plaid/models/warning.rb +35 -1
  452. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +1 -1
  453. data/lib/plaid/models/webhook_verification_key_get_request.rb +1 -1
  454. data/lib/plaid/models/webhook_verification_key_get_response.rb +1 -1
  455. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +1 -1
  456. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +1 -1
  457. data/lib/plaid/version.rb +2 -2
  458. data/lib/plaid.rb +137 -12
  459. data/pkg/plaid-14.0.0.beta.5.gem +0 -0
  460. data/pkg/plaid-14.0.0.gem +0 -0
  461. data/pkg/plaid-14.1.0.gem +0 -0
  462. data/plaid.gemspec +1 -1
  463. data/templates/ruby/api_client.mustache +3 -2
  464. data/templates/ruby/api_client_faraday_partial.mustache +2 -1
  465. data/templates/ruby/api_error.mustache +49 -0
  466. data/templates/ruby/configuration.mustache +3 -1
  467. data/test/test_accounts.rb +4 -8
  468. data/test/test_bank_transfers.rb +1 -1
  469. data/test/test_item.rb +0 -10
  470. data/test/test_payment_initiation.rb +1 -1
  471. data/test/test_processor.rb +1 -16
  472. metadata +146 -15
  473. data/lib/plaid/models/standalone_investment_transaction_subtype.rb +0 -650
@@ -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.33.0
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
+ # Details about the end user initiating the transaction (i.e., the account holder).
18
+ class SignalUser
19
+ attr_accessor :name
20
+
21
+ # The user's phone number, in E.164 format: +{countrycode}{number}. For example: \"+14151234567\"
22
+ attr_accessor :phone_number
23
+
24
+ # The user's email address.
25
+ attr_accessor :email_address
26
+
27
+ attr_accessor :address
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'name' => :'name',
33
+ :'phone_number' => :'phone_number',
34
+ :'email_address' => :'email_address',
35
+ :'address' => :'address'
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
+ :'name' => :'SignalPersonName',
48
+ :'phone_number' => :'String',
49
+ :'email_address' => :'String',
50
+ :'address' => :'SignalAddressData'
51
+ }
52
+ end
53
+
54
+ # List of attributes with nullable: true
55
+ def self.openapi_nullable
56
+ Set.new([
57
+ :'name',
58
+ :'phone_number',
59
+ :'email_address',
60
+ :'address'
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::SignalUser` 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::SignalUser`. 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?(:'name')
80
+ self.name = attributes[:'name']
81
+ end
82
+
83
+ if attributes.key?(:'phone_number')
84
+ self.phone_number = attributes[:'phone_number']
85
+ end
86
+
87
+ if attributes.key?(:'email_address')
88
+ self.email_address = attributes[:'email_address']
89
+ end
90
+
91
+ if attributes.key?(:'address')
92
+ self.address = attributes[:'address']
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
+ name == o.name &&
115
+ phone_number == o.phone_number &&
116
+ email_address == o.email_address &&
117
+ address == o.address
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
+ [name, phone_number, email_address, address].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
@@ -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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
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
- # Valid values for investment transaction types
17
+ # Valid values for investment transaction types and subtypes. Note that transactions representing inflow of cash will appear as negative amounts, outflow of cash will appear as positive amounts.
18
18
  class StandaloneInvestmentTransactionType
19
19
  # Buying an investment
20
20
  attr_accessor :buy
@@ -31,7 +31,7 @@ module Plaid
31
31
  # Fees on the account, e.g. commission, bookkeeping, options-related.
32
32
  attr_accessor :fee
33
33
 
34
- # Activity which modifies a position, but not through buy/sell activity e.g. options exercise, portfolio transfer
34
+ # Activity that modifies a position, but not through buy/sell activity e.g. options exercise, portfolio transfer
35
35
  attr_accessor :transfer
36
36
 
37
37
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -22,10 +22,10 @@ module Plaid
22
22
  # The account number of the loan. For some institutions, this may be a masked version of the number (e.g., the last 4 digits instead of the entire number).
23
23
  attr_accessor :account_number
24
24
 
25
- # The dates on which loaned funds were disbursed or will be disbursed. These are often in the past. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
25
+ # The dates on which loaned funds were disbursed or will be disbursed. These are often in the past. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
26
26
  attr_accessor :disbursement_dates
27
27
 
28
- # The date when the student loan is expected to be paid off. Availability for this field is limited. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
28
+ # The date when the student loan is expected to be paid off. Availability for this field is limited. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
29
29
  attr_accessor :expected_payoff_date
30
30
 
31
31
  # The guarantor of the student loan.
@@ -40,10 +40,10 @@ module Plaid
40
40
  # The amount of the last payment.
41
41
  attr_accessor :last_payment_amount
42
42
 
43
- # The date of the last payment. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
43
+ # The date of the last payment. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
44
44
  attr_accessor :last_payment_date
45
45
 
46
- # The date of the last statement. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
46
+ # The date of the last statement. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
47
47
  attr_accessor :last_statement_issue_date
48
48
 
49
49
  # The type of loan, e.g., \"Consolidation Loans\".
@@ -54,10 +54,10 @@ module Plaid
54
54
  # The minimum payment due for the next billing cycle. There are some exceptions: Some institutions require a minimum payment across all loans associated with an account number. Our API presents that same minimum payment amount on each loan. The institutions that do this are: Great Lakes ( `ins_116861`), Firstmark (`ins_116295`), Commonbond Firstmark Services (`ins_116950`), Nelnet (`ins_116528`), EdFinancial Services (`ins_116304`), Granite State (`ins_116308`), and Oklahoma Student Loan Authority (`ins_116945`). Firstmark (`ins_116295` ) will display as $0 if there is an autopay program in effect.
55
55
  attr_accessor :minimum_payment_amount
56
56
 
57
- # The due date for the next payment. The due date is `null` if a payment is not expected. A payment is not expected if `loan_status.type` is `deferment`, `in_school`, `consolidated`, `paid in full`, or `transferred`. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
57
+ # The due date for the next payment. The due date is `null` if a payment is not expected. A payment is not expected if `loan_status.type` is `deferment`, `in_school`, `consolidated`, `paid in full`, or `transferred`. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
58
58
  attr_accessor :next_payment_due_date
59
59
 
60
- # The date on which the loan was initially lent. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
60
+ # The date on which the loan was initially lent. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
61
61
  attr_accessor :origination_date
62
62
 
63
63
  # The original principal balance of the loan.
@@ -124,19 +124,19 @@ module Plaid
124
124
  {
125
125
  :'account_id' => :'String',
126
126
  :'account_number' => :'String',
127
- :'disbursement_dates' => :'Array<String>',
128
- :'expected_payoff_date' => :'String',
127
+ :'disbursement_dates' => :'Array<Date>',
128
+ :'expected_payoff_date' => :'Date',
129
129
  :'guarantor' => :'String',
130
130
  :'interest_rate_percentage' => :'Float',
131
131
  :'is_overdue' => :'Boolean',
132
132
  :'last_payment_amount' => :'Float',
133
- :'last_payment_date' => :'String',
134
- :'last_statement_issue_date' => :'String',
133
+ :'last_payment_date' => :'Date',
134
+ :'last_statement_issue_date' => :'Date',
135
135
  :'loan_name' => :'String',
136
136
  :'loan_status' => :'StudentLoanStatus',
137
137
  :'minimum_payment_amount' => :'Float',
138
- :'next_payment_due_date' => :'String',
139
- :'origination_date' => :'String',
138
+ :'next_payment_due_date' => :'Date',
139
+ :'origination_date' => :'Date',
140
140
  :'origination_principal_amount' => :'Float',
141
141
  :'outstanding_interest_amount' => :'Float',
142
142
  :'payment_reference_number' => :'String',
@@ -296,6 +296,22 @@ module Plaid
296
296
  invalid_properties.push('invalid value for "interest_rate_percentage", interest_rate_percentage cannot be nil.')
297
297
  end
298
298
 
299
+ if @loan_status.nil?
300
+ invalid_properties.push('invalid value for "loan_status", loan_status cannot be nil.')
301
+ end
302
+
303
+ if @pslf_status.nil?
304
+ invalid_properties.push('invalid value for "pslf_status", pslf_status cannot be nil.')
305
+ end
306
+
307
+ if @repayment_plan.nil?
308
+ invalid_properties.push('invalid value for "repayment_plan", repayment_plan cannot be nil.')
309
+ end
310
+
311
+ if @servicer_address.nil?
312
+ invalid_properties.push('invalid value for "servicer_address", servicer_address cannot be nil.')
313
+ end
314
+
299
315
  invalid_properties
300
316
  end
301
317
 
@@ -303,6 +319,10 @@ module Plaid
303
319
  # @return true if the model is valid
304
320
  def valid?
305
321
  return false if @interest_rate_percentage.nil?
322
+ return false if @loan_status.nil?
323
+ return false if @pslf_status.nil?
324
+ return false if @repayment_plan.nil?
325
+ return false if @servicer_address.nil?
306
326
  true
307
327
  end
308
328
 
@@ -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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -16,7 +16,7 @@ require 'time'
16
16
  module Plaid
17
17
  # An object representing the status of the student loan
18
18
  class StudentLoanStatus
19
- # The date until which the loan will be in its current status. Dates are returned in an ISO 8601 format (YYYY-MM-DD).
19
+ # The date until which the loan will be in its current status. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD).
20
20
  attr_accessor :end_date
21
21
 
22
22
  # The status type of the student loan
@@ -60,7 +60,7 @@ module Plaid
60
60
  # Attribute type mapping.
61
61
  def self.openapi_types
62
62
  {
63
- :'end_date' => :'String',
63
+ :'end_date' => :'Date',
64
64
  :'type' => :'String'
65
65
  }
66
66
  end
@@ -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.16.6
6
+ The version of the OpenAPI document: 2020-09-14_1.33.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.0
@@ -107,7 +107,7 @@ module Plaid
107
107
  # Check to see if the all the properties in the model are valid
108
108
  # @return true if the model is valid
109
109
  def valid?
110
- type_validator = EnumAttributeValidator.new('String', ["extended graduated", "extended standard", "graduated", "income-contingent repayment", "income-based repayment", "interest-only", "other", "pay as you earn", "revised pay as you earn", "standard"])
110
+ type_validator = EnumAttributeValidator.new('String', ["extended graduated", "extended standard", "graduated", "income-contingent repayment", "income-based repayment", "interest-only", "other", "pay as you earn", "revised pay as you earn", "standard", "null"])
111
111
  return false unless type_validator.valid?(@type)
112
112
  true
113
113
  end
@@ -115,7 +115,7 @@ module Plaid
115
115
  # Custom attribute writer method checking allowed values (enum).
116
116
  # @param [Object] type Object to be assigned
117
117
  def type=(type)
118
- validator = EnumAttributeValidator.new('String', ["extended graduated", "extended standard", "graduated", "income-contingent repayment", "income-based repayment", "interest-only", "other", "pay as you earn", "revised pay as you earn", "standard"])
118
+ validator = EnumAttributeValidator.new('String', ["extended graduated", "extended standard", "graduated", "income-contingent repayment", "income-based repayment", "interest-only", "other", "pay as you earn", "revised pay as you earn", "standard", "null"])
119
119
  unless validator.valid?(type)
120
120
  fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
121
121
  end