plaid 13.2.0 → 17.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1087) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1374 -1
  3. data/CONTRIBUTING.md +12 -60
  4. data/Dockerfile +14 -0
  5. data/Gemfile.lock +51 -44
  6. data/LICENSE.txt +1 -1
  7. data/Makefile +11 -0
  8. data/README.md +174 -101
  9. data/Rakefile +8 -79
  10. data/UPGRADING.md +4 -0
  11. data/lib/plaid/api/plaid_api.rb +12307 -0
  12. data/lib/plaid/api_client.rb +393 -0
  13. data/lib/plaid/api_error.rb +57 -0
  14. data/lib/plaid/configuration.rb +298 -0
  15. data/lib/plaid/models/account_access.rb +248 -0
  16. data/lib/plaid/models/account_assets.rb +428 -0
  17. data/lib/plaid/models/account_assets_all_of.rb +265 -0
  18. data/lib/plaid/models/account_balance.rb +276 -0
  19. data/lib/plaid/models/account_base.rb +344 -0
  20. data/lib/plaid/models/account_filter.rb +258 -0
  21. data/lib/plaid/models/account_filters_response.rb +246 -0
  22. data/lib/plaid/models/account_identity.rb +369 -0
  23. data/lib/plaid/models/account_identity_all_of.rb +226 -0
  24. data/lib/plaid/models/account_identity_match_score.rb +392 -0
  25. data/lib/plaid/models/account_identity_match_score_all_of.rb +249 -0
  26. data/lib/plaid/models/account_product_access.rb +249 -0
  27. data/lib/plaid/models/account_product_access_nullable.rb +256 -0
  28. data/lib/plaid/models/account_selection_cardinality.rb +40 -0
  29. data/lib/plaid/models/account_subtype.rb +111 -0
  30. data/lib/plaid/models/account_type.rb +43 -0
  31. data/lib/plaid/models/accounts_balance_get_request.rb +254 -0
  32. data/lib/plaid/models/accounts_balance_get_request_options.rb +232 -0
  33. data/lib/plaid/models/accounts_get_request.rb +254 -0
  34. data/lib/plaid/models/accounts_get_request_options.rb +222 -0
  35. data/lib/plaid/models/accounts_get_response.rb +256 -0
  36. data/lib/plaid/models/ach_class.rb +41 -0
  37. data/lib/plaid/models/address.rb +234 -0
  38. data/lib/plaid/models/address_data.rb +273 -0
  39. data/lib/plaid/models/address_data_nullable.rb +280 -0
  40. data/lib/plaid/models/address_match_score.rb +232 -0
  41. data/lib/plaid/models/address_nullable.rb +241 -0
  42. data/lib/plaid/models/address_purpose_label.rb +40 -0
  43. data/lib/plaid/models/application.rb +365 -0
  44. data/lib/plaid/models/application_get_request.rb +255 -0
  45. data/lib/plaid/models/application_get_response.rb +239 -0
  46. data/lib/plaid/models/apr.rb +296 -0
  47. data/lib/plaid/models/asset.rb +280 -0
  48. data/lib/plaid/models/asset_detail.rb +347 -0
  49. data/lib/plaid/models/asset_holder.rb +224 -0
  50. data/lib/plaid/models/asset_holder_name.rb +225 -0
  51. data/lib/plaid/models/asset_owner.rb +221 -0
  52. data/lib/plaid/models/asset_owners.rb +227 -0
  53. data/lib/plaid/models/asset_report.rb +297 -0
  54. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +255 -0
  55. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +240 -0
  56. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +245 -0
  57. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +245 -0
  58. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +240 -0
  59. data/lib/plaid/models/asset_report_create_request.rb +323 -0
  60. data/lib/plaid/models/asset_report_create_request_options.rb +264 -0
  61. data/lib/plaid/models/asset_report_create_response.rb +255 -0
  62. data/lib/plaid/models/asset_report_filter_request.rb +262 -0
  63. data/lib/plaid/models/asset_report_filter_response.rb +255 -0
  64. data/lib/plaid/models/asset_report_freddie.rb +252 -0
  65. data/lib/plaid/models/asset_report_freddie_get_request.rb +245 -0
  66. data/lib/plaid/models/asset_report_freddie_get_response.rb +254 -0
  67. data/lib/plaid/models/asset_report_get_request.rb +278 -0
  68. data/lib/plaid/models/asset_report_get_request_options.rb +247 -0
  69. data/lib/plaid/models/asset_report_get_response.rb +256 -0
  70. data/lib/plaid/models/asset_report_item.rb +287 -0
  71. data/lib/plaid/models/asset_report_pdf_get_request.rb +254 -0
  72. data/lib/plaid/models/asset_report_pdf_get_request_options.rb +247 -0
  73. data/lib/plaid/models/asset_report_refresh_request.rb +291 -0
  74. data/lib/plaid/models/asset_report_refresh_request_options.rb +241 -0
  75. data/lib/plaid/models/asset_report_refresh_response.rb +255 -0
  76. data/lib/plaid/models/asset_report_remove_request.rb +245 -0
  77. data/lib/plaid/models/asset_report_remove_response.rb +240 -0
  78. data/lib/plaid/models/asset_report_transaction.rb +487 -0
  79. data/lib/plaid/models/asset_report_transaction_all_of.rb +230 -0
  80. data/lib/plaid/models/asset_report_user.rb +287 -0
  81. data/lib/plaid/models/asset_transaction.rb +241 -0
  82. data/lib/plaid/models/asset_transaction_category_type.rb +144 -0
  83. data/lib/plaid/models/asset_transaction_description.rb +225 -0
  84. data/lib/plaid/models/asset_transaction_detail.rb +327 -0
  85. data/lib/plaid/models/asset_transaction_type.rb +39 -0
  86. data/lib/plaid/models/asset_transactions.rb +226 -0
  87. data/lib/plaid/models/asset_type.rb +42 -0
  88. data/lib/plaid/models/assets.rb +227 -0
  89. data/lib/plaid/models/assets_error_webhook.rb +265 -0
  90. data/lib/plaid/models/assets_product_ready_webhook.rb +255 -0
  91. data/lib/plaid/models/auth_get_numbers.rb +278 -0
  92. data/lib/plaid/models/auth_get_request.rb +254 -0
  93. data/lib/plaid/models/auth_get_request_options.rb +222 -0
  94. data/lib/plaid/models/auth_get_response.rb +270 -0
  95. data/lib/plaid/models/auth_metadata.rb +220 -0
  96. data/lib/plaid/models/auth_supported_methods.rb +255 -0
  97. data/lib/plaid/models/automatically_verified_webhook.rb +284 -0
  98. data/lib/plaid/models/bank_initiated_return_risk.rb +300 -0
  99. data/lib/plaid/models/bank_transfer.rb +453 -0
  100. data/lib/plaid/models/bank_transfer_balance.rb +240 -0
  101. data/lib/plaid/models/bank_transfer_balance_get_request.rb +241 -0
  102. data/lib/plaid/models/bank_transfer_balance_get_response.rb +250 -0
  103. data/lib/plaid/models/bank_transfer_cancel_request.rb +245 -0
  104. data/lib/plaid/models/bank_transfer_cancel_response.rb +225 -0
  105. data/lib/plaid/models/bank_transfer_create_request.rb +474 -0
  106. data/lib/plaid/models/bank_transfer_create_response.rb +239 -0
  107. data/lib/plaid/models/bank_transfer_direction.rb +40 -0
  108. data/lib/plaid/models/bank_transfer_event.rb +380 -0
  109. data/lib/plaid/models/bank_transfer_event_list_bank_transfer_type.rb +40 -0
  110. data/lib/plaid/models/bank_transfer_event_list_direction.rb +40 -0
  111. data/lib/plaid/models/bank_transfer_event_list_request.rb +386 -0
  112. data/lib/plaid/models/bank_transfer_event_list_response.rb +241 -0
  113. data/lib/plaid/models/bank_transfer_event_sync_request.rb +305 -0
  114. data/lib/plaid/models/bank_transfer_event_sync_response.rb +241 -0
  115. data/lib/plaid/models/bank_transfer_event_type.rb +42 -0
  116. data/lib/plaid/models/bank_transfer_failure.rb +231 -0
  117. data/lib/plaid/models/bank_transfer_get_request.rb +245 -0
  118. data/lib/plaid/models/bank_transfer_get_response.rb +239 -0
  119. data/lib/plaid/models/bank_transfer_list_request.rb +340 -0
  120. data/lib/plaid/models/bank_transfer_list_response.rb +241 -0
  121. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +285 -0
  122. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +255 -0
  123. data/lib/plaid/models/bank_transfer_network.rb +40 -0
  124. data/lib/plaid/models/bank_transfer_status.rb +42 -0
  125. data/lib/plaid/models/bank_transfer_sweep.rb +270 -0
  126. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +245 -0
  127. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +239 -0
  128. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +302 -0
  129. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +241 -0
  130. data/lib/plaid/models/bank_transfer_type.rb +39 -0
  131. data/lib/plaid/models/bank_transfer_user.rb +246 -0
  132. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +254 -0
  133. data/lib/plaid/models/categories_get_response.rb +242 -0
  134. data/lib/plaid/models/category.rb +257 -0
  135. data/lib/plaid/models/cause.rb +342 -0
  136. data/lib/plaid/models/cause_all_of.rb +219 -0
  137. data/lib/plaid/models/client_provided_enhanced_transaction.rb +284 -0
  138. data/lib/plaid/models/client_provided_enriched_transaction.rb +293 -0
  139. data/lib/plaid/models/client_provided_raw_transaction.rb +270 -0
  140. data/lib/plaid/models/client_provided_transaction.rb +279 -0
  141. data/lib/plaid/models/connected_application.rb +309 -0
  142. data/lib/plaid/models/counterparty.rb +239 -0
  143. data/lib/plaid/models/counterparty_type.rb +41 -0
  144. data/lib/plaid/models/country_code.rb +53 -0
  145. data/lib/plaid/models/credit1099.rb +772 -0
  146. data/lib/plaid/models/credit1099_filer.rb +252 -0
  147. data/lib/plaid/models/credit1099_payer.rb +252 -0
  148. data/lib/plaid/models/credit1099_recipient.rb +274 -0
  149. data/lib/plaid/models/credit_account_subtype.rb +40 -0
  150. data/lib/plaid/models/credit_audit_copy_token_create_request.rb +247 -0
  151. data/lib/plaid/models/credit_audit_copy_token_create_response.rb +240 -0
  152. data/lib/plaid/models/credit_audit_copy_token_remove_request.rb +245 -0
  153. data/lib/plaid/models/credit_audit_copy_token_remove_response.rb +240 -0
  154. data/lib/plaid/models/credit_bank_income.rb +273 -0
  155. data/lib/plaid/models/credit_bank_income_account.rb +281 -0
  156. data/lib/plaid/models/credit_bank_income_account_type.rb +38 -0
  157. data/lib/plaid/models/credit_bank_income_category.rb +51 -0
  158. data/lib/plaid/models/credit_bank_income_cause.rb +259 -0
  159. data/lib/plaid/models/credit_bank_income_error_type.rb +53 -0
  160. data/lib/plaid/models/credit_bank_income_get_request.rb +249 -0
  161. data/lib/plaid/models/credit_bank_income_get_request_options.rb +222 -0
  162. data/lib/plaid/models/credit_bank_income_get_response.rb +236 -0
  163. data/lib/plaid/models/credit_bank_income_historical_summary.rb +273 -0
  164. data/lib/plaid/models/credit_bank_income_item.rb +274 -0
  165. data/lib/plaid/models/credit_bank_income_pay_frequency.rb +42 -0
  166. data/lib/plaid/models/credit_bank_income_pdf_get_request.rb +245 -0
  167. data/lib/plaid/models/credit_bank_income_refresh_request.rb +254 -0
  168. data/lib/plaid/models/credit_bank_income_refresh_request_options.rb +230 -0
  169. data/lib/plaid/models/credit_bank_income_refresh_response.rb +225 -0
  170. data/lib/plaid/models/credit_bank_income_source.rb +309 -0
  171. data/lib/plaid/models/credit_bank_income_summary.rb +303 -0
  172. data/lib/plaid/models/credit_bank_income_transaction.rb +304 -0
  173. data/lib/plaid/models/credit_bank_income_warning.rb +237 -0
  174. data/lib/plaid/models/credit_bank_income_warning_code.rb +41 -0
  175. data/lib/plaid/models/credit_bank_income_warning_type.rb +38 -0
  176. data/lib/plaid/models/credit_card_liability.rb +315 -0
  177. data/lib/plaid/models/credit_category.rb +240 -0
  178. data/lib/plaid/models/credit_document_metadata.rb +258 -0
  179. data/lib/plaid/models/credit_employer_verification.rb +221 -0
  180. data/lib/plaid/models/credit_employment_get_request.rb +245 -0
  181. data/lib/plaid/models/credit_employment_get_response.rb +242 -0
  182. data/lib/plaid/models/credit_employment_item.rb +251 -0
  183. data/lib/plaid/models/credit_employment_verification.rb +315 -0
  184. data/lib/plaid/models/credit_filter.rb +227 -0
  185. data/lib/plaid/models/credit_pay_stub.rb +319 -0
  186. data/lib/plaid/models/credit_pay_stub_address.rb +265 -0
  187. data/lib/plaid/models/credit_pay_stub_deductions.rb +240 -0
  188. data/lib/plaid/models/credit_pay_stub_earnings.rb +240 -0
  189. data/lib/plaid/models/credit_pay_stub_employee.rb +260 -0
  190. data/lib/plaid/models/credit_pay_stub_employer.rb +235 -0
  191. data/lib/plaid/models/credit_pay_stub_net_pay.rb +265 -0
  192. data/lib/plaid/models/credit_payroll_income_get_request.rb +240 -0
  193. data/lib/plaid/models/credit_payroll_income_get_response.rb +252 -0
  194. data/lib/plaid/models/credit_payroll_income_precheck_request.rb +282 -0
  195. data/lib/plaid/models/credit_payroll_income_precheck_response.rb +239 -0
  196. data/lib/plaid/models/credit_payroll_income_refresh_request.rb +240 -0
  197. data/lib/plaid/models/credit_payroll_income_refresh_response.rb +240 -0
  198. data/lib/plaid/models/credit_payroll_income_risk_signals_get_request.rb +240 -0
  199. data/lib/plaid/models/credit_payroll_income_risk_signals_get_response.rb +252 -0
  200. data/lib/plaid/models/credit_platform_ids.rb +243 -0
  201. data/lib/plaid/models/credit_relay_create_request.rb +273 -0
  202. data/lib/plaid/models/credit_relay_create_response.rb +240 -0
  203. data/lib/plaid/models/credit_relay_get_request.rb +259 -0
  204. data/lib/plaid/models/credit_relay_refresh_request.rb +270 -0
  205. data/lib/plaid/models/credit_relay_refresh_response.rb +249 -0
  206. data/lib/plaid/models/credit_relay_remove_request.rb +245 -0
  207. data/lib/plaid/models/credit_relay_remove_response.rb +240 -0
  208. data/lib/plaid/models/credit_session.rb +251 -0
  209. data/lib/plaid/models/credit_session_bank_income_result.rb +239 -0
  210. data/lib/plaid/models/credit_session_bank_income_status.rb +40 -0
  211. data/lib/plaid/models/credit_session_document_income_result.rb +240 -0
  212. data/lib/plaid/models/credit_session_error.rb +251 -0
  213. data/lib/plaid/models/credit_session_item_add_result.rb +240 -0
  214. data/lib/plaid/models/credit_session_payroll_income_result.rb +250 -0
  215. data/lib/plaid/models/credit_session_results.rb +256 -0
  216. data/lib/plaid/models/credit_sessions_get_request.rb +245 -0
  217. data/lib/plaid/models/credit_sessions_get_response.rb +237 -0
  218. data/lib/plaid/models/credit_w2.rb +486 -0
  219. data/lib/plaid/models/customer_initiated_return_risk.rb +300 -0
  220. data/lib/plaid/models/dashboard_user.rb +269 -0
  221. data/lib/plaid/models/dashboard_user_get_request.rb +245 -0
  222. data/lib/plaid/models/dashboard_user_get_response.rb +284 -0
  223. data/lib/plaid/models/dashboard_user_list_request.rb +241 -0
  224. data/lib/plaid/models/dashboard_user_list_response.rb +253 -0
  225. data/lib/plaid/models/dashboard_user_status.rb +40 -0
  226. data/lib/plaid/models/date_range.rb +240 -0
  227. data/lib/plaid/models/deductions.rb +262 -0
  228. data/lib/plaid/models/deductions_breakdown.rb +265 -0
  229. data/lib/plaid/models/deductions_total.rb +254 -0
  230. data/lib/plaid/models/default_update_webhook.rb +294 -0
  231. data/lib/plaid/models/deposit_switch_address_data.rb +285 -0
  232. data/lib/plaid/models/deposit_switch_alt_create_request.rb +312 -0
  233. data/lib/plaid/models/deposit_switch_alt_create_response.rb +240 -0
  234. data/lib/plaid/models/deposit_switch_create_request.rb +314 -0
  235. data/lib/plaid/models/deposit_switch_create_request_options.rb +251 -0
  236. data/lib/plaid/models/deposit_switch_create_response.rb +240 -0
  237. data/lib/plaid/models/deposit_switch_get_request.rb +245 -0
  238. data/lib/plaid/models/deposit_switch_get_response.rb +448 -0
  239. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +259 -0
  240. data/lib/plaid/models/deposit_switch_target_account.rb +304 -0
  241. data/lib/plaid/models/deposit_switch_target_user.rb +289 -0
  242. data/lib/plaid/models/deposit_switch_token_create_request.rb +245 -0
  243. data/lib/plaid/models/deposit_switch_token_create_response.rb +255 -0
  244. data/lib/plaid/models/depository_account_subtype.rb +47 -0
  245. data/lib/plaid/models/depository_filter.rb +227 -0
  246. data/lib/plaid/models/disbursement_limits.rb +255 -0
  247. data/lib/plaid/models/distribution_breakdown.rb +296 -0
  248. data/lib/plaid/models/doc_type.rb +49 -0
  249. data/lib/plaid/models/document_analysis.rb +248 -0
  250. data/lib/plaid/models/document_authenticity_match_code.rb +41 -0
  251. data/lib/plaid/models/document_date_of_birth_match_code.rb +40 -0
  252. data/lib/plaid/models/document_metadata.rb +249 -0
  253. data/lib/plaid/models/document_name_match_code.rb +40 -0
  254. data/lib/plaid/models/document_risk_signal.rb +297 -0
  255. data/lib/plaid/models/document_risk_signal_institution_metadata.rb +225 -0
  256. data/lib/plaid/models/document_risk_signals_object.rb +255 -0
  257. data/lib/plaid/models/document_risk_summary.rb +221 -0
  258. data/lib/plaid/models/document_status.rb +40 -0
  259. data/lib/plaid/models/documentary_verification.rb +242 -0
  260. data/lib/plaid/models/documentary_verification_document.rb +277 -0
  261. data/lib/plaid/models/earnings.rb +252 -0
  262. data/lib/plaid/models/earnings_breakdown.rb +297 -0
  263. data/lib/plaid/models/earnings_breakdown_canonical_description.rb +47 -0
  264. data/lib/plaid/models/earnings_total.rb +283 -0
  265. data/lib/plaid/models/email.rb +289 -0
  266. data/lib/plaid/models/email_address_match_score.rb +221 -0
  267. data/lib/plaid/models/employee.rb +255 -0
  268. data/lib/plaid/models/employee_income_summary_field_string.rb +246 -0
  269. data/lib/plaid/models/employer.rb +265 -0
  270. data/lib/plaid/models/employer_income_summary_field_string.rb +246 -0
  271. data/lib/plaid/models/employer_verification.rb +221 -0
  272. data/lib/plaid/models/employers_search_request.rb +262 -0
  273. data/lib/plaid/models/employers_search_response.rb +242 -0
  274. data/lib/plaid/models/employment_details.rb +230 -0
  275. data/lib/plaid/models/employment_verification.rb +271 -0
  276. data/lib/plaid/models/employment_verification_get_request.rb +245 -0
  277. data/lib/plaid/models/employment_verification_get_response.rb +242 -0
  278. data/lib/plaid/models/employment_verification_status.rb +40 -0
  279. data/lib/plaid/models/enhancements.rb +342 -0
  280. data/lib/plaid/models/enrich_transaction_direction.rb +39 -0
  281. data/lib/plaid/models/enrichments.rb +342 -0
  282. data/lib/plaid/models/entity_document.rb +260 -0
  283. data/lib/plaid/models/entity_document_type.rb +43 -0
  284. data/lib/plaid/models/entity_screening_hit_analysis.rb +279 -0
  285. data/lib/plaid/models/entity_screening_hit_data.rb +282 -0
  286. data/lib/plaid/models/entity_screening_hit_documents_items.rb +228 -0
  287. data/lib/plaid/models/entity_screening_hit_emails.rb +225 -0
  288. data/lib/plaid/models/entity_screening_hit_emails_items.rb +228 -0
  289. data/lib/plaid/models/entity_screening_hit_names.rb +254 -0
  290. data/lib/plaid/models/entity_screening_hit_names_items.rb +228 -0
  291. data/lib/plaid/models/entity_screening_hit_phone_numbers.rb +239 -0
  292. data/lib/plaid/models/entity_screening_hit_urls.rb +225 -0
  293. data/lib/plaid/models/entity_screening_hit_urls_items.rb +228 -0
  294. data/lib/plaid/models/entity_screening_hits_phone_number_items.rb +228 -0
  295. data/lib/plaid/models/entity_screening_status_updated_webhook.rb +265 -0
  296. data/lib/plaid/models/entity_watchlist_code.rb +50 -0
  297. data/lib/plaid/models/entity_watchlist_program.rb +363 -0
  298. data/lib/plaid/models/entity_watchlist_screening.rb +306 -0
  299. data/lib/plaid/models/entity_watchlist_screening_hit.rb +351 -0
  300. data/lib/plaid/models/entity_watchlist_screening_review.rb +301 -0
  301. data/lib/plaid/models/entity_watchlist_screening_search_terms.rb +365 -0
  302. data/lib/plaid/models/entity_watchlist_search_terms.rb +350 -0
  303. data/lib/plaid/models/expiration_date.rb +40 -0
  304. data/lib/plaid/models/external_payment_initiation_consent_options.rb +296 -0
  305. data/lib/plaid/models/external_payment_options.rb +306 -0
  306. data/lib/plaid/models/external_payment_refund_details.rb +246 -0
  307. data/lib/plaid/models/external_payment_schedule_base.rb +261 -0
  308. data/lib/plaid/models/external_payment_schedule_get.rb +283 -0
  309. data/lib/plaid/models/external_payment_schedule_request.rb +283 -0
  310. data/lib/plaid/models/fdx_content_types.rb +43 -0
  311. data/lib/plaid/models/fdx_hateoas_link.rb +256 -0
  312. data/lib/plaid/models/fdx_hateoas_link_action.rb +42 -0
  313. data/lib/plaid/models/fdx_notification.rb +332 -0
  314. data/lib/plaid/models/fdx_notification_category.rb +42 -0
  315. data/lib/plaid/models/fdx_notification_payload.rb +238 -0
  316. data/lib/plaid/models/fdx_notification_payload_id_type.rb +42 -0
  317. data/lib/plaid/models/fdx_notification_priority.rb +40 -0
  318. data/lib/plaid/models/fdx_notification_severity.rb +42 -0
  319. data/lib/plaid/models/fdx_notification_type.rb +43 -0
  320. data/lib/plaid/models/fdx_party.rb +288 -0
  321. data/lib/plaid/models/fdx_party_registry.rb +41 -0
  322. data/lib/plaid/models/fdx_party_type.rb +43 -0
  323. data/lib/plaid/models/fdxfi_attribute.rb +230 -0
  324. data/lib/plaid/models/form1099_type.rb +40 -0
  325. data/lib/plaid/models/generic_screening_hit_location_items.rb +228 -0
  326. data/lib/plaid/models/health_incident.rb +268 -0
  327. data/lib/plaid/models/historical_balance.rb +262 -0
  328. data/lib/plaid/models/historical_update_webhook.rb +294 -0
  329. data/lib/plaid/models/holding.rb +340 -0
  330. data/lib/plaid/models/holdings_default_update_webhook.rb +309 -0
  331. data/lib/plaid/models/holdings_override.rb +289 -0
  332. data/lib/plaid/models/id_number_type.rb +72 -0
  333. data/lib/plaid/models/identity_default_update_webhook.rb +296 -0
  334. data/lib/plaid/models/identity_get_request.rb +254 -0
  335. data/lib/plaid/models/identity_get_request_options.rb +222 -0
  336. data/lib/plaid/models/identity_get_response.rb +256 -0
  337. data/lib/plaid/models/identity_match_request.rb +263 -0
  338. data/lib/plaid/models/identity_match_request_options.rb +222 -0
  339. data/lib/plaid/models/identity_match_response.rb +256 -0
  340. data/lib/plaid/models/identity_match_user.rb +253 -0
  341. data/lib/plaid/models/identity_update_types.rb +41 -0
  342. data/lib/plaid/models/identity_verification.rb +396 -0
  343. data/lib/plaid/models/identity_verification_create_request.rb +302 -0
  344. data/lib/plaid/models/identity_verification_create_response.rb +411 -0
  345. data/lib/plaid/models/identity_verification_get_request.rb +245 -0
  346. data/lib/plaid/models/identity_verification_get_response.rb +411 -0
  347. data/lib/plaid/models/identity_verification_list_request.rb +292 -0
  348. data/lib/plaid/models/identity_verification_list_response.rb +253 -0
  349. data/lib/plaid/models/identity_verification_request_user.rb +307 -0
  350. data/lib/plaid/models/identity_verification_retried_webhook.rb +265 -0
  351. data/lib/plaid/models/identity_verification_retry_request.rb +305 -0
  352. data/lib/plaid/models/identity_verification_retry_request_steps_object.rb +270 -0
  353. data/lib/plaid/models/identity_verification_retry_response.rb +411 -0
  354. data/lib/plaid/models/identity_verification_status.rb +43 -0
  355. data/lib/plaid/models/identity_verification_status_updated_webhook.rb +265 -0
  356. data/lib/plaid/models/identity_verification_step_status.rb +48 -0
  357. data/lib/plaid/models/identity_verification_step_summary.rb +308 -0
  358. data/lib/plaid/models/identity_verification_step_updated_webhook.rb +265 -0
  359. data/lib/plaid/models/identity_verification_template_reference.rb +240 -0
  360. data/lib/plaid/models/identity_verification_user_address.rb +301 -0
  361. data/lib/plaid/models/identity_verification_user_data.rb +284 -0
  362. data/lib/plaid/models/image_quality.rb +40 -0
  363. data/lib/plaid/models/incident_update.rb +274 -0
  364. data/lib/plaid/models/income_breakdown.rb +253 -0
  365. data/lib/plaid/models/income_breakdown_type.rb +41 -0
  366. data/lib/plaid/models/income_override.rb +222 -0
  367. data/lib/plaid/models/income_summary.rb +300 -0
  368. data/lib/plaid/models/income_summary_field_number.rb +239 -0
  369. data/lib/plaid/models/income_summary_field_string.rb +239 -0
  370. data/lib/plaid/models/income_verification_create_request.rb +264 -0
  371. data/lib/plaid/models/income_verification_create_request_options.rb +222 -0
  372. data/lib/plaid/models/income_verification_create_response.rb +240 -0
  373. data/lib/plaid/models/income_verification_documents_download_request.rb +263 -0
  374. data/lib/plaid/models/income_verification_payroll_flow_type.rb +39 -0
  375. data/lib/plaid/models/income_verification_paystubs_get_request.rb +252 -0
  376. data/lib/plaid/models/income_verification_paystubs_get_response.rb +263 -0
  377. data/lib/plaid/models/income_verification_precheck_confidence.rb +40 -0
  378. data/lib/plaid/models/income_verification_precheck_employer.rb +253 -0
  379. data/lib/plaid/models/income_verification_precheck_employer_address.rb +267 -0
  380. data/lib/plaid/models/income_verification_precheck_employer_address_data.rb +260 -0
  381. data/lib/plaid/models/income_verification_precheck_military_info.rb +232 -0
  382. data/lib/plaid/models/income_verification_precheck_payroll_institution.rb +221 -0
  383. data/lib/plaid/models/income_verification_precheck_request.rb +291 -0
  384. data/lib/plaid/models/income_verification_precheck_response.rb +254 -0
  385. data/lib/plaid/models/income_verification_precheck_user.rb +253 -0
  386. data/lib/plaid/models/income_verification_source_type.rb +39 -0
  387. data/lib/plaid/models/income_verification_status_webhook.rb +294 -0
  388. data/lib/plaid/models/income_verification_taxforms_get_request.rb +252 -0
  389. data/lib/plaid/models/income_verification_taxforms_get_response.rb +263 -0
  390. data/lib/plaid/models/income_verification_webhook_status.rb +224 -0
  391. data/lib/plaid/models/individual_name.rb +240 -0
  392. data/lib/plaid/models/individual_screening_hit_names.rb +254 -0
  393. data/lib/plaid/models/individual_watchlist_code.rb +59 -0
  394. data/lib/plaid/models/individual_watchlist_program.rb +363 -0
  395. data/lib/plaid/models/inflow_model.rb +285 -0
  396. data/lib/plaid/models/initial_update_webhook.rb +295 -0
  397. data/lib/plaid/models/institution.rb +369 -0
  398. data/lib/plaid/models/institution_status.rb +303 -0
  399. data/lib/plaid/models/institutions_get_by_id_request.rb +292 -0
  400. data/lib/plaid/models/institutions_get_by_id_request_options.rb +258 -0
  401. data/lib/plaid/models/institutions_get_by_id_response.rb +239 -0
  402. data/lib/plaid/models/institutions_get_request.rb +358 -0
  403. data/lib/plaid/models/institutions_get_request_options.rb +298 -0
  404. data/lib/plaid/models/institutions_get_response.rb +257 -0
  405. data/lib/plaid/models/institutions_search_account_filter.rb +254 -0
  406. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +232 -0
  407. data/lib/plaid/models/institutions_search_request.rb +322 -0
  408. data/lib/plaid/models/institutions_search_request_options.rb +267 -0
  409. data/lib/plaid/models/institutions_search_response.rb +242 -0
  410. data/lib/plaid/models/investment_account_subtype.rb +87 -0
  411. data/lib/plaid/models/investment_filter.rb +227 -0
  412. data/lib/plaid/models/investment_holdings_get_request_options.rb +222 -0
  413. data/lib/plaid/models/investment_transaction.rb +398 -0
  414. data/lib/plaid/models/investment_transaction_subtype.rb +85 -0
  415. data/lib/plaid/models/investment_transaction_type.rb +43 -0
  416. data/lib/plaid/models/investments_default_update_webhook.rb +309 -0
  417. data/lib/plaid/models/investments_holdings_get_request.rb +254 -0
  418. data/lib/plaid/models/investments_holdings_get_response.rb +290 -0
  419. data/lib/plaid/models/investments_transactions_get_request.rb +284 -0
  420. data/lib/plaid/models/investments_transactions_get_request_options.rb +289 -0
  421. data/lib/plaid/models/investments_transactions_get_response.rb +305 -0
  422. data/lib/plaid/models/investments_transactions_override.rb +319 -0
  423. data/lib/plaid/models/issuing_country.rb +39 -0
  424. data/lib/plaid/models/item.rb +375 -0
  425. data/lib/plaid/models/item_access_token_invalidate_request.rb +245 -0
  426. data/lib/plaid/models/item_access_token_invalidate_response.rb +240 -0
  427. data/lib/plaid/models/item_application_list_request.rb +241 -0
  428. data/lib/plaid/models/item_application_list_response.rb +237 -0
  429. data/lib/plaid/models/item_application_list_user_auth.rb +232 -0
  430. data/lib/plaid/models/item_application_scopes_update_request.rb +298 -0
  431. data/lib/plaid/models/item_application_scopes_update_response.rb +225 -0
  432. data/lib/plaid/models/item_error_webhook.rb +279 -0
  433. data/lib/plaid/models/item_get_request.rb +245 -0
  434. data/lib/plaid/models/item_get_response.rb +249 -0
  435. data/lib/plaid/models/item_import_request.rb +291 -0
  436. data/lib/plaid/models/item_import_request_options.rb +220 -0
  437. data/lib/plaid/models/item_import_request_user_auth.rb +240 -0
  438. data/lib/plaid/models/item_import_response.rb +240 -0
  439. data/lib/plaid/models/item_product_ready_webhook.rb +279 -0
  440. data/lib/plaid/models/item_public_token_create_request.rb +245 -0
  441. data/lib/plaid/models/item_public_token_create_response.rb +249 -0
  442. data/lib/plaid/models/item_public_token_exchange_request.rb +245 -0
  443. data/lib/plaid/models/item_public_token_exchange_response.rb +255 -0
  444. data/lib/plaid/models/item_remove_request.rb +245 -0
  445. data/lib/plaid/models/item_remove_response.rb +225 -0
  446. data/lib/plaid/models/item_status.rb +240 -0
  447. data/lib/plaid/models/item_status_investments.rb +232 -0
  448. data/lib/plaid/models/item_status_last_webhook.rb +232 -0
  449. data/lib/plaid/models/item_status_nullable.rb +247 -0
  450. data/lib/plaid/models/item_status_transactions.rb +232 -0
  451. data/lib/plaid/models/item_webhook_update_request.rb +256 -0
  452. data/lib/plaid/models/item_webhook_update_response.rb +239 -0
  453. data/lib/plaid/models/jwk_public_key.rb +341 -0
  454. data/lib/plaid/models/jwt_header.rb +224 -0
  455. data/lib/plaid/models/kyc_check_address_summary.rb +252 -0
  456. data/lib/plaid/models/kyc_check_date_of_birth_summary.rb +224 -0
  457. data/lib/plaid/models/kyc_check_details.rb +295 -0
  458. data/lib/plaid/models/kyc_check_id_number_summary.rb +224 -0
  459. data/lib/plaid/models/kyc_check_name_summary.rb +224 -0
  460. data/lib/plaid/models/kyc_check_phone_summary.rb +224 -0
  461. data/lib/plaid/models/liabilities_default_update_webhook.rb +313 -0
  462. data/lib/plaid/models/liabilities_get_request.rb +254 -0
  463. data/lib/plaid/models/liabilities_get_request_options.rb +222 -0
  464. data/lib/plaid/models/liabilities_get_response.rb +270 -0
  465. data/lib/plaid/models/liabilities_object.rb +249 -0
  466. data/lib/plaid/models/liability_override.rb +566 -0
  467. data/lib/plaid/models/link_delivery_create_request.rb +274 -0
  468. data/lib/plaid/models/link_delivery_create_response.rb +255 -0
  469. data/lib/plaid/models/link_delivery_delivery_method.rb +39 -0
  470. data/lib/plaid/models/link_delivery_get_request.rb +245 -0
  471. data/lib/plaid/models/link_delivery_get_response.rb +277 -0
  472. data/lib/plaid/models/link_delivery_session_status.rb +41 -0
  473. data/lib/plaid/models/link_o_auth_correlation_id_exchange_request.rb +245 -0
  474. data/lib/plaid/models/link_o_auth_correlation_id_exchange_response.rb +240 -0
  475. data/lib/plaid/models/link_token_account_filters.rb +246 -0
  476. data/lib/plaid/models/link_token_create_credit_filter.rb +222 -0
  477. data/lib/plaid/models/link_token_create_depository_filter.rb +222 -0
  478. data/lib/plaid/models/link_token_create_institution_data.rb +220 -0
  479. data/lib/plaid/models/link_token_create_investment_filter.rb +222 -0
  480. data/lib/plaid/models/link_token_create_loan_filter.rb +222 -0
  481. data/lib/plaid/models/link_token_create_request.rb +505 -0
  482. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +246 -0
  483. data/lib/plaid/models/link_token_create_request_auth.rb +296 -0
  484. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +225 -0
  485. data/lib/plaid/models/link_token_create_request_identity_verification.rb +246 -0
  486. data/lib/plaid/models/link_token_create_request_income_verification.rb +294 -0
  487. data/lib/plaid/models/link_token_create_request_income_verification_bank_income.rb +233 -0
  488. data/lib/plaid/models/link_token_create_request_income_verification_payroll_income.rb +233 -0
  489. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +264 -0
  490. data/lib/plaid/models/link_token_create_request_transfer.rb +230 -0
  491. data/lib/plaid/models/link_token_create_request_update.rb +222 -0
  492. data/lib/plaid/models/link_token_create_request_user.rb +324 -0
  493. data/lib/plaid/models/link_token_create_request_user_stated_income_source.rb +267 -0
  494. data/lib/plaid/models/link_token_create_response.rb +255 -0
  495. data/lib/plaid/models/link_token_eu_config.rb +220 -0
  496. data/lib/plaid/models/link_token_get_metadata_response.rb +306 -0
  497. data/lib/plaid/models/link_token_get_request.rb +245 -0
  498. data/lib/plaid/models/link_token_get_response.rb +276 -0
  499. data/lib/plaid/models/link_token_investments.rb +220 -0
  500. data/lib/plaid/models/loan.rb +224 -0
  501. data/lib/plaid/models/loan_account_subtype.rb +49 -0
  502. data/lib/plaid/models/loan_filter.rb +227 -0
  503. data/lib/plaid/models/loan_identifier.rb +231 -0
  504. data/lib/plaid/models/loan_identifier_type.rb +39 -0
  505. data/lib/plaid/models/loan_identifiers.rb +224 -0
  506. data/lib/plaid/models/loans.rb +224 -0
  507. data/lib/plaid/models/location.rb +298 -0
  508. data/lib/plaid/models/match_summary.rb +224 -0
  509. data/lib/plaid/models/match_summary_code.rb +42 -0
  510. data/lib/plaid/models/meta.rb +311 -0
  511. data/lib/plaid/models/mfa.rb +285 -0
  512. data/lib/plaid/models/mortgage_interest_rate.rb +232 -0
  513. data/lib/plaid/models/mortgage_liability.rb +444 -0
  514. data/lib/plaid/models/mortgage_property_address.rb +265 -0
  515. data/lib/plaid/models/multi_document_risk_signal.rb +244 -0
  516. data/lib/plaid/models/name_match_score.rb +254 -0
  517. data/lib/plaid/models/net_pay.rb +274 -0
  518. data/lib/plaid/models/new_accounts_available_webhook.rb +259 -0
  519. data/lib/plaid/models/numbers.rb +290 -0
  520. data/lib/plaid/models/numbers_ach.rb +288 -0
  521. data/lib/plaid/models/numbers_ach_nullable.rb +295 -0
  522. data/lib/plaid/models/numbers_bacs.rb +255 -0
  523. data/lib/plaid/models/numbers_bacs_nullable.rb +262 -0
  524. data/lib/plaid/models/numbers_eft.rb +270 -0
  525. data/lib/plaid/models/numbers_eft_nullable.rb +277 -0
  526. data/lib/plaid/models/numbers_iban_nullable.rb +210 -0
  527. data/lib/plaid/models/numbers_international.rb +255 -0
  528. data/lib/plaid/models/numbers_international_iban.rb +300 -0
  529. data/lib/plaid/models/numbers_international_nullable.rb +262 -0
  530. data/lib/plaid/models/originator.rb +239 -0
  531. data/lib/plaid/models/override_account_type.rb +43 -0
  532. data/lib/plaid/models/override_accounts.rb +393 -0
  533. data/lib/plaid/models/owner.rb +278 -0
  534. data/lib/plaid/models/owner_override.rb +278 -0
  535. data/lib/plaid/models/ownership_type.rb +42 -0
  536. data/lib/plaid/models/parties.rb +226 -0
  537. data/lib/plaid/models/partner_customer_create_request.rb +398 -0
  538. data/lib/plaid/models/partner_customer_create_response.rb +229 -0
  539. data/lib/plaid/models/partner_customer_enable_request.rb +244 -0
  540. data/lib/plaid/models/partner_customer_enable_response.rb +230 -0
  541. data/lib/plaid/models/partner_customer_get_request.rb +244 -0
  542. data/lib/plaid/models/partner_customer_get_response.rb +229 -0
  543. data/lib/plaid/models/partner_customer_remove_request.rb +244 -0
  544. data/lib/plaid/models/partner_customer_remove_response.rb +220 -0
  545. data/lib/plaid/models/partner_end_customer.rb +237 -0
  546. data/lib/plaid/models/partner_end_customer_address.rb +256 -0
  547. data/lib/plaid/models/partner_end_customer_assets_under_management.rb +238 -0
  548. data/lib/plaid/models/partner_end_customer_billing_contact.rb +237 -0
  549. data/lib/plaid/models/partner_end_customer_secrets.rb +230 -0
  550. data/lib/plaid/models/partner_end_customer_status.rb +41 -0
  551. data/lib/plaid/models/partner_end_customer_technical_contact.rb +237 -0
  552. data/lib/plaid/models/partner_end_customer_with_secrets.rb +254 -0
  553. data/lib/plaid/models/partner_end_customer_with_secrets_all_of.rb +218 -0
  554. data/lib/plaid/models/party.rb +252 -0
  555. data/lib/plaid/models/party_individual.rb +224 -0
  556. data/lib/plaid/models/party_role_type.rb +38 -0
  557. data/lib/plaid/models/pay.rb +232 -0
  558. data/lib/plaid/models/pay_frequency.rb +238 -0
  559. data/lib/plaid/models/pay_frequency_value.rb +43 -0
  560. data/lib/plaid/models/pay_period_details.rb +332 -0
  561. data/lib/plaid/models/pay_stub_deductions_breakdown.rb +265 -0
  562. data/lib/plaid/models/pay_stub_deductions_total.rb +254 -0
  563. data/lib/plaid/models/pay_stub_distribution_breakdown.rb +287 -0
  564. data/lib/plaid/models/pay_stub_earnings_breakdown.rb +298 -0
  565. data/lib/plaid/models/pay_stub_earnings_total.rb +265 -0
  566. data/lib/plaid/models/pay_stub_pay_period_details.rb +314 -0
  567. data/lib/plaid/models/pay_stub_taxpayer_id.rb +232 -0
  568. data/lib/plaid/models/payment_amount.rb +239 -0
  569. data/lib/plaid/models/payment_amount_currency.rb +45 -0
  570. data/lib/plaid/models/payment_amount_nullable.rb +239 -0
  571. data/lib/plaid/models/payment_amount_refunded.rb +246 -0
  572. data/lib/plaid/models/payment_amount_to_refund.rb +246 -0
  573. data/lib/plaid/models/payment_channel.rb +40 -0
  574. data/lib/plaid/models/payment_consent_max_payment_amount.rb +246 -0
  575. data/lib/plaid/models/payment_consent_periodic_alignment.rb +39 -0
  576. data/lib/plaid/models/payment_consent_periodic_amount.rb +252 -0
  577. data/lib/plaid/models/payment_consent_periodic_amount_amount.rb +246 -0
  578. data/lib/plaid/models/payment_consent_periodic_interval.rb +41 -0
  579. data/lib/plaid/models/payment_consent_valid_date_time.rb +232 -0
  580. data/lib/plaid/models/payment_initiation_address.rb +383 -0
  581. data/lib/plaid/models/payment_initiation_consent.rb +357 -0
  582. data/lib/plaid/models/payment_initiation_consent_constraints.rb +272 -0
  583. data/lib/plaid/models/payment_initiation_consent_create_request.rb +373 -0
  584. data/lib/plaid/models/payment_initiation_consent_create_response.rb +254 -0
  585. data/lib/plaid/models/payment_initiation_consent_get_request.rb +266 -0
  586. data/lib/plaid/models/payment_initiation_consent_get_response.rb +380 -0
  587. data/lib/plaid/models/payment_initiation_consent_payment_execute_request.rb +325 -0
  588. data/lib/plaid/models/payment_initiation_consent_payment_execute_response.rb +254 -0
  589. data/lib/plaid/models/payment_initiation_consent_revoke_request.rb +266 -0
  590. data/lib/plaid/models/payment_initiation_consent_revoke_response.rb +220 -0
  591. data/lib/plaid/models/payment_initiation_consent_scope.rb +39 -0
  592. data/lib/plaid/models/payment_initiation_consent_status.rb +42 -0
  593. data/lib/plaid/models/payment_initiation_metadata.rb +282 -0
  594. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +289 -0
  595. data/lib/plaid/models/payment_initiation_payment.rb +425 -0
  596. data/lib/plaid/models/payment_initiation_payment_create_request.rb +344 -0
  597. data/lib/plaid/models/payment_initiation_payment_create_response.rb +254 -0
  598. data/lib/plaid/models/payment_initiation_payment_create_status.rb +38 -0
  599. data/lib/plaid/models/payment_initiation_payment_get_request.rb +266 -0
  600. data/lib/plaid/models/payment_initiation_payment_get_response.rb +448 -0
  601. data/lib/plaid/models/payment_initiation_payment_list_request.rb +308 -0
  602. data/lib/plaid/models/payment_initiation_payment_list_response.rb +253 -0
  603. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +365 -0
  604. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +254 -0
  605. data/lib/plaid/models/payment_initiation_payment_status.rb +51 -0
  606. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +266 -0
  607. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +255 -0
  608. data/lib/plaid/models/payment_initiation_recipient.rb +271 -0
  609. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +323 -0
  610. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +240 -0
  611. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +266 -0
  612. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +294 -0
  613. data/lib/plaid/models/payment_initiation_recipient_get_response_all_of.rb +219 -0
  614. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +230 -0
  615. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +242 -0
  616. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +257 -0
  617. data/lib/plaid/models/payment_limits.rb +255 -0
  618. data/lib/plaid/models/payment_meta.rb +298 -0
  619. data/lib/plaid/models/payment_profile_create_request.rb +230 -0
  620. data/lib/plaid/models/payment_profile_create_response.rb +240 -0
  621. data/lib/plaid/models/payment_profile_get_request.rb +245 -0
  622. data/lib/plaid/models/payment_profile_get_response.rb +280 -0
  623. data/lib/plaid/models/payment_profile_remove_request.rb +245 -0
  624. data/lib/plaid/models/payment_profile_remove_response.rb +225 -0
  625. data/lib/plaid/models/payment_profile_status.rb +40 -0
  626. data/lib/plaid/models/payment_schedule_interval.rb +39 -0
  627. data/lib/plaid/models/payment_scheme.rb +41 -0
  628. data/lib/plaid/models/payment_status_update_webhook.rb +366 -0
  629. data/lib/plaid/models/payroll_income_account_data.rb +246 -0
  630. data/lib/plaid/models/payroll_income_object.rb +272 -0
  631. data/lib/plaid/models/payroll_income_rate_of_pay.rb +232 -0
  632. data/lib/plaid/models/payroll_item.rb +308 -0
  633. data/lib/plaid/models/payroll_item_status.rb +221 -0
  634. data/lib/plaid/models/payroll_risk_signals_item.rb +242 -0
  635. data/lib/plaid/models/paystub.rb +347 -0
  636. data/lib/plaid/models/paystub_address.rb +298 -0
  637. data/lib/plaid/models/paystub_deduction.rb +243 -0
  638. data/lib/plaid/models/paystub_details.rb +264 -0
  639. data/lib/plaid/models/paystub_employer.rb +230 -0
  640. data/lib/plaid/models/paystub_override.rb +248 -0
  641. data/lib/plaid/models/paystub_override_employee.rb +229 -0
  642. data/lib/plaid/models/paystub_override_employee_address.rb +260 -0
  643. data/lib/plaid/models/paystub_override_employer.rb +220 -0
  644. data/lib/plaid/models/paystub_pay_frequency.rb +42 -0
  645. data/lib/plaid/models/paystub_ytd_details.rb +232 -0
  646. data/lib/plaid/models/pending_expiration_webhook.rb +284 -0
  647. data/lib/plaid/models/personal_finance_category.rb +240 -0
  648. data/lib/plaid/models/phone_number.rb +289 -0
  649. data/lib/plaid/models/phone_number_match_score.rb +221 -0
  650. data/lib/plaid/models/phone_type.rb +39 -0
  651. data/lib/plaid/models/physical_document_category.rb +42 -0
  652. data/lib/plaid/models/physical_document_extracted_data.rb +293 -0
  653. data/lib/plaid/models/physical_document_extracted_data_analysis.rb +266 -0
  654. data/lib/plaid/models/physical_document_images.rb +269 -0
  655. data/lib/plaid/models/plaid_error.rb +319 -0
  656. data/lib/plaid/models/plaid_error_type.rb +51 -0
  657. data/lib/plaid/models/platform_ids.rb +243 -0
  658. data/lib/plaid/models/po_box_status.rb +40 -0
  659. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +260 -0
  660. data/lib/plaid/models/processor_auth_get_request.rb +245 -0
  661. data/lib/plaid/models/processor_auth_get_response.rb +253 -0
  662. data/lib/plaid/models/processor_balance_get_request.rb +254 -0
  663. data/lib/plaid/models/processor_balance_get_request_options.rb +220 -0
  664. data/lib/plaid/models/processor_balance_get_response.rb +239 -0
  665. data/lib/plaid/models/processor_bank_transfer_create_request.rb +459 -0
  666. data/lib/plaid/models/processor_bank_transfer_create_response.rb +239 -0
  667. data/lib/plaid/models/processor_identity_get_request.rb +245 -0
  668. data/lib/plaid/models/processor_identity_get_response.rb +239 -0
  669. data/lib/plaid/models/processor_number.rb +250 -0
  670. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +260 -0
  671. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +240 -0
  672. data/lib/plaid/models/processor_token_create_request.rb +309 -0
  673. data/lib/plaid/models/processor_token_create_response.rb +240 -0
  674. data/lib/plaid/models/product_access.rb +327 -0
  675. data/lib/plaid/models/product_status.rb +288 -0
  676. data/lib/plaid/models/product_status_breakdown.rb +299 -0
  677. data/lib/plaid/models/products.rb +54 -0
  678. data/lib/plaid/models/program_name_sensitivity.rb +41 -0
  679. data/lib/plaid/models/projected_income_summary_field_number.rb +246 -0
  680. data/lib/plaid/models/pslf_status.rb +243 -0
  681. data/lib/plaid/models/recaptcha_required_error.rb +314 -0
  682. data/lib/plaid/models/recipient_bacs.rb +282 -0
  683. data/lib/plaid/models/recipient_bacs_nullable.rb +289 -0
  684. data/lib/plaid/models/recurring_transaction_frequency.rb +42 -0
  685. data/lib/plaid/models/recurring_transactions_update_webhook.rb +286 -0
  686. data/lib/plaid/models/recurring_transfer.rb +431 -0
  687. data/lib/plaid/models/removed_transaction.rb +220 -0
  688. data/lib/plaid/models/report_type.rb +39 -0
  689. data/lib/plaid/models/reporting_information.rb +225 -0
  690. data/lib/plaid/models/risk_signal_document_reference.rb +231 -0
  691. data/lib/plaid/models/role.rb +224 -0
  692. data/lib/plaid/models/role_detail.rb +224 -0
  693. data/lib/plaid/models/roles.rb +224 -0
  694. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +245 -0
  695. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +225 -0
  696. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +270 -0
  697. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +225 -0
  698. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +319 -0
  699. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +225 -0
  700. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +303 -0
  701. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +240 -0
  702. data/lib/plaid/models/sandbox_item_reset_login_request.rb +245 -0
  703. data/lib/plaid/models/sandbox_item_reset_login_response.rb +240 -0
  704. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +309 -0
  705. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +225 -0
  706. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +240 -0
  707. data/lib/plaid/models/sandbox_payment_profile_reset_login_request.rb +245 -0
  708. data/lib/plaid/models/sandbox_payment_profile_reset_login_response.rb +240 -0
  709. data/lib/plaid/models/sandbox_processor_token_create_request.rb +254 -0
  710. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +236 -0
  711. data/lib/plaid/models/sandbox_processor_token_create_response.rb +240 -0
  712. data/lib/plaid/models/sandbox_public_token_create_request.rb +302 -0
  713. data/lib/plaid/models/sandbox_public_token_create_request_income_verification_bank_income.rb +220 -0
  714. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +264 -0
  715. data/lib/plaid/models/sandbox_public_token_create_request_options_income_verification.rb +231 -0
  716. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +230 -0
  717. data/lib/plaid/models/sandbox_public_token_create_response.rb +240 -0
  718. data/lib/plaid/models/sandbox_transfer_fire_webhook_request.rb +245 -0
  719. data/lib/plaid/models/sandbox_transfer_fire_webhook_response.rb +225 -0
  720. data/lib/plaid/models/sandbox_transfer_repayment_simulate_request.rb +230 -0
  721. data/lib/plaid/models/sandbox_transfer_repayment_simulate_response.rb +225 -0
  722. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +270 -0
  723. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +225 -0
  724. data/lib/plaid/models/sandbox_transfer_sweep_simulate_request.rb +230 -0
  725. data/lib/plaid/models/sandbox_transfer_sweep_simulate_response.rb +234 -0
  726. data/lib/plaid/models/sandbox_transfer_test_clock_advance_request.rb +266 -0
  727. data/lib/plaid/models/sandbox_transfer_test_clock_advance_response.rb +225 -0
  728. data/lib/plaid/models/sandbox_transfer_test_clock_create_request.rb +255 -0
  729. data/lib/plaid/models/sandbox_transfer_test_clock_create_response.rb +239 -0
  730. data/lib/plaid/models/sandbox_transfer_test_clock_get_request.rb +251 -0
  731. data/lib/plaid/models/sandbox_transfer_test_clock_get_response.rb +239 -0
  732. data/lib/plaid/models/scopes.rb +243 -0
  733. data/lib/plaid/models/scopes_context.rb +39 -0
  734. data/lib/plaid/models/scopes_nullable.rb +250 -0
  735. data/lib/plaid/models/screening_hit_analysis.rb +261 -0
  736. data/lib/plaid/models/screening_hit_data.rb +258 -0
  737. data/lib/plaid/models/screening_hit_date_of_birth_item.rb +228 -0
  738. data/lib/plaid/models/screening_hit_documents_items.rb +228 -0
  739. data/lib/plaid/models/screening_hit_names_items.rb +228 -0
  740. data/lib/plaid/models/screening_status_updated_webhook.rb +265 -0
  741. data/lib/plaid/models/security.rb +390 -0
  742. data/lib/plaid/models/security_override.rb +270 -0
  743. data/lib/plaid/models/sender_bacs_nullable.rb +289 -0
  744. data/lib/plaid/models/service.rb +238 -0
  745. data/lib/plaid/models/service_product_fulfillment.rb +224 -0
  746. data/lib/plaid/models/service_product_fulfillment_detail.rb +235 -0
  747. data/lib/plaid/models/service_product_fulfillment_identifier.rb +38 -0
  748. data/lib/plaid/models/servicer_address_data.rb +265 -0
  749. data/lib/plaid/models/services.rb +224 -0
  750. data/lib/plaid/models/signal_address_data.rb +263 -0
  751. data/lib/plaid/models/signal_decision_outcome.rb +42 -0
  752. data/lib/plaid/models/signal_decision_report_request.rb +349 -0
  753. data/lib/plaid/models/signal_decision_report_response.rb +225 -0
  754. data/lib/plaid/models/signal_device.rb +232 -0
  755. data/lib/plaid/models/signal_evaluate_core_attributes.rb +925 -0
  756. data/lib/plaid/models/signal_evaluate_request.rb +398 -0
  757. data/lib/plaid/models/signal_evaluate_response.rb +248 -0
  758. data/lib/plaid/models/signal_payment_method.rb +43 -0
  759. data/lib/plaid/models/signal_person_name.rb +265 -0
  760. data/lib/plaid/models/signal_prepare_request.rb +245 -0
  761. data/lib/plaid/models/signal_prepare_response.rb +225 -0
  762. data/lib/plaid/models/signal_return_report_request.rb +301 -0
  763. data/lib/plaid/models/signal_return_report_response.rb +225 -0
  764. data/lib/plaid/models/signal_scores.rb +228 -0
  765. data/lib/plaid/models/signal_user.rb +252 -0
  766. data/lib/plaid/models/simulated_transfer_sweep.rb +288 -0
  767. data/lib/plaid/models/single_document_risk_signal.rb +255 -0
  768. data/lib/plaid/models/source.rb +41 -0
  769. data/lib/plaid/models/standalone_account_type.rb +285 -0
  770. data/lib/plaid/models/standalone_currency_code_list.rb +240 -0
  771. data/lib/plaid/models/standalone_investment_transaction_type.rb +300 -0
  772. data/lib/plaid/models/status.rb +232 -0
  773. data/lib/plaid/models/statuses.rb +224 -0
  774. data/lib/plaid/models/strategy.rb +41 -0
  775. data/lib/plaid/models/student_loan.rb +492 -0
  776. data/lib/plaid/models/student_loan_repayment_model.rb +255 -0
  777. data/lib/plaid/models/student_loan_status.rb +266 -0
  778. data/lib/plaid/models/student_repayment_plan.rb +266 -0
  779. data/lib/plaid/models/sync_updates_available_webhook.rb +299 -0
  780. data/lib/plaid/models/taxform.rb +244 -0
  781. data/lib/plaid/models/taxpayer_id.rb +269 -0
  782. data/lib/plaid/models/taxpayer_identifier.rb +231 -0
  783. data/lib/plaid/models/taxpayer_identifier_type.rb +39 -0
  784. data/lib/plaid/models/taxpayer_identifiers.rb +224 -0
  785. data/lib/plaid/models/total.rb +249 -0
  786. data/lib/plaid/models/total_canonical_description.rb +54 -0
  787. data/lib/plaid/models/transaction.rb +561 -0
  788. data/lib/plaid/models/transaction_all_of.rb +311 -0
  789. data/lib/plaid/models/transaction_base.rb +458 -0
  790. data/lib/plaid/models/transaction_code.rb +50 -0
  791. data/lib/plaid/models/transaction_data.rb +285 -0
  792. data/lib/plaid/models/transaction_frequency.rb +41 -0
  793. data/lib/plaid/models/transaction_override.rb +280 -0
  794. data/lib/plaid/models/transaction_stream.rb +426 -0
  795. data/lib/plaid/models/transaction_stream_amount.rb +242 -0
  796. data/lib/plaid/models/transaction_stream_status.rb +41 -0
  797. data/lib/plaid/models/transactions_category_rule.rb +259 -0
  798. data/lib/plaid/models/transactions_enhance_get_request.rb +262 -0
  799. data/lib/plaid/models/transactions_enhance_get_response.rb +227 -0
  800. data/lib/plaid/models/transactions_enrich_get_request.rb +274 -0
  801. data/lib/plaid/models/transactions_enrich_get_response.rb +237 -0
  802. data/lib/plaid/models/transactions_get_request.rb +284 -0
  803. data/lib/plaid/models/transactions_get_request_options.rb +326 -0
  804. data/lib/plaid/models/transactions_get_response.rb +288 -0
  805. data/lib/plaid/models/transactions_recurring_get_request.rb +271 -0
  806. data/lib/plaid/models/transactions_recurring_get_request_options.rb +222 -0
  807. data/lib/plaid/models/transactions_recurring_get_response.rb +274 -0
  808. data/lib/plaid/models/transactions_refresh_request.rb +245 -0
  809. data/lib/plaid/models/transactions_refresh_response.rb +225 -0
  810. data/lib/plaid/models/transactions_removed_webhook.rb +296 -0
  811. data/lib/plaid/models/transactions_rule_details.rb +253 -0
  812. data/lib/plaid/models/transactions_rule_field.rb +39 -0
  813. data/lib/plaid/models/transactions_rule_type.rb +39 -0
  814. data/lib/plaid/models/transactions_rules_create_request.rb +274 -0
  815. data/lib/plaid/models/transactions_rules_create_response.rb +239 -0
  816. data/lib/plaid/models/transactions_rules_list_request.rb +245 -0
  817. data/lib/plaid/models/transactions_rules_list_response.rb +242 -0
  818. data/lib/plaid/models/transactions_rules_remove_request.rb +260 -0
  819. data/lib/plaid/models/transactions_rules_remove_response.rb +225 -0
  820. data/lib/plaid/models/transactions_sync_request.rb +302 -0
  821. data/lib/plaid/models/transactions_sync_request_options.rb +235 -0
  822. data/lib/plaid/models/transactions_sync_response.rb +306 -0
  823. data/lib/plaid/models/transfer.rb +502 -0
  824. data/lib/plaid/models/transfer_authorization.rb +298 -0
  825. data/lib/plaid/models/transfer_authorization_create_request.rb +429 -0
  826. data/lib/plaid/models/transfer_authorization_create_response.rb +239 -0
  827. data/lib/plaid/models/transfer_authorization_decision.rb +39 -0
  828. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +239 -0
  829. data/lib/plaid/models/transfer_authorization_decision_rationale_code.rb +45 -0
  830. data/lib/plaid/models/transfer_authorization_device.rb +230 -0
  831. data/lib/plaid/models/transfer_authorization_guarantee_decision.rb +40 -0
  832. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale.rb +239 -0
  833. data/lib/plaid/models/transfer_authorization_guarantee_decision_rationale_code.rb +42 -0
  834. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +328 -0
  835. data/lib/plaid/models/transfer_authorization_user_in_request.rb +254 -0
  836. data/lib/plaid/models/transfer_cancel_request.rb +245 -0
  837. data/lib/plaid/models/transfer_cancel_response.rb +225 -0
  838. data/lib/plaid/models/transfer_create_request.rb +428 -0
  839. data/lib/plaid/models/transfer_create_response.rb +239 -0
  840. data/lib/plaid/models/transfer_device.rb +240 -0
  841. data/lib/plaid/models/transfer_diligence_status.rb +40 -0
  842. data/lib/plaid/models/transfer_event.rb +399 -0
  843. data/lib/plaid/models/transfer_event_list_request.rb +397 -0
  844. data/lib/plaid/models/transfer_event_list_response.rb +241 -0
  845. data/lib/plaid/models/transfer_event_list_transfer_type.rb +40 -0
  846. data/lib/plaid/models/transfer_event_sync_request.rb +305 -0
  847. data/lib/plaid/models/transfer_event_sync_response.rb +241 -0
  848. data/lib/plaid/models/transfer_event_type.rb +46 -0
  849. data/lib/plaid/models/transfer_events_update_webhook.rb +254 -0
  850. data/lib/plaid/models/transfer_failure.rb +231 -0
  851. data/lib/plaid/models/transfer_get_request.rb +245 -0
  852. data/lib/plaid/models/transfer_get_response.rb +239 -0
  853. data/lib/plaid/models/transfer_intent_authorization_decision.rb +39 -0
  854. data/lib/plaid/models/transfer_intent_create.rb +395 -0
  855. data/lib/plaid/models/transfer_intent_create_mode.rb +39 -0
  856. data/lib/plaid/models/transfer_intent_create_request.rb +394 -0
  857. data/lib/plaid/models/transfer_intent_create_response.rb +239 -0
  858. data/lib/plaid/models/transfer_intent_get.rb +456 -0
  859. data/lib/plaid/models/transfer_intent_get_failure_reason.rb +240 -0
  860. data/lib/plaid/models/transfer_intent_get_request.rb +245 -0
  861. data/lib/plaid/models/transfer_intent_get_response.rb +239 -0
  862. data/lib/plaid/models/transfer_intent_status.rb +40 -0
  863. data/lib/plaid/models/transfer_list_request.rb +341 -0
  864. data/lib/plaid/models/transfer_list_response.rb +241 -0
  865. data/lib/plaid/models/transfer_migrate_account_request.rb +285 -0
  866. data/lib/plaid/models/transfer_migrate_account_response.rb +255 -0
  867. data/lib/plaid/models/transfer_network.rb +40 -0
  868. data/lib/plaid/models/transfer_originator_create_request.rb +245 -0
  869. data/lib/plaid/models/transfer_originator_create_response.rb +255 -0
  870. data/lib/plaid/models/transfer_originator_get_request.rb +245 -0
  871. data/lib/plaid/models/transfer_originator_get_response.rb +239 -0
  872. data/lib/plaid/models/transfer_originator_list_request.rb +297 -0
  873. data/lib/plaid/models/transfer_originator_list_response.rb +241 -0
  874. data/lib/plaid/models/transfer_questionnaire_create_request.rb +302 -0
  875. data/lib/plaid/models/transfer_questionnaire_create_response.rb +240 -0
  876. data/lib/plaid/models/transfer_recurring_cancel_request.rb +255 -0
  877. data/lib/plaid/models/transfer_recurring_cancel_response.rb +225 -0
  878. data/lib/plaid/models/transfer_recurring_create_request.rb +424 -0
  879. data/lib/plaid/models/transfer_recurring_create_response.rb +239 -0
  880. data/lib/plaid/models/transfer_recurring_get_request.rb +255 -0
  881. data/lib/plaid/models/transfer_recurring_get_response.rb +239 -0
  882. data/lib/plaid/models/transfer_recurring_list_request.rb +329 -0
  883. data/lib/plaid/models/transfer_recurring_list_response.rb +241 -0
  884. data/lib/plaid/models/transfer_recurring_schedule.rb +260 -0
  885. data/lib/plaid/models/transfer_recurring_status.rb +40 -0
  886. data/lib/plaid/models/transfer_refund.rb +284 -0
  887. data/lib/plaid/models/transfer_refund_cancel_request.rb +245 -0
  888. data/lib/plaid/models/transfer_refund_cancel_response.rb +225 -0
  889. data/lib/plaid/models/transfer_refund_create_request.rb +296 -0
  890. data/lib/plaid/models/transfer_refund_create_response.rb +239 -0
  891. data/lib/plaid/models/transfer_refund_get_request.rb +245 -0
  892. data/lib/plaid/models/transfer_refund_get_response.rb +239 -0
  893. data/lib/plaid/models/transfer_refund_status.rb +41 -0
  894. data/lib/plaid/models/transfer_repayment.rb +270 -0
  895. data/lib/plaid/models/transfer_repayment_list_request.rb +320 -0
  896. data/lib/plaid/models/transfer_repayment_list_response.rb +241 -0
  897. data/lib/plaid/models/transfer_repayment_return.rb +291 -0
  898. data/lib/plaid/models/transfer_repayment_return_list_request.rb +313 -0
  899. data/lib/plaid/models/transfer_repayment_return_list_response.rb +241 -0
  900. data/lib/plaid/models/transfer_schedule_interval_unit.rb +39 -0
  901. data/lib/plaid/models/transfer_status.rb +43 -0
  902. data/lib/plaid/models/transfer_sweep.rb +281 -0
  903. data/lib/plaid/models/transfer_sweep_get_request.rb +245 -0
  904. data/lib/plaid/models/transfer_sweep_get_response.rb +239 -0
  905. data/lib/plaid/models/transfer_sweep_list_request.rb +331 -0
  906. data/lib/plaid/models/transfer_sweep_list_response.rb +241 -0
  907. data/lib/plaid/models/transfer_sweep_status.rb +42 -0
  908. data/lib/plaid/models/transfer_test_clock.rb +236 -0
  909. data/lib/plaid/models/transfer_type.rb +39 -0
  910. data/lib/plaid/models/transfer_user_address_in_request.rb +260 -0
  911. data/lib/plaid/models/transfer_user_address_in_response.rb +265 -0
  912. data/lib/plaid/models/transfer_user_in_request.rb +254 -0
  913. data/lib/plaid/models/transfer_user_in_request_deprecated.rb +249 -0
  914. data/lib/plaid/models/transfer_user_in_response.rb +257 -0
  915. data/lib/plaid/models/update_entity_screening_request_search_terms.rb +366 -0
  916. data/lib/plaid/models/update_individual_screening_request_search_terms.rb +311 -0
  917. data/lib/plaid/models/user_address.rb +317 -0
  918. data/lib/plaid/models/user_create_request.rb +275 -0
  919. data/lib/plaid/models/user_create_response.rb +255 -0
  920. data/lib/plaid/models/user_custom_password.rb +297 -0
  921. data/lib/plaid/models/user_id_number.rb +239 -0
  922. data/lib/plaid/models/user_name.rb +240 -0
  923. data/lib/plaid/models/user_permission_revoked_webhook.rb +279 -0
  924. data/lib/plaid/models/user_stated_income_source_category.rb +48 -0
  925. data/lib/plaid/models/user_stated_income_source_frequency.rb +42 -0
  926. data/lib/plaid/models/user_stated_income_source_pay_type.rb +40 -0
  927. data/lib/plaid/models/validation_source.rb +232 -0
  928. data/lib/plaid/models/validation_sources.rb +227 -0
  929. data/lib/plaid/models/verification_expired_webhook.rb +284 -0
  930. data/lib/plaid/models/verification_of_asset.rb +252 -0
  931. data/lib/plaid/models/verification_of_asset_response.rb +224 -0
  932. data/lib/plaid/models/verification_refresh_status.rb +40 -0
  933. data/lib/plaid/models/verification_status.rb +42 -0
  934. data/lib/plaid/models/w2.rb +437 -0
  935. data/lib/plaid/models/w2_box12.rb +232 -0
  936. data/lib/plaid/models/w2_state_and_local_wages.rb +287 -0
  937. data/lib/plaid/models/wallet.rb +263 -0
  938. data/lib/plaid/models/wallet_balance.rb +240 -0
  939. data/lib/plaid/models/wallet_create_request.rb +244 -0
  940. data/lib/plaid/models/wallet_create_response.rb +286 -0
  941. data/lib/plaid/models/wallet_get_request.rb +266 -0
  942. data/lib/plaid/models/wallet_get_response.rb +286 -0
  943. data/lib/plaid/models/wallet_iso_currency_code.rb +39 -0
  944. data/lib/plaid/models/wallet_list_request.rb +304 -0
  945. data/lib/plaid/models/wallet_list_response.rb +252 -0
  946. data/lib/plaid/models/wallet_numbers.rb +230 -0
  947. data/lib/plaid/models/wallet_transaction.rb +372 -0
  948. data/lib/plaid/models/wallet_transaction_amount.rb +260 -0
  949. data/lib/plaid/models/wallet_transaction_counterparty.rb +260 -0
  950. data/lib/plaid/models/wallet_transaction_counterparty_bacs.rb +289 -0
  951. data/lib/plaid/models/wallet_transaction_counterparty_international.rb +246 -0
  952. data/lib/plaid/models/wallet_transaction_counterparty_numbers.rb +229 -0
  953. data/lib/plaid/models/wallet_transaction_execute_request.rb +384 -0
  954. data/lib/plaid/models/wallet_transaction_execute_response.rb +254 -0
  955. data/lib/plaid/models/wallet_transaction_get_request.rb +266 -0
  956. data/lib/plaid/models/wallet_transaction_get_response.rb +395 -0
  957. data/lib/plaid/models/wallet_transaction_list_request.rb +341 -0
  958. data/lib/plaid/models/wallet_transaction_list_request_options.rb +230 -0
  959. data/lib/plaid/models/wallet_transaction_list_response.rb +252 -0
  960. data/lib/plaid/models/wallet_transaction_status.rb +43 -0
  961. data/lib/plaid/models/wallet_transaction_status_update_webhook.rb +312 -0
  962. data/lib/plaid/models/wallet_transactions_list_request.rb +341 -0
  963. data/lib/plaid/models/warning.rb +288 -0
  964. data/lib/plaid/models/watchlist_screening_audit_trail.rb +250 -0
  965. data/lib/plaid/models/watchlist_screening_document.rb +260 -0
  966. data/lib/plaid/models/watchlist_screening_document_type.rb +50 -0
  967. data/lib/plaid/models/watchlist_screening_entity_create_request.rb +271 -0
  968. data/lib/plaid/models/watchlist_screening_entity_create_response.rb +321 -0
  969. data/lib/plaid/models/watchlist_screening_entity_get_request.rb +245 -0
  970. data/lib/plaid/models/watchlist_screening_entity_get_response.rb +321 -0
  971. data/lib/plaid/models/watchlist_screening_entity_history_list_request.rb +256 -0
  972. data/lib/plaid/models/watchlist_screening_entity_history_list_response.rb +253 -0
  973. data/lib/plaid/models/watchlist_screening_entity_hit_list_request.rb +256 -0
  974. data/lib/plaid/models/watchlist_screening_entity_hit_list_response.rb +253 -0
  975. data/lib/plaid/models/watchlist_screening_entity_list_request.rb +302 -0
  976. data/lib/plaid/models/watchlist_screening_entity_list_response.rb +253 -0
  977. data/lib/plaid/models/watchlist_screening_entity_program_get_request.rb +245 -0
  978. data/lib/plaid/models/watchlist_screening_entity_program_get_response.rb +378 -0
  979. data/lib/plaid/models/watchlist_screening_entity_program_list_request.rb +241 -0
  980. data/lib/plaid/models/watchlist_screening_entity_program_list_response.rb +253 -0
  981. data/lib/plaid/models/watchlist_screening_entity_review_create_request.rb +307 -0
  982. data/lib/plaid/models/watchlist_screening_entity_review_create_response.rb +316 -0
  983. data/lib/plaid/models/watchlist_screening_entity_review_list_request.rb +256 -0
  984. data/lib/plaid/models/watchlist_screening_entity_review_list_response.rb +253 -0
  985. data/lib/plaid/models/watchlist_screening_entity_update_request.rb +314 -0
  986. data/lib/plaid/models/watchlist_screening_entity_update_request_resettable_field.rb +38 -0
  987. data/lib/plaid/models/watchlist_screening_entity_update_response.rb +321 -0
  988. data/lib/plaid/models/watchlist_screening_hit.rb +351 -0
  989. data/lib/plaid/models/watchlist_screening_hit_locations.rb +261 -0
  990. data/lib/plaid/models/watchlist_screening_hit_status.rb +40 -0
  991. data/lib/plaid/models/watchlist_screening_individual.rb +306 -0
  992. data/lib/plaid/models/watchlist_screening_individual_create_request.rb +271 -0
  993. data/lib/plaid/models/watchlist_screening_individual_create_response.rb +321 -0
  994. data/lib/plaid/models/watchlist_screening_individual_get_request.rb +245 -0
  995. data/lib/plaid/models/watchlist_screening_individual_get_response.rb +321 -0
  996. data/lib/plaid/models/watchlist_screening_individual_history_list_request.rb +256 -0
  997. data/lib/plaid/models/watchlist_screening_individual_history_list_response.rb +253 -0
  998. data/lib/plaid/models/watchlist_screening_individual_hit_list_request.rb +256 -0
  999. data/lib/plaid/models/watchlist_screening_individual_hit_list_response.rb +253 -0
  1000. data/lib/plaid/models/watchlist_screening_individual_list_request.rb +302 -0
  1001. data/lib/plaid/models/watchlist_screening_individual_list_response.rb +253 -0
  1002. data/lib/plaid/models/watchlist_screening_individual_program_get_request.rb +245 -0
  1003. data/lib/plaid/models/watchlist_screening_individual_program_get_response.rb +378 -0
  1004. data/lib/plaid/models/watchlist_screening_individual_program_list_request.rb +241 -0
  1005. data/lib/plaid/models/watchlist_screening_individual_program_list_response.rb +253 -0
  1006. data/lib/plaid/models/watchlist_screening_individual_review_create_request.rb +307 -0
  1007. data/lib/plaid/models/watchlist_screening_individual_review_create_response.rb +316 -0
  1008. data/lib/plaid/models/watchlist_screening_individual_review_list_request.rb +256 -0
  1009. data/lib/plaid/models/watchlist_screening_individual_review_list_response.rb +253 -0
  1010. data/lib/plaid/models/watchlist_screening_individual_update_request.rb +314 -0
  1011. data/lib/plaid/models/watchlist_screening_individual_update_request_resettable_field.rb +38 -0
  1012. data/lib/plaid/models/watchlist_screening_individual_update_response.rb +321 -0
  1013. data/lib/plaid/models/watchlist_screening_request_search_terms.rb +325 -0
  1014. data/lib/plaid/models/watchlist_screening_review.rb +301 -0
  1015. data/lib/plaid/models/watchlist_screening_search_terms.rb +343 -0
  1016. data/lib/plaid/models/watchlist_screening_status.rb +40 -0
  1017. data/lib/plaid/models/weak_alias_determination.rb +40 -0
  1018. data/lib/plaid/models/webhook_environment_values.rb +40 -0
  1019. data/lib/plaid/models/webhook_type.rb +43 -0
  1020. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +294 -0
  1021. data/lib/plaid/models/webhook_verification_key_get_request.rb +245 -0
  1022. data/lib/plaid/models/webhook_verification_key_get_response.rb +239 -0
  1023. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +246 -0
  1024. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +246 -0
  1025. data/lib/plaid/version.rb +13 -2
  1026. data/lib/plaid.rb +1043 -61
  1027. data/plaid.gemspec +44 -48
  1028. data/templates/ruby/api_client.mustache +278 -0
  1029. data/templates/ruby/api_client_faraday_partial.mustache +118 -0
  1030. data/templates/ruby/api_error.mustache +49 -0
  1031. data/templates/ruby/configuration.mustache +355 -0
  1032. data/templates/ruby/gemspec.mustache +42 -0
  1033. data/templates/ruby/partial_model_enum_class.mustache +22 -0
  1034. data/templates/ruby/partial_model_generic.mustache +362 -0
  1035. data/test/test_accounts.rb +99 -0
  1036. data/test/test_api_client.rb +23 -0
  1037. data/test/test_asset_report.rb +147 -0
  1038. data/test/test_auth.rb +61 -0
  1039. data/test/test_bank_transfers.rb +219 -0
  1040. data/test/test_categories.rb +10 -0
  1041. data/test/test_configuration.rb +26 -0
  1042. data/test/test_deposit_switch.rb +73 -0
  1043. data/test/test_helper.rb +109 -0
  1044. data/test/test_identity.rb +38 -0
  1045. data/test/test_identity_verification.rb +51 -0
  1046. data/test/test_institutions.rb +159 -0
  1047. data/test/test_investments.rb +208 -0
  1048. data/test/test_item.rb +275 -0
  1049. data/test/test_liabilities.rb +45 -0
  1050. data/test/test_link_token.rb +131 -0
  1051. data/test/test_monitor.rb +55 -0
  1052. data/test/test_payment_initiation.rb +94 -0
  1053. data/test/test_processor.rb +52 -0
  1054. data/test/test_sandbox.rb +31 -0
  1055. data/test/test_transactions.rb +168 -0
  1056. data/test/test_webhooks.rb +22 -0
  1057. metadata +1092 -88
  1058. data/.circleci/config.yml +0 -21
  1059. data/.env.sample +0 -3
  1060. data/.github/workflows/add_to_project.yml +0 -21
  1061. data/.rubocop.yml +0 -18
  1062. data/PUBLISH.md +0 -20
  1063. data/bin/console +0 -14
  1064. data/bin/setup +0 -8
  1065. data/lib/plaid/client.rb +0 -190
  1066. data/lib/plaid/errors.rb +0 -89
  1067. data/lib/plaid/middleware.rb +0 -31
  1068. data/lib/plaid/models.rb +0 -2221
  1069. data/lib/plaid/products/accounts.rb +0 -63
  1070. data/lib/plaid/products/asset_report.rb +0 -199
  1071. data/lib/plaid/products/auth.rb +0 -42
  1072. data/lib/plaid/products/base_product.rb +0 -64
  1073. data/lib/plaid/products/categories.rb +0 -21
  1074. data/lib/plaid/products/credit_details.rb +0 -40
  1075. data/lib/plaid/products/deposit_switch.rb +0 -99
  1076. data/lib/plaid/products/identity.rb +0 -31
  1077. data/lib/plaid/products/income.rb +0 -31
  1078. data/lib/plaid/products/institutions.rb +0 -91
  1079. data/lib/plaid/products/investments.rb +0 -127
  1080. data/lib/plaid/products/item.rb +0 -209
  1081. data/lib/plaid/products/liabilities.rb +0 -39
  1082. data/lib/plaid/products/link_token.rb +0 -74
  1083. data/lib/plaid/products/payment_initiation.rb +0 -251
  1084. data/lib/plaid/products/processor.rb +0 -190
  1085. data/lib/plaid/products/sandbox.rb +0 -148
  1086. data/lib/plaid/products/transactions.rb +0 -81
  1087. data/lib/plaid/products/webhooks.rb +0 -23
data/CONTRIBUTING.md CHANGED
@@ -1,67 +1,19 @@
1
- ## Development
1
+ # Contributing
2
2
 
3
- After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
3
+ Instructions for contributing to [plaid-ruby][1]. A ruby client library for the [Plaid API][2]. This library is fully generated from the [Plaid OpenAPI spec][3].
4
4
 
5
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
5
+ ## Setup
6
6
 
7
- ## Running tests
7
+ If you find an issue, please investigate whether it is a type problem with [OpenAPI](3) or a problem with the [ruby faraday](https://github.com/OpenAPITools/openapi-generator/blob/master/docs/generators/ruby.md) generator. Then open an issue and Plaid will investigate further.
8
8
 
9
- The gem test suite can be run in two modes. By default, it runs against the
10
- live sandbox environment, creating items on the fly and calling various API
11
- endpoints for them. For this to work you'll need real `client_id` and `secret`
12
- from your Plaid dashboard. Create a file named `.env` based on `.env.sample`
13
- which is provided:
9
+ ## Running Tests
14
10
 
15
- ```text
16
- PLAID_RUBY_CLIENT_ID=the_real_client_id
17
- PLAID_RUBY_SECRET=the_real_secret
18
- ```
19
- This file will be loaded during the tests.
11
+ 1. To build the docker image for the client tests, run `docker build -t plaid-ruby .`.
12
+ 2. Go to the [Plaid Dashboard](https://dashboard.plaid.com/) and copy and paste your `client_id` and sandbox `secret` into the following command.
13
+ 3. Run `docker run --rm -e PLAID_RUBY_CLIENT_ID=$CLIENT_ID -e PLAID_RUBY_SECRET=$SECRET plaid-ruby`.
20
14
 
21
- Another mode employs pre-recorded API responses using the
22
- [vcr](https://github.com/vcr/vcr) gem. It runs much faster. Just use
23
- `rake test_stubbed` and you're good to go even without `.env`!
15
+ If you wish to run a single test, edit the `Rakefile` and rebuild the docker image using the command from step 1.
24
16
 
25
- ## Updating VCR "cassettes"
26
-
27
- In case you're adding new API endpoints or when there were any substantial
28
- changes in API you'll need to update the pre-recorded responses. Here's how:
29
-
30
- 1. Make sure that `STUB_API=1 rake test` fails. It will fail saying something
31
- like "... An HTTP request has been made that VCR does not know how to
32
- handle".
33
- 2. Run `RECORD_MODE=all STUB_API=1 rake test`. This will run the whole suite
34
- and re-record everything. If you only need to update data for one test class,
35
- use this:
36
-
37
- ```
38
- RECORD_MODE=all STUB_API=1 ruby -w -I"lib:test" -rminitest/pride -rdotenv/load test/test_which_fails.rb
39
- ```
40
- 3. Run `rake vcr_hide_credentials`. This step is essential, because
41
- newly recorded files will contain your real `client_id` and friends. This
42
- Rake task will go over all recorded files and replace real values with
43
- stubbed ones used by `STUB_API=1 rake test`.
44
- 4. Run `STUB_API=1 rake test` and verify that everything works.
45
-
46
-
47
- ## Running lint
48
-
49
- ```bash
50
- bundle exec rubocop
51
- ```
52
-
53
- ## Contributing
54
-
55
- 1. Make one or more atomic commits, and ensure that each commit has a
56
- descriptive commit message. Commit messages should be line wrapped
57
- at 72 characters.
58
-
59
- 2. Make sure that there are tests for the code you wrote.
60
-
61
- 3. Make sure that you've documented all public methods using [TomDoc](http://tomdoc.org/).
62
-
63
- 4. Run tests (in both modes, see above) and address any errors. Preferably,
64
- fix commits in place using `git rebase` or `git commit --amend` to make the
65
- changes easier to review.
66
-
67
- 5. Open a pull request.
17
+ [1]: https://github.com/plaid/plaid-ruby
18
+ [2]: https://plaid.com
19
+ [3]: https://github.com/plaid/plaid-openapi
data/Dockerfile ADDED
@@ -0,0 +1,14 @@
1
+ FROM ruby:3.0.0
2
+
3
+ # Create app directory
4
+ WORKDIR /usr/src/app
5
+
6
+ # Copy app to directory
7
+ COPY . /usr/src/app
8
+
9
+ ENV BUNDLER_VERSION 2.2.9
10
+ RUN gem update --system
11
+ RUN gem install bundler:2.2.9
12
+ RUN bundle install
13
+
14
+ CMD ["bundle", "exec", "rake", "test"]
data/Gemfile.lock CHANGED
@@ -1,66 +1,73 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- plaid (13.2.0)
5
- faraday
6
- faraday_middleware
7
- hashie (>= 3.4.3)
4
+ plaid (17.1.0)
5
+ faraday (>= 1.0.1, < 3.0)
6
+ faraday-multipart (>= 1.0.1, < 2.0)
8
7
 
9
8
  GEM
10
9
  remote: https://rubygems.org/
11
10
  specs:
12
- ast (2.4.0)
13
- dotenv (2.4.0)
14
- faraday (1.4.1)
15
- faraday-excon (~> 1.1)
16
- faraday-net_http (~> 1.0)
17
- faraday-net_http_persistent (~> 1.1)
18
- multipart-post (>= 1.2, < 3)
11
+ ast (2.4.1)
12
+ diff-lcs (1.4.4)
13
+ dotenv (2.7.6)
14
+ faraday (2.7.0)
15
+ faraday-net_http (>= 2.0, < 3.1)
19
16
  ruby2_keywords (>= 0.0.4)
20
- faraday-excon (1.1.0)
21
- faraday-net_http (1.0.1)
22
- faraday-net_http_persistent (1.1.0)
23
- faraday_middleware (1.0.0)
24
- faraday (~> 1.0)
25
- hashie (4.1.0)
26
- minitest (5.11.3)
27
- minitest-around (0.4.1)
17
+ faraday-multipart (1.0.4)
18
+ multipart-post (~> 2)
19
+ faraday-net_http (3.0.2)
20
+ minitest (5.14.2)
21
+ minitest-around (0.5.0)
28
22
  minitest (~> 5.0)
29
- multipart-post (2.1.1)
30
- parallel (1.12.1)
31
- parser (2.5.1.0)
32
- ast (~> 2.4.0)
33
- powerpack (0.1.1)
23
+ multipart-post (2.2.3)
24
+ parallel (1.20.1)
25
+ parser (2.7.2.0)
26
+ ast (~> 2.4.1)
34
27
  rainbow (3.0.0)
35
- rake (12.3.3)
36
- rdoc (6.0.4)
37
- rubocop (0.53.0)
28
+ rake (13.0.1)
29
+ regexp_parser (1.8.0)
30
+ rexml (3.2.4)
31
+ rspec (3.10.0)
32
+ rspec-core (~> 3.10.0)
33
+ rspec-expectations (~> 3.10.0)
34
+ rspec-mocks (~> 3.10.0)
35
+ rspec-core (3.10.0)
36
+ rspec-support (~> 3.10.0)
37
+ rspec-expectations (3.10.0)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.10.0)
40
+ rspec-mocks (3.10.0)
41
+ diff-lcs (>= 1.2.0, < 2.0)
42
+ rspec-support (~> 3.10.0)
43
+ rspec-support (3.10.0)
44
+ rubocop (0.91.1)
38
45
  parallel (~> 1.10)
39
- parser (>= 2.5)
40
- powerpack (~> 0.1)
46
+ parser (>= 2.7.1.1)
41
47
  rainbow (>= 2.2.2, < 4.0)
48
+ regexp_parser (>= 1.7)
49
+ rexml
50
+ rubocop-ast (>= 0.4.0, < 1.0)
42
51
  ruby-progressbar (~> 1.7)
43
- unicode-display_width (~> 1.0, >= 1.0.1)
44
- ruby-progressbar (1.9.0)
45
- ruby2_keywords (0.0.4)
46
- sdoc (1.0.0)
47
- rdoc (>= 5.0)
48
- unicode-display_width (1.3.2)
49
- vcr (4.0.0)
52
+ unicode-display_width (>= 1.4.0, < 2.0)
53
+ rubocop-ast (0.4.2)
54
+ parser (>= 2.7.1.4)
55
+ ruby-progressbar (1.10.1)
56
+ ruby2_keywords (0.0.5)
57
+ unicode-display_width (1.7.0)
50
58
 
51
59
  PLATFORMS
52
60
  ruby
53
61
 
54
62
  DEPENDENCIES
55
- bundler (~> 1.7)
63
+ bundler (~> 2.2.9)
56
64
  dotenv
57
- minitest (~> 5.10)
58
- minitest-around (~> 0.4.0)
65
+ minitest (~> 5.14)
66
+ minitest-around (~> 0.5.0)
59
67
  plaid!
60
- rake (>= 10.0)
61
- rubocop (~> 0.53.0)
62
- sdoc (~> 1.0.0)
63
- vcr (~> 4.0.0)
68
+ rake (>= 13.0)
69
+ rspec (~> 3.6, >= 3.6.0)
70
+ rubocop (~> 0.91.0)
64
71
 
65
72
  BUNDLED WITH
66
- 1.17.2
73
+ 2.2.33
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2017 Plaid Technologies, Inc.
3
+ Copyright (c) 2021 Plaid Inc.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/Makefile ADDED
@@ -0,0 +1,11 @@
1
+ # Ruby embeds the version in the generator where as others don't so it's not possible to cat for it.
2
+ RUBY_PACKAGE_VERSION=17.1.0
3
+
4
+ .PHONY: release
5
+ release:
6
+ # Remove previously released versions of plaid-ruby
7
+ rm -rf pkg
8
+ # Release
9
+ bundle config set --local path 'vendor/bundle' && \
10
+ bundle && \
11
+ bundle exec rake release
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # plaid-ruby [![Circle CI](https://circleci.com/gh/plaid/plaid-ruby.svg?style=svg&circle-token=30ee002ac2021da5b5b5a701d45fe2888af124a5)](https://circleci.com/gh/plaid/plaid-ruby) [![Gem Version](https://badge.fury.io/rb/plaid.svg)](http://badge.fury.io/rb/plaid)
2
2
 
3
- :warning: After 7/12/21, this major version of the library will only receive critical security patches. Please consider trying out our new [beta version](https://github.com/plaid/plaid-ruby/tree/14.0.0-beta-release).
4
-
5
- The official Ruby bindings for the [Plaid API](https://plaid.com/docs).
3
+ The official Ruby bindings for the [Plaid API](https://plaid.com/docs). It's generated from our [OpenAPI schema](https://github.com/plaid/plaid-openapi).
6
4
 
7
5
  ## Installation
8
6
 
@@ -20,27 +18,28 @@ Or install it yourself as:
20
18
 
21
19
  $ gem install plaid
22
20
 
23
- The gem supports Ruby 2.2+ only.
21
+ The gem supports Ruby 3.0.0+ only.
24
22
 
25
23
  ### Versioning
26
24
 
25
+ Versions > 14 are generated from our OpenAPI schema. For previous non-generated versions, check out [13.2.0](https://github.com/plaid/plaid-ruby/releases/tag/v13.2.0).
26
+
27
27
  Each major version of `plaid-ruby` targets a specific version of the Plaid API:
28
28
 
29
29
  | API version | plaid-ruby release |
30
30
  | ----------- | ------------------ |
31
- | [`2020-09-14`][api-version-2020-09-14] (**latest**) | `12.x.x` |
32
- | [`2019-05-29`][api-version-2019-05-29] (**latest**) | `11.x.x`, `10.x.x`, `9.x.x`, `8.x.x`, `7.x.x` |
31
+ | [`2020-09-14`][api-version-2020-09-14] (**latest**) | `12.x.x`, `13.x.x`, `14.x.x` |
32
+ | [`2019-05-29`][api-version-2019-05-29] | `11.x.x`, `10.x.x`, `9.x.x`, `8.x.x`, `7.x.x` |
33
33
  | [`2018-05-22`][api-version-2018-05-22] | `6.x.x` |
34
34
  | `2017-03-08` | `5.x.x` |
35
35
 
36
36
  For information about what has changed between versions and how to update your integration, head to the [version changelog][version-changelog].
37
37
 
38
+ The plaid-ruby client library is typically updated on a monthly basis. The canonical source for the latest version number is the [client library changelog](https://github.com/plaid/plaid-ruby/blob/master/CHANGELOG.md).
38
39
 
39
40
  ## Usage
40
41
 
41
- This gem wraps the Plaid API, which is fully described in the [documentation](https://plaid.com/docs/api).
42
-
43
- The RubyDoc for the gem is available [here](http://plaid.github.io/plaid-ruby/).
42
+ This gem wraps the Plaid API, which is fully described in the [documentation](https://plaid.com/docs/api) and in the [plaid-openapi](https://github.com/plaid/plaid-openapi) spec.
44
43
 
45
44
  ### Creating a Plaid client
46
45
 
@@ -49,29 +48,74 @@ Create an instance of the client using the `client_id` and `secret` from your Pl
49
48
  ```ruby
50
49
  require 'plaid'
51
50
 
52
- client = Plaid::Client.new(env: :sandbox,
53
- client_id: '***',
54
- secret: '***')
51
+ configuration = Plaid::Configuration.new
52
+ configuration.server_index = Plaid::Configuration::Environment["sandbox"]
53
+ configuration.api_key["PLAID-CLIENT-ID"] = "***"
54
+ configuration.api_key["PLAID-SECRET"] = "***"
55
+
56
+ api_client = Plaid::ApiClient.new(
57
+ configuration
58
+ )
59
+
60
+ client = Plaid::PlaidApi.new(api_client)
55
61
  ```
56
62
 
57
- The `env` field is the environment which the client will be running in. Your choices for the `env` field include:
63
+ The `server_index` field is the environment which the client will be running in. Your choices for the `server_index` field include:
58
64
 
59
- - `:sandbox` allows you to do your initial integrations tests against preloaded data without being billed or making expensive API calls. More information about using the API sandbox can be found on the [API Sandbox documentation](https://plaid.com/docs/api#sandbox).
60
- - `:development` allows you to test against both real and test accounts without being billed. More information about Plaid test accounts can be found in our [API documentation](https://plaid.com/docs/api/#sandbox).
61
- - `:production` is the production environment where you can launch your production ready application and be charged for your Plaid usage.
65
+ - `Plaid::Configuration::Environment["sandbox"]` allows you to do your initial integrations tests against preloaded data without being billed or making expensive API calls. More information about using the API sandbox can be found on the [API Sandbox documentation](https://plaid.com/docs/api#sandbox).
66
+ - `Plaid::Configuration::Environment["development"]` allows you to test against both real and test accounts without being billed. More information about Plaid test accounts can be found in our [API documentation](https://plaid.com/docs/api/#sandbox).
67
+ - `Plaid::Configuration::Environment["production"]` is the production environment where you can launch your production ready application and be charged for your Plaid usage.
62
68
 
63
69
  ### Tuning Faraday
64
70
 
65
71
  The gem uses Faraday to wrap HTTPS connections, which allows you to tune certain params:
66
72
 
67
73
  ```ruby
68
- client = Plaid::Client.new(env: :sandbox, client_id: '***', secret: '***') do |builder|
69
- Plaid::Client.build_default_connection(builder)
74
+ configuration = Plaid::Configuration.new
75
+ api_client = Plaid::ApiClient.new(
76
+ configuration
77
+ )
78
+ api_client.connection.options[:timeout] = 60*20 # 20 minutes
79
+ ```
70
80
 
71
- # Increase network timeout
72
- builder.options[:timeout] = 60*20 # 20 minutes
81
+ To use custom middleware, reinitialize the Faraday::Connection object:
82
+ ```
83
+ configuration = Plaid::Configuration.new
84
+ api_client = Plaid::ApiClient.new(configuration)
85
+ api_client.create_connection do |builder|
86
+ builder.use Faraday::Response::Logger
73
87
  end
74
88
  ```
89
+ ## Data type differences from API and from previous versions
90
+
91
+ ### Dates
92
+
93
+ Dates and datetimes in requests, which are represented as strings in the API and in previous client library versions, are represented in this version of the Ruby client library as Ruby `Date` or `DateTime` objects.
94
+
95
+ Time zone information is required for request fields that accept datetimes. Failing to include time zone information (or passing in a string, instead of a `Date` or `DateTime` object) will result in an error. See the following examples for guidance on `Date` and `DateTime` usage.
96
+
97
+ If the API reference documentation for a field specifies `format: date`, any of following are acceptable:
98
+
99
+ ```rb
100
+ require 'date'
101
+
102
+ # Not an exhaustive list of possible options
103
+ a = Date.new(2022, 5, 5)
104
+ b = Date.new(2022, 5, 5).to_date
105
+ c = Date.parse('2022-05-05')
106
+ d = Date.parse('2022-05-05').to_date
107
+ e = Date.today
108
+ ```
109
+
110
+ If the API reference documentation for a field specifies `format: date-time`, either of the following are acceptable:
111
+
112
+ ```rb
113
+ require 'time'
114
+
115
+ # Not an exhaustive list of possible options
116
+ a = Time.parse("2022-05-06T22:35:49Z").to_datetime
117
+ b = Date.parse("2022-05-06T22:35:49Z").to_datetime
118
+ ```
75
119
 
76
120
  ## Examples
77
121
 
@@ -83,12 +127,16 @@ user = User.find_by!(email: '***')
83
127
  client_user_id = user.id
84
128
 
85
129
  # Create the link_token with all of your configurations
86
- link_token_response = client.link_token.create(
87
- user: { client_user_id: client_user_id.to_s },
88
- client_name: 'My app',
89
- products: %w[auth transactions],
90
- country_codes: ['US'],
91
- language: 'en'
130
+ link_token_create_request = Plaid::LinkTokenCreateRequest.new({
131
+ :user => { :client_user_id => client_user_id.to_s },
132
+ :client_name => 'My app',
133
+ :products => %w[auth transactions],
134
+ :country_codes => ['US'],
135
+ :language => 'en'
136
+ })
137
+
138
+ link_token_response = client.link_token_create(
139
+ link_token_create_request
92
140
  )
93
141
 
94
142
  # Pass the result to your client-side app to initialize Link
@@ -98,53 +146,89 @@ link_token = link_token_response.link_token
98
146
 
99
147
  ### Exchanging a Link public_token for a Plaid access_token
100
148
 
101
- If you have a [Link](https://github.com/plaid/link) `public token`, use this function to get an `access_token`: `client.item.public_token.exchange(public_token)`
149
+ If you have a [Link](https://github.com/plaid/link) `public token`, use this function to get an `access_token`: `client.item_public_token_exchange(request)`
102
150
 
103
151
  An example of the function's usage if you have a `public_token` in hand:
104
152
 
105
153
  ```ruby
106
- response = client.item.public_token.exchange(public_token)
154
+ request = Plaid::ItemPublicTokenExchangeRequest.new
155
+ request.public_token = public_token
156
+
157
+ response = client.item_public_token_exchange(request)
107
158
  access_token = response.access_token
108
159
  ```
109
160
 
110
-
111
161
  ### Deleting an item
112
162
 
113
163
  ```ruby
114
- require 'plaid'
164
+ request = Plaid::ItemPublicTokenExchangeRequest.new
165
+ request.public_token = public_token
115
166
 
116
- client = Plaid::Client.new(env: :sandbox,
117
- client_id: '***',
118
- secret: '***')
119
-
120
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
121
- access_token = exchange_token_response.access_token
167
+ response = client.item_public_token_exchange(request)
168
+ access_token = response.access_token
122
169
 
123
170
  # Provide the access_token for the Item you want to remove
124
- client.item.remove(access_token)
171
+ item_remove_request = Plaid::ItemRemoveRequest.new
172
+ item_remove_request.access_token = access_token
173
+
174
+ client.item_remove(item_remove_request)
125
175
  ```
126
176
 
127
- ### Get paginated transactions
177
+ ### Get paginated transactions (preferred method)
128
178
  ```ruby
129
- require 'plaid'
179
+ request = Plaid::ItemPublicTokenExchangeRequest.new
180
+ request.public_token = public_token
181
+
182
+ response = client.item_public_token_exchange(request)
183
+ access_token = response.access_token
184
+
185
+ transactions_sync_request = Plaid::TransactionsSyncRequest.new
186
+ transactions_sync_request.access_token = access_token
187
+
188
+ transaction_response = client.transactions_sync(transactions_sync_request)
189
+ transactions = transaction_response.transactions
190
+
191
+ # the transactions in the response are paginated, so make multiple calls while
192
+ # updating the cursor to retrieve all transactions
193
+ while transaction_response.has_more
194
+ transactions_sync_request = Plaid::TransactionsSyncRequest.new
195
+ transactions_sync_request.access_token = access_token
196
+ transactions_sync_request.cursor = transaction_response.next_cursor
130
197
 
131
- client = Plaid::Client.new(env: :sandbox,
132
- client_id: '***',
133
- secret: '***')
198
+ transaction_response = client.transactions_sync(transactions_sync_request)
199
+ transactions += transaction_response.transactions
200
+ end
201
+ ```
134
202
 
135
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
136
- access_token = exchange_token_response.access_token
203
+ ### Get paginated transactions (older method)
204
+ ```ruby
205
+ request = Plaid::ItemPublicTokenExchangeRequest.new
206
+ request.public_token = public_token
137
207
 
138
- transaction_response = client.transactions.get(access_token, '2016-07-12', '2017-01-09')
208
+ response = client.item_public_token_exchange(request)
209
+ access_token = response.access_token
210
+
211
+ transactions_get_request = Plaid::TransactionsGetRequest.new
212
+ transactions_get_request.access_token = access_token
213
+ transactions_get_request.start_date = "2020-01-01"
214
+ transactions_get_request.end_date = "2021-01-01"
215
+
216
+ transaction_response = client.transactions_get(transactions_get_request)
139
217
  transactions = transaction_response.transactions
140
218
 
141
219
  # the transactions in the response are paginated, so make multiple calls while
142
220
  # increasing the offset to retrieve all transactions
143
- while transactions.length < transaction_response['total_transactions']
144
- transaction_response = client.transactions.get(access_token,
145
- '2016-07-12',
146
- '2017-01-09',
147
- offset: transactions.length)
221
+ while transactions.length < transaction_response.total_transactions
222
+ options_payload = {}
223
+ options_payload[:offset] = transactions.length
224
+
225
+ transactions_get_request = Plaid::TransactionsGetRequest.new
226
+ transactions_get_request.access_token = access_token
227
+ transactions_get_request.start_date = "2020-01-01"
228
+ transactions_get_request.end_date = "2021-01-01"
229
+ transactions_get_request.options = options_payload
230
+
231
+ transaction_response = client.transactions_get(transactions_get_request)
148
232
  transactions += transaction_response.transactions
149
233
  end
150
234
 
@@ -154,55 +238,56 @@ end
154
238
 
155
239
  If you have an `access_token`, you can use following code to retreive data:
156
240
  ```ruby
157
- require 'plaid'
241
+ request = Plaid::ItemPublicTokenExchangeRequest.new
242
+ request.public_token = public_token
158
243
 
159
- client = Plaid::Client.new(env: :sandbox,
160
- client_id: '***',
161
- secret: '***')
244
+ response = client.item_public_token_exchange(request)
245
+ access_token = response.access_token
162
246
 
163
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
164
- access_token = exchange_token_response.access_token
247
+ auth_get_request = Plaid::AuthGetRequest.new
248
+ auth_get_request.access_token = access_token
165
249
 
166
- auth_response = client.auth.get(access_token)
250
+ auth_response = client.auth_get(auth_get_request)
167
251
  auth = auth_response.auth
168
252
  ```
169
253
 
254
+ There are also a number of other methods you can use to retrieve data:
255
+
256
+ * `client.accounts_get(Plaid::AccountsGetRequest.new({:access_token => access_token, ...}))`: accounts
257
+ * `client.accounts_balance_get(Plaid::AccountsBalanceGetRequest.new({:access_token => access_token, ...}))`: real-time balances
258
+ * `client.auth_get(Plaid::AuthGetRequest.new({:access_token => access_token, ...}))`: auth
259
+ * `client.identity_get(Plaid::IdentityGetRequest.new({:access_token => access_token, ...}))`: identity
260
+ * `client.transactions_get(Plaid::TransactionsGetRequest.new({:access_token => access_token, ...}))`: transactions
261
+ * `client.investments_transactions_get(Plaid::InvestmentsTransactionsGetRequest.new({:access_token => access_token, ...}))`: investment-account transactions
262
+ * `client.investments_holdings_get(Plaid::InvestmentsHoldingsGetRequest.new({:access_token => access_token, ...}))`: investment-account holdings
263
+
264
+
265
+ All of these methods return appropriate data. More information can be found on the [API documentation](https://plaid.com/docs/api).
266
+
170
267
  ### Create a Stripe bank_account_token
171
268
 
172
269
  Exchange a Plaid Link `public_token` for an API `access_token` and a Stripe `bank_account_token`:
173
270
  ```ruby
174
- require 'plaid'
271
+ request = Plaid::ItemPublicTokenExchangeRequest.new
272
+ request.public_token = public_token
175
273
 
176
- client = Plaid::Client.new(env: :sandbox,
177
- client_id: '***',
178
- secret: '***')
274
+ response = client.item_public_token_exchange(request)
275
+ access_token = response.access_token
179
276
 
180
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
181
- access_token = exchange_token_response.access_token
277
+ processor_token_create_request = Plaid::ProcessorStripeBankAccountTokenCreateRequest.new
278
+ processor_token_create_request.access_token = access_token
279
+ processor_token_create_request.account_id = '[Account ID]'
182
280
 
183
- stripe_response = client.processor.stripe.bank_account_token.create(access_token, '[Account ID]')
281
+ stripe_response = client.processor_stripe_bank_account_token_create(processor_token_create_request)
184
282
  bank_account_token = stripe_response.stripe_bank_account_token
185
283
  ```
186
284
 
187
- There are also a number of other methods you can use to retrieve data:
188
-
189
- * `client.accounts.get(access_token, ...)`: accounts
190
- * `client.accounts.balance.get(access_token, ...)`: real-time balances
191
- * `client.auth.get(access_token, ...)`: auth
192
- * `client.identity.get(access_token, ...)`: identity
193
- * `client.transactions.get(access_token, ...)`: transactions
194
- * `client.credit_details.get(access_token, ...)`: credit details
195
- * `client.investments.transactions.get(access_token, ...)`: investment-account transactions
196
- * `client.investments.holdings.get(access_token, ...)`: investment-account holdings
197
-
198
- All of these methods return appropriate data. More information can be found on the [API documentation](https://plaid.com/docs/api).
199
-
200
285
  ### Categories
201
286
 
202
287
  You can request category information:
203
288
 
204
289
  ```ruby
205
- categories = client.categories.get # Array of all known categories
290
+ categories = client.categories_get # Array of all known categories
206
291
  ```
207
292
 
208
293
  ### Institutions
@@ -210,7 +295,13 @@ categories = client.categories.get # Array of all known categories
210
295
  Financial institution information is available as shown below where the function arguments represent count and offset:
211
296
 
212
297
  ```ruby
213
- institutions = client.institutions.get(count: 3, offset: 1)
298
+ institutions_get_request = Plaid::InstitutionsGetRequest.new({
299
+ :count => 3,
300
+ :offset => 1,
301
+ :country_codes => ["US"],
302
+ })
303
+
304
+ response = client.institutions_get(institutions_get_request)
214
305
  ```
215
306
 
216
307
  ## Errors
@@ -218,38 +309,20 @@ institutions = client.institutions.get(count: 3, offset: 1)
218
309
  Any methods making API calls will result in an exception raised unless the response code is "200: Success" or
219
310
  "210: MFA Required".
220
311
 
221
- `Plaid::InvalidRequestError` is returned when the request is malformed and cannot be processed.
222
-
223
- `Plaid::InvalidInputError` is returned when all fields are provided and are in the correct format, but the values provided are incorrect in some way.
224
-
225
- `Plaid::RateLimitExceededError` returned when the request is valid but has exceeded established rate limits.
226
-
227
- `Plaid::APIError` is returned during planned maintenance windows and in response to API internal server errors.
228
-
229
- `Plaid::ItemError` indicates that information provided for the Item (such as credentials or MFA) may be invalid or that the Item is not supported on Plaid's platform.
230
-
231
- `Plaid::InstitutionError` is returned when there are errors for the requested financial institution.
312
+ `Plaid::ApiError` is returned in response to API internal server errors.
232
313
 
233
314
  Read more about response codes and their meaning in the
234
315
  [Plaid documentation](https://plaid.com/docs/api).
235
316
 
236
317
  ## Response Objects
237
318
 
238
- Any API call returns a response object which is accessible by dot notation
239
- (`response.foo.bar`) or Symbols and Strings as keys: `response[:foo][:bar]`
240
- and `response['foo']['bar']`. Expected keys for all types of responses are defined,
319
+ All API calls return a response object that is accessible only with dot notation
320
+ (i.e., `response.foo.bar`) and not with bracket notation. Expected keys for all types of responses are defined,
241
321
  and any attempt to access an unknown key will cause `NoMethodError` exception.
242
322
 
243
- ## Network Timeout
244
-
245
- A network timeout value is currently defaulted at 600 seconds = 10 minutes.
246
- Some requests from the Plaid API may take longer than others and we want to
247
- make sure that all valid requests have a chance to complete. Adjust this value
248
- if necessary (see "Tuning Faraday").
249
-
250
323
  ## Contributing
251
324
 
252
- Bug reports and pull requests are welcome on GitHub at https://github.com/plaid/plaid-ruby. See also [contributing guidelines](CONTRIBUTING.md).
325
+ Bug reports are welcome on GitHub at https://github.com/plaid/plaid-ruby. See also [contributing guidelines](CONTRIBUTING.md). As the library is auto-generated, pull requests are automatically closed.
253
326
 
254
327
  ## License
255
328