plaid 13.2.0 → 14.0.0.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (690) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +73 -9
  3. data/CONTRIBUTING.md +2 -32
  4. data/Dockerfile +11 -0
  5. data/Gemfile.lock +45 -40
  6. data/LICENSE.txt +1 -1
  7. data/PUBLISH.md +0 -1
  8. data/README.md +99 -93
  9. data/Rakefile +8 -79
  10. data/UPGRADING.md +4 -0
  11. data/docs/ACHClass.md +15 -0
  12. data/docs/APR.md +24 -0
  13. data/docs/AccountAssets.md +40 -0
  14. data/docs/AccountAssetsAllOf.md +24 -0
  15. data/docs/AccountBalance.md +26 -0
  16. data/docs/AccountBase.md +32 -0
  17. data/docs/AccountFiltersResponse.md +24 -0
  18. data/docs/AccountIdentity.md +34 -0
  19. data/docs/AccountIdentityAllOf.md +18 -0
  20. data/docs/AccountSubtype.md +15 -0
  21. data/docs/AccountType.md +15 -0
  22. data/docs/AccountsBalanceGetRequest.md +24 -0
  23. data/docs/AccountsBalanceGetRequestOptions.md +18 -0
  24. data/docs/AccountsGetRequest.md +24 -0
  25. data/docs/AccountsGetRequestOptions.md +18 -0
  26. data/docs/AccountsGetResponse.md +22 -0
  27. data/docs/Address.md +20 -0
  28. data/docs/AddressData.md +26 -0
  29. data/docs/Amount.md +20 -0
  30. data/docs/AssetReport.md +28 -0
  31. data/docs/AssetReportAuditCopyCreateRequest.md +24 -0
  32. data/docs/AssetReportAuditCopyCreateResponse.md +20 -0
  33. data/docs/AssetReportAuditCopyGetRequest.md +22 -0
  34. data/docs/AssetReportAuditCopyRemoveRequest.md +22 -0
  35. data/docs/AssetReportAuditCopyRemoveResponse.md +20 -0
  36. data/docs/AssetReportCreateRequest.md +26 -0
  37. data/docs/AssetReportCreateRequestOptions.md +22 -0
  38. data/docs/AssetReportCreateResponse.md +22 -0
  39. data/docs/AssetReportFilterRequest.md +24 -0
  40. data/docs/AssetReportFilterResponse.md +22 -0
  41. data/docs/AssetReportGetRequest.md +24 -0
  42. data/docs/AssetReportGetResponse.md +22 -0
  43. data/docs/AssetReportItem.md +26 -0
  44. data/docs/AssetReportPDFGetRequest.md +22 -0
  45. data/docs/AssetReportRefreshRequest.md +26 -0
  46. data/docs/AssetReportRefreshRequestOptions.md +22 -0
  47. data/docs/AssetReportRefreshResponse.md +22 -0
  48. data/docs/AssetReportRemoveRequest.md +22 -0
  49. data/docs/AssetReportRemoveResponse.md +20 -0
  50. data/docs/AssetReportTransaction.md +58 -0
  51. data/docs/AssetReportTransactionAllOf.md +20 -0
  52. data/docs/AssetReportUser.md +30 -0
  53. data/docs/AssetsErrorWebhook.md +24 -0
  54. data/docs/AssetsProductReadyWebhook.md +22 -0
  55. data/docs/AuthGetNumbers.md +24 -0
  56. data/docs/AuthGetRequest.md +24 -0
  57. data/docs/AuthGetRequestOptions.md +18 -0
  58. data/docs/AuthGetResponse.md +24 -0
  59. data/docs/AutomaticallyVerifiedWebhook.md +24 -0
  60. data/docs/BankTransfer.md +50 -0
  61. data/docs/BankTransferBalance.md +20 -0
  62. data/docs/BankTransferBalanceGetRequest.md +22 -0
  63. data/docs/BankTransferBalanceGetResponse.md +22 -0
  64. data/docs/BankTransferCancelRequest.md +22 -0
  65. data/docs/BankTransferCancelResponse.md +18 -0
  66. data/docs/BankTransferCreateRequest.md +46 -0
  67. data/docs/BankTransferCreateResponse.md +20 -0
  68. data/docs/BankTransferDirection.md +15 -0
  69. data/docs/BankTransferEvent.md +40 -0
  70. data/docs/BankTransferEventListRequest.md +40 -0
  71. data/docs/BankTransferEventListResponse.md +20 -0
  72. data/docs/BankTransferEventSyncRequest.md +24 -0
  73. data/docs/BankTransferEventSyncResponse.md +20 -0
  74. data/docs/BankTransferEventType.md +15 -0
  75. data/docs/BankTransferFailure.md +20 -0
  76. data/docs/BankTransferGetRequest.md +22 -0
  77. data/docs/BankTransferGetResponse.md +20 -0
  78. data/docs/BankTransferListRequest.md +32 -0
  79. data/docs/BankTransferListResponse.md +20 -0
  80. data/docs/BankTransferMigrateAccountRequest.md +26 -0
  81. data/docs/BankTransferMigrateAccountResponse.md +22 -0
  82. data/docs/BankTransferNetwork.md +15 -0
  83. data/docs/BankTransferReceiverDetails.md +18 -0
  84. data/docs/BankTransferStatus.md +15 -0
  85. data/docs/BankTransferType.md +15 -0
  86. data/docs/BankTransferUser.md +22 -0
  87. data/docs/CategoriesGetResponse.md +20 -0
  88. data/docs/Category.md +22 -0
  89. data/docs/Cause.md +20 -0
  90. data/docs/CountryCode.md +15 -0
  91. data/docs/CreditCardLiability.md +34 -0
  92. data/docs/CreditFilter.md +18 -0
  93. data/docs/DefaultUpdateWebhook.md +26 -0
  94. data/docs/DepositSwitchAddressData.md +26 -0
  95. data/docs/DepositSwitchAltCreateRequest.md +24 -0
  96. data/docs/DepositSwitchAltCreateResponse.md +20 -0
  97. data/docs/DepositSwitchCreateRequest.md +24 -0
  98. data/docs/DepositSwitchCreateResponse.md +20 -0
  99. data/docs/DepositSwitchGetRequest.md +22 -0
  100. data/docs/DepositSwitchGetResponse.md +38 -0
  101. data/docs/DepositSwitchTargetAccount.md +24 -0
  102. data/docs/DepositSwitchTargetUser.md +28 -0
  103. data/docs/DepositSwitchTokenCreateRequest.md +22 -0
  104. data/docs/DepositSwitchTokenCreateResponse.md +22 -0
  105. data/docs/DepositoryFilter.md +18 -0
  106. data/docs/Email.md +22 -0
  107. data/docs/Employee.md +22 -0
  108. data/docs/EmployeeIncomeSummaryFieldString.md +20 -0
  109. data/docs/Employer.md +24 -0
  110. data/docs/EmployerIncomeSummaryFieldString.md +20 -0
  111. data/docs/EmployersSearchRequest.md +24 -0
  112. data/docs/EmployersSearchResponse.md +20 -0
  113. data/docs/Error.md +34 -0
  114. data/docs/ExternalPaymentSchedule.md +24 -0
  115. data/docs/HealthIncident.md +24 -0
  116. data/docs/HistoricalBalance.md +24 -0
  117. data/docs/HistoricalUpdateWebhook.md +26 -0
  118. data/docs/Holding.md +34 -0
  119. data/docs/HoldingsDefaultUpdateWebhook.md +28 -0
  120. data/docs/IdentityGetRequest.md +24 -0
  121. data/docs/IdentityGetRequestOptions.md +18 -0
  122. data/docs/IdentityGetResponse.md +22 -0
  123. data/docs/IncidentUpdate.md +22 -0
  124. data/docs/IncomeBreakdown.md +24 -0
  125. data/docs/IncomeSummary.md +30 -0
  126. data/docs/IncomeSummaryFieldNumber.md +20 -0
  127. data/docs/IncomeSummaryFieldString.md +20 -0
  128. data/docs/IncomeVerificationCreateRequest.md +22 -0
  129. data/docs/IncomeVerificationCreateResponse.md +20 -0
  130. data/docs/IncomeVerificationDocumentsDownloadRequest.md +22 -0
  131. data/docs/IncomeVerificationDocumentsDownloadResponse.md +18 -0
  132. data/docs/IncomeVerificationPaystubGetRequest.md +22 -0
  133. data/docs/IncomeVerificationPaystubGetResponse.md +20 -0
  134. data/docs/IncomeVerificationStatusWebhook.md +24 -0
  135. data/docs/IncomeVerificationSummaryGetRequest.md +22 -0
  136. data/docs/IncomeVerificationSummaryGetResponse.md +20 -0
  137. data/docs/IncomeVerificationWebhookStatus.md +18 -0
  138. data/docs/InflowModel.md +26 -0
  139. data/docs/InitialUpdateWebhook.md +26 -0
  140. data/docs/Institution.md +36 -0
  141. data/docs/InstitutionStatus.md +30 -0
  142. data/docs/InstitutionsGetByIdRequest.md +26 -0
  143. data/docs/InstitutionsGetByIdRequestOptions.md +20 -0
  144. data/docs/InstitutionsGetByIdResponse.md +20 -0
  145. data/docs/InstitutionsGetRequest.md +28 -0
  146. data/docs/InstitutionsGetRequestOptions.md +24 -0
  147. data/docs/InstitutionsGetResponse.md +22 -0
  148. data/docs/InstitutionsSearchAccountFilter.md +24 -0
  149. data/docs/InstitutionsSearchRequest.md +28 -0
  150. data/docs/InstitutionsSearchRequestOptions.md +22 -0
  151. data/docs/InstitutionsSearchResponse.md +20 -0
  152. data/docs/InvestmentFilter.md +18 -0
  153. data/docs/InvestmentHoldingsGetRequestOptions.md +18 -0
  154. data/docs/InvestmentTransaction.md +44 -0
  155. data/docs/InvestmentsDefaultUpdateWebhook.md +28 -0
  156. data/docs/InvestmentsHoldingsGetRequest.md +24 -0
  157. data/docs/InvestmentsHoldingsGetResponse.md +26 -0
  158. data/docs/InvestmentsTransactionsGetRequest.md +28 -0
  159. data/docs/InvestmentsTransactionsGetRequestOptions.md +22 -0
  160. data/docs/InvestmentsTransactionsGetResponse.md +28 -0
  161. data/docs/Item.md +32 -0
  162. data/docs/ItemAccessTokenInvalidateRequest.md +22 -0
  163. data/docs/ItemAccessTokenInvalidateResponse.md +20 -0
  164. data/docs/ItemErrorWebhook.md +24 -0
  165. data/docs/ItemGetRequest.md +22 -0
  166. data/docs/ItemGetResponse.md +24 -0
  167. data/docs/ItemImportRequest.md +26 -0
  168. data/docs/ItemImportRequestOptions.md +18 -0
  169. data/docs/ItemImportRequestUserAuth.md +20 -0
  170. data/docs/ItemImportResponse.md +20 -0
  171. data/docs/ItemProductReadyWebhook.md +24 -0
  172. data/docs/ItemPublicTokenCreateRequest.md +22 -0
  173. data/docs/ItemPublicTokenCreateResponse.md +22 -0
  174. data/docs/ItemPublicTokenExchangeRequest.md +22 -0
  175. data/docs/ItemPublicTokenExchangeResponse.md +22 -0
  176. data/docs/ItemRemoveRequest.md +22 -0
  177. data/docs/ItemRemoveResponse.md +18 -0
  178. data/docs/ItemStatus.md +22 -0
  179. data/docs/ItemStatusInvestments.md +20 -0
  180. data/docs/ItemStatusLastWebhook.md +20 -0
  181. data/docs/ItemStatusTransactions.md +20 -0
  182. data/docs/ItemWebhookUpdateRequest.md +24 -0
  183. data/docs/ItemWebhookUpdateResponse.md +20 -0
  184. data/docs/JWKPublicKey.md +34 -0
  185. data/docs/JWTHeader.md +18 -0
  186. data/docs/LiabilitiesGetRequest.md +24 -0
  187. data/docs/LiabilitiesGetRequestOptions.md +18 -0
  188. data/docs/LiabilitiesGetResponse.md +24 -0
  189. data/docs/LiabilitiesObject.md +22 -0
  190. data/docs/LiabilityOverride.md +66 -0
  191. data/docs/LinkTokenAccountFilters.md +24 -0
  192. data/docs/LinkTokenCreateRequest.md +48 -0
  193. data/docs/LinkTokenCreateRequestAccountSubtypes.md +24 -0
  194. data/docs/LinkTokenCreateRequestAccountSubtypesCredit.md +18 -0
  195. data/docs/LinkTokenCreateRequestAccountSubtypesDepository.md +18 -0
  196. data/docs/LinkTokenCreateRequestAccountSubtypesInvestment.md +18 -0
  197. data/docs/LinkTokenCreateRequestAccountSubtypesLoan.md +18 -0
  198. data/docs/LinkTokenCreateRequestDepositSwitch.md +18 -0
  199. data/docs/LinkTokenCreateRequestIncomeVerification.md +20 -0
  200. data/docs/LinkTokenCreateRequestPaymentInitiation.md +18 -0
  201. data/docs/LinkTokenCreateRequestUser.md +32 -0
  202. data/docs/LinkTokenCreateResponse.md +22 -0
  203. data/docs/LinkTokenGetMetadataResponse.md +30 -0
  204. data/docs/LinkTokenGetRequest.md +22 -0
  205. data/docs/LinkTokenGetResponse.md +26 -0
  206. data/docs/LoanFilter.md +18 -0
  207. data/docs/Location.md +32 -0
  208. data/docs/MFA.md +26 -0
  209. data/docs/Meta.md +22 -0
  210. data/docs/MortgageInterestRate.md +20 -0
  211. data/docs/MortgageLiability.md +56 -0
  212. data/docs/MortgagePropertyAddress.md +26 -0
  213. data/docs/NullableAccessToken.md +15 -0
  214. data/docs/NullableAddress.md +20 -0
  215. data/docs/NullableAddressData.md +26 -0
  216. data/docs/NullableItemStatus.md +22 -0
  217. data/docs/NullableNumbersACH.md +24 -0
  218. data/docs/NullableNumbersBACS.md +22 -0
  219. data/docs/NullableNumbersEFT.md +24 -0
  220. data/docs/NullableNumbersInternational.md +22 -0
  221. data/docs/NullableRecipientBACS.md +20 -0
  222. data/docs/Numbers.md +32 -0
  223. data/docs/NumbersACH.md +24 -0
  224. data/docs/NumbersBACS.md +22 -0
  225. data/docs/NumbersEFT.md +24 -0
  226. data/docs/NumbersInternational.md +22 -0
  227. data/docs/OverrideAccounts.md +38 -0
  228. data/docs/Owner.md +24 -0
  229. data/docs/OwnerOverride.md +24 -0
  230. data/docs/PSLFStatus.md +22 -0
  231. data/docs/PayFrequency.md +20 -0
  232. data/docs/PayPeriodDetails.md +26 -0
  233. data/docs/PaymentAmount.md +20 -0
  234. data/docs/PaymentInitiationAddress.md +24 -0
  235. data/docs/PaymentInitiationPaymentCreateRequest.md +28 -0
  236. data/docs/PaymentInitiationPaymentCreateResponse.md +22 -0
  237. data/docs/PaymentInitiationPaymentGetRequest.md +22 -0
  238. data/docs/PaymentInitiationPaymentGetResponse.md +32 -0
  239. data/docs/PaymentInitiationPaymentListRequest.md +24 -0
  240. data/docs/PaymentInitiationPaymentListResponse.md +22 -0
  241. data/docs/PaymentInitiationPaymentTokenCreateRequest.md +22 -0
  242. data/docs/PaymentInitiationPaymentTokenCreateResponse.md +22 -0
  243. data/docs/PaymentInitiationRecipient.md +26 -0
  244. data/docs/PaymentInitiationRecipientBacs.md +20 -0
  245. data/docs/PaymentInitiationRecipientCreateRequest.md +28 -0
  246. data/docs/PaymentInitiationRecipientCreateResponse.md +20 -0
  247. data/docs/PaymentInitiationRecipientGetRequest.md +22 -0
  248. data/docs/PaymentInitiationRecipientGetResponse.md +28 -0
  249. data/docs/PaymentInitiationRecipientListRequest.md +20 -0
  250. data/docs/PaymentInitiationRecipientListResponse.md +20 -0
  251. data/docs/PaymentMeta.md +32 -0
  252. data/docs/PaymentStatusUpdateWebhook.md +30 -0
  253. data/docs/Paystub.md +30 -0
  254. data/docs/PaystubDeduction.md +22 -0
  255. data/docs/PaystubYTDDetails.md +20 -0
  256. data/docs/PendingExpirationWebhook.md +24 -0
  257. data/docs/PhoneNumber.md +22 -0
  258. data/docs/PlaidApi.md +5580 -0
  259. data/docs/ProcessorApexProcessorTokenCreateRequest.md +24 -0
  260. data/docs/ProcessorAuthGetRequest.md +22 -0
  261. data/docs/ProcessorAuthGetResponse.md +22 -0
  262. data/docs/ProcessorBalanceGetRequest.md +22 -0
  263. data/docs/ProcessorBalanceGetResponse.md +20 -0
  264. data/docs/ProcessorIdentityGetRequest.md +22 -0
  265. data/docs/ProcessorIdentityGetResponse.md +20 -0
  266. data/docs/ProcessorNumber.md +24 -0
  267. data/docs/ProcessorStripeBankAccountTokenCreateRequest.md +24 -0
  268. data/docs/ProcessorStripeBankAccountTokenCreateResponse.md +20 -0
  269. data/docs/ProcessorTokenCreateRequest.md +26 -0
  270. data/docs/ProcessorTokenCreateResponse.md +20 -0
  271. data/docs/ProductStatus.md +22 -0
  272. data/docs/ProductStatusBreakdown.md +24 -0
  273. data/docs/Products.md +15 -0
  274. data/docs/ProjectedIncomeSummaryFieldNumber.md +20 -0
  275. data/docs/RecaptchaRequiredError.md +30 -0
  276. data/docs/RecipientBACS.md +20 -0
  277. data/docs/SandboxBankTransferSimulateRequest.md +26 -0
  278. data/docs/SandboxBankTransferSimulateResponse.md +18 -0
  279. data/docs/SandboxItemFireWebhookRequest.md +24 -0
  280. data/docs/SandboxItemFireWebhookResponse.md +20 -0
  281. data/docs/SandboxItemResetLoginRequest.md +22 -0
  282. data/docs/SandboxItemResetLoginResponse.md +20 -0
  283. data/docs/SandboxItemSetVerificationStatusRequest.md +26 -0
  284. data/docs/SandboxItemSetVerificationStatusResponse.md +18 -0
  285. data/docs/SandboxProcessorTokenCreateRequest.md +24 -0
  286. data/docs/SandboxProcessorTokenCreateRequestOptions.md +20 -0
  287. data/docs/SandboxProcessorTokenCreateResponse.md +20 -0
  288. data/docs/SandboxPublicTokenCreateRequest.md +26 -0
  289. data/docs/SandboxPublicTokenCreateRequestOptions.md +24 -0
  290. data/docs/SandboxPublicTokenCreateRequestOptionsTransactions.md +20 -0
  291. data/docs/SandboxPublicTokenCreateResponse.md +20 -0
  292. data/docs/Security.md +46 -0
  293. data/docs/ServicerAddressData.md +26 -0
  294. data/docs/StandaloneAccountType.md +26 -0
  295. data/docs/StandaloneCurrencyCodeList.md +20 -0
  296. data/docs/StandaloneInvestmentTransactionSubtype.md +104 -0
  297. data/docs/StandaloneInvestmentTransactionType.md +28 -0
  298. data/docs/StudentLoan.md +66 -0
  299. data/docs/StudentLoanRepaymentModel.md +22 -0
  300. data/docs/StudentLoanStatus.md +20 -0
  301. data/docs/StudentRepaymentPlan.md +20 -0
  302. data/docs/Transaction.md +54 -0
  303. data/docs/TransactionCode.md +15 -0
  304. data/docs/TransactionData.md +26 -0
  305. data/docs/TransactionOverride.md +26 -0
  306. data/docs/TransactionsGetRequest.md +28 -0
  307. data/docs/TransactionsGetRequestOptions.md +22 -0
  308. data/docs/TransactionsGetResponse.md +26 -0
  309. data/docs/TransactionsRefreshRequest.md +22 -0
  310. data/docs/TransactionsRefreshResponse.md +18 -0
  311. data/docs/TransactionsRemovedWebhook.md +26 -0
  312. data/docs/UserCustomPassword.md +28 -0
  313. data/docs/UserPermissionRevokedWebhook.md +24 -0
  314. data/docs/VerificationExpiredWebhook.md +24 -0
  315. data/docs/VerificationStatus.md +15 -0
  316. data/docs/Warning.md +22 -0
  317. data/docs/WebhookUpdateAcknowledgedWebhook.md +26 -0
  318. data/docs/WebhookVerificationKeyGetRequest.md +22 -0
  319. data/docs/WebhookVerificationKeyGetResponse.md +20 -0
  320. data/docs/YTDGrossIncomeSummaryFieldNumber.md +20 -0
  321. data/docs/YTDNetIncomeSummaryFieldNumber.md +20 -0
  322. data/lib/plaid.rb +343 -61
  323. data/lib/plaid/api/plaid_api.rb +4414 -0
  324. data/lib/plaid/api_client.rb +383 -0
  325. data/lib/plaid/api_error.rb +57 -0
  326. data/lib/plaid/configuration.rb +297 -0
  327. data/lib/plaid/models/account_assets.rb +406 -0
  328. data/lib/plaid/models/account_assets_all_of.rb +263 -0
  329. data/lib/plaid/models/account_balance.rb +269 -0
  330. data/lib/plaid/models/account_base.rb +345 -0
  331. data/lib/plaid/models/account_filters_response.rb +246 -0
  332. data/lib/plaid/models/account_identity.rb +369 -0
  333. data/lib/plaid/models/account_identity_all_of.rb +226 -0
  334. data/lib/plaid/models/account_subtype.rb +101 -0
  335. data/lib/plaid/models/account_type.rb +41 -0
  336. data/lib/plaid/models/accounts_balance_get_request.rb +254 -0
  337. data/lib/plaid/models/accounts_balance_get_request_options.rb +222 -0
  338. data/lib/plaid/models/accounts_get_request.rb +254 -0
  339. data/lib/plaid/models/accounts_get_request_options.rb +222 -0
  340. data/lib/plaid/models/accounts_get_response.rb +256 -0
  341. data/lib/plaid/models/ach_class.rb +50 -0
  342. data/lib/plaid/models/address.rb +235 -0
  343. data/lib/plaid/models/address_data.rb +277 -0
  344. data/lib/plaid/models/amount.rb +274 -0
  345. data/lib/plaid/models/apr.rb +296 -0
  346. data/lib/plaid/models/asset_report.rb +301 -0
  347. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +260 -0
  348. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +240 -0
  349. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +245 -0
  350. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +245 -0
  351. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +240 -0
  352. data/lib/plaid/models/asset_report_create_request.rb +299 -0
  353. data/lib/plaid/models/asset_report_create_request_options.rb +239 -0
  354. data/lib/plaid/models/asset_report_create_response.rb +255 -0
  355. data/lib/plaid/models/asset_report_filter_request.rb +262 -0
  356. data/lib/plaid/models/asset_report_filter_response.rb +255 -0
  357. data/lib/plaid/models/asset_report_get_request.rb +255 -0
  358. data/lib/plaid/models/asset_report_get_response.rb +256 -0
  359. data/lib/plaid/models/asset_report_item.rb +287 -0
  360. data/lib/plaid/models/asset_report_pdf_get_request.rb +245 -0
  361. data/lib/plaid/models/asset_report_refresh_request.rb +288 -0
  362. data/lib/plaid/models/asset_report_refresh_request_options.rb +239 -0
  363. data/lib/plaid/models/asset_report_refresh_response.rb +255 -0
  364. data/lib/plaid/models/asset_report_remove_request.rb +245 -0
  365. data/lib/plaid/models/asset_report_remove_response.rb +240 -0
  366. data/lib/plaid/models/asset_report_transaction.rb +511 -0
  367. data/lib/plaid/models/asset_report_transaction_all_of.rb +235 -0
  368. data/lib/plaid/models/asset_report_user.rb +287 -0
  369. data/lib/plaid/models/assets_error_webhook.rb +265 -0
  370. data/lib/plaid/models/assets_product_ready_webhook.rb +255 -0
  371. data/lib/plaid/models/auth_get_numbers.rb +258 -0
  372. data/lib/plaid/models/auth_get_request.rb +254 -0
  373. data/lib/plaid/models/auth_get_request_options.rb +222 -0
  374. data/lib/plaid/models/auth_get_response.rb +270 -0
  375. data/lib/plaid/models/automatically_verified_webhook.rb +270 -0
  376. data/lib/plaid/models/bank_transfer.rb +444 -0
  377. data/lib/plaid/models/bank_transfer_balance.rb +239 -0
  378. data/lib/plaid/models/bank_transfer_balance_get_request.rb +241 -0
  379. data/lib/plaid/models/bank_transfer_balance_get_response.rb +250 -0
  380. data/lib/plaid/models/bank_transfer_cancel_request.rb +245 -0
  381. data/lib/plaid/models/bank_transfer_cancel_response.rb +225 -0
  382. data/lib/plaid/models/bank_transfer_create_request.rb +459 -0
  383. data/lib/plaid/models/bank_transfer_create_response.rb +239 -0
  384. data/lib/plaid/models/bank_transfer_direction.rb +37 -0
  385. data/lib/plaid/models/bank_transfer_event.rb +388 -0
  386. data/lib/plaid/models/bank_transfer_event_list_request.rb +418 -0
  387. data/lib/plaid/models/bank_transfer_event_list_response.rb +241 -0
  388. data/lib/plaid/models/bank_transfer_event_sync_request.rb +301 -0
  389. data/lib/plaid/models/bank_transfer_event_sync_response.rb +241 -0
  390. data/lib/plaid/models/bank_transfer_event_type.rb +42 -0
  391. data/lib/plaid/models/bank_transfer_failure.rb +231 -0
  392. data/lib/plaid/models/bank_transfer_get_request.rb +245 -0
  393. data/lib/plaid/models/bank_transfer_get_response.rb +239 -0
  394. data/lib/plaid/models/bank_transfer_list_request.rb +336 -0
  395. data/lib/plaid/models/bank_transfer_list_response.rb +241 -0
  396. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +275 -0
  397. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +255 -0
  398. data/lib/plaid/models/bank_transfer_network.rb +38 -0
  399. data/lib/plaid/models/bank_transfer_receiver_details.rb +255 -0
  400. data/lib/plaid/models/bank_transfer_status.rb +40 -0
  401. data/lib/plaid/models/bank_transfer_type.rb +37 -0
  402. data/lib/plaid/models/bank_transfer_user.rb +246 -0
  403. data/lib/plaid/models/categories_get_response.rb +242 -0
  404. data/lib/plaid/models/category.rb +257 -0
  405. data/lib/plaid/models/cause.rb +235 -0
  406. data/lib/plaid/models/country_code.rb +42 -0
  407. data/lib/plaid/models/credit_card_liability.rb +339 -0
  408. data/lib/plaid/models/credit_filter.rb +227 -0
  409. data/lib/plaid/models/default_update_webhook.rb +280 -0
  410. data/lib/plaid/models/deposit_switch_address_data.rb +285 -0
  411. data/lib/plaid/models/deposit_switch_alt_create_request.rb +258 -0
  412. data/lib/plaid/models/deposit_switch_alt_create_response.rb +240 -0
  413. data/lib/plaid/models/deposit_switch_create_request.rb +260 -0
  414. data/lib/plaid/models/deposit_switch_create_response.rb +240 -0
  415. data/lib/plaid/models/deposit_switch_get_request.rb +245 -0
  416. data/lib/plaid/models/deposit_switch_get_response.rb +381 -0
  417. data/lib/plaid/models/deposit_switch_target_account.rb +303 -0
  418. data/lib/plaid/models/deposit_switch_target_user.rb +288 -0
  419. data/lib/plaid/models/deposit_switch_token_create_request.rb +245 -0
  420. data/lib/plaid/models/deposit_switch_token_create_response.rb +255 -0
  421. data/lib/plaid/models/depository_filter.rb +227 -0
  422. data/lib/plaid/models/email.rb +289 -0
  423. data/lib/plaid/models/employee.rb +242 -0
  424. data/lib/plaid/models/employee_income_summary_field_string.rb +245 -0
  425. data/lib/plaid/models/employer.rb +261 -0
  426. data/lib/plaid/models/employer_income_summary_field_string.rb +245 -0
  427. data/lib/plaid/models/employers_search_request.rb +262 -0
  428. data/lib/plaid/models/employers_search_response.rb +242 -0
  429. data/lib/plaid/models/error.rb +360 -0
  430. data/lib/plaid/models/external_payment_schedule.rb +265 -0
  431. data/lib/plaid/models/health_incident.rb +253 -0
  432. data/lib/plaid/models/historical_balance.rb +262 -0
  433. data/lib/plaid/models/historical_update_webhook.rb +280 -0
  434. data/lib/plaid/models/holding.rb +329 -0
  435. data/lib/plaid/models/holdings_default_update_webhook.rb +295 -0
  436. data/lib/plaid/models/identity_get_request.rb +254 -0
  437. data/lib/plaid/models/identity_get_request_options.rb +222 -0
  438. data/lib/plaid/models/identity_get_response.rb +256 -0
  439. data/lib/plaid/models/incident_update.rb +273 -0
  440. data/lib/plaid/models/income_breakdown.rb +253 -0
  441. data/lib/plaid/models/income_summary.rb +275 -0
  442. data/lib/plaid/models/income_summary_field_number.rb +238 -0
  443. data/lib/plaid/models/income_summary_field_string.rb +238 -0
  444. data/lib/plaid/models/income_verification_create_request.rb +245 -0
  445. data/lib/plaid/models/income_verification_create_response.rb +240 -0
  446. data/lib/plaid/models/income_verification_documents_download_request.rb +245 -0
  447. data/lib/plaid/models/income_verification_documents_download_response.rb +224 -0
  448. data/lib/plaid/models/income_verification_paystub_get_request.rb +245 -0
  449. data/lib/plaid/models/income_verification_paystub_get_response.rb +229 -0
  450. data/lib/plaid/models/income_verification_status_webhook.rb +270 -0
  451. data/lib/plaid/models/income_verification_summary_get_request.rb +245 -0
  452. data/lib/plaid/models/income_verification_summary_get_response.rb +242 -0
  453. data/lib/plaid/models/income_verification_webhook_status.rb +223 -0
  454. data/lib/plaid/models/inflow_model.rb +285 -0
  455. data/lib/plaid/models/initial_update_webhook.rb +281 -0
  456. data/lib/plaid/models/institution.rb +344 -0
  457. data/lib/plaid/models/institution_status.rb +307 -0
  458. data/lib/plaid/models/institutions_get_by_id_request.rb +271 -0
  459. data/lib/plaid/models/institutions_get_by_id_request_options.rb +234 -0
  460. data/lib/plaid/models/institutions_get_by_id_response.rb +239 -0
  461. data/lib/plaid/models/institutions_get_request.rb +305 -0
  462. data/lib/plaid/models/institutions_get_request_options.rb +254 -0
  463. data/lib/plaid/models/institutions_get_response.rb +257 -0
  464. data/lib/plaid/models/institutions_search_account_filter.rb +253 -0
  465. data/lib/plaid/models/institutions_search_request.rb +288 -0
  466. data/lib/plaid/models/institutions_search_request_options.rb +239 -0
  467. data/lib/plaid/models/institutions_search_response.rb +242 -0
  468. data/lib/plaid/models/investment_filter.rb +227 -0
  469. data/lib/plaid/models/investment_holdings_get_request_options.rb +222 -0
  470. data/lib/plaid/models/investment_transaction.rb +445 -0
  471. data/lib/plaid/models/investments_default_update_webhook.rb +295 -0
  472. data/lib/plaid/models/investments_holdings_get_request.rb +254 -0
  473. data/lib/plaid/models/investments_holdings_get_response.rb +290 -0
  474. data/lib/plaid/models/investments_transactions_get_request.rb +284 -0
  475. data/lib/plaid/models/investments_transactions_get_request_options.rb +285 -0
  476. data/lib/plaid/models/investments_transactions_get_response.rb +305 -0
  477. data/lib/plaid/models/item.rb +311 -0
  478. data/lib/plaid/models/item_access_token_invalidate_request.rb +245 -0
  479. data/lib/plaid/models/item_access_token_invalidate_response.rb +240 -0
  480. data/lib/plaid/models/item_error_webhook.rb +265 -0
  481. data/lib/plaid/models/item_get_request.rb +245 -0
  482. data/lib/plaid/models/item_get_response.rb +259 -0
  483. data/lib/plaid/models/item_import_request.rb +270 -0
  484. data/lib/plaid/models/item_import_request_options.rb +220 -0
  485. data/lib/plaid/models/item_import_request_user_auth.rb +240 -0
  486. data/lib/plaid/models/item_import_response.rb +240 -0
  487. data/lib/plaid/models/item_product_ready_webhook.rb +265 -0
  488. data/lib/plaid/models/item_public_token_create_request.rb +245 -0
  489. data/lib/plaid/models/item_public_token_create_response.rb +249 -0
  490. data/lib/plaid/models/item_public_token_exchange_request.rb +245 -0
  491. data/lib/plaid/models/item_public_token_exchange_response.rb +255 -0
  492. data/lib/plaid/models/item_remove_request.rb +245 -0
  493. data/lib/plaid/models/item_remove_response.rb +225 -0
  494. data/lib/plaid/models/item_status.rb +240 -0
  495. data/lib/plaid/models/item_status_investments.rb +232 -0
  496. data/lib/plaid/models/item_status_last_webhook.rb +232 -0
  497. data/lib/plaid/models/item_status_transactions.rb +232 -0
  498. data/lib/plaid/models/item_webhook_update_request.rb +260 -0
  499. data/lib/plaid/models/item_webhook_update_response.rb +239 -0
  500. data/lib/plaid/models/jwk_public_key.rb +299 -0
  501. data/lib/plaid/models/jwt_header.rb +224 -0
  502. data/lib/plaid/models/liabilities_get_request.rb +254 -0
  503. data/lib/plaid/models/liabilities_get_request_options.rb +222 -0
  504. data/lib/plaid/models/liabilities_get_response.rb +270 -0
  505. data/lib/plaid/models/liabilities_object.rb +249 -0
  506. data/lib/plaid/models/liability_override.rb +583 -0
  507. data/lib/plaid/models/link_token_account_filters.rb +246 -0
  508. data/lib/plaid/models/link_token_create_request.rb +390 -0
  509. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +246 -0
  510. data/lib/plaid/models/link_token_create_request_account_subtypes_credit.rb +222 -0
  511. data/lib/plaid/models/link_token_create_request_account_subtypes_depository.rb +222 -0
  512. data/lib/plaid/models/link_token_create_request_account_subtypes_investment.rb +222 -0
  513. data/lib/plaid/models/link_token_create_request_account_subtypes_loan.rb +222 -0
  514. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +225 -0
  515. data/lib/plaid/models/link_token_create_request_income_verification.rb +236 -0
  516. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +225 -0
  517. data/lib/plaid/models/link_token_create_request_user.rb +295 -0
  518. data/lib/plaid/models/link_token_create_response.rb +255 -0
  519. data/lib/plaid/models/link_token_get_metadata_response.rb +287 -0
  520. data/lib/plaid/models/link_token_get_request.rb +245 -0
  521. data/lib/plaid/models/link_token_get_response.rb +266 -0
  522. data/lib/plaid/models/loan_filter.rb +227 -0
  523. data/lib/plaid/models/location.rb +298 -0
  524. data/lib/plaid/models/meta.rb +255 -0
  525. data/lib/plaid/models/mfa.rb +285 -0
  526. data/lib/plaid/models/mortgage_interest_rate.rb +232 -0
  527. data/lib/plaid/models/mortgage_liability.rb +430 -0
  528. data/lib/plaid/models/mortgage_property_address.rb +265 -0
  529. data/lib/plaid/models/nullable_access_token.rb +209 -0
  530. data/lib/plaid/models/nullable_address.rb +241 -0
  531. data/lib/plaid/models/nullable_address_data.rb +283 -0
  532. data/lib/plaid/models/nullable_item_status.rb +246 -0
  533. data/lib/plaid/models/nullable_numbers_ach.rb +272 -0
  534. data/lib/plaid/models/nullable_numbers_bacs.rb +261 -0
  535. data/lib/plaid/models/nullable_numbers_eft.rb +276 -0
  536. data/lib/plaid/models/nullable_numbers_international.rb +261 -0
  537. data/lib/plaid/models/nullable_recipient_bacs.rb +236 -0
  538. data/lib/plaid/models/numbers.rb +330 -0
  539. data/lib/plaid/models/numbers_ach.rb +266 -0
  540. data/lib/plaid/models/numbers_bacs.rb +255 -0
  541. data/lib/plaid/models/numbers_eft.rb +270 -0
  542. data/lib/plaid/models/numbers_international.rb +255 -0
  543. data/lib/plaid/models/override_accounts.rb +366 -0
  544. data/lib/plaid/models/owner.rb +278 -0
  545. data/lib/plaid/models/owner_override.rb +278 -0
  546. data/lib/plaid/models/pay_frequency.rb +272 -0
  547. data/lib/plaid/models/pay_period_details.rb +265 -0
  548. data/lib/plaid/models/payment_amount.rb +240 -0
  549. data/lib/plaid/models/payment_initiation_address.rb +252 -0
  550. data/lib/plaid/models/payment_initiation_payment_create_request.rb +284 -0
  551. data/lib/plaid/models/payment_initiation_payment_create_response.rb +255 -0
  552. data/lib/plaid/models/payment_initiation_payment_get_request.rb +245 -0
  553. data/lib/plaid/models/payment_initiation_payment_get_response.rb +353 -0
  554. data/lib/plaid/models/payment_initiation_payment_list_request.rb +267 -0
  555. data/lib/plaid/models/payment_initiation_payment_list_response.rb +257 -0
  556. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +245 -0
  557. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +255 -0
  558. data/lib/plaid/models/payment_initiation_recipient.rb +271 -0
  559. data/lib/plaid/models/payment_initiation_recipient_bacs.rb +237 -0
  560. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +275 -0
  561. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +240 -0
  562. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +245 -0
  563. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +286 -0
  564. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +230 -0
  565. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +242 -0
  566. data/lib/plaid/models/payment_meta.rb +298 -0
  567. data/lib/plaid/models/payment_status_update_webhook.rb +356 -0
  568. data/lib/plaid/models/paystub.rb +306 -0
  569. data/lib/plaid/models/paystub_deduction.rb +242 -0
  570. data/lib/plaid/models/paystub_ytd_details.rb +239 -0
  571. data/lib/plaid/models/pending_expiration_webhook.rb +270 -0
  572. data/lib/plaid/models/phone_number.rb +281 -0
  573. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +260 -0
  574. data/lib/plaid/models/processor_auth_get_request.rb +245 -0
  575. data/lib/plaid/models/processor_auth_get_response.rb +253 -0
  576. data/lib/plaid/models/processor_balance_get_request.rb +245 -0
  577. data/lib/plaid/models/processor_balance_get_response.rb +239 -0
  578. data/lib/plaid/models/processor_identity_get_request.rb +245 -0
  579. data/lib/plaid/models/processor_identity_get_response.rb +239 -0
  580. data/lib/plaid/models/processor_number.rb +250 -0
  581. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +260 -0
  582. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +240 -0
  583. data/lib/plaid/models/processor_token_create_request.rb +275 -0
  584. data/lib/plaid/models/processor_token_create_response.rb +240 -0
  585. data/lib/plaid/models/product_status.rb +288 -0
  586. data/lib/plaid/models/product_status_breakdown.rb +300 -0
  587. data/lib/plaid/models/products.rb +45 -0
  588. data/lib/plaid/models/projected_income_summary_field_number.rb +245 -0
  589. data/lib/plaid/models/pslf_status.rb +243 -0
  590. data/lib/plaid/models/recaptcha_required_error.rb +314 -0
  591. data/lib/plaid/models/recipient_bacs.rb +230 -0
  592. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +270 -0
  593. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +225 -0
  594. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +289 -0
  595. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +240 -0
  596. data/lib/plaid/models/sandbox_item_reset_login_request.rb +245 -0
  597. data/lib/plaid/models/sandbox_item_reset_login_response.rb +240 -0
  598. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +309 -0
  599. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +225 -0
  600. data/lib/plaid/models/sandbox_processor_token_create_request.rb +253 -0
  601. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +236 -0
  602. data/lib/plaid/models/sandbox_processor_token_create_response.rb +239 -0
  603. data/lib/plaid/models/sandbox_public_token_create_request.rb +271 -0
  604. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +255 -0
  605. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +230 -0
  606. data/lib/plaid/models/sandbox_public_token_create_response.rb +240 -0
  607. data/lib/plaid/models/security.rb +382 -0
  608. data/lib/plaid/models/servicer_address_data.rb +265 -0
  609. data/lib/plaid/models/standalone_account_type.rb +285 -0
  610. data/lib/plaid/models/standalone_currency_code_list.rb +240 -0
  611. data/lib/plaid/models/standalone_investment_transaction_subtype.rb +650 -0
  612. data/lib/plaid/models/standalone_investment_transaction_type.rb +300 -0
  613. data/lib/plaid/models/student_loan.rb +483 -0
  614. data/lib/plaid/models/student_loan_repayment_model.rb +255 -0
  615. data/lib/plaid/models/student_loan_status.rb +266 -0
  616. data/lib/plaid/models/student_repayment_plan.rb +266 -0
  617. data/lib/plaid/models/transaction.rb +478 -0
  618. data/lib/plaid/models/transaction_code.rb +48 -0
  619. data/lib/plaid/models/transaction_data.rb +285 -0
  620. data/lib/plaid/models/transaction_override.rb +280 -0
  621. data/lib/plaid/models/transactions_get_request.rb +284 -0
  622. data/lib/plaid/models/transactions_get_request_options.rb +285 -0
  623. data/lib/plaid/models/transactions_get_response.rb +288 -0
  624. data/lib/plaid/models/transactions_refresh_request.rb +240 -0
  625. data/lib/plaid/models/transactions_refresh_response.rb +225 -0
  626. data/lib/plaid/models/transactions_removed_webhook.rb +282 -0
  627. data/lib/plaid/models/user_custom_password.rb +297 -0
  628. data/lib/plaid/models/user_permission_revoked_webhook.rb +265 -0
  629. data/lib/plaid/models/verification_expired_webhook.rb +270 -0
  630. data/lib/plaid/models/verification_status.rb +40 -0
  631. data/lib/plaid/models/warning.rb +254 -0
  632. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +280 -0
  633. data/lib/plaid/models/webhook_verification_key_get_request.rb +245 -0
  634. data/lib/plaid/models/webhook_verification_key_get_response.rb +239 -0
  635. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +245 -0
  636. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +245 -0
  637. data/lib/plaid/version.rb +13 -2
  638. data/plaid.gemspec +44 -49
  639. data/templates/ruby/api_client.mustache +266 -0
  640. data/templates/ruby/api_client_faraday_partial.mustache +120 -0
  641. data/templates/ruby/configuration.mustache +353 -0
  642. data/templates/ruby/gemspec.mustache +41 -0
  643. data/test/test_accounts.rb +103 -0
  644. data/test/test_asset_report.rb +147 -0
  645. data/test/test_auth.rb +61 -0
  646. data/test/test_bank_transfers.rb +219 -0
  647. data/test/test_categories.rb +10 -0
  648. data/test/test_configuration.rb +26 -0
  649. data/test/test_deposit_switch.rb +73 -0
  650. data/test/test_helper.rb +109 -0
  651. data/test/test_identity.rb +38 -0
  652. data/test/test_institutions.rb +159 -0
  653. data/test/test_investments.rb +205 -0
  654. data/test/test_item.rb +285 -0
  655. data/test/test_liabilities.rb +45 -0
  656. data/test/test_link_token.rb +97 -0
  657. data/test/test_payment_initiation.rb +95 -0
  658. data/test/test_processor.rb +67 -0
  659. data/test/test_transactions.rb +165 -0
  660. data/test/test_webhooks.rb +22 -0
  661. metadata +687 -99
  662. data/.circleci/config.yml +0 -21
  663. data/.env.sample +0 -3
  664. data/.github/workflows/add_to_project.yml +0 -21
  665. data/.rubocop.yml +0 -18
  666. data/bin/console +0 -14
  667. data/bin/setup +0 -8
  668. data/lib/plaid/client.rb +0 -190
  669. data/lib/plaid/errors.rb +0 -89
  670. data/lib/plaid/middleware.rb +0 -31
  671. data/lib/plaid/models.rb +0 -2221
  672. data/lib/plaid/products/accounts.rb +0 -63
  673. data/lib/plaid/products/asset_report.rb +0 -199
  674. data/lib/plaid/products/auth.rb +0 -42
  675. data/lib/plaid/products/base_product.rb +0 -64
  676. data/lib/plaid/products/categories.rb +0 -21
  677. data/lib/plaid/products/credit_details.rb +0 -40
  678. data/lib/plaid/products/deposit_switch.rb +0 -99
  679. data/lib/plaid/products/identity.rb +0 -31
  680. data/lib/plaid/products/income.rb +0 -31
  681. data/lib/plaid/products/institutions.rb +0 -91
  682. data/lib/plaid/products/investments.rb +0 -127
  683. data/lib/plaid/products/item.rb +0 -209
  684. data/lib/plaid/products/liabilities.rb +0 -39
  685. data/lib/plaid/products/link_token.rb +0 -74
  686. data/lib/plaid/products/payment_initiation.rb +0 -251
  687. data/lib/plaid/products/processor.rb +0 -190
  688. data/lib/plaid/products/sandbox.rb +0 -148
  689. data/lib/plaid/products/transactions.rb +0 -81
  690. data/lib/plaid/products/webhooks.rb +0 -23
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d4032f5d56f2e441caf24526b827c17248114fdcc986fe9595134b180e3b7386
4
- data.tar.gz: 1584b89290e96f0ef895e1f3401c51b8914e4391d2c4d9862c76f7b390fe065b
3
+ metadata.gz: 86640bde7bfc5e81b5f6f9e4b1403d76378a3ee0db181ad7befec94c8983da51
4
+ data.tar.gz: 44e9c845451768a1b41fc42c9af012db268830e4a706f45aa9cfbd86eca9d766
5
5
  SHA512:
6
- metadata.gz: a24eef51a825719aa30edb6a3165272f8d38db81d23b3130e5b09a8c33571bfda06e661e030c8c8a1bde0efa60f33fa7a60f22b22a8d5686c691b718c71adb01
7
- data.tar.gz: 4ae990701822770f0098b5e48bac694427a3b6a11ffb626a120cdb281db6caf36daee34fe39aaee4866cca0c30e52ab50c2508630ce929f30368f45ab2bca55a
6
+ metadata.gz: 5da27655620030af181fb044d7ff8ae471de723d8942879d92b19baeffb5de874d76f68e5724227c5bc56d3107d6e1ee15ae3a4c6ff3a2200d735c5e7485889f
7
+ data.tar.gz: 3b7bea3cfd6715acd13fd2a614c936ff72b24986360306e38ac756328fdb21a23e4955d0894ddc06430cb1e69a2711966f1f9030edad047593d9c5300d1204f2
data/CHANGELOG.md CHANGED
@@ -1,11 +1,75 @@
1
- ## 13.2.0
2
- - Add support for `options` to `/payment_initiation/payment/create`
3
-
4
- # 13.1.0
5
- - Add Standing Orders support to Payment Initiation
6
-
7
- # 13.0.1
8
- - Add `update_type` to `Item` model.
1
+ # 14.0.0.beta.1
2
+
3
+ This version represents a transition in how we maintain our external client libraries. We are now using an [API spec](https://github.com/plaid/plaid-openapi) written in `OpenAPI 3.0.0` and running our definition file through [OpenAPITool's `python` generator](https://github.com/OpenAPITools/openapi-generator).
4
+
5
+ The minimum required ruby version is 2.7.1.
6
+
7
+ **Ruby Migration Guide:**
8
+
9
+ ### Client initialization
10
+ From:
11
+ ```ruby
12
+ client = Plaid::Client.new(env: :sandbox,
13
+ client_id: client_id,
14
+ secret: secret)
15
+ ```
16
+
17
+ To:
18
+ ```ruby
19
+ configuration = Plaid::Configuration.new
20
+ configuration.server_index = Plaid::Configuration::Environment["sandbox"]
21
+ configuration.api_key["PLAID-CLIENT-ID"] = ENV["PLAID_RUBY_CLIENT_ID"]
22
+ configuration.api_key["PLAID-SECRET"] = ENV["PLAID_RUBY_SECRET"]
23
+ configuration.api_key["Plaid-Version"] = "2020-09-14"
24
+
25
+ api_client = Plaid::ApiClient.new(
26
+ configuration
27
+ )
28
+
29
+ client = Plaid::PlaidApi.new(api_client)
30
+ ```
31
+
32
+ ### Endpoints
33
+ All endpoint requests now take a request model and the functions have been renamed to include `_`.
34
+
35
+ From:
36
+ ```ruby
37
+ response = client.auth.get(access_token)
38
+ ```
39
+
40
+ To:
41
+ ```ruby
42
+ auth_get_request = Plaid::AuthGetRequest.new
43
+ auth_get_request.access_token = access_token
44
+
45
+ or
46
+
47
+ auth_get_request = Plaid::AuthGetRequest.new({:access_token => access_token})
48
+
49
+ response = client.auth_get(auth_get_request)
50
+ ```
51
+
52
+ ### Errors
53
+
54
+ From:
55
+ ```ruby
56
+ begin
57
+ client.auth.get(auth_get_request)
58
+ rescue Plaid::PlaidAPIError => e
59
+ raise e if e.error_code != 'PRODUCT_NOT_READY'
60
+ sleep 1
61
+ end
62
+ ```
63
+
64
+ To:
65
+ ```ruby
66
+ begin
67
+ client.auth_get(auth_get_request)
68
+ rescue Plaid::ApiError => e
69
+ json_response = JSON.parse(e.response_body)
70
+ if json_response["error_code"] != "PRODUCT_NOT_READY"
71
+ end
72
+ ```
9
73
 
10
74
  # 13.0.0
11
75
  - Add support for providing a payment initiation schedule
@@ -205,4 +269,4 @@ BREAKING CHANGES:
205
269
 
206
270
  # 2.0.0.alpha. 06-May-2016
207
271
 
208
- - Rewrite everything.
272
+ - Rewrite everything.
data/CONTRIBUTING.md CHANGED
@@ -1,3 +1,5 @@
1
+ TODO: UPDATE THIS!
2
+
1
3
  ## Development
2
4
 
3
5
  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.
@@ -18,38 +20,6 @@ PLAID_RUBY_SECRET=the_real_secret
18
20
  ```
19
21
  This file will be loaded during the tests.
20
22
 
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`!
24
-
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
23
  ## Contributing
54
24
 
55
25
  1. Make one or more atomic commits, and ensure that each commit has a
data/Dockerfile ADDED
@@ -0,0 +1,11 @@
1
+ FROM ruby:2.7.1
2
+
3
+ # Create app directory
4
+ WORKDIR /usr/src/app
5
+
6
+ # Copy app to directory
7
+ COPY . /usr/src/app
8
+
9
+ RUN bundle install
10
+
11
+ CMD ["bundle", "exec", "rake", "test"]
data/Gemfile.lock CHANGED
@@ -1,66 +1,71 @@
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 (14.0.0.beta.1)
5
+ faraday (~> 1.0, >= 1.0.1)
8
6
 
9
7
  GEM
10
8
  remote: https://rubygems.org/
11
9
  specs:
12
- ast (2.4.0)
13
- dotenv (2.4.0)
14
- faraday (1.4.1)
15
- faraday-excon (~> 1.1)
10
+ ast (2.4.1)
11
+ diff-lcs (1.4.4)
12
+ dotenv (2.7.6)
13
+ faraday (1.3.0)
16
14
  faraday-net_http (~> 1.0)
17
- faraday-net_http_persistent (~> 1.1)
18
15
  multipart-post (>= 1.2, < 3)
19
- ruby2_keywords (>= 0.0.4)
20
- faraday-excon (1.1.0)
16
+ ruby2_keywords
21
17
  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)
18
+ minitest (5.14.2)
19
+ minitest-around (0.5.0)
28
20
  minitest (~> 5.0)
29
21
  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)
22
+ parallel (1.20.1)
23
+ parser (2.7.2.0)
24
+ ast (~> 2.4.1)
34
25
  rainbow (3.0.0)
35
- rake (12.3.3)
36
- rdoc (6.0.4)
37
- rubocop (0.53.0)
26
+ rake (13.0.1)
27
+ regexp_parser (1.8.0)
28
+ rexml (3.2.4)
29
+ rspec (3.10.0)
30
+ rspec-core (~> 3.10.0)
31
+ rspec-expectations (~> 3.10.0)
32
+ rspec-mocks (~> 3.10.0)
33
+ rspec-core (3.10.0)
34
+ rspec-support (~> 3.10.0)
35
+ rspec-expectations (3.10.0)
36
+ diff-lcs (>= 1.2.0, < 2.0)
37
+ rspec-support (~> 3.10.0)
38
+ rspec-mocks (3.10.0)
39
+ diff-lcs (>= 1.2.0, < 2.0)
40
+ rspec-support (~> 3.10.0)
41
+ rspec-support (3.10.0)
42
+ rubocop (0.91.1)
38
43
  parallel (~> 1.10)
39
- parser (>= 2.5)
40
- powerpack (~> 0.1)
44
+ parser (>= 2.7.1.1)
41
45
  rainbow (>= 2.2.2, < 4.0)
46
+ regexp_parser (>= 1.7)
47
+ rexml
48
+ rubocop-ast (>= 0.4.0, < 1.0)
42
49
  ruby-progressbar (~> 1.7)
43
- unicode-display_width (~> 1.0, >= 1.0.1)
44
- ruby-progressbar (1.9.0)
50
+ unicode-display_width (>= 1.4.0, < 2.0)
51
+ rubocop-ast (0.4.2)
52
+ parser (>= 2.7.1.4)
53
+ ruby-progressbar (1.10.1)
45
54
  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)
55
+ unicode-display_width (1.7.0)
50
56
 
51
57
  PLATFORMS
52
58
  ruby
53
59
 
54
60
  DEPENDENCIES
55
- bundler (~> 1.7)
61
+ bundler (~> 2.2.9)
56
62
  dotenv
57
- minitest (~> 5.10)
58
- minitest-around (~> 0.4.0)
63
+ minitest (~> 5.14)
64
+ minitest-around (~> 0.5.0)
59
65
  plaid!
60
- rake (>= 10.0)
61
- rubocop (~> 0.53.0)
62
- sdoc (~> 1.0.0)
63
- vcr (~> 4.0.0)
66
+ rake (>= 13.0)
67
+ rspec (~> 3.6, >= 3.6.0)
68
+ rubocop (~> 0.91.0)
64
69
 
65
70
  BUNDLED WITH
66
- 1.17.2
71
+ 2.2.9
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) 2020 Plaid Technologies, 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/PUBLISH.md CHANGED
@@ -14,7 +14,6 @@ Publish:
14
14
  1. `git checkout master` and `git pull` (makes sure your `HEAD` is up-to-date).
15
15
  2. Check that tests are passing on latest `master` build and (optional) `bundle exec rake test` to run tests locally
16
16
  3. `bundle exec rake release` (builds the gem, creates a tag, pushes the gem to RubyGems and tag to GitHub). **NOTE:** if this step hangs indefinitely, you need to set your MFA settings to "UI Only" [here](https://rubygems.org/profile/edit)
17
- 4. `bundle exec rake update_github_docs` (generates RDoc files, updates `gh-pages` branch and pushes it to GitHub). (If you run into a `gh-pages` branch error, you may need to manually run `git checkout gh-pages` to ensure the branch is checked out locally.)
18
17
 
19
18
  [1]: https://rubygems.org/
20
19
  [2]: https://rubygems.org/gems/plaid
data/README.md CHANGED
@@ -1,7 +1,5 @@
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
3
  The official Ruby bindings for the [Plaid API](https://plaid.com/docs).
6
4
 
7
5
  ## Installation
@@ -20,7 +18,7 @@ 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 2.7.1+ only.
24
22
 
25
23
  ### Versioning
26
24
 
@@ -28,8 +26,8 @@ Each major version of `plaid-ruby` targets a specific version of the Plaid API:
28
26
 
29
27
  | API version | plaid-ruby release |
30
28
  | ----------- | ------------------ |
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` |
29
+ | [`2020-09-14`][api-version-2020-09-14] (**latest**) | `12.x.x`, `13.x.x`, `14.x.x` |
30
+ | [`2019-05-29`][api-version-2019-05-29] | `11.x.x`, `10.x.x`, `9.x.x`, `8.x.x`, `7.x.x` |
33
31
  | [`2018-05-22`][api-version-2018-05-22] | `6.x.x` |
34
32
  | `2017-03-08` | `5.x.x` |
35
33
 
@@ -38,9 +36,7 @@ For information about what has changed between versions and how to update your i
38
36
 
39
37
  ## Usage
40
38
 
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/).
39
+ 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
40
 
45
41
  ### Creating a Plaid client
46
42
 
@@ -49,24 +45,32 @@ Create an instance of the client using the `client_id` and `secret` from your Pl
49
45
  ```ruby
50
46
  require 'plaid'
51
47
 
52
- client = Plaid::Client.new(env: :sandbox,
53
- client_id: '***',
54
- secret: '***')
48
+ configuration = Plaid::Configuration.new
49
+ configuration.server_index = Plaid::Configuration::Environment["sandbox"]
50
+ configuration.api_key["PLAID-CLIENT-ID"] = "***"
51
+ configuration.api_key["PLAID-SECRET"] = "***"
52
+ configuration.api_key["Plaid-Version"] = "2020-09-14"
53
+
54
+ api_client = Plaid::ApiClient.new(
55
+ configuration
56
+ )
57
+
58
+ client = Plaid::PlaidApi.new(api_client)
55
59
  ```
56
60
 
57
- The `env` field is the environment which the client will be running in. Your choices for the `env` field include:
61
+ The `server_index` field is the environment which the client will be running in. Your choices for the `server_index` field include:
58
62
 
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.
63
+ - `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).
64
+ - `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).
65
+ - `Plaid::Configuration::Environment["production"]` is the production environment where you can launch your production ready application and be charged for your Plaid usage.
62
66
 
63
67
  ### Tuning Faraday
64
68
 
65
69
  The gem uses Faraday to wrap HTTPS connections, which allows you to tune certain params:
66
70
 
67
71
  ```ruby
68
- client = Plaid::Client.new(env: :sandbox, client_id: '***', secret: '***') do |builder|
69
- Plaid::Client.build_default_connection(builder)
72
+ client = Plaid::Configuration.new do |builder|
73
+ Plaid::Configuration.default()
70
74
 
71
75
  # Increase network timeout
72
76
  builder.options[:timeout] = 60*20 # 20 minutes
@@ -83,12 +87,16 @@ user = User.find_by!(email: '***')
83
87
  client_user_id = user.id
84
88
 
85
89
  # 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'
90
+ link_token_create_request = Plaid::LinkTokenCreateRequest.new({
91
+ :user => { :client_user_id => client_user_id.to_s },
92
+ :client_name => 'My app',
93
+ :products => %w[auth transactions],
94
+ :country_codes => ['US'],
95
+ :language => 'en'
96
+ })
97
+
98
+ link_token_response = client.link_token_create(
99
+ link_token_create_request
92
100
  )
93
101
 
94
102
  # Pass the result to your client-side app to initialize Link
@@ -98,53 +106,62 @@ link_token = link_token_response.link_token
98
106
 
99
107
  ### Exchanging a Link public_token for a Plaid access_token
100
108
 
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)`
109
+ 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
110
 
103
111
  An example of the function's usage if you have a `public_token` in hand:
104
112
 
105
113
  ```ruby
106
- response = client.item.public_token.exchange(public_token)
114
+ request = Plaid::ItemPublicTokenExchangeRequest.new
115
+ request.public_token = public_token
116
+
117
+ response = client.item.public_token_exchange(request)
107
118
  access_token = response.access_token
108
119
  ```
109
120
 
110
-
111
121
  ### Deleting an item
112
122
 
113
123
  ```ruby
114
- require 'plaid'
124
+ request = Plaid::ItemPublicTokenExchangeRequest.new
125
+ request.public_token = public_token
115
126
 
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
127
+ response = client.item.public_token_exchange(request)
128
+ access_token = response.access_token
122
129
 
123
130
  # Provide the access_token for the Item you want to remove
124
- client.item.remove(access_token)
131
+ item_remove_request = Plaid::ItemRemoveRequest.new
132
+ item_remove_request.access_token = access_token
133
+
134
+ client.item_remove(item_remove_request)
125
135
  ```
126
136
 
127
137
  ### Get paginated transactions
128
138
  ```ruby
129
- require 'plaid'
139
+ request = Plaid::ItemPublicTokenExchangeRequest.new
140
+ request.public_token = public_token
130
141
 
131
- client = Plaid::Client.new(env: :sandbox,
132
- client_id: '***',
133
- secret: '***')
142
+ response = client.item.public_token_exchange(request)
143
+ access_token = response.access_token
134
144
 
135
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
136
- access_token = exchange_token_response.access_token
145
+ transactions_get_request = Plaid::TransactionsGetRequest.new
146
+ transactions_get_request.access_token = access_token
147
+ transactions_get_request.start_date = "2020-01-01"
148
+ transactions_get_request.end_date = "2021-01-01"
137
149
 
138
- transaction_response = client.transactions.get(access_token, '2016-07-12', '2017-01-09')
150
+ transaction_response = client.transactions_get(transactions_get_request)
139
151
  transactions = transaction_response.transactions
140
152
 
141
153
  # the transactions in the response are paginated, so make multiple calls while
142
154
  # increasing the offset to retrieve all transactions
143
155
  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)
156
+ options_payload = {}
157
+ options_payload[:offset] = transactions.length
158
+
159
+ transactions_get_request = Plaid::TransactionsGetRequest.new
160
+ transactions_get_request.access_token = access_token
161
+ transactions_get_request.start_date = "2020-01-01"
162
+ transactions_get_request.end_date = "2021-01-01"
163
+
164
+ transaction_response = client.transactions_get(transactions_get_request)
148
165
  transactions += transaction_response.transactions
149
166
  end
150
167
 
@@ -154,55 +171,55 @@ end
154
171
 
155
172
  If you have an `access_token`, you can use following code to retreive data:
156
173
  ```ruby
157
- require 'plaid'
174
+ request = Plaid::ItemPublicTokenExchangeRequest.new
175
+ request.public_token = public_token
158
176
 
159
- client = Plaid::Client.new(env: :sandbox,
160
- client_id: '***',
161
- secret: '***')
177
+ response = client.item.public_token_exchange(request)
178
+ access_token = response.access_token
162
179
 
163
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
164
- access_token = exchange_token_response.access_token
180
+ auth_get_request = Plaid::AuthGetRequest.new
181
+ auth_get_request.access_token = access_token
165
182
 
166
- auth_response = client.auth.get(access_token)
183
+ auth_response = client.auth_get(access_token)
167
184
  auth = auth_response.auth
168
185
  ```
169
186
 
187
+ There are also a number of other methods you can use to retrieve data:
188
+
189
+ * `client.accounts_get(Plaid::AccountsGetRequest({:access_token => access_token, ...}))`: accounts
190
+ * `client.accounts_balance_get(Plaid::AccountsBalanceGetRequest({:access_token => access_token, ...}))`: real-time balances
191
+ * `client.auth_get(Plaid::AuthGetRequest({:access_token => access_token, ...}))`: auth
192
+ * `client.identity_get(Plaid::IdentityGetRequest({:access_token => access_token, ...}))`: identity
193
+ * `client.transactions_get(Plaid::TransactionsGetRequest({:access_token => access_token, ...}))`: transactions
194
+ * `client.investments_transactions_get(Plaid::InvestmentsTransactionsGetRequest({:access_token => access_token, ...}))`: investment-account transactions
195
+ * `client.investments_holdings_get(Plaid::InvestmentsHoldingsGetRequest({:access_token => access_token, ...}))`: investment-account holdings
196
+
197
+ All of these methods return appropriate data. More information can be found on the [API documentation](https://plaid.com/docs/api).
198
+
170
199
  ### Create a Stripe bank_account_token
171
200
 
172
201
  Exchange a Plaid Link `public_token` for an API `access_token` and a Stripe `bank_account_token`:
173
202
  ```ruby
174
- require 'plaid'
203
+ request = Plaid::ItemPublicTokenExchangeRequest.new
204
+ request.public_token = public_token
175
205
 
176
- client = Plaid::Client.new(env: :sandbox,
177
- client_id: '***',
178
- secret: '***')
206
+ response = client.item.public_token.exchange(request)
207
+ access_token = response.access_token
179
208
 
180
- exchange_token_response = client.item.public_token.exchange('[Plaid Link public_token]')
181
- access_token = exchange_token_response.access_token
209
+ processor_token_create_request = Plaid::ProcessorStripeBankAccountTokenCreateRequest.new
210
+ processor_token_create_request.access_token = access_token
211
+ processor_token_create_request.account_id = '[Account ID]'
182
212
 
183
- stripe_response = client.processor.stripe.bank_account_token.create(access_token, '[Account ID]')
213
+ stripe_response = client.processor_stripe_bank_account_token_create(processor_token_create_request)
184
214
  bank_account_token = stripe_response.stripe_bank_account_token
185
215
  ```
186
216
 
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
217
  ### Categories
201
218
 
202
219
  You can request category information:
203
220
 
204
221
  ```ruby
205
- categories = client.categories.get # Array of all known categories
222
+ categories = client.categories_get # Array of all known categories
206
223
  ```
207
224
 
208
225
  ### Institutions
@@ -210,7 +227,13 @@ categories = client.categories.get # Array of all known categories
210
227
  Financial institution information is available as shown below where the function arguments represent count and offset:
211
228
 
212
229
  ```ruby
213
- institutions = client.institutions.get(count: 3, offset: 1)
230
+ institutions_get_request = Plaid::InstitutionsGetRequest.new({
231
+ :count => 3,
232
+ :offset => 1,
233
+ :country_codes => ["US"],
234
+ })
235
+
236
+ response = client.institutions_get(institutions_get_request)
214
237
  ```
215
238
 
216
239
  ## Errors
@@ -218,17 +241,7 @@ institutions = client.institutions.get(count: 3, offset: 1)
218
241
  Any methods making API calls will result in an exception raised unless the response code is "200: Success" or
219
242
  "210: MFA Required".
220
243
 
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.
244
+ `Plaid::Error` is returned in response to API internal server errors.
232
245
 
233
246
  Read more about response codes and their meaning in the
234
247
  [Plaid documentation](https://plaid.com/docs/api).
@@ -240,13 +253,6 @@ Any API call returns a response object which is accessible by dot notation
240
253
  and `response['foo']['bar']`. Expected keys for all types of responses are defined,
241
254
  and any attempt to access an unknown key will cause `NoMethodError` exception.
242
255
 
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
256
  ## Contributing
251
257
 
252
258
  Bug reports and pull requests are welcome on GitHub at https://github.com/plaid/plaid-ruby. See also [contributing guidelines](CONTRIBUTING.md).
@@ -263,4 +269,4 @@ If you're looking for a Ruby client that works with the legacy Plaid API, use th
263
269
  [version-changelog]: https://plaid.com/docs/api/versioning/
264
270
  [api-version-2018-05-22]: https://plaid.com/docs/api/versioning/#2018-05-22
265
271
  [api-version-2019-05-29]: https://plaid.com/docs/api/versioning/#2019-05-29
266
- [api-version-2020-09-14]: https://plaid.com/docs/api/versioning/#2020-09-14
272
+ [api-version-2020-09-14]: https://plaid.com/docs/api/versioning/#2020-09-14