moneykit 0.0.2 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (222) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/lib/moneykit/api/access_token_api.rb +53 -55
  4. data/lib/moneykit/api/account_numbers_api.rb +26 -26
  5. data/lib/moneykit/api/accounts_api.rb +88 -82
  6. data/lib/moneykit/api/identity_api.rb +31 -30
  7. data/lib/moneykit/api/institutions_api.rb +50 -48
  8. data/lib/moneykit/api/link_session_api.rb +47 -50
  9. data/lib/moneykit/api/links_api.rb +137 -81
  10. data/lib/moneykit/api/products_api.rb +33 -35
  11. data/lib/moneykit/api/transactions_api.rb +126 -101
  12. data/lib/moneykit/api/users_api.rb +100 -83
  13. data/lib/moneykit/api/webhooks_api.rb +97 -0
  14. data/lib/moneykit/api_client.rb +100 -103
  15. data/lib/moneykit/api_error.rb +14 -16
  16. data/lib/moneykit/configuration.rb +52 -65
  17. data/lib/moneykit/models/account.rb +69 -112
  18. data/lib/moneykit/models/account_balances.rb +64 -78
  19. data/lib/moneykit/models/account_group.rb +58 -61
  20. data/lib/moneykit/models/account_identity.rb +79 -124
  21. data/lib/moneykit/models/account_numbers.rb +96 -71
  22. data/lib/moneykit/models/account_numbers_link_product.rb +57 -69
  23. data/lib/moneykit/models/account_numbers_product_settings.rb +59 -63
  24. data/lib/moneykit/models/account_type.rb +23 -23
  25. data/lib/moneykit/models/account_with_account_numbers.rb +76 -124
  26. data/lib/moneykit/models/accounts_link_product.rb +53 -61
  27. data/lib/moneykit/models/ach_number.rb +57 -65
  28. data/lib/moneykit/models/address.rb +70 -90
  29. data/lib/moneykit/models/api_error_auth_expired_access_token_response.rb +72 -78
  30. data/lib/moneykit/models/api_error_auth_unauthorized_response.rb +69 -78
  31. data/lib/moneykit/models/api_error_rate_limit_exceeded_response.rb +72 -78
  32. data/lib/moneykit/models/app.rb +46 -50
  33. data/lib/moneykit/models/bacs_number.rb +53 -61
  34. data/lib/moneykit/models/balances.rb +58 -64
  35. data/lib/moneykit/models/basic_account_details.rb +62 -77
  36. data/lib/moneykit/models/country.rb +13 -14
  37. data/lib/moneykit/models/create_link_session_request.rb +109 -119
  38. data/lib/moneykit/models/create_link_session_response.rb +48 -52
  39. data/lib/moneykit/models/currency.rb +193 -193
  40. data/lib/moneykit/models/cursor.rb +40 -39
  41. data/lib/moneykit/models/cursor_pagination.rb +49 -54
  42. data/lib/moneykit/models/cursors.rb +40 -39
  43. data/lib/moneykit/models/customer_app.rb +54 -64
  44. data/lib/moneykit/models/customer_user.rb +59 -69
  45. data/lib/moneykit/models/eft_number.rb +56 -67
  46. data/lib/moneykit/models/email.rb +56 -63
  47. data/lib/moneykit/models/email1.rb +50 -53
  48. data/lib/moneykit/models/exchange_token_request.rb +48 -52
  49. data/lib/moneykit/models/exchange_token_response.rb +54 -64
  50. data/lib/moneykit/models/generate_access_token_response.rb +59 -73
  51. data/lib/moneykit/models/get_account_numbers_response.rb +58 -66
  52. data/lib/moneykit/models/get_account_response.rb +55 -67
  53. data/lib/moneykit/models/get_accounts_response.rb +58 -67
  54. data/lib/moneykit/models/get_institutions_response.rb +58 -67
  55. data/lib/moneykit/models/get_transactions_response.rb +81 -105
  56. data/lib/moneykit/models/get_user_accounts_response.rb +50 -58
  57. data/lib/moneykit/models/get_user_links_response.rb +50 -58
  58. data/lib/moneykit/models/get_user_transactions_response.rb +75 -95
  59. data/lib/moneykit/models/http_validation_error.rb +77 -84
  60. data/lib/moneykit/models/identity.rb +49 -49
  61. data/lib/moneykit/models/identity_link_product.rb +57 -69
  62. data/lib/moneykit/models/identity_product_settings.rb +59 -63
  63. data/lib/moneykit/models/identity_response.rb +58 -67
  64. data/lib/moneykit/models/institution.rb +85 -113
  65. data/lib/moneykit/models/institution_error_not_found_response.rb +72 -80
  66. data/lib/moneykit/models/institution_styling_response.rb +77 -93
  67. data/lib/moneykit/models/international_number.rb +54 -64
  68. data/lib/moneykit/models/introspect_client_response.rb +70 -89
  69. data/lib/moneykit/models/jwk_set.rb +51 -55
  70. data/lib/moneykit/models/link.rb +78 -100
  71. data/lib/moneykit/models/link1.rb +78 -100
  72. data/lib/moneykit/models/link2.rb +78 -100
  73. data/lib/moneykit/models/link3.rb +78 -100
  74. data/lib/moneykit/models/link4.rb +78 -100
  75. data/lib/moneykit/models/link_common.rb +82 -117
  76. data/lib/moneykit/models/link_error.rb +19 -19
  77. data/lib/moneykit/models/link_error_bad_config_response.rb +269 -0
  78. data/lib/moneykit/models/link_error_bad_state_response.rb +71 -88
  79. data/lib/moneykit/models/link_error_deleted_response.rb +72 -80
  80. data/lib/moneykit/models/link_error_forbidden_action_response.rb +69 -78
  81. data/lib/moneykit/models/link_error_not_found_response.rb +72 -80
  82. data/lib/moneykit/models/link_error_unauthorized_access_response.rb +72 -80
  83. data/lib/moneykit/models/link_permission_scope.rb +14 -15
  84. data/lib/moneykit/models/link_permissions.rb +52 -62
  85. data/lib/moneykit/models/link_products.rb +62 -78
  86. data/lib/moneykit/models/link_response.rb +95 -136
  87. data/lib/moneykit/models/link_session_customer_user.rb +65 -83
  88. data/lib/moneykit/models/link_session_customer_user_email.rb +59 -68
  89. data/lib/moneykit/models/link_session_customer_user_phone.rb +67 -82
  90. data/lib/moneykit/models/link_session_error_forbidden_config_response.rb +69 -78
  91. data/lib/moneykit/models/link_session_error_invalid_token_exchange.rb +69 -78
  92. data/lib/moneykit/models/link_session_setting_overrides.rb +64 -99
  93. data/lib/moneykit/models/link_state.rb +15 -16
  94. data/lib/moneykit/models/link_state_changed_webhook.rb +121 -148
  95. data/lib/moneykit/models/location_inner.rb +41 -46
  96. data/lib/moneykit/models/money_kit_env.rb +12 -13
  97. data/lib/moneykit/models/money_link_features.rb +62 -66
  98. data/lib/moneykit/models/moneylink_features.rb +50 -49
  99. data/lib/moneykit/models/numbers.rb +60 -73
  100. data/lib/moneykit/models/owner.rb +76 -89
  101. data/lib/moneykit/models/phone.rb +60 -68
  102. data/lib/moneykit/models/phone_number.rb +63 -74
  103. data/lib/moneykit/models/phone_number_type.rb +14 -15
  104. data/lib/moneykit/models/product.rb +14 -15
  105. data/lib/moneykit/models/products.rb +52 -64
  106. data/lib/moneykit/models/products1.rb +48 -56
  107. data/lib/moneykit/models/products_settings.rb +58 -70
  108. data/lib/moneykit/models/provider.rb +18 -17
  109. data/lib/moneykit/models/public_link_error.rb +43 -0
  110. data/lib/moneykit/models/refresh_products_request.rb +52 -65
  111. data/lib/moneykit/models/requested_link_permission.rb +60 -75
  112. data/lib/moneykit/models/response401_disconnect_links_id_delete.rb +83 -283
  113. data/lib/moneykit/models/response401_exchange_token_link_session_exchange_token_post.rb +82 -281
  114. data/lib/moneykit/models/response401_get_account_links_id_accounts_account_id_get.rb +83 -283
  115. data/lib/moneykit/models/response401_get_account_numbers_links_id_accounts_numbers_get.rb +83 -283
  116. data/lib/moneykit/models/response401_get_accounts_links_id_accounts_get.rb +83 -283
  117. data/lib/moneykit/models/response401_get_identities_links_id_identity_get.rb +83 -283
  118. data/lib/moneykit/models/response401_get_institution_institutions_institution_id_get.rb +82 -281
  119. data/lib/moneykit/models/response401_get_institution_styling_institutions_institution_id_styling_get.rb +66 -72
  120. data/lib/moneykit/models/response401_get_institutions_institutions_get.rb +82 -281
  121. data/lib/moneykit/models/response401_get_link_links_id_get.rb +83 -283
  122. data/lib/moneykit/models/response401_get_transactions_diff_links_id_transactions_sync_get.rb +83 -283
  123. data/lib/moneykit/models/response401_get_transactions_links_id_transactions_get.rb +83 -283
  124. data/lib/moneykit/models/response401_get_user_accounts_users_id_accounts_get.rb +82 -281
  125. data/lib/moneykit/models/response401_get_user_links_users_id_links_get.rb +82 -281
  126. data/lib/moneykit/models/response401_get_user_transactions_users_id_transactions_get.rb +82 -281
  127. data/lib/moneykit/models/response401_get_well_known_jwks_well_known_jwks_json_get.rb +82 -281
  128. data/lib/moneykit/models/response401_instrospect_client_auth_introspect_get.rb +82 -281
  129. data/lib/moneykit/models/response401_refresh_products_links_id_products_post.rb +83 -283
  130. data/lib/moneykit/models/response401_reset_login_links_id_reset_post.rb +102 -0
  131. data/lib/moneykit/models/response401_trigger_test_link_webhook_event_webhooks_test_link_id_post.rb +102 -0
  132. data/lib/moneykit/models/response401_update_link_links_id_patch.rb +83 -283
  133. data/lib/moneykit/models/settings.rb +61 -73
  134. data/lib/moneykit/models/supported_version.rb +11 -12
  135. data/lib/moneykit/models/transaction.rb +104 -131
  136. data/lib/moneykit/models/transaction_diff.rb +69 -78
  137. data/lib/moneykit/models/transaction_sync_response.rb +65 -87
  138. data/lib/moneykit/models/transaction_type.rb +12 -13
  139. data/lib/moneykit/models/transaction_type_filter.rb +12 -13
  140. data/lib/moneykit/models/transactions.rb +58 -57
  141. data/lib/moneykit/models/transactions1.rb +55 -63
  142. data/lib/moneykit/models/transactions_link_product.rb +57 -69
  143. data/lib/moneykit/models/transactions_product_settings.rb +67 -71
  144. data/lib/moneykit/models/update_link_request.rb +63 -69
  145. data/lib/moneykit/models/user_accounts_out.rb +40 -40
  146. data/lib/moneykit/models/user_links_out.rb +40 -40
  147. data/lib/moneykit/models/user_transactions_paged_response.rb +40 -40
  148. data/lib/moneykit/models/validation_error.rb +63 -77
  149. data/lib/moneykit/models/validation_error_location_inner.rb +101 -0
  150. data/lib/moneykit/models/webhook_link_test_event.rb +40 -0
  151. data/lib/moneykit/models/webhook_test_link_request.rb +252 -0
  152. data/lib/moneykit/models/webhook_test_link_response.rb +220 -0
  153. data/lib/moneykit/version.rb +10 -12
  154. data/lib/moneykit.rb +18 -39
  155. data/lib/plaid_compatible/money_kit_plaid_compatible/api/plaid_api.rb +738 -737
  156. data/lib/plaid_compatible/money_kit_plaid_compatible/api_client.rb +339 -340
  157. data/lib/plaid_compatible/money_kit_plaid_compatible/api_error.rb +47 -47
  158. data/lib/plaid_compatible/money_kit_plaid_compatible/configuration.rb +258 -260
  159. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_balance.rb +210 -212
  160. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_base.rb +221 -237
  161. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_identity.rb +231 -252
  162. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_subtype.rb +100 -101
  163. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_type.rb +35 -36
  164. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_request.rb +209 -211
  165. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_request_options.rb +188 -185
  166. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_response.rb +205 -210
  167. data/lib/plaid_compatible/money_kit_plaid_compatible/models/address.rb +195 -193
  168. data/lib/plaid_compatible/money_kit_plaid_compatible/models/address_data.rb +222 -226
  169. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_numbers.rb +218 -226
  170. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_request.rb +209 -211
  171. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_request_options.rb +188 -185
  172. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_response.rb +211 -222
  173. data/lib/plaid_compatible/money_kit_plaid_compatible/models/country_code.rb +32 -33
  174. data/lib/plaid_compatible/money_kit_plaid_compatible/models/email.rb +197 -198
  175. data/lib/plaid_compatible/money_kit_plaid_compatible/models/http_validation_error.rb +183 -181
  176. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_request.rb +209 -211
  177. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_request_options.rb +188 -185
  178. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_response.rb +205 -210
  179. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institution.rb +228 -232
  180. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institutions_get_by_id_request.rb +216 -217
  181. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institutions_get_by_id_response.rb +195 -196
  182. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item.rb +251 -261
  183. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_error_webhook.rb +217 -229
  184. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_get_request.rb +205 -205
  185. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_get_response.rb +201 -205
  186. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_public_token_exchange_request.rb +205 -205
  187. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_public_token_exchange_response.rb +206 -211
  188. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_remove_request.rb +205 -205
  189. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_remove_response.rb +188 -185
  190. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_investments.rb +195 -193
  191. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_last_webhook.rb +195 -193
  192. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_nullable.rb +194 -198
  193. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_transactions.rb +195 -193
  194. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_request.rb +272 -291
  195. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_request_user.rb +225 -225
  196. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_response.rb +206 -211
  197. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_ach.rb +215 -221
  198. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_bacs.rb +206 -211
  199. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_eft.rb +215 -224
  200. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_international.rb +206 -211
  201. data/lib/plaid_compatible/money_kit_plaid_compatible/models/owner.rb +218 -226
  202. data/lib/plaid_compatible/money_kit_plaid_compatible/models/personal_finance_category.rb +197 -198
  203. data/lib/plaid_compatible/money_kit_plaid_compatible/models/phone_number.rb +206 -211
  204. data/lib/plaid_compatible/money_kit_plaid_compatible/models/plaid_error.rb +253 -266
  205. data/lib/plaid_compatible/money_kit_plaid_compatible/models/plaid_error_type.rb +43 -44
  206. data/lib/plaid_compatible/money_kit_plaid_compatible/models/products.rb +33 -34
  207. data/lib/plaid_compatible/money_kit_plaid_compatible/models/removed_transaction.rb +187 -183
  208. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transaction.rb +288 -315
  209. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_request.rb +225 -235
  210. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_request_options.rb +222 -224
  211. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_response.rb +225 -236
  212. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_refresh_request.rb +205 -205
  213. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_refresh_response.rb +188 -185
  214. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_request.rb +223 -229
  215. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_request_options.rb +197 -193
  216. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_response.rb +235 -252
  217. data/lib/plaid_compatible/money_kit_plaid_compatible/models/validation_error.rb +198 -207
  218. data/lib/plaid_compatible/money_kit_plaid_compatible/models/webhook_environment_values.rb +32 -33
  219. data/lib/plaid_compatible/money_kit_plaid_compatible/version.rb +14 -14
  220. data/lib/plaid_compatible/money_kit_plaid_compatible.rb +24 -24
  221. data/moneykit.gemspec +22 -25
  222. metadata +14 -5
@@ -1,14 +1,12 @@
1
- =begin
2
- #MoneyKit API
3
-
4
- #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
-
6
- The version of the OpenAPI document: 0.1.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.5.0
10
-
11
- =end
1
+ # #MoneyKit API
2
+ #
3
+ # No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ #
5
+ # The version of the OpenAPI document: 0.1.0
6
+ #
7
+ # Generated by: https://openapi-generator.tech
8
+ # OpenAPI Generator version: 7.1.0
9
+ #
12
10
 
13
11
  require 'cgi'
14
12
 
@@ -19,16 +17,17 @@ module MoneyKit
19
17
  def initialize(api_client = ApiClient.default)
20
18
  @api_client = api_client
21
19
  end
20
+
22
21
  # /links/{id}/transactions
23
- # Fetches transactions for the accounts associated with a <a href=#tag/Links>link</a>. Results are paginated, and returned in reverse chronological order. <p>MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider and the institution. To force a check for updated transactions, you can use the <a href=#operation/refresh_products>/products</a> endpoint.
22
+ # Returns transactions for the accounts associated with a <a href=#tag/Links>link</a>. Results are paginated, and returned in reverse chronological order. <p>**Note** that this endpoint does **not** trigger a fetch of transactions from the institution; it merely returns transactions that have already been fetched, either because `prefetch` was requested when the link was created, or because of scheduled or on-demand updates. <p>MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider, the institution, and whether one or both provide webhook-based updates. **To force a check for updated transactions, you can use the <a href=#operation/refresh_products>/products</a> endpoint.** <p>If you have requested prefetch or an on-demand update, you should check the `refreshed_at` date for this product in the returned response, and compare that against the previous `refreshed_at` date, which you can get from any previous response for this or any other account or link request. If the refreshed_at date has not increased, then updated data is not yet available.
24
23
  # @param id [String] The unique ID for this link.
25
24
  # @param [Hash] opts the optional parameters
26
25
  # @option opts [Array<String>] :account_ids An optional list of account IDs to filter the results.
27
- # @option opts [Integer] :page (default to 1)
28
- # @option opts [Integer] :size (default to 50)
26
+ # @option opts [Integer] :page The page number to return. (default to 1)
27
+ # @option opts [Integer] :size The number of items to return per page. (default to 50)
29
28
  # @option opts [String] :start_date The earliest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to 90 days before the &#x60;end_date&#x60;. &lt;p&gt;If you want to retrieve **all** transactions, use &#x60;1900-01-01&#x60;.
30
29
  # @option opts [String] :end_date The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
31
- # @option opts [SupportedVersion] :moneykit_version
30
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
32
31
  # @return [GetTransactionsResponse]
33
32
  def get_transactions(id, opts = {})
34
33
  data, _status_code, _headers = get_transactions_with_http_info(id, opts)
@@ -36,15 +35,15 @@ module MoneyKit
36
35
  end
37
36
 
38
37
  # /links/{id}/transactions
39
- # Fetches transactions for the accounts associated with a &lt;a href&#x3D;#tag/Links&gt;link&lt;/a&gt;. Results are paginated, and returned in reverse chronological order. &lt;p&gt;MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider and the institution. To force a check for updated transactions, you can use the &lt;a href&#x3D;#operation/refresh_products&gt;/products&lt;/a&gt; endpoint.
38
+ # Returns transactions for the accounts associated with a &lt;a href&#x3D;#tag/Links&gt;link&lt;/a&gt;. Results are paginated, and returned in reverse chronological order. &lt;p&gt;**Note** that this endpoint does **not** trigger a fetch of transactions from the institution; it merely returns transactions that have already been fetched, either because &#x60;prefetch&#x60; was requested when the link was created, or because of scheduled or on-demand updates. &lt;p&gt;MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider, the institution, and whether one or both provide webhook-based updates. **To force a check for updated transactions, you can use the &lt;a href&#x3D;#operation/refresh_products&gt;/products&lt;/a&gt; endpoint.** &lt;p&gt;If you have requested prefetch or an on-demand update, you should check the &#x60;refreshed_at&#x60; date for this product in the returned response, and compare that against the previous &#x60;refreshed_at&#x60; date, which you can get from any previous response for this or any other account or link request. If the refreshed_at date has not increased, then updated data is not yet available.
40
39
  # @param id [String] The unique ID for this link.
41
40
  # @param [Hash] opts the optional parameters
42
41
  # @option opts [Array<String>] :account_ids An optional list of account IDs to filter the results.
43
- # @option opts [Integer] :page (default to 1)
44
- # @option opts [Integer] :size (default to 50)
42
+ # @option opts [Integer] :page The page number to return. (default to 1)
43
+ # @option opts [Integer] :size The number of items to return per page. (default to 50)
45
44
  # @option opts [String] :start_date The earliest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to 90 days before the &#x60;end_date&#x60;. &lt;p&gt;If you want to retrieve **all** transactions, use &#x60;1900-01-01&#x60;.
46
45
  # @option opts [String] :end_date The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
47
- # @option opts [SupportedVersion] :moneykit_version
46
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
48
47
  # @return [Array<(GetTransactionsResponse, Integer, Hash)>] GetTransactionsResponse data, response status code and response headers
49
48
  def get_transactions_with_http_info(id, opts = {})
50
49
  if @api_client.config.debugging
@@ -52,18 +51,22 @@ module MoneyKit
52
51
  end
53
52
  # verify the required parameter 'id' is set
54
53
  if @api_client.config.client_side_validation && id.nil?
55
- fail ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_transactions"
54
+ raise ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_transactions"
56
55
  end
57
- if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
58
- fail ArgumentError, 'invalid value for "opts[:"page"]" when calling TransactionsApi.get_transactions, must be greater than or equal to 1.'
56
+
57
+ if @api_client.config.client_side_validation && !opts[:page].nil? && opts[:page] < 1
58
+ raise ArgumentError,
59
+ 'invalid value for "opts[:"page"]" when calling TransactionsApi.get_transactions, must be greater than or equal to 1.'
59
60
  end
60
61
 
61
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] > 100
62
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions, must be smaller than or equal to 100.'
62
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] > 100
63
+ raise ArgumentError,
64
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions, must be smaller than or equal to 100.'
63
65
  end
64
66
 
65
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] < 1
66
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions, must be greater than or equal to 1.'
67
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] < 1
68
+ raise ArgumentError,
69
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions, must be greater than or equal to 1.'
67
70
  end
68
71
 
69
72
  # resource path
@@ -71,17 +74,20 @@ module MoneyKit
71
74
 
72
75
  # query parameters
73
76
  query_params = opts[:query_params] || {}
74
- query_params[:'account_ids'] = @api_client.build_collection_param(opts[:'account_ids'], :multi) if !opts[:'account_ids'].nil?
75
- query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
76
- query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
77
- query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
78
- query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
77
+ unless opts[:account_ids].nil?
78
+ query_params[:account_ids] =
79
+ @api_client.build_collection_param(opts[:account_ids], :multi)
80
+ end
81
+ query_params[:page] = opts[:page] unless opts[:page].nil?
82
+ query_params[:size] = opts[:size] unless opts[:size].nil?
83
+ query_params[:start_date] = opts[:start_date] unless opts[:start_date].nil?
84
+ query_params[:end_date] = opts[:end_date] unless opts[:end_date].nil?
79
85
 
80
86
  # header parameters
81
87
  header_params = opts[:header_params] || {}
82
88
  # HTTP header 'Accept' (if needed)
83
89
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
84
- header_params[:'moneykit-version'] = opts[:'moneykit_version'] if !opts[:'moneykit_version'].nil?
90
+ header_params[:'moneykit-version'] = opts[:moneykit_version] unless opts[:moneykit_version].nil?
85
91
 
86
92
  # form parameters
87
93
  form_params = opts[:form_params] || {}
@@ -93,32 +99,32 @@ module MoneyKit
93
99
  return_type = opts[:debug_return_type] || 'GetTransactionsResponse'
94
100
 
95
101
  # auth_names
96
- auth_names = opts[:debug_auth_names] || ['clientId', 'OAuth2ClientCredentials', 'clientSecret']
102
+ auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
97
103
 
98
104
  new_options = opts.merge(
99
- :operation => :"TransactionsApi.get_transactions",
100
- :header_params => header_params,
101
- :query_params => query_params,
102
- :form_params => form_params,
103
- :body => post_body,
104
- :auth_names => auth_names,
105
- :return_type => return_type
105
+ operation: :"TransactionsApi.get_transactions",
106
+ header_params: header_params,
107
+ query_params: query_params,
108
+ form_params: form_params,
109
+ body: post_body,
110
+ auth_names: auth_names,
111
+ return_type: return_type
106
112
  )
107
113
 
108
114
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
109
115
  if @api_client.config.debugging
110
116
  @api_client.config.logger.debug "API called: TransactionsApi#get_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
111
117
  end
112
- return data, status_code, headers
118
+ [data, status_code, headers]
113
119
  end
114
120
 
115
121
  # /links/{id}/transactions/sync
116
- # TODO
122
+ # Provides a paginated feed of transactions, grouped into `created`, `updated`, and `removed` lists. <p>Each call will also return a `next_cursor` value. In subsequent calls, include that value to receive only changes that have occurred since the previous call. <p>Large numbers of transactions will be paginated, and the `has_more` field will be true. You should continue calling this endpoint with each new `next_cursor` value until `has_more` is false. <p>**Note** that this endpoint does **not** trigger a fetch of transactions from the institution; it merely returns transactions that have already been fetched, either because `prefetch` was requested when the link was created, or because of scheduled or on-demand updates. <p>MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider, the institution, and whether one or both provide webhook-based updates. **To force a check for updated transactions, you can use the <a href=#operation/refresh_products>/products</a> endpoint.** <p>Note also that the `transactions.updates_available` webhook will alert you when new data is available.
117
123
  # @param id [String] The unique ID for this link.
118
124
  # @param [Hash] opts the optional parameters
119
- # @option opts [String] :cursor
120
- # @option opts [Integer] :size (default to 50)
121
- # @option opts [SupportedVersion] :moneykit_version
125
+ # @option opts [String] :cursor A cursor value representing the last update requested. If included, the response will only return changes after this update. If omitted, a complete history of updates will be returned. This value must be stored by the client as we do not keep track of customer cursors.
126
+ # @option opts [Integer] :size The number of items to return. (default to 50)
127
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
122
128
  # @return [TransactionSyncResponse]
123
129
  def get_transactions_diff(id, opts = {})
124
130
  data, _status_code, _headers = get_transactions_diff_with_http_info(id, opts)
@@ -126,12 +132,12 @@ module MoneyKit
126
132
  end
127
133
 
128
134
  # /links/{id}/transactions/sync
129
- # TODO
135
+ # Provides a paginated feed of transactions, grouped into &#x60;created&#x60;, &#x60;updated&#x60;, and &#x60;removed&#x60; lists. &lt;p&gt;Each call will also return a &#x60;next_cursor&#x60; value. In subsequent calls, include that value to receive only changes that have occurred since the previous call. &lt;p&gt;Large numbers of transactions will be paginated, and the &#x60;has_more&#x60; field will be true. You should continue calling this endpoint with each new &#x60;next_cursor&#x60; value until &#x60;has_more&#x60; is false. &lt;p&gt;**Note** that this endpoint does **not** trigger a fetch of transactions from the institution; it merely returns transactions that have already been fetched, either because &#x60;prefetch&#x60; was requested when the link was created, or because of scheduled or on-demand updates. &lt;p&gt;MoneyKit checks for updated account data, including transactions, periodically throughout the day, but the update frequency can vary, depending on the downstream data provider, the institution, and whether one or both provide webhook-based updates. **To force a check for updated transactions, you can use the &lt;a href&#x3D;#operation/refresh_products&gt;/products&lt;/a&gt; endpoint.** &lt;p&gt;Note also that the &#x60;transactions.updates_available&#x60; webhook will alert you when new data is available.
130
136
  # @param id [String] The unique ID for this link.
131
137
  # @param [Hash] opts the optional parameters
132
- # @option opts [String] :cursor
133
- # @option opts [Integer] :size (default to 50)
134
- # @option opts [SupportedVersion] :moneykit_version
138
+ # @option opts [String] :cursor A cursor value representing the last update requested. If included, the response will only return changes after this update. If omitted, a complete history of updates will be returned. This value must be stored by the client as we do not keep track of customer cursors.
139
+ # @option opts [Integer] :size The number of items to return. (default to 50)
140
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
135
141
  # @return [Array<(TransactionSyncResponse, Integer, Hash)>] TransactionSyncResponse data, response status code and response headers
136
142
  def get_transactions_diff_with_http_info(id, opts = {})
137
143
  if @api_client.config.debugging
@@ -139,14 +145,17 @@ module MoneyKit
139
145
  end
140
146
  # verify the required parameter 'id' is set
141
147
  if @api_client.config.client_side_validation && id.nil?
142
- fail ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_transactions_diff"
148
+ raise ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_transactions_diff"
143
149
  end
144
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] > 100
145
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions_diff, must be smaller than or equal to 100.'
150
+
151
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] > 500
152
+ raise ArgumentError,
153
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions_diff, must be smaller than or equal to 500.'
146
154
  end
147
155
 
148
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] < 1
149
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions_diff, must be greater than or equal to 1.'
156
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] < 1
157
+ raise ArgumentError,
158
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_transactions_diff, must be greater than or equal to 1.'
150
159
  end
151
160
 
152
161
  # resource path
@@ -154,14 +163,14 @@ module MoneyKit
154
163
 
155
164
  # query parameters
156
165
  query_params = opts[:query_params] || {}
157
- query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
158
- query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
166
+ query_params[:cursor] = opts[:cursor] unless opts[:cursor].nil?
167
+ query_params[:size] = opts[:size] unless opts[:size].nil?
159
168
 
160
169
  # header parameters
161
170
  header_params = opts[:header_params] || {}
162
171
  # HTTP header 'Accept' (if needed)
163
172
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
164
- header_params[:'moneykit-version'] = opts[:'moneykit_version'] if !opts[:'moneykit_version'].nil?
173
+ header_params[:'moneykit-version'] = opts[:moneykit_version] unless opts[:moneykit_version].nil?
165
174
 
166
175
  # form parameters
167
176
  form_params = opts[:form_params] || {}
@@ -173,38 +182,38 @@ module MoneyKit
173
182
  return_type = opts[:debug_return_type] || 'TransactionSyncResponse'
174
183
 
175
184
  # auth_names
176
- auth_names = opts[:debug_auth_names] || ['clientId', 'OAuth2ClientCredentials', 'clientSecret']
185
+ auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
177
186
 
178
187
  new_options = opts.merge(
179
- :operation => :"TransactionsApi.get_transactions_diff",
180
- :header_params => header_params,
181
- :query_params => query_params,
182
- :form_params => form_params,
183
- :body => post_body,
184
- :auth_names => auth_names,
185
- :return_type => return_type
188
+ operation: :"TransactionsApi.get_transactions_diff",
189
+ header_params: header_params,
190
+ query_params: query_params,
191
+ form_params: form_params,
192
+ body: post_body,
193
+ auth_names: auth_names,
194
+ return_type: return_type
186
195
  )
187
196
 
188
197
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
189
198
  if @api_client.config.debugging
190
199
  @api_client.config.logger.debug "API called: TransactionsApi#get_transactions_diff\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
191
200
  end
192
- return data, status_code, headers
201
+ [data, status_code, headers]
193
202
  end
194
203
 
195
204
  # /users/{id}/transactions
196
205
  # Fetches transactions for a <a href=#operation/get_user_accounts>user</a>. <p>This endpoint fetches all transactions for a user across all of their links. You can use it to retrieve transactions from any or all accounts at once, regardless of which institution they belong to.
197
206
  # @param id [String] The unique ID for this user. This is the same ID provided in the call to &lt;a href&#x3D;#operation/create_link_session&gt;/link-session&lt;/a&gt; to create any link for this user.
198
207
  # @param [Hash] opts the optional parameters
199
- # @option opts [Array<TransactionTypeFilter>] :transaction_type
200
- # @option opts [Array<String>] :category
208
+ # @option opts [Array<TransactionTypeFilter>] :transaction_type
209
+ # @option opts [Array<String>] :category
201
210
  # @option opts [Array<String>] :account_id If present, filters results to transactions in accounts matching the given IDs.
202
211
  # @option opts [Array<String>] :institution_id If present, filters results to transactions at institutions matching the given IDs.
203
- # @option opts [Integer] :page (default to 1)
204
- # @option opts [Integer] :size (default to 50)
212
+ # @option opts [Integer] :page The page number to return. (default to 1)
213
+ # @option opts [Integer] :size The number of items to return per page. (default to 50)
205
214
  # @option opts [String] :start_date The earliest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to 90 days before the &#x60;end_date&#x60;. &lt;p&gt;If you want to retrieve **all** transactions, use &#x60;1900-01-01&#x60;.
206
215
  # @option opts [String] :end_date The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
207
- # @option opts [SupportedVersion] :moneykit_version
216
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
208
217
  # @return [GetUserTransactionsResponse]
209
218
  def get_user_transactions(id, opts = {})
210
219
  data, _status_code, _headers = get_user_transactions_with_http_info(id, opts)
@@ -215,15 +224,15 @@ module MoneyKit
215
224
  # Fetches transactions for a &lt;a href&#x3D;#operation/get_user_accounts&gt;user&lt;/a&gt;. &lt;p&gt;This endpoint fetches all transactions for a user across all of their links. You can use it to retrieve transactions from any or all accounts at once, regardless of which institution they belong to.
216
225
  # @param id [String] The unique ID for this user. This is the same ID provided in the call to &lt;a href&#x3D;#operation/create_link_session&gt;/link-session&lt;/a&gt; to create any link for this user.
217
226
  # @param [Hash] opts the optional parameters
218
- # @option opts [Array<TransactionTypeFilter>] :transaction_type
219
- # @option opts [Array<String>] :category
227
+ # @option opts [Array<TransactionTypeFilter>] :transaction_type
228
+ # @option opts [Array<String>] :category
220
229
  # @option opts [Array<String>] :account_id If present, filters results to transactions in accounts matching the given IDs.
221
230
  # @option opts [Array<String>] :institution_id If present, filters results to transactions at institutions matching the given IDs.
222
- # @option opts [Integer] :page (default to 1)
223
- # @option opts [Integer] :size (default to 50)
231
+ # @option opts [Integer] :page The page number to return. (default to 1)
232
+ # @option opts [Integer] :size The number of items to return per page. (default to 50)
224
233
  # @option opts [String] :start_date The earliest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to 90 days before the &#x60;end_date&#x60;. &lt;p&gt;If you want to retrieve **all** transactions, use &#x60;1900-01-01&#x60;.
225
234
  # @option opts [String] :end_date The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
226
- # @option opts [SupportedVersion] :moneykit_version
235
+ # @option opts [String] :moneykit_version (default to '2023-02-18')
227
236
  # @return [Array<(GetUserTransactionsResponse, Integer, Hash)>] GetUserTransactionsResponse data, response status code and response headers
228
237
  def get_user_transactions_with_http_info(id, opts = {})
229
238
  if @api_client.config.debugging
@@ -231,18 +240,22 @@ module MoneyKit
231
240
  end
232
241
  # verify the required parameter 'id' is set
233
242
  if @api_client.config.client_side_validation && id.nil?
234
- fail ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_user_transactions"
243
+ raise ArgumentError, "Missing the required parameter 'id' when calling TransactionsApi.get_user_transactions"
235
244
  end
236
- if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
237
- fail ArgumentError, 'invalid value for "opts[:"page"]" when calling TransactionsApi.get_user_transactions, must be greater than or equal to 1.'
245
+
246
+ if @api_client.config.client_side_validation && !opts[:page].nil? && opts[:page] < 1
247
+ raise ArgumentError,
248
+ 'invalid value for "opts[:"page"]" when calling TransactionsApi.get_user_transactions, must be greater than or equal to 1.'
238
249
  end
239
250
 
240
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] > 100
241
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_user_transactions, must be smaller than or equal to 100.'
251
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] > 100
252
+ raise ArgumentError,
253
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_user_transactions, must be smaller than or equal to 100.'
242
254
  end
243
255
 
244
- if @api_client.config.client_side_validation && !opts[:'size'].nil? && opts[:'size'] < 1
245
- fail ArgumentError, 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_user_transactions, must be greater than or equal to 1.'
256
+ if @api_client.config.client_side_validation && !opts[:size].nil? && opts[:size] < 1
257
+ raise ArgumentError,
258
+ 'invalid value for "opts[:"size"]" when calling TransactionsApi.get_user_transactions, must be greater than or equal to 1.'
246
259
  end
247
260
 
248
261
  # resource path
@@ -250,20 +263,32 @@ module MoneyKit
250
263
 
251
264
  # query parameters
252
265
  query_params = opts[:query_params] || {}
253
- query_params[:'transaction_type'] = @api_client.build_collection_param(opts[:'transaction_type'], :multi) if !opts[:'transaction_type'].nil?
254
- query_params[:'category'] = @api_client.build_collection_param(opts[:'category'], :multi) if !opts[:'category'].nil?
255
- query_params[:'account_id'] = @api_client.build_collection_param(opts[:'account_id'], :multi) if !opts[:'account_id'].nil?
256
- query_params[:'institution_id'] = @api_client.build_collection_param(opts[:'institution_id'], :multi) if !opts[:'institution_id'].nil?
257
- query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
258
- query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil?
259
- query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
260
- query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
266
+ unless opts[:transaction_type].nil?
267
+ query_params[:transaction_type] =
268
+ @api_client.build_collection_param(opts[:transaction_type], :multi)
269
+ end
270
+ unless opts[:category].nil?
271
+ query_params[:category] =
272
+ @api_client.build_collection_param(opts[:category], :multi)
273
+ end
274
+ unless opts[:account_id].nil?
275
+ query_params[:account_id] =
276
+ @api_client.build_collection_param(opts[:account_id], :multi)
277
+ end
278
+ unless opts[:institution_id].nil?
279
+ query_params[:institution_id] =
280
+ @api_client.build_collection_param(opts[:institution_id], :multi)
281
+ end
282
+ query_params[:page] = opts[:page] unless opts[:page].nil?
283
+ query_params[:size] = opts[:size] unless opts[:size].nil?
284
+ query_params[:start_date] = opts[:start_date] unless opts[:start_date].nil?
285
+ query_params[:end_date] = opts[:end_date] unless opts[:end_date].nil?
261
286
 
262
287
  # header parameters
263
288
  header_params = opts[:header_params] || {}
264
289
  # HTTP header 'Accept' (if needed)
265
290
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
266
- header_params[:'moneykit-version'] = opts[:'moneykit_version'] if !opts[:'moneykit_version'].nil?
291
+ header_params[:'moneykit-version'] = opts[:moneykit_version] unless opts[:moneykit_version].nil?
267
292
 
268
293
  # form parameters
269
294
  form_params = opts[:form_params] || {}
@@ -275,23 +300,23 @@ module MoneyKit
275
300
  return_type = opts[:debug_return_type] || 'GetUserTransactionsResponse'
276
301
 
277
302
  # auth_names
278
- auth_names = opts[:debug_auth_names] || ['clientId', 'OAuth2ClientCredentials', 'clientSecret']
303
+ auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
279
304
 
280
305
  new_options = opts.merge(
281
- :operation => :"TransactionsApi.get_user_transactions",
282
- :header_params => header_params,
283
- :query_params => query_params,
284
- :form_params => form_params,
285
- :body => post_body,
286
- :auth_names => auth_names,
287
- :return_type => return_type
306
+ operation: :"TransactionsApi.get_user_transactions",
307
+ header_params: header_params,
308
+ query_params: query_params,
309
+ form_params: form_params,
310
+ body: post_body,
311
+ auth_names: auth_names,
312
+ return_type: return_type
288
313
  )
289
314
 
290
315
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
291
316
  if @api_client.config.debugging
292
317
  @api_client.config.logger.debug "API called: TransactionsApi#get_user_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
293
318
  end
294
- return data, status_code, headers
319
+ [data, status_code, headers]
295
320
  end
296
321
  end
297
322
  end