apimatic-plaid-sdk 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (542) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +192 -0
  4. data/bin/console +15 -0
  5. data/lib/plaid/api_helper.rb +10 -0
  6. data/lib/plaid/apis/accounts_api.rb +70 -0
  7. data/lib/plaid/apis/application_api.rb +35 -0
  8. data/lib/plaid/apis/asset_report_api.rb +301 -0
  9. data/lib/plaid/apis/auth_api.rb +43 -0
  10. data/lib/plaid/apis/bank_transfer_api.rb +287 -0
  11. data/lib/plaid/apis/base_api.rb +65 -0
  12. data/lib/plaid/apis/categories_api.rb +34 -0
  13. data/lib/plaid/apis/deposit_switch_api.rb +106 -0
  14. data/lib/plaid/apis/employers_api.rb +40 -0
  15. data/lib/plaid/apis/identity_api.rb +38 -0
  16. data/lib/plaid/apis/income_api.rb +220 -0
  17. data/lib/plaid/apis/institutions_api.rb +92 -0
  18. data/lib/plaid/apis/investments_api.rb +61 -0
  19. data/lib/plaid/apis/item_api.rb +267 -0
  20. data/lib/plaid/apis/liabilities_api.rb +47 -0
  21. data/lib/plaid/apis/link_api.rb +62 -0
  22. data/lib/plaid/apis/payment_initiation_api.rb +236 -0
  23. data/lib/plaid/apis/processor_api.rb +189 -0
  24. data/lib/plaid/apis/sandbox_api.rb +302 -0
  25. data/lib/plaid/apis/signal_api.rb +97 -0
  26. data/lib/plaid/apis/transactions_api.rb +111 -0
  27. data/lib/plaid/apis/transfer_api.rb +214 -0
  28. data/lib/plaid/apis/webhook_verification_key_api.rb +36 -0
  29. data/lib/plaid/client.rb +208 -0
  30. data/lib/plaid/configuration.rb +198 -0
  31. data/lib/plaid/exceptions/api_exception.rb +21 -0
  32. data/lib/plaid/exceptions/error_error_exception.rb +110 -0
  33. data/lib/plaid/http/api_response.rb +19 -0
  34. data/lib/plaid/http/auth/plaid_client_id.rb +52 -0
  35. data/lib/plaid/http/auth/plaid_secret.rb +52 -0
  36. data/lib/plaid/http/auth/plaid_version.rb +52 -0
  37. data/lib/plaid/http/http_call_back.rb +10 -0
  38. data/lib/plaid/http/http_method_enum.rb +10 -0
  39. data/lib/plaid/http/http_request.rb +10 -0
  40. data/lib/plaid/http/http_response.rb +10 -0
  41. data/lib/plaid/http/proxy_settings.rb +22 -0
  42. data/lib/plaid/logging/configuration/api_logging_configuration.rb +186 -0
  43. data/lib/plaid/logging/sdk_logger.rb +17 -0
  44. data/lib/plaid/models/account.rb +185 -0
  45. data/lib/plaid/models/account_access.rb +89 -0
  46. data/lib/plaid/models/account_assets.rb +258 -0
  47. data/lib/plaid/models/account_balance.rb +189 -0
  48. data/lib/plaid/models/account_filter.rb +107 -0
  49. data/lib/plaid/models/account_filters_response.rb +106 -0
  50. data/lib/plaid/models/account_identity.rb +206 -0
  51. data/lib/plaid/models/account_selection_cardinality.rb +44 -0
  52. data/lib/plaid/models/account_subtype.rb +319 -0
  53. data/lib/plaid/models/account_subtype1.rb +36 -0
  54. data/lib/plaid/models/account_type.rb +57 -0
  55. data/lib/plaid/models/accounts_balance_get_request.rb +108 -0
  56. data/lib/plaid/models/accounts_balance_get_request_options.rb +111 -0
  57. data/lib/plaid/models/accounts_get_request.rb +107 -0
  58. data/lib/plaid/models/accounts_get_request_options.rb +76 -0
  59. data/lib/plaid/models/accounts_get_response.rb +104 -0
  60. data/lib/plaid/models/ach_class.rb +99 -0
  61. data/lib/plaid/models/address.rb +84 -0
  62. data/lib/plaid/models/address1.rb +116 -0
  63. data/lib/plaid/models/address2.rb +155 -0
  64. data/lib/plaid/models/address_data.rb +114 -0
  65. data/lib/plaid/models/address_data1.rb +120 -0
  66. data/lib/plaid/models/address_data_nullable.rb +114 -0
  67. data/lib/plaid/models/address_nullable.rb +84 -0
  68. data/lib/plaid/models/application.rb +131 -0
  69. data/lib/plaid/models/application_get_request.rb +98 -0
  70. data/lib/plaid/models/application_get_response.rb +84 -0
  71. data/lib/plaid/models/apr.rb +109 -0
  72. data/lib/plaid/models/apr_type.rb +44 -0
  73. data/lib/plaid/models/asset_report.rb +145 -0
  74. data/lib/plaid/models/asset_report_audit_copy_create_request.rb +111 -0
  75. data/lib/plaid/models/asset_report_audit_copy_create_response.rb +87 -0
  76. data/lib/plaid/models/asset_report_audit_copy_get_request.rb +101 -0
  77. data/lib/plaid/models/asset_report_audit_copy_remove_request.rb +101 -0
  78. data/lib/plaid/models/asset_report_audit_copy_remove_response.rb +85 -0
  79. data/lib/plaid/models/asset_report_create_request.rb +125 -0
  80. data/lib/plaid/models/asset_report_create_request_options.rb +104 -0
  81. data/lib/plaid/models/asset_report_create_response.rb +100 -0
  82. data/lib/plaid/models/asset_report_filter_request.rb +111 -0
  83. data/lib/plaid/models/asset_report_filter_response.rb +100 -0
  84. data/lib/plaid/models/asset_report_get_request.rb +112 -0
  85. data/lib/plaid/models/asset_report_get_response.rb +103 -0
  86. data/lib/plaid/models/asset_report_item.rb +130 -0
  87. data/lib/plaid/models/asset_report_pdf_get_request.rb +101 -0
  88. data/lib/plaid/models/asset_report_refresh_request.rb +127 -0
  89. data/lib/plaid/models/asset_report_refresh_request_options.rb +104 -0
  90. data/lib/plaid/models/asset_report_refresh_response.rb +100 -0
  91. data/lib/plaid/models/asset_report_remove_request.rb +101 -0
  92. data/lib/plaid/models/asset_report_remove_response.rb +85 -0
  93. data/lib/plaid/models/asset_report_transaction.rb +296 -0
  94. data/lib/plaid/models/asset_report_user.rb +153 -0
  95. data/lib/plaid/models/assets_error_webhook.rb +107 -0
  96. data/lib/plaid/models/assets_product_ready_webhook.rb +97 -0
  97. data/lib/plaid/models/auth_get_numbers.rb +141 -0
  98. data/lib/plaid/models/auth_get_request.rb +107 -0
  99. data/lib/plaid/models/auth_get_request_options.rb +78 -0
  100. data/lib/plaid/models/auth_get_response.rb +116 -0
  101. data/lib/plaid/models/auth_metadata.rb +77 -0
  102. data/lib/plaid/models/auth_supported_methods.rb +94 -0
  103. data/lib/plaid/models/automatically_verified_webhook.rb +102 -0
  104. data/lib/plaid/models/available_balance.rb +39 -0
  105. data/lib/plaid/models/bank_initiated_return_risk.rb +96 -0
  106. data/lib/plaid/models/bank_transfer.rb +263 -0
  107. data/lib/plaid/models/bank_transfer_balance.rb +85 -0
  108. data/lib/plaid/models/bank_transfer_balance_get_request.rb +103 -0
  109. data/lib/plaid/models/bank_transfer_balance_get_response.rb +97 -0
  110. data/lib/plaid/models/bank_transfer_cancel_request.rb +99 -0
  111. data/lib/plaid/models/bank_transfer_cancel_response.rb +76 -0
  112. data/lib/plaid/models/bank_transfer_create_request.rb +254 -0
  113. data/lib/plaid/models/bank_transfer_create_response.rb +84 -0
  114. data/lib/plaid/models/bank_transfer_direction.rb +37 -0
  115. data/lib/plaid/models/bank_transfer_direction1.rb +37 -0
  116. data/lib/plaid/models/bank_transfer_event.rb +211 -0
  117. data/lib/plaid/models/bank_transfer_event_list_request.rb +229 -0
  118. data/lib/plaid/models/bank_transfer_event_list_response.rb +94 -0
  119. data/lib/plaid/models/bank_transfer_event_sync_request.rb +110 -0
  120. data/lib/plaid/models/bank_transfer_event_sync_response.rb +94 -0
  121. data/lib/plaid/models/bank_transfer_event_type.rb +63 -0
  122. data/lib/plaid/models/bank_transfer_failure.rb +93 -0
  123. data/lib/plaid/models/bank_transfer_get_request.rb +99 -0
  124. data/lib/plaid/models/bank_transfer_get_response.rb +84 -0
  125. data/lib/plaid/models/bank_transfer_list_request.rb +175 -0
  126. data/lib/plaid/models/bank_transfer_list_response.rb +93 -0
  127. data/lib/plaid/models/bank_transfer_migrate_account_request.rb +117 -0
  128. data/lib/plaid/models/bank_transfer_migrate_account_response.rb +93 -0
  129. data/lib/plaid/models/bank_transfer_network.rb +41 -0
  130. data/lib/plaid/models/bank_transfer_receiver_details.rb +79 -0
  131. data/lib/plaid/models/bank_transfer_status.rb +48 -0
  132. data/lib/plaid/models/bank_transfer_sweep.rb +129 -0
  133. data/lib/plaid/models/bank_transfer_sweep_account.rb +84 -0
  134. data/lib/plaid/models/bank_transfer_sweep_get_request.rb +113 -0
  135. data/lib/plaid/models/bank_transfer_sweep_get_response.rb +85 -0
  136. data/lib/plaid/models/bank_transfer_sweep_list_request.rb +164 -0
  137. data/lib/plaid/models/bank_transfer_sweep_list_response.rb +94 -0
  138. data/lib/plaid/models/bank_transfer_type.rb +38 -0
  139. data/lib/plaid/models/bank_transfer_type1.rb +38 -0
  140. data/lib/plaid/models/bank_transfer_user.rb +100 -0
  141. data/lib/plaid/models/bank_transfers_events_update_webhook.rb +83 -0
  142. data/lib/plaid/models/base_model.rb +110 -0
  143. data/lib/plaid/models/branch.rb +49 -0
  144. data/lib/plaid/models/buy_type.rb +165 -0
  145. data/lib/plaid/models/canonical_description.rb +92 -0
  146. data/lib/plaid/models/cash_type.rb +305 -0
  147. data/lib/plaid/models/categories_get_response.rb +93 -0
  148. data/lib/plaid/models/category.rb +93 -0
  149. data/lib/plaid/models/cause.rb +88 -0
  150. data/lib/plaid/models/code.rb +56 -0
  151. data/lib/plaid/models/confidence.rb +45 -0
  152. data/lib/plaid/models/connected_application.rb +177 -0
  153. data/lib/plaid/models/country_code.rb +56 -0
  154. data/lib/plaid/models/country_code1.rb +36 -0
  155. data/lib/plaid/models/credit.rb +80 -0
  156. data/lib/plaid/models/credit_account.rb +83 -0
  157. data/lib/plaid/models/credit_card_liability.rb +164 -0
  158. data/lib/plaid/models/credit_filter.rb +78 -0
  159. data/lib/plaid/models/currency.rb +37 -0
  160. data/lib/plaid/models/customer_initiated_return_risk.rb +100 -0
  161. data/lib/plaid/models/decision.rb +48 -0
  162. data/lib/plaid/models/deductions.rb +103 -0
  163. data/lib/plaid/models/default_update_webhook.rb +119 -0
  164. data/lib/plaid/models/deposit_switch_address_data.rb +110 -0
  165. data/lib/plaid/models/deposit_switch_alt_create_request.rb +132 -0
  166. data/lib/plaid/models/deposit_switch_alt_create_response.rb +87 -0
  167. data/lib/plaid/models/deposit_switch_create_request.rb +133 -0
  168. data/lib/plaid/models/deposit_switch_create_request_options.rb +99 -0
  169. data/lib/plaid/models/deposit_switch_create_response.rb +87 -0
  170. data/lib/plaid/models/deposit_switch_get_request.rb +99 -0
  171. data/lib/plaid/models/deposit_switch_get_response.rb +277 -0
  172. data/lib/plaid/models/deposit_switch_state_update_webhook.rb +116 -0
  173. data/lib/plaid/models/deposit_switch_target_account.rb +106 -0
  174. data/lib/plaid/models/deposit_switch_target_user.rb +121 -0
  175. data/lib/plaid/models/deposit_switch_token_create_request.rb +100 -0
  176. data/lib/plaid/models/deposit_switch_token_create_response.rb +101 -0
  177. data/lib/plaid/models/depository.rb +80 -0
  178. data/lib/plaid/models/depository_account.rb +147 -0
  179. data/lib/plaid/models/depository_filter.rb +78 -0
  180. data/lib/plaid/models/distribution_details.rb +126 -0
  181. data/lib/plaid/models/document_metadata.rb +96 -0
  182. data/lib/plaid/models/earnings.rb +104 -0
  183. data/lib/plaid/models/earnings_total.rb +133 -0
  184. data/lib/plaid/models/email.rb +91 -0
  185. data/lib/plaid/models/employee.rb +107 -0
  186. data/lib/plaid/models/employee2.rb +85 -0
  187. data/lib/plaid/models/employee_income_summary_field_string.rb +90 -0
  188. data/lib/plaid/models/employer.rb +102 -0
  189. data/lib/plaid/models/employer2.rb +86 -0
  190. data/lib/plaid/models/employer3.rb +74 -0
  191. data/lib/plaid/models/employer_income_summary_field_string.rb +90 -0
  192. data/lib/plaid/models/employers_search_request.rb +107 -0
  193. data/lib/plaid/models/employers_search_response.rb +93 -0
  194. data/lib/plaid/models/employment_details.rb +88 -0
  195. data/lib/plaid/models/error.rb +172 -0
  196. data/lib/plaid/models/error_type.rb +76 -0
  197. data/lib/plaid/models/external_payment_refund_details.rb +92 -0
  198. data/lib/plaid/models/external_payment_schedule_base.rb +147 -0
  199. data/lib/plaid/models/external_payment_schedule_get.rb +140 -0
  200. data/lib/plaid/models/external_payment_schedule_request.rb +144 -0
  201. data/lib/plaid/models/fee_type.rb +287 -0
  202. data/lib/plaid/models/health_incident.rb +130 -0
  203. data/lib/plaid/models/historical_balance.rb +118 -0
  204. data/lib/plaid/models/historical_update_webhook.rb +124 -0
  205. data/lib/plaid/models/holding.rb +169 -0
  206. data/lib/plaid/models/holdings_default_update_webhook.rb +129 -0
  207. data/lib/plaid/models/holdings_override.rb +133 -0
  208. data/lib/plaid/models/identity_get_request.rb +107 -0
  209. data/lib/plaid/models/identity_get_request_options.rb +78 -0
  210. data/lib/plaid/models/identity_get_response.rb +101 -0
  211. data/lib/plaid/models/incident_update.rb +106 -0
  212. data/lib/plaid/models/income_breakdown.rb +106 -0
  213. data/lib/plaid/models/income_override.rb +84 -0
  214. data/lib/plaid/models/income_summary.rb +137 -0
  215. data/lib/plaid/models/income_summary_field_number.rb +90 -0
  216. data/lib/plaid/models/income_summary_field_string.rb +90 -0
  217. data/lib/plaid/models/income_verification_create_request.rb +99 -0
  218. data/lib/plaid/models/income_verification_create_response.rb +88 -0
  219. data/lib/plaid/models/income_verification_documents_download_request.rb +114 -0
  220. data/lib/plaid/models/income_verification_documents_download_response.rb +73 -0
  221. data/lib/plaid/models/income_verification_paystub_get_request.rb +114 -0
  222. data/lib/plaid/models/income_verification_paystub_get_response.rb +100 -0
  223. data/lib/plaid/models/income_verification_paystubs_get_request.rb +114 -0
  224. data/lib/plaid/models/income_verification_paystubs_get_response.rb +133 -0
  225. data/lib/plaid/models/income_verification_precheck_employer.rb +88 -0
  226. data/lib/plaid/models/income_verification_precheck_military_info.rb +90 -0
  227. data/lib/plaid/models/income_verification_precheck_request.rb +141 -0
  228. data/lib/plaid/models/income_verification_precheck_response.rb +101 -0
  229. data/lib/plaid/models/income_verification_precheck_user.rb +110 -0
  230. data/lib/plaid/models/income_verification_refresh_request.rb +114 -0
  231. data/lib/plaid/models/income_verification_refresh_response.rb +90 -0
  232. data/lib/plaid/models/income_verification_status_webhook.rb +117 -0
  233. data/lib/plaid/models/income_verification_summary_get_request.rb +114 -0
  234. data/lib/plaid/models/income_verification_summary_get_response.rb +109 -0
  235. data/lib/plaid/models/income_verification_taxforms_get_request.rb +114 -0
  236. data/lib/plaid/models/income_verification_taxforms_get_response.rb +129 -0
  237. data/lib/plaid/models/income_verification_webhook_status.rb +72 -0
  238. data/lib/plaid/models/inflow_model.rb +136 -0
  239. data/lib/plaid/models/initial_update_webhook.rb +121 -0
  240. data/lib/plaid/models/institution.rb +213 -0
  241. data/lib/plaid/models/institution_status.rb +211 -0
  242. data/lib/plaid/models/institutions_get_by_id_request.rb +120 -0
  243. data/lib/plaid/models/institutions_get_by_id_request_options.rb +131 -0
  244. data/lib/plaid/models/institutions_get_by_id_response.rb +85 -0
  245. data/lib/plaid/models/institutions_get_request.rb +125 -0
  246. data/lib/plaid/models/institutions_get_request_options.rb +154 -0
  247. data/lib/plaid/models/institutions_get_response.rb +102 -0
  248. data/lib/plaid/models/institutions_search_account_filter.rb +105 -0
  249. data/lib/plaid/models/institutions_search_payment_initiation_options.rb +77 -0
  250. data/lib/plaid/models/institutions_search_request.rb +132 -0
  251. data/lib/plaid/models/institutions_search_request_options.rb +136 -0
  252. data/lib/plaid/models/institutions_search_response.rb +94 -0
  253. data/lib/plaid/models/investment.rb +80 -0
  254. data/lib/plaid/models/investment_account_subtype.rb +501 -0
  255. data/lib/plaid/models/investment_filter.rb +78 -0
  256. data/lib/plaid/models/investment_holdings_get_request_options.rb +78 -0
  257. data/lib/plaid/models/investment_transaction.rb +231 -0
  258. data/lib/plaid/models/investments_holdings_get_request.rb +109 -0
  259. data/lib/plaid/models/investments_holdings_get_response.rb +142 -0
  260. data/lib/plaid/models/investments_transactions_get_request.rb +130 -0
  261. data/lib/plaid/models/investments_transactions_get_request_options.rb +96 -0
  262. data/lib/plaid/models/investments_transactions_get_response.rb +156 -0
  263. data/lib/plaid/models/investments_transactions_override.rb +151 -0
  264. data/lib/plaid/models/item.rb +173 -0
  265. data/lib/plaid/models/item_access_token_invalidate_request.rb +98 -0
  266. data/lib/plaid/models/item_access_token_invalidate_response.rb +86 -0
  267. data/lib/plaid/models/item_application_list_request.rb +100 -0
  268. data/lib/plaid/models/item_application_list_response.rb +95 -0
  269. data/lib/plaid/models/item_application_list_user_auth.rb +93 -0
  270. data/lib/plaid/models/item_application_scopes_update_request.rb +143 -0
  271. data/lib/plaid/models/item_application_scopes_update_response.rb +77 -0
  272. data/lib/plaid/models/item_error_webhook.rb +105 -0
  273. data/lib/plaid/models/item_get_request.rb +97 -0
  274. data/lib/plaid/models/item_get_response.rb +95 -0
  275. data/lib/plaid/models/item_import_request.rb +117 -0
  276. data/lib/plaid/models/item_import_request_options.rb +76 -0
  277. data/lib/plaid/models/item_import_request_user_auth.rb +83 -0
  278. data/lib/plaid/models/item_import_response.rb +84 -0
  279. data/lib/plaid/models/item_product_ready_webhook.rb +106 -0
  280. data/lib/plaid/models/item_public_token_create_request.rb +98 -0
  281. data/lib/plaid/models/item_public_token_create_response.rb +107 -0
  282. data/lib/plaid/models/item_public_token_exchange_request.rb +99 -0
  283. data/lib/plaid/models/item_public_token_exchange_response.rb +95 -0
  284. data/lib/plaid/models/item_remove_request.rb +97 -0
  285. data/lib/plaid/models/item_remove_response.rb +76 -0
  286. data/lib/plaid/models/item_status.rb +99 -0
  287. data/lib/plaid/models/item_status_investments.rb +114 -0
  288. data/lib/plaid/models/item_status_last_webhook.rb +98 -0
  289. data/lib/plaid/models/item_status_nullable.rb +99 -0
  290. data/lib/plaid/models/item_status_transactions.rb +114 -0
  291. data/lib/plaid/models/item_webhook_update_request.rb +107 -0
  292. data/lib/plaid/models/item_webhook_update_response.rb +85 -0
  293. data/lib/plaid/models/jwk_public_key.rb +150 -0
  294. data/lib/plaid/models/jwt_header.rb +72 -0
  295. data/lib/plaid/models/liabilities_default_update_webhook.rb +135 -0
  296. data/lib/plaid/models/liabilities_get_request.rb +108 -0
  297. data/lib/plaid/models/liabilities_get_request_options.rb +79 -0
  298. data/lib/plaid/models/liabilities_get_response.rb +111 -0
  299. data/lib/plaid/models/liabilities_object.rb +121 -0
  300. data/lib/plaid/models/liability_override.rb +326 -0
  301. data/lib/plaid/models/link_token_account_filters.rb +120 -0
  302. data/lib/plaid/models/link_token_create_request.rb +378 -0
  303. data/lib/plaid/models/link_token_create_request_account_subtypes.rb +118 -0
  304. data/lib/plaid/models/link_token_create_request_auth.rb +77 -0
  305. data/lib/plaid/models/link_token_create_request_deposit_switch.rb +77 -0
  306. data/lib/plaid/models/link_token_create_request_income_verification.rb +94 -0
  307. data/lib/plaid/models/link_token_create_request_payment_initiation.rb +77 -0
  308. data/lib/plaid/models/link_token_create_request_update.rb +82 -0
  309. data/lib/plaid/models/link_token_create_request_user.rb +201 -0
  310. data/lib/plaid/models/link_token_create_response.rb +107 -0
  311. data/lib/plaid/models/link_token_eu_config.rb +75 -0
  312. data/lib/plaid/models/link_token_get_metadata_response.rb +140 -0
  313. data/lib/plaid/models/link_token_get_request.rb +97 -0
  314. data/lib/plaid/models/link_token_get_response.rb +132 -0
  315. data/lib/plaid/models/loan.rb +80 -0
  316. data/lib/plaid/models/loan_account.rb +173 -0
  317. data/lib/plaid/models/loan_filter.rb +78 -0
  318. data/lib/plaid/models/meta.rb +90 -0
  319. data/lib/plaid/models/mfa.rb +124 -0
  320. data/lib/plaid/models/mortgage_interest_rate.rb +86 -0
  321. data/lib/plaid/models/mortgage_liability.rb +295 -0
  322. data/lib/plaid/models/mortgage_property_address.rb +114 -0
  323. data/lib/plaid/models/net_pay.rb +96 -0
  324. data/lib/plaid/models/new_accounts_available_webhook.rb +115 -0
  325. data/lib/plaid/models/new_payment_status.rb +73 -0
  326. data/lib/plaid/models/numbers.rb +157 -0
  327. data/lib/plaid/models/numbers_ach.rb +113 -0
  328. data/lib/plaid/models/numbers_ach_nullable.rb +112 -0
  329. data/lib/plaid/models/numbers_bacs.rb +92 -0
  330. data/lib/plaid/models/numbers_bacs_nullable.rb +91 -0
  331. data/lib/plaid/models/numbers_eft.rb +101 -0
  332. data/lib/plaid/models/numbers_eft_nullable.rb +100 -0
  333. data/lib/plaid/models/numbers_international.rb +91 -0
  334. data/lib/plaid/models/numbers_international_nullable.rb +90 -0
  335. data/lib/plaid/models/old_payment_status.rb +73 -0
  336. data/lib/plaid/models/override_account_type.rb +56 -0
  337. data/lib/plaid/models/override_accounts.rb +230 -0
  338. data/lib/plaid/models/owner.rb +141 -0
  339. data/lib/plaid/models/owner_override.rb +131 -0
  340. data/lib/plaid/models/pay.rb +88 -0
  341. data/lib/plaid/models/pay_frequency.rb +90 -0
  342. data/lib/plaid/models/pay_frequency1.rb +45 -0
  343. data/lib/plaid/models/pay_period_details.rb +119 -0
  344. data/lib/plaid/models/payment_amount.rb +84 -0
  345. data/lib/plaid/models/payment_channel.rb +43 -0
  346. data/lib/plaid/models/payment_initiation_address.rb +103 -0
  347. data/lib/plaid/models/payment_initiation_metadata.rb +117 -0
  348. data/lib/plaid/models/payment_initiation_optional_restriction_bacs.rb +85 -0
  349. data/lib/plaid/models/payment_initiation_payment.rb +242 -0
  350. data/lib/plaid/models/payment_initiation_payment_create_request.rb +140 -0
  351. data/lib/plaid/models/payment_initiation_payment_create_response.rb +95 -0
  352. data/lib/plaid/models/payment_initiation_payment_get_request.rb +98 -0
  353. data/lib/plaid/models/payment_initiation_payment_get_response.rb +254 -0
  354. data/lib/plaid/models/payment_initiation_payment_list_request.rb +124 -0
  355. data/lib/plaid/models/payment_initiation_payment_list_response.rb +115 -0
  356. data/lib/plaid/models/payment_initiation_payment_reverse_request.rb +98 -0
  357. data/lib/plaid/models/payment_initiation_payment_reverse_response.rb +99 -0
  358. data/lib/plaid/models/payment_initiation_payment_token_create_request.rb +98 -0
  359. data/lib/plaid/models/payment_initiation_payment_token_create_response.rb +107 -0
  360. data/lib/plaid/models/payment_initiation_recipient.rb +131 -0
  361. data/lib/plaid/models/payment_initiation_recipient_create_request.rb +133 -0
  362. data/lib/plaid/models/payment_initiation_recipient_create_response.rb +85 -0
  363. data/lib/plaid/models/payment_initiation_recipient_get_request.rb +98 -0
  364. data/lib/plaid/models/payment_initiation_recipient_get_response.rb +144 -0
  365. data/lib/plaid/models/payment_initiation_recipient_list_request.rb +89 -0
  366. data/lib/plaid/models/payment_initiation_recipient_list_response.rb +94 -0
  367. data/lib/plaid/models/payment_initiation_refund.rb +116 -0
  368. data/lib/plaid/models/payment_initiation_standing_order_metadata.rb +108 -0
  369. data/lib/plaid/models/payment_meta.rb +156 -0
  370. data/lib/plaid/models/payment_options.rb +122 -0
  371. data/lib/plaid/models/payment_schedule_interval.rb +36 -0
  372. data/lib/plaid/models/payment_status_update_webhook.rb +234 -0
  373. data/lib/plaid/models/paystub.rb +186 -0
  374. data/lib/plaid/models/paystub_deduction.rb +95 -0
  375. data/lib/plaid/models/paystub_details.rb +127 -0
  376. data/lib/plaid/models/paystub_override.rb +116 -0
  377. data/lib/plaid/models/paystub_ytd_details.rb +90 -0
  378. data/lib/plaid/models/pending_expiration_webhook.rb +112 -0
  379. data/lib/plaid/models/personal_finance_category.rb +87 -0
  380. data/lib/plaid/models/personal_finance_category2.rb +83 -0
  381. data/lib/plaid/models/phone_number.rb +91 -0
  382. data/lib/plaid/models/processor.rb +116 -0
  383. data/lib/plaid/models/processor_apex_processor_token_create_request.rb +108 -0
  384. data/lib/plaid/models/processor_auth_get_request.rb +100 -0
  385. data/lib/plaid/models/processor_auth_get_response.rb +98 -0
  386. data/lib/plaid/models/processor_balance_get_request.rb +111 -0
  387. data/lib/plaid/models/processor_balance_get_request_options.rb +98 -0
  388. data/lib/plaid/models/processor_balance_get_response.rb +85 -0
  389. data/lib/plaid/models/processor_bank_transfer_create_request.rb +248 -0
  390. data/lib/plaid/models/processor_bank_transfer_create_response.rb +84 -0
  391. data/lib/plaid/models/processor_identity_get_request.rb +101 -0
  392. data/lib/plaid/models/processor_identity_get_response.rb +85 -0
  393. data/lib/plaid/models/processor_number.rb +111 -0
  394. data/lib/plaid/models/processor_stripe_bank_account_token_create_request.rb +108 -0
  395. data/lib/plaid/models/processor_stripe_bank_account_token_create_response.rb +87 -0
  396. data/lib/plaid/models/processor_token_create_request.rb +116 -0
  397. data/lib/plaid/models/processor_token_create_response.rb +87 -0
  398. data/lib/plaid/models/product_access.rb +112 -0
  399. data/lib/plaid/models/product_data_type.rb +40 -0
  400. data/lib/plaid/models/product_status.rb +106 -0
  401. data/lib/plaid/models/products.rb +86 -0
  402. data/lib/plaid/models/projected_income_summary_field_number.rb +90 -0
  403. data/lib/plaid/models/pslf_status.rb +103 -0
  404. data/lib/plaid/models/recaptcha_required_error.rb +143 -0
  405. data/lib/plaid/models/recipient_bacs.rb +87 -0
  406. data/lib/plaid/models/recipient_bacs_nullable.rb +85 -0
  407. data/lib/plaid/models/refresh_interval.rb +42 -0
  408. data/lib/plaid/models/requested_scopes.rb +124 -0
  409. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_request.rb +97 -0
  410. data/lib/plaid/models/sandbox_bank_transfer_fire_webhook_response.rb +76 -0
  411. data/lib/plaid/models/sandbox_bank_transfer_simulate_request.rb +128 -0
  412. data/lib/plaid/models/sandbox_bank_transfer_simulate_response.rb +76 -0
  413. data/lib/plaid/models/sandbox_income_fire_webhook_request.rb +125 -0
  414. data/lib/plaid/models/sandbox_income_fire_webhook_response.rb +77 -0
  415. data/lib/plaid/models/sandbox_item_fire_webhook_request.rb +109 -0
  416. data/lib/plaid/models/sandbox_item_fire_webhook_response.rb +85 -0
  417. data/lib/plaid/models/sandbox_item_reset_login_request.rb +98 -0
  418. data/lib/plaid/models/sandbox_item_reset_login_response.rb +85 -0
  419. data/lib/plaid/models/sandbox_item_set_verification_status_request.rb +118 -0
  420. data/lib/plaid/models/sandbox_item_set_verification_status_response.rb +77 -0
  421. data/lib/plaid/models/sandbox_oauth_select_accounts_request.rb +83 -0
  422. data/lib/plaid/models/sandbox_processor_token_create_request.rb +111 -0
  423. data/lib/plaid/models/sandbox_processor_token_create_request_options.rb +92 -0
  424. data/lib/plaid/models/sandbox_processor_token_create_response.rb +85 -0
  425. data/lib/plaid/models/sandbox_public_token_create_request.rb +123 -0
  426. data/lib/plaid/models/sandbox_public_token_create_request_options.rb +116 -0
  427. data/lib/plaid/models/sandbox_public_token_create_request_options_transactions.rb +88 -0
  428. data/lib/plaid/models/sandbox_public_token_create_response.rb +86 -0
  429. data/lib/plaid/models/sandbox_transfer_simulate_request.rb +124 -0
  430. data/lib/plaid/models/sandbox_transfer_simulate_response.rb +76 -0
  431. data/lib/plaid/models/scopes.rb +109 -0
  432. data/lib/plaid/models/scopes_context.rb +38 -0
  433. data/lib/plaid/models/scopes_nullable.rb +109 -0
  434. data/lib/plaid/models/security.rb +252 -0
  435. data/lib/plaid/models/security_override.rb +131 -0
  436. data/lib/plaid/models/sell_type.rb +105 -0
  437. data/lib/plaid/models/sender_bacs_nullable.rb +85 -0
  438. data/lib/plaid/models/servicer_address_data.rb +117 -0
  439. data/lib/plaid/models/signal_decision_report_request.rb +110 -0
  440. data/lib/plaid/models/signal_decision_report_response.rb +77 -0
  441. data/lib/plaid/models/signal_evaluate_core_attributes.rb +662 -0
  442. data/lib/plaid/models/signal_evaluate_device.rb +90 -0
  443. data/lib/plaid/models/signal_evaluate_request.rb +163 -0
  444. data/lib/plaid/models/signal_evaluate_response.rb +99 -0
  445. data/lib/plaid/models/signal_evaluate_scores.rb +108 -0
  446. data/lib/plaid/models/signal_person_name.rb +122 -0
  447. data/lib/plaid/models/signal_return_report_request.rb +110 -0
  448. data/lib/plaid/models/signal_return_report_response.rb +77 -0
  449. data/lib/plaid/models/signal_user.rb +111 -0
  450. data/lib/plaid/models/standalone_account_type.rb +115 -0
  451. data/lib/plaid/models/standalone_currency_code_list.rb +86 -0
  452. data/lib/plaid/models/standalone_investment_transaction_type.rb +119 -0
  453. data/lib/plaid/models/state.rb +49 -0
  454. data/lib/plaid/models/status.rb +41 -0
  455. data/lib/plaid/models/status1.rb +48 -0
  456. data/lib/plaid/models/status2.rb +49 -0
  457. data/lib/plaid/models/status3.rb +73 -0
  458. data/lib/plaid/models/status_breakdown.rb +111 -0
  459. data/lib/plaid/models/student_loan.rb +367 -0
  460. data/lib/plaid/models/student_loan_repayment_model.rb +95 -0
  461. data/lib/plaid/models/student_loan_status.rb +86 -0
  462. data/lib/plaid/models/student_repayment_plan.rb +84 -0
  463. data/lib/plaid/models/subtype.rb +209 -0
  464. data/lib/plaid/models/switch_method.rb +45 -0
  465. data/lib/plaid/models/taxform.rb +84 -0
  466. data/lib/plaid/models/taxpayer_id.rb +89 -0
  467. data/lib/plaid/models/total.rb +110 -0
  468. data/lib/plaid/models/transaction.rb +426 -0
  469. data/lib/plaid/models/transaction_base.rb +285 -0
  470. data/lib/plaid/models/transaction_code.rb +87 -0
  471. data/lib/plaid/models/transaction_data.rb +112 -0
  472. data/lib/plaid/models/transaction_location.rb +143 -0
  473. data/lib/plaid/models/transaction_override.rb +119 -0
  474. data/lib/plaid/models/transaction_type.rb +48 -0
  475. data/lib/plaid/models/transactions_get_request.rb +128 -0
  476. data/lib/plaid/models/transactions_get_request_options.rb +139 -0
  477. data/lib/plaid/models/transactions_get_response.rb +138 -0
  478. data/lib/plaid/models/transactions_refresh_request.rb +98 -0
  479. data/lib/plaid/models/transactions_refresh_response.rb +77 -0
  480. data/lib/plaid/models/transactions_removed_webhook.rb +119 -0
  481. data/lib/plaid/models/transactions_update_investments_webhook.rb +134 -0
  482. data/lib/plaid/models/transfer.rb +229 -0
  483. data/lib/plaid/models/transfer_authorization.rb +126 -0
  484. data/lib/plaid/models/transfer_authorization_create_request.rb +197 -0
  485. data/lib/plaid/models/transfer_authorization_create_response.rb +86 -0
  486. data/lib/plaid/models/transfer_authorization_decision_rationale.rb +96 -0
  487. data/lib/plaid/models/transfer_authorization_device.rb +86 -0
  488. data/lib/plaid/models/transfer_authorization_proposed_transfer.rb +150 -0
  489. data/lib/plaid/models/transfer_cancel_request.rb +97 -0
  490. data/lib/plaid/models/transfer_cancel_response.rb +76 -0
  491. data/lib/plaid/models/transfer_create_request.rb +241 -0
  492. data/lib/plaid/models/transfer_create_response.rb +84 -0
  493. data/lib/plaid/models/transfer_event.rb +171 -0
  494. data/lib/plaid/models/transfer_event_list_request.rb +214 -0
  495. data/lib/plaid/models/transfer_event_list_response.rb +93 -0
  496. data/lib/plaid/models/transfer_event_sync_request.rb +110 -0
  497. data/lib/plaid/models/transfer_event_sync_response.rb +93 -0
  498. data/lib/plaid/models/transfer_event_type.rb +52 -0
  499. data/lib/plaid/models/transfer_failure.rb +93 -0
  500. data/lib/plaid/models/transfer_get_request.rb +97 -0
  501. data/lib/plaid/models/transfer_get_response.rb +84 -0
  502. data/lib/plaid/models/transfer_list_request.rb +163 -0
  503. data/lib/plaid/models/transfer_list_response.rb +93 -0
  504. data/lib/plaid/models/transfer_network.rb +37 -0
  505. data/lib/plaid/models/transfer_status.rb +48 -0
  506. data/lib/plaid/models/transfer_type.rb +146 -0
  507. data/lib/plaid/models/transfer_type1.rb +38 -0
  508. data/lib/plaid/models/transfer_type2.rb +38 -0
  509. data/lib/plaid/models/transfer_user_address_in_request.rb +114 -0
  510. data/lib/plaid/models/transfer_user_address_in_response.rb +114 -0
  511. data/lib/plaid/models/transfer_user_in_request.rb +105 -0
  512. data/lib/plaid/models/transfer_user_in_response.rb +104 -0
  513. data/lib/plaid/models/type.rb +52 -0
  514. data/lib/plaid/models/type1.rb +40 -0
  515. data/lib/plaid/models/type2.rb +100 -0
  516. data/lib/plaid/models/type3.rb +68 -0
  517. data/lib/plaid/models/type4.rb +60 -0
  518. data/lib/plaid/models/type5.rb +41 -0
  519. data/lib/plaid/models/unofficial_currency_code_list.rb +252 -0
  520. data/lib/plaid/models/update_type.rb +39 -0
  521. data/lib/plaid/models/user_custom_password.rb +166 -0
  522. data/lib/plaid/models/user_permission_revoked_webhook.rb +110 -0
  523. data/lib/plaid/models/value.rb +52 -0
  524. data/lib/plaid/models/verification_expired_webhook.rb +102 -0
  525. data/lib/plaid/models/verification_refresh_status.rb +29 -0
  526. data/lib/plaid/models/verification_status.rb +53 -0
  527. data/lib/plaid/models/verification_status1.rb +36 -0
  528. data/lib/plaid/models/verification_status3.rb +48 -0
  529. data/lib/plaid/models/verification_status4.rb +65 -0
  530. data/lib/plaid/models/w2.rb +346 -0
  531. data/lib/plaid/models/w2_box12.rb +88 -0
  532. data/lib/plaid/models/w2_state_and_local_wages.rb +152 -0
  533. data/lib/plaid/models/warning.rb +98 -0
  534. data/lib/plaid/models/webhook_update_acknowledged_webhook.rb +118 -0
  535. data/lib/plaid/models/webhook_verification_key_get_request.rb +98 -0
  536. data/lib/plaid/models/webhook_verification_key_get_response.rb +86 -0
  537. data/lib/plaid/models/ytd_gross_income_summary_field_number.rb +90 -0
  538. data/lib/plaid/models/ytd_net_income_summary_field_number.rb +90 -0
  539. data/lib/plaid/utilities/date_time_helper.rb +11 -0
  540. data/lib/plaid/utilities/file_wrapper.rb +28 -0
  541. data/lib/plaid.rb +565 -0
  542. metadata +625 -0
@@ -0,0 +1,111 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # TransactionsApi
8
+ class TransactionsApi < BaseApi
9
+ # `/transactions/refresh` is an optional endpoint for users of the
10
+ # Transactions product. It initiates an on-demand extraction to fetch the
11
+ # newest transactions for an Item. This on-demand extraction takes place in
12
+ # addition to the periodic extractions that automatically occur multiple
13
+ # times a day for any Transactions-enabled Item. If changes to transactions
14
+ # are discovered after calling `/transactions/refresh`, Plaid will fire a
15
+ # webhook:
16
+ # [`TRANSACTIONS_REMOVED`](https://plaid.com/docs/api/webhooks#deleted-trans
17
+ # actions-detected) will be fired if any removed transactions are detected,
18
+ # and
19
+ # [`DEFAULT_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-defaul
20
+ # t_update) will be fired if any new transactions are detected. New
21
+ # transactions can be fetched by calling `/transactions/get`.
22
+ # Access to `/transactions/refresh` in Production is specific to certain
23
+ # pricing plans. If you cannot access `/transactions/refresh` in Production,
24
+ # [contact Sales](https://www.plaid.com/contact) for assistance.
25
+ # @param [TransactionsRefreshRequest] body Required parameter: TODO: type
26
+ # description here
27
+ # @return [ApiResponse] Complete http response with raw body and status code.
28
+ def transactions_refresh(body)
29
+ @api_call
30
+ .request(new_request_builder(HttpMethodEnum::POST,
31
+ '/transactions/refresh',
32
+ Server::DEFAULT)
33
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
34
+ .body_param(new_parameter(body)
35
+ .is_required(true))
36
+ .header_param(new_parameter('application/json', key: 'accept'))
37
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
38
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
39
+ .response(new_response_handler
40
+ .deserializer(APIHelper.method(:custom_type_deserializer))
41
+ .deserialize_into(TransactionsRefreshResponse.method(:from_hash))
42
+ .is_api_response(true)
43
+ .local_error('default',
44
+ 'Error response',
45
+ ErrorErrorException))
46
+ .execute
47
+ end
48
+
49
+ # The `/transactions/get` endpoint allows developers to receive
50
+ # user-authorized transaction data for credit, depository, and some
51
+ # loan-type accounts (only those with account subtype `student`; coverage
52
+ # may be limited). For transaction history from investments accounts, use
53
+ # the [Investments
54
+ # endpoint](https://plaid.com/docs/api/products#investments) instead.
55
+ # Transaction data is standardized across financial institutions, and in
56
+ # many cases transactions are linked to a clean name, entity type, location,
57
+ # and category. Similarly, account data is standardized and returned with a
58
+ # clean name, number, balance, and other meta information where available.
59
+ # Transactions are returned in reverse-chronological order, and the sequence
60
+ # of transaction ordering is stable and will not shift. Transactions are
61
+ # not immutable and can also be removed altogether by the institution; a
62
+ # removed transaction will no longer appear in `/transactions/get`. For
63
+ # more details, see [Pending and posted
64
+ # transactions](https://plaid.com/docs/transactions/transactions-data/#pendi
65
+ # ng-and-posted-transactions).
66
+ # Due to the potentially large number of transactions associated with an
67
+ # Item, results are paginated. Manipulate the `count` and `offset`
68
+ # parameters in conjunction with the `total_transactions` response body
69
+ # field to fetch all available transactions.
70
+ # Data returned by `/transactions/get` will be the data available for the
71
+ # Item as of the most recent successful check for new transactions. Plaid
72
+ # typically checks for new data multiple times a day, but these checks may
73
+ # occur less frequently, such as once a day, depending on the institution.
74
+ # An Item's `status.transactions.last_successful_update` field will show the
75
+ # timestamp of the most recent successful update. To force Plaid to check
76
+ # for new transactions, you can use the `/transactions/refresh` endpoint.
77
+ # Note that data may not be immediately available to `/transactions/get`.
78
+ # Plaid will begin to prepare transactions data upon Item link, if Link was
79
+ # initialized with `transactions`, or upon the first call to
80
+ # `/transactions/get`, if it wasn't. To be alerted when transaction data is
81
+ # ready to be fetched, listen for the
82
+ # [`INITIAL_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-initia
83
+ # l_update) and
84
+ # [`HISTORICAL_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-his
85
+ # torical_update) webhooks. If no transaction history is ready when
86
+ # `/transactions/get` is called, it will return a `PRODUCT_NOT_READY` error.
87
+ # @param [TransactionsGetRequest] body Required parameter: TODO: type
88
+ # description here
89
+ # @return [ApiResponse] Complete http response with raw body and status code.
90
+ def transactions_get(body)
91
+ @api_call
92
+ .request(new_request_builder(HttpMethodEnum::POST,
93
+ '/transactions/get',
94
+ Server::DEFAULT)
95
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
96
+ .body_param(new_parameter(body)
97
+ .is_required(true))
98
+ .header_param(new_parameter('application/json', key: 'accept'))
99
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
100
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
101
+ .response(new_response_handler
102
+ .deserializer(APIHelper.method(:custom_type_deserializer))
103
+ .deserialize_into(TransactionsGetResponse.method(:from_hash))
104
+ .is_api_response(true)
105
+ .local_error('default',
106
+ 'Error response',
107
+ ErrorErrorException))
108
+ .execute
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,214 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # TransferApi
8
+ class TransferApi < BaseApi
9
+ # `/transfer/event/sync` allows you to request up to the next 25 transfer
10
+ # events that happened after a specific `event_id`. Use the
11
+ # `/transfer/event/sync` endpoint to guarantee you have seen all transfer
12
+ # events.
13
+ # @param [TransferEventSyncRequest] body Required parameter: TODO: type
14
+ # description here
15
+ # @return [ApiResponse] Complete http response with raw body and status code.
16
+ def transfer_event_sync(body)
17
+ @api_call
18
+ .request(new_request_builder(HttpMethodEnum::POST,
19
+ '/transfer/event/sync',
20
+ Server::DEFAULT)
21
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
22
+ .body_param(new_parameter(body)
23
+ .is_required(true))
24
+ .header_param(new_parameter('application/json', key: 'accept'))
25
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
26
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
27
+ .response(new_response_handler
28
+ .deserializer(APIHelper.method(:custom_type_deserializer))
29
+ .deserialize_into(TransferEventSyncResponse.method(:from_hash))
30
+ .is_api_response(true)
31
+ .local_error('default',
32
+ 'Error response',
33
+ ErrorErrorException))
34
+ .execute
35
+ end
36
+
37
+ # Use the `/transfer/list` endpoint to see a list of all your transfers and
38
+ # their statuses. Results are paginated; use the `count` and `offset` query
39
+ # parameters to retrieve the desired transfers.
40
+ # @param [TransferListRequest] body Required parameter: TODO: type
41
+ # description here
42
+ # @return [ApiResponse] Complete http response with raw body and status code.
43
+ def transfer_list(body)
44
+ @api_call
45
+ .request(new_request_builder(HttpMethodEnum::POST,
46
+ '/transfer/list',
47
+ Server::DEFAULT)
48
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
49
+ .body_param(new_parameter(body)
50
+ .is_required(true))
51
+ .header_param(new_parameter('application/json', key: 'accept'))
52
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
53
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
54
+ .response(new_response_handler
55
+ .deserializer(APIHelper.method(:custom_type_deserializer))
56
+ .deserialize_into(TransferListResponse.method(:from_hash))
57
+ .is_api_response(true)
58
+ .local_error('default',
59
+ 'Error response',
60
+ ErrorErrorException))
61
+ .execute
62
+ end
63
+
64
+ # The `/transfer/get` fetches information about the transfer corresponding
65
+ # to the given `transfer_id`.
66
+ # @param [TransferGetRequest] body Required parameter: TODO: type
67
+ # description here
68
+ # @return [ApiResponse] Complete http response with raw body and status code.
69
+ def transfer_get(body)
70
+ @api_call
71
+ .request(new_request_builder(HttpMethodEnum::POST,
72
+ '/transfer/get',
73
+ Server::DEFAULT)
74
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
75
+ .body_param(new_parameter(body)
76
+ .is_required(true))
77
+ .header_param(new_parameter('application/json', key: 'accept'))
78
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
79
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
80
+ .response(new_response_handler
81
+ .deserializer(APIHelper.method(:custom_type_deserializer))
82
+ .deserialize_into(TransferGetResponse.method(:from_hash))
83
+ .is_api_response(true)
84
+ .local_error('default',
85
+ 'Error response',
86
+ ErrorErrorException))
87
+ .execute
88
+ end
89
+
90
+ # Use the `/transfer/cancel` endpoint to cancel a transfer. A transfer is
91
+ # eligible for cancelation if the `cancellable` property returned by
92
+ # `/transfer/get` is `true`.
93
+ # @param [TransferCancelRequest] body Required parameter: TODO: type
94
+ # description here
95
+ # @return [ApiResponse] Complete http response with raw body and status code.
96
+ def transfer_cancel(body)
97
+ @api_call
98
+ .request(new_request_builder(HttpMethodEnum::POST,
99
+ '/transfer/cancel',
100
+ Server::DEFAULT)
101
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
102
+ .body_param(new_parameter(body)
103
+ .is_required(true))
104
+ .header_param(new_parameter('application/json', key: 'accept'))
105
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
106
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
107
+ .response(new_response_handler
108
+ .deserializer(APIHelper.method(:custom_type_deserializer))
109
+ .deserialize_into(TransferCancelResponse.method(:from_hash))
110
+ .is_api_response(true)
111
+ .local_error('default',
112
+ 'Error response',
113
+ ErrorErrorException))
114
+ .execute
115
+ end
116
+
117
+ # Use the `/transfer/create` endpoint to initiate a new transfer.
118
+ # @param [TransferCreateRequest] body Required parameter: TODO: type
119
+ # description here
120
+ # @return [ApiResponse] Complete http response with raw body and status code.
121
+ def transfer_create(body)
122
+ @api_call
123
+ .request(new_request_builder(HttpMethodEnum::POST,
124
+ '/transfer/create',
125
+ Server::DEFAULT)
126
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
127
+ .body_param(new_parameter(body)
128
+ .is_required(true))
129
+ .header_param(new_parameter('application/json', key: 'accept'))
130
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
131
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
132
+ .response(new_response_handler
133
+ .deserializer(APIHelper.method(:custom_type_deserializer))
134
+ .deserialize_into(TransferCreateResponse.method(:from_hash))
135
+ .is_api_response(true)
136
+ .local_error('default',
137
+ 'Error response',
138
+ ErrorErrorException))
139
+ .execute
140
+ end
141
+
142
+ # Use the `/transfer/authorization/create` endpoint to determine transfer
143
+ # failure risk.
144
+ # In Plaid's sandbox environment the decisions will be returned as follows:
145
+ # - To approve a transfer, make an authorization request with an `amount`
146
+ # less than the available balance in the account.
147
+ # - To decline a transfer with the rationale code `NSF`, the available
148
+ # balance on the account must be less than the authorization `amount`. See
149
+ # [Create Sandbox test data](https://plaid.com/docs/sandbox/user-custom/)
150
+ # for details on how to customize data in Sandbox.
151
+ # - To decline a transfer with the rationale code `RISK`, the available
152
+ # balance on the account must be exactly $0. See [Create Sandbox test
153
+ # data](https://plaid.com/docs/sandbox/user-custom/) for details on how to
154
+ # customize data in Sandbox.
155
+ # - To permit a transfer with the rationale code `MANUALLY_VERIFIED_ITEM`,
156
+ # create an Item in Link through the [Same Day Micro-deposits
157
+ # flow](https://plaid.com/docs/auth/coverage/testing/#testing-same-day-micro
158
+ # -deposits).
159
+ # - To permit a transfer with the rationale code `LOGIN_REQUIRED`, [reset
160
+ # the login for an
161
+ # Item](https://plaid.com/docs/sandbox/#item_login_required).
162
+ # All username/password combinations other than the ones listed above will
163
+ # result in a decision of permitted and rationale code `ERROR`.
164
+ # @param [TransferAuthorizationCreateRequest] body Required parameter: TODO:
165
+ # type description here
166
+ # @return [ApiResponse] Complete http response with raw body and status code.
167
+ def transfer_authorization_create(body)
168
+ @api_call
169
+ .request(new_request_builder(HttpMethodEnum::POST,
170
+ '/transfer/authorization/create',
171
+ Server::DEFAULT)
172
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
173
+ .body_param(new_parameter(body)
174
+ .is_required(true))
175
+ .header_param(new_parameter('application/json', key: 'accept'))
176
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
177
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
178
+ .response(new_response_handler
179
+ .deserializer(APIHelper.method(:custom_type_deserializer))
180
+ .deserialize_into(TransferAuthorizationCreateResponse.method(:from_hash))
181
+ .is_api_response(true)
182
+ .local_error('default',
183
+ 'Error response',
184
+ ErrorErrorException))
185
+ .execute
186
+ end
187
+
188
+ # Use the `/transfer/event/list` endpoint to get a list of transfer events
189
+ # based on specified filter criteria.
190
+ # @param [TransferEventListRequest] body Required parameter: TODO: type
191
+ # description here
192
+ # @return [ApiResponse] Complete http response with raw body and status code.
193
+ def transfer_event_list(body)
194
+ @api_call
195
+ .request(new_request_builder(HttpMethodEnum::POST,
196
+ '/transfer/event/list',
197
+ Server::DEFAULT)
198
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
199
+ .body_param(new_parameter(body)
200
+ .is_required(true))
201
+ .header_param(new_parameter('application/json', key: 'accept'))
202
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
203
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
204
+ .response(new_response_handler
205
+ .deserializer(APIHelper.method(:custom_type_deserializer))
206
+ .deserialize_into(TransferEventListResponse.method(:from_hash))
207
+ .is_api_response(true)
208
+ .local_error('default',
209
+ 'Error response',
210
+ ErrorErrorException))
211
+ .execute
212
+ end
213
+ end
214
+ end
@@ -0,0 +1,36 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # WebhookVerificationKeyApi
8
+ class WebhookVerificationKeyApi < BaseApi
9
+ # Plaid signs all outgoing webhooks and provides JSON Web Tokens (JWTs) so
10
+ # that you can verify the authenticity of any incoming webhooks to your
11
+ # application. A message signature is included in the `Plaid-Verification`
12
+ # header.
13
+ # The `/webhook_verification_key/get` endpoint provides a JSON Web Key (JWK)
14
+ # that can be used to verify a JWT.
15
+ # @param [WebhookVerificationKeyGetRequest] body Required parameter: TODO:
16
+ # type description here
17
+ # @return [ApiResponse] Complete http response with raw body and status code.
18
+ def webhook_verification_key_get(body)
19
+ @api_call
20
+ .request(new_request_builder(HttpMethodEnum::POST,
21
+ '/webhook_verification_key/get',
22
+ Server::DEFAULT)
23
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
24
+ .body_param(new_parameter(body)
25
+ .is_required(true))
26
+ .header_param(new_parameter('application/json', key: 'accept'))
27
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
28
+ .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
29
+ .response(new_response_handler
30
+ .deserializer(APIHelper.method(:custom_type_deserializer))
31
+ .deserialize_into(WebhookVerificationKeyGetResponse.method(:from_hash))
32
+ .is_api_response(true))
33
+ .execute
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,208 @@
1
+ # plaid
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Plaid
7
+ # plaid client class.
8
+ class Client
9
+ include CoreLibrary
10
+ attr_reader :config, :auth_managers
11
+
12
+ def user_agent_detail
13
+ config.user_agent_detail
14
+ end
15
+
16
+ # Access to item controller.
17
+ # @return [ItemApi] Returns the controller instance.
18
+ def item
19
+ @item ||= ItemApi.new @global_configuration
20
+ end
21
+
22
+ # Access to asset_report controller.
23
+ # @return [AssetReportApi] Returns the controller instance.
24
+ def asset_report
25
+ @asset_report ||= AssetReportApi.new @global_configuration
26
+ end
27
+
28
+ # Access to processor controller.
29
+ # @return [ProcessorApi] Returns the controller instance.
30
+ def processor
31
+ @processor ||= ProcessorApi.new @global_configuration
32
+ end
33
+
34
+ # Access to payment_initiation controller.
35
+ # @return [PaymentInitiationApi] Returns the controller instance.
36
+ def payment_initiation
37
+ @payment_initiation ||= PaymentInitiationApi.new @global_configuration
38
+ end
39
+
40
+ # Access to sandbox controller.
41
+ # @return [SandboxApi] Returns the controller instance.
42
+ def sandbox
43
+ @sandbox ||= SandboxApi.new @global_configuration
44
+ end
45
+
46
+ # Access to investments controller.
47
+ # @return [InvestmentsApi] Returns the controller instance.
48
+ def investments
49
+ @investments ||= InvestmentsApi.new @global_configuration
50
+ end
51
+
52
+ # Access to institutions controller.
53
+ # @return [InstitutionsApi] Returns the controller instance.
54
+ def institutions
55
+ @institutions ||= InstitutionsApi.new @global_configuration
56
+ end
57
+
58
+ # Access to application controller.
59
+ # @return [ApplicationApi] Returns the controller instance.
60
+ def application
61
+ @application ||= ApplicationApi.new @global_configuration
62
+ end
63
+
64
+ # Access to accounts controller.
65
+ # @return [AccountsApi] Returns the controller instance.
66
+ def accounts
67
+ @accounts ||= AccountsApi.new @global_configuration
68
+ end
69
+
70
+ # Access to identity controller.
71
+ # @return [IdentityApi] Returns the controller instance.
72
+ def identity
73
+ @identity ||= IdentityApi.new @global_configuration
74
+ end
75
+
76
+ # Access to liabilities controller.
77
+ # @return [LiabilitiesApi] Returns the controller instance.
78
+ def liabilities
79
+ @liabilities ||= LiabilitiesApi.new @global_configuration
80
+ end
81
+
82
+ # Access to auth controller.
83
+ # @return [AuthApi] Returns the controller instance.
84
+ def auth
85
+ @auth ||= AuthApi.new @global_configuration
86
+ end
87
+
88
+ # Access to transactions controller.
89
+ # @return [TransactionsApi] Returns the controller instance.
90
+ def transactions
91
+ @transactions ||= TransactionsApi.new @global_configuration
92
+ end
93
+
94
+ # Access to categories controller.
95
+ # @return [CategoriesApi] Returns the controller instance.
96
+ def categories
97
+ @categories ||= CategoriesApi.new @global_configuration
98
+ end
99
+
100
+ # Access to webhook_verification_key controller.
101
+ # @return [WebhookVerificationKeyApi] Returns the controller instance.
102
+ def webhook_verification_key
103
+ @webhook_verification_key ||= WebhookVerificationKeyApi.new @global_configuration
104
+ end
105
+
106
+ # Access to deposit_switch controller.
107
+ # @return [DepositSwitchApi] Returns the controller instance.
108
+ def deposit_switch
109
+ @deposit_switch ||= DepositSwitchApi.new @global_configuration
110
+ end
111
+
112
+ # Access to link controller.
113
+ # @return [LinkApi] Returns the controller instance.
114
+ def link
115
+ @link ||= LinkApi.new @global_configuration
116
+ end
117
+
118
+ # Access to transfer controller.
119
+ # @return [TransferApi] Returns the controller instance.
120
+ def transfer
121
+ @transfer ||= TransferApi.new @global_configuration
122
+ end
123
+
124
+ # Access to bank_transfer controller.
125
+ # @return [BankTransferApi] Returns the controller instance.
126
+ def bank_transfer
127
+ @bank_transfer ||= BankTransferApi.new @global_configuration
128
+ end
129
+
130
+ # Access to employers controller.
131
+ # @return [EmployersApi] Returns the controller instance.
132
+ def employers
133
+ @employers ||= EmployersApi.new @global_configuration
134
+ end
135
+
136
+ # Access to income controller.
137
+ # @return [IncomeApi] Returns the controller instance.
138
+ def income
139
+ @income ||= IncomeApi.new @global_configuration
140
+ end
141
+
142
+ # Access to signal controller.
143
+ # @return [SignalApi] Returns the controller instance.
144
+ def signal
145
+ @signal ||= SignalApi.new @global_configuration
146
+ end
147
+
148
+ def initialize(
149
+ connection: nil, adapter: :net_http_persistent, timeout: 60,
150
+ max_retries: 0, retry_interval: 1, backoff_factor: 2,
151
+ retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524],
152
+ retry_methods: %i[get put], http_callback: nil, proxy_settings: nil,
153
+ logging_configuration: nil, environment: Environment::PRODUCTION,
154
+ plaid_client_id_credentials: nil, plaid_secret_credentials: nil,
155
+ plaid_version_credentials: nil, config: nil
156
+ )
157
+ @config = if config.nil?
158
+ Configuration.new(
159
+ connection: connection, adapter: adapter, timeout: timeout,
160
+ max_retries: max_retries, retry_interval: retry_interval,
161
+ backoff_factor: backoff_factor,
162
+ retry_statuses: retry_statuses,
163
+ retry_methods: retry_methods, http_callback: http_callback,
164
+ proxy_settings: proxy_settings,
165
+ logging_configuration: logging_configuration,
166
+ environment: environment,
167
+ plaid_client_id_credentials: plaid_client_id_credentials,
168
+ plaid_secret_credentials: plaid_secret_credentials,
169
+ plaid_version_credentials: plaid_version_credentials
170
+ )
171
+ else
172
+ config
173
+ end
174
+ user_agent_params = BaseApi.user_agent_parameters
175
+
176
+ @global_configuration = GlobalConfiguration.new(client_configuration: @config)
177
+ .base_uri_executor(@config.method(:get_base_uri))
178
+ .global_errors(BaseApi::GLOBAL_ERRORS)
179
+ .user_agent(BaseApi.user_agent,
180
+ agent_parameters: user_agent_params)
181
+
182
+ initialize_auth_managers(@global_configuration)
183
+ @global_configuration = @global_configuration.auth_managers(@auth_managers)
184
+ end
185
+
186
+ # Initializes the auth managers hash used for authenticating API calls.
187
+ # @param [GlobalConfiguration] global_config The global configuration of the SDK)
188
+ def initialize_auth_managers(global_config)
189
+ @auth_managers = {}
190
+ http_client_config = global_config.client_configuration
191
+ %w[PLAID-CLIENT-ID PLAID-SECRET Plaid-Version].each { |auth| @auth_managers[auth] = nil }
192
+ @auth_managers['PLAID-CLIENT-ID'] = PlaidClientId.new(
193
+ http_client_config.plaid_client_id_credentials
194
+ )
195
+ @auth_managers['PLAID-SECRET'] = PlaidSecret.new(http_client_config.plaid_secret_credentials)
196
+ @auth_managers['Plaid-Version'] = PlaidVersion.new(
197
+ http_client_config.plaid_version_credentials
198
+ )
199
+ end
200
+
201
+ # Creates a client directly from environment variables.
202
+ def self.from_env(**overrides)
203
+ default_config = Configuration.build_default_config_from_env
204
+ new_config = default_config.clone_with(**overrides)
205
+ new(config: new_config)
206
+ end
207
+ end
208
+ end