moneykit 0.1.9 → 0.1.11

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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +1 -1
  4. data/docs/AccessTokenApi.md +26 -21
  5. data/docs/AccountBalances.md +2 -2
  6. data/docs/AccountGroup.md +1 -1
  7. data/docs/AccountIdentity.md +2 -0
  8. data/docs/AccountImportData.md +26 -0
  9. data/docs/AccountNumbersApi.md +9 -9
  10. data/docs/AccountResponse.md +28 -0
  11. data/docs/AccountWithAccountNumbersLegacy20230218.md +2 -0
  12. data/docs/AccountsApi.md +9 -9
  13. data/docs/Address.md +1 -1
  14. data/docs/AppClientResponse.md +2 -2
  15. data/docs/AppLinkStateChangedWebhook.md +36 -0
  16. data/docs/AppResponse.md +2 -2
  17. data/docs/Body.md +3 -3
  18. data/docs/CreateAccessTokenResponse.md +22 -0
  19. data/docs/CreateLinkSessionRequest.md +1 -1
  20. data/docs/CustomerUser.md +22 -0
  21. data/docs/CustomerUserEmail.md +20 -0
  22. data/docs/CustomerUserPhone.md +22 -0
  23. data/docs/Date.md +15 -0
  24. data/docs/Email.md +1 -1
  25. data/docs/GetAccountResponse.md +1 -1
  26. data/docs/GetAccountsResponse.md +1 -1
  27. data/docs/GetHoldingsResponse.md +1 -1
  28. data/docs/GetInvestmentTransactionsResponse.md +1 -1
  29. data/docs/GetTransactionsResponse.md +2 -2
  30. data/docs/GetUserTransactionsResponse.md +1 -1
  31. data/docs/ImportLinkRequest.md +26 -0
  32. data/docs/Institution.md +1 -1
  33. data/docs/LinkCommon.md +3 -3
  34. data/docs/LinkProductError.md +15 -0
  35. data/docs/LinkProductRefreshWebhook.md +2 -2
  36. data/docs/LinkProductResponse.md +28 -0
  37. data/docs/LinkProducts.md +7 -5
  38. data/docs/LinkResponse.md +3 -3
  39. data/docs/LinkSessionApi.md +1 -1
  40. data/docs/LinksApi.md +79 -9
  41. data/docs/PhoneNumber.md +1 -1
  42. data/docs/PublicLinkState.md +15 -0
  43. data/docs/Response401DeleteLinkLinksIdDelete.md +22 -0
  44. data/docs/Response401GetAccountNumbers.md +22 -0
  45. data/docs/Response401GetTransactionsSyncLinksIdTransactionsSyncGet.md +22 -0
  46. data/docs/Response401ImportLinkLinksImportPost.md +22 -0
  47. data/docs/ResponseHandleLinkWebhookEventRequestBodyWebhookPost.md +3 -3
  48. data/docs/TransactionCategoryResponse.md +20 -0
  49. data/docs/TransactionEnrichmentResponse.md +26 -0
  50. data/docs/TransactionImportData.md +28 -0
  51. data/docs/TransactionMerchantResponse.md +24 -0
  52. data/docs/TransactionProcessorResponse.md +24 -0
  53. data/docs/TransactionRecurrenceResponse.md +20 -0
  54. data/docs/TransactionResponse.md +42 -0
  55. data/docs/TransactionSubcategoryResponse.md +20 -0
  56. data/docs/TransactionSync.md +22 -0
  57. data/docs/TransactionSyncResponse.md +1 -1
  58. data/docs/TransactionUpdatesAvailableWebhook.md +4 -2
  59. data/docs/TransactionsApi.md +15 -15
  60. data/docs/TransactionsLinkProduct.md +1 -1
  61. data/lib/moneykit/api/access_token_api.rb +19 -16
  62. data/lib/moneykit/api/account_numbers_api.rb +7 -7
  63. data/lib/moneykit/api/accounts_api.rb +7 -7
  64. data/lib/moneykit/api/links_api.rb +75 -7
  65. data/lib/moneykit/api/transactions_api.rb +17 -17
  66. data/lib/moneykit/models/account_balances.rb +2 -30
  67. data/lib/moneykit/models/account_group.rb +1 -1
  68. data/lib/moneykit/models/account_identity.rb +11 -1
  69. data/lib/moneykit/models/account_import_data.rb +280 -0
  70. data/lib/moneykit/models/account_response.rb +290 -0
  71. data/lib/moneykit/models/account_with_account_numbers_legacy20230218.rb +11 -1
  72. data/lib/moneykit/models/address.rb +0 -2
  73. data/lib/moneykit/models/app_client_response.rb +1 -1
  74. data/lib/moneykit/models/app_link_state_changed_webhook.rb +394 -0
  75. data/lib/moneykit/models/body.rb +1 -1
  76. data/lib/moneykit/models/create_access_token_response.rb +255 -0
  77. data/lib/moneykit/models/create_link_session_request.rb +1 -1
  78. data/lib/moneykit/models/customer_user.rb +266 -0
  79. data/lib/moneykit/models/customer_user_email.rb +258 -0
  80. data/lib/moneykit/models/customer_user_phone.rb +289 -0
  81. data/lib/moneykit/models/date.rb +104 -0
  82. data/lib/moneykit/models/email.rb +0 -2
  83. data/lib/moneykit/models/get_account_response.rb +1 -1
  84. data/lib/moneykit/models/get_accounts_response.rb +1 -1
  85. data/lib/moneykit/models/get_holdings_response.rb +1 -1
  86. data/lib/moneykit/models/get_investment_transactions_response.rb +1 -1
  87. data/lib/moneykit/models/get_transactions_response.rb +2 -2
  88. data/lib/moneykit/models/get_user_transactions_response.rb +1 -1
  89. data/lib/moneykit/models/import_link_request.rb +303 -0
  90. data/lib/moneykit/models/institution.rb +0 -7
  91. data/lib/moneykit/models/link_common.rb +3 -3
  92. data/lib/moneykit/models/link_product_error.rb +46 -0
  93. data/lib/moneykit/models/link_product_refresh_webhook.rb +24 -24
  94. data/lib/moneykit/models/link_product_response.rb +283 -0
  95. data/lib/moneykit/models/link_product_state.rb +3 -1
  96. data/lib/moneykit/models/link_products.rb +16 -7
  97. data/lib/moneykit/models/link_response.rb +3 -3
  98. data/lib/moneykit/models/phone_number.rb +0 -2
  99. data/lib/moneykit/models/product.rb +2 -1
  100. data/lib/moneykit/models/provider.rb +1 -2
  101. data/lib/moneykit/models/public_link_error.rb +1 -1
  102. data/lib/moneykit/models/public_link_state.rb +43 -0
  103. data/lib/moneykit/models/response401_delete_link_links_id_delete.rb +104 -0
  104. data/lib/moneykit/models/response401_get_account_numbers.rb +104 -0
  105. data/lib/moneykit/models/response401_get_transactions_sync_links_id_transactions_sync_get.rb +104 -0
  106. data/lib/moneykit/models/response401_import_link_links_import_post.rb +103 -0
  107. data/lib/moneykit/models/response_handle_link_webhook_event_request_body_webhook_post.rb +1 -1
  108. data/lib/moneykit/models/transaction_category_response.rb +230 -0
  109. data/lib/moneykit/models/transaction_enrichment_response.rb +255 -0
  110. data/lib/moneykit/models/transaction_import_data.rb +283 -0
  111. data/lib/moneykit/models/transaction_merchant_response.rb +243 -0
  112. data/lib/moneykit/models/transaction_processor_response.rb +243 -0
  113. data/lib/moneykit/models/transaction_recurrence_response.rb +223 -0
  114. data/lib/moneykit/models/transaction_response.rb +402 -0
  115. data/lib/moneykit/models/transaction_subcategory_response.rb +230 -0
  116. data/lib/moneykit/models/transaction_sync.rb +257 -0
  117. data/lib/moneykit/models/transaction_sync_response.rb +1 -1
  118. data/lib/moneykit/models/transaction_updates_available_webhook.rb +42 -24
  119. data/lib/moneykit/models/transactions_link_product.rb +1 -1
  120. data/lib/moneykit/version.rb +1 -1
  121. data/lib/moneykit.rb +26 -17
  122. data/spec/models/account_import_data_spec.rb +60 -0
  123. data/spec/models/account_response_spec.rb +66 -0
  124. data/spec/models/app_link_state_changed_webhook_spec.rb +102 -0
  125. data/spec/models/create_access_token_response_spec.rb +48 -0
  126. data/spec/models/customer_user_email_spec.rb +42 -0
  127. data/spec/models/customer_user_phone_spec.rb +48 -0
  128. data/spec/models/customer_user_spec.rb +48 -0
  129. data/spec/models/date_spec.rb +21 -0
  130. data/spec/models/import_link_request_spec.rb +60 -0
  131. data/spec/models/link_product_error_spec.rb +30 -0
  132. data/spec/models/link_product_response_spec.rb +66 -0
  133. data/spec/models/public_link_error_spec.rb +30 -0
  134. data/spec/models/public_link_state_spec.rb +30 -0
  135. data/spec/models/response401_delete_link_links_id_delete_spec.rb +21 -0
  136. data/spec/models/response401_get_account_numbers_spec.rb +21 -0
  137. data/spec/models/response401_get_transactions_sync_links_id_transactions_sync_get_spec.rb +21 -0
  138. data/spec/models/response401_import_link_links_import_post_spec.rb +21 -0
  139. data/spec/models/transaction_category_response_spec.rb +42 -0
  140. data/spec/models/transaction_enrichment_response_spec.rb +60 -0
  141. data/spec/models/transaction_import_data_spec.rb +66 -0
  142. data/spec/models/transaction_merchant_response_spec.rb +54 -0
  143. data/spec/models/transaction_processor_response_spec.rb +54 -0
  144. data/spec/models/transaction_recurrence_response_spec.rb +42 -0
  145. data/spec/models/transaction_response_spec.rb +108 -0
  146. data/spec/models/transaction_subcategory_response_spec.rb +42 -0
  147. data/spec/models/transaction_sync_spec.rb +48 -0
  148. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/gem_make.out +5 -5
  149. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  150. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.1.1.1/gem_make.out +5 -5
  151. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.1.1.1/mkmf.log +2 -2
  152. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.7.3/gem_make.out +5 -5
  153. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.1.0/gem_make.out +5 -5
  154. metadata +222 -120
@@ -0,0 +1,42 @@
1
+ # MoneyKit::TransactionResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **transaction_id** | **String** | The unique ID for this transaction. | |
8
+ | **account_id** | **String** | The ID of the account in which this transaction occurred. | |
9
+ | **amount** | **String** | The amount of this transaction, denominated in account currency. This amount is always non-negative. The `type` field indicates whether it is entering or leaving the account. | |
10
+ | **type** | [**TransactionType**](TransactionType.md) | | |
11
+ | **currency** | **String** | The ISO-4217 currency code of the transaction. | |
12
+ | **date** | **Date** | The effective (posted) date of the transaction, in ISO-8601 format. For pending transactions, this date is when the transaction was initiated. | |
13
+ | **datetime** | **Time** | If the institution has provided the actual time of the transaction, this field contains the full date and time of the transaction, in ISO-8601 format. If the time is not available, this field will be null. <p>Note that the time is generally reported in the timezone of the institution or the account holder. | [optional] |
14
+ | **description** | **String** | A normalized, cleaned transaction description suitable for presentation to the end user. Commonly this will be the merchant or counterparty name. | [optional] |
15
+ | **raw_description** | **String** | The raw transaction description as provided by the institution, where available. | [optional] |
16
+ | **pending** | **Boolean** | If true, this transaction is pending or unsettled and has not yet affected the account. Commonly these are credit card transactions, particularly approvals (holds) such as for hotel or restaurant reservations placed in advance where the final amount is still to be determined. | |
17
+ | **category** | **String** | (deprecated) Refer to enrichment.category. | [optional] |
18
+ | **enrichment** | [**TransactionEnrichmentResponse**](TransactionEnrichmentResponse.md) | | [optional] |
19
+ | **original_id** | **String** | The original ID of this transaction, if supplied (by you) during an import. | [optional] |
20
+
21
+ ## Example
22
+
23
+ ```ruby
24
+ require 'moneykit'
25
+
26
+ instance = MoneyKit::TransactionResponse.new(
27
+ transaction_id: c7318ff7-257c-490e-8242-03a815b223b7,
28
+ account_id: acc_6Tef269B6ZArSVpYrxtjBV,
29
+ amount: 384.05,
30
+ type: null,
31
+ currency: USD,
32
+ date: 2023-02-16T00:00:00,
33
+ datetime: 2023-02-16T09:14:11,
34
+ description: Regina's Mulberry,
35
+ raw_description: Regina's Mulberry #1402 T48999-84,
36
+ pending: null,
37
+ category: null,
38
+ enrichment: null,
39
+ original_id: null
40
+ )
41
+ ```
42
+
@@ -0,0 +1,20 @@
1
+ # MoneyKit::TransactionSubcategoryResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **value** | **String** | Transaction subcategory | |
8
+ | **confidence** | **Integer** | Confidence score. Estimated accuracy of this data point (as a percentage). | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'moneykit'
14
+
15
+ instance = MoneyKit::TransactionSubcategoryResponse.new(
16
+ value: coffee,
17
+ confidence: 99
18
+ )
19
+ ```
20
+
@@ -0,0 +1,22 @@
1
+ # MoneyKit::TransactionSync
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **created** | [**Array<TransactionResponse>**](TransactionResponse.md) | | |
8
+ | **updated** | [**Array<TransactionResponse>**](TransactionResponse.md) | | |
9
+ | **removed** | **Array<String>** | | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'moneykit'
15
+
16
+ instance = MoneyKit::TransactionSync.new(
17
+ created: null,
18
+ updated: null,
19
+ removed: null
20
+ )
21
+ ```
22
+
@@ -4,7 +4,7 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **transactions** | [**TransactionDiff**](TransactionDiff.md) | | |
7
+ | **transactions** | [**TransactionSync**](TransactionSync.md) | | |
8
8
  | **cursor** | [**CursorPagination**](CursorPagination.md) | | |
9
9
  | **has_more** | **Boolean** | This condition indicates the presence of transaction updates exceeding the requested count. If true, additional updates MUST be retrieved by making an additional request with cursor set to `cursor.next`. | |
10
10
  | **link** | [**LinkCommon**](LinkCommon.md) | | |
@@ -4,12 +4,13 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **webhook_event** | **String** | | [optional][default to 'transactions.updates_available'] |
8
7
  | **webhook_major_version** | **Integer** | | [optional][default to WEBHOOK_MAJOR_VERSION::N1] |
9
8
  | **webhook_minor_version** | **Integer** | | [optional][default to WEBHOOK_MINOR_VERSION::N0] |
10
9
  | **webhook_idempotency_key** | **String** | | |
11
10
  | **webhook_timestamp** | **Time** | | |
12
11
  | **link_id** | **String** | | |
12
+ | **link_tags** | **Array<String>** | | |
13
+ | **webhook_event** | **String** | | [optional][default to 'transactions.updates_available'] |
13
14
  | **has_history** | **Boolean** | | |
14
15
 
15
16
  ## Example
@@ -18,12 +19,13 @@
18
19
  require 'moneykit'
19
20
 
20
21
  instance = MoneyKit::TransactionUpdatesAvailableWebhook.new(
21
- webhook_event: null,
22
22
  webhook_major_version: null,
23
23
  webhook_minor_version: null,
24
24
  webhook_idempotency_key: null,
25
25
  webhook_timestamp: null,
26
26
  link_id: null,
27
+ link_tags: null,
28
+ webhook_event: null,
27
29
  has_history: null
28
30
  )
29
31
  ```
@@ -5,7 +5,7 @@ All URIs are relative to *https://api.moneykit.com*
5
5
  | Method | HTTP request | Description |
6
6
  | ------ | ------------ | ----------- |
7
7
  | [**get_transactions**](TransactionsApi.md#get_transactions) | **GET** /links/{id}/transactions | /links/{id}/transactions |
8
- | [**get_transactions_diff**](TransactionsApi.md#get_transactions_diff) | **GET** /links/{id}/transactions/sync | /links/{id}/transactions/sync |
8
+ | [**get_transactions_sync**](TransactionsApi.md#get_transactions_sync) | **GET** /links/{id}/transactions/sync | /links/{id}/transactions/sync |
9
9
  | [**get_user_transactions**](TransactionsApi.md#get_user_transactions) | **GET** /users/{id}/transactions | /users/{id}/transactions |
10
10
 
11
11
 
@@ -32,10 +32,10 @@ api_instance = MoneyKit::TransactionsApi.new
32
32
  id = 'id_example' # String | The unique ID for this link.
33
33
  opts = {
34
34
  account_ids: ['inner_example'], # Array<String> | An optional list of account IDs to filter the results.
35
- page: 56, # Integer | The page number to return.
36
- size: 56, # Integer | The number of items to return per page.
37
35
  start_date: Date.parse('2013-10-20'), # Date | The earliest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to 90 days before the `end_date`. <p>If you want to retrieve **all** transactions, use `1900-01-01`.
38
- end_date: Date.parse('2013-10-20') # Date | The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
36
+ end_date: Date.parse('2013-10-20'), # Date | The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today.
37
+ page: 56, # Integer | The page number to return.
38
+ size: 56 # Integer | The number of items to return per page.
39
39
  }
40
40
 
41
41
  begin
@@ -71,10 +71,10 @@ end
71
71
  | ---- | ---- | ----------- | ----- |
72
72
  | **id** | **String** | The unique ID for this link. | |
73
73
  | **account_ids** | [**Array&lt;String&gt;**](String.md) | An optional list of account IDs to filter the results. | [optional] |
74
- | **page** | **Integer** | The page number to return. | [optional][default to 1] |
75
- | **size** | **Integer** | The number of items to return per page. | [optional][default to 50] |
76
74
  | **start_date** | **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;. | [optional] |
77
75
  | **end_date** | **Date** | The latest date for which data should be returned, formatted as YYYY-MM-DD. Defaults to today. | [optional] |
76
+ | **page** | **Integer** | The page number to return. | [optional][default to 1] |
77
+ | **size** | **Integer** | The number of items to return per page. | [optional][default to 50] |
78
78
 
79
79
  ### Return type
80
80
 
@@ -90,13 +90,13 @@ end
90
90
  - **Accept**: application/json
91
91
 
92
92
 
93
- ## get_transactions_diff
93
+ ## get_transactions_sync
94
94
 
95
- > <TransactionSyncResponse> get_transactions_diff(id, opts)
95
+ > <TransactionSyncResponse> get_transactions_sync(id, opts)
96
96
 
97
97
  /links/{id}/transactions/sync
98
98
 
99
- Provides a paginated feed of transactions, grouped into `created`, `updated`, and `removed` lists. <p>Each call will also return a `cursor.next` 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 `cursor.next` 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.
99
+ Provides a paginated feed of transactions, grouped into `created`, `updated`, and `removed` lists. <p>Each call will also return a `cursor.next` value. In subsequent calls, include that value to receive only changes that have occurred since the previous call. <p>**Pending** transactions will only be reported as `created`. Pending transactions are completely removed and replaced with each transaction refresh or update; no attempt is made to track their removal or modification. <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 `cursor.next` 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.
100
100
 
101
101
  ### Examples
102
102
 
@@ -118,28 +118,28 @@ opts = {
118
118
 
119
119
  begin
120
120
  # /links/{id}/transactions/sync
121
- result = api_instance.get_transactions_diff(id, opts)
121
+ result = api_instance.get_transactions_sync(id, opts)
122
122
  p result
123
123
  rescue MoneyKit::ApiError => e
124
- puts "Error when calling TransactionsApi->get_transactions_diff: #{e}"
124
+ puts "Error when calling TransactionsApi->get_transactions_sync: #{e}"
125
125
  end
126
126
  ```
127
127
 
128
- #### Using the get_transactions_diff_with_http_info variant
128
+ #### Using the get_transactions_sync_with_http_info variant
129
129
 
130
130
  This returns an Array which contains the response data, status code and headers.
131
131
 
132
- > <Array(<TransactionSyncResponse>, Integer, Hash)> get_transactions_diff_with_http_info(id, opts)
132
+ > <Array(<TransactionSyncResponse>, Integer, Hash)> get_transactions_sync_with_http_info(id, opts)
133
133
 
134
134
  ```ruby
135
135
  begin
136
136
  # /links/{id}/transactions/sync
137
- data, status_code, headers = api_instance.get_transactions_diff_with_http_info(id, opts)
137
+ data, status_code, headers = api_instance.get_transactions_sync_with_http_info(id, opts)
138
138
  p status_code # => 2xx
139
139
  p headers # => { ... }
140
140
  p data # => <TransactionSyncResponse>
141
141
  rescue MoneyKit::ApiError => e
142
- puts "Error when calling TransactionsApi->get_transactions_diff_with_http_info: #{e}"
142
+ puts "Error when calling TransactionsApi->get_transactions_sync_with_http_info: #{e}"
143
143
  end
144
144
  ```
145
145
 
@@ -6,7 +6,7 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **refreshed_at** | **Time** | An ISO-8601 timestamp indicating the last time that the product was updated. | [optional] |
8
8
  | **last_attempted_at** | **Time** | An ISO-8601 timestamp indicating the last time that the product was attempted. | [optional] |
9
- | **error_code** | [**LinkProductFailureReasons**](LinkProductFailureReasons.md) | | [optional] |
9
+ | **error_code** | [**LinkProductError**](LinkProductError.md) | | [optional] |
10
10
  | **error_message** | **String** | The error message, if the last attempt to refresh the product failed. | [optional] |
11
11
  | **unavailable** | **String** | If this product can&#39;t currently be updated, the reason why it is unavailable. &lt;p&gt;Unavailable products can&#39;t be refreshed, but past data, if any, is still accessible. | [optional] |
12
12
  | **settings** | [**TransactionsProductSettings**](TransactionsProductSettings.md) | | [optional] |
@@ -26,9 +26,9 @@ module MoneyKit
26
26
  # @option opts [String] :scope Actions to be allowed for this token, given as one or more strings separated by spaces. If omitted, all actions allowed for your application will be granted to this token. (default to '')
27
27
  # @option opts [String] :client_id Your application&#39;s MoneyKit client ID.
28
28
  # @option opts [String] :client_secret Your application&#39;s MoneyKit client secret.
29
- # @return [GenerateAccessTokenResponse]
30
- def generate_access_token(opts = {})
31
- data, _status_code, _headers = generate_access_token_with_http_info(opts)
29
+ # @return [CreateAccessTokenResponse]
30
+ def create_access_token(opts = {})
31
+ data, _status_code, _headers = create_access_token_with_http_info(opts)
32
32
  data
33
33
  end
34
34
 
@@ -39,14 +39,14 @@ module MoneyKit
39
39
  # @option opts [String] :scope Actions to be allowed for this token, given as one or more strings separated by spaces. If omitted, all actions allowed for your application will be granted to this token. (default to '')
40
40
  # @option opts [String] :client_id Your application&#39;s MoneyKit client ID.
41
41
  # @option opts [String] :client_secret Your application&#39;s MoneyKit client secret.
42
- # @return [Array<(GenerateAccessTokenResponse, Integer, Hash)>] GenerateAccessTokenResponse data, response status code and response headers
43
- def generate_access_token_with_http_info(opts = {})
42
+ # @return [Array<(CreateAccessTokenResponse, Integer, Hash)>] CreateAccessTokenResponse data, response status code and response headers
43
+ def create_access_token_with_http_info(opts = {})
44
44
  if @api_client.config.debugging
45
- @api_client.config.logger.debug 'Calling API: AccessTokenApi.generate_access_token ...'
45
+ @api_client.config.logger.debug 'Calling API: AccessTokenApi.create_access_token ...'
46
46
  end
47
47
  pattern = Regexp.new(/^(client_credentials|refresh_token)$/)
48
48
  if @api_client.config.client_side_validation && !opts[:'grant_type'].nil? && opts[:'grant_type'] !~ pattern
49
- fail ArgumentError, "invalid value for 'opts[:\"grant_type\"]' when calling AccessTokenApi.generate_access_token, must conform to the pattern #{pattern}."
49
+ fail ArgumentError, "invalid value for 'opts[:\"grant_type\"]' when calling AccessTokenApi.create_access_token, must conform to the pattern #{pattern}."
50
50
  end
51
51
 
52
52
  # resource path
@@ -76,13 +76,13 @@ module MoneyKit
76
76
  post_body = opts[:debug_body]
77
77
 
78
78
  # return_type
79
- return_type = opts[:debug_return_type] || 'GenerateAccessTokenResponse'
79
+ return_type = opts[:debug_return_type] || 'CreateAccessTokenResponse'
80
80
 
81
81
  # auth_names
82
82
  auth_names = opts[:debug_auth_names] || ['HTTPBasic']
83
83
 
84
84
  new_options = opts.merge(
85
- :operation => :"AccessTokenApi.generate_access_token",
85
+ :operation => :"AccessTokenApi.create_access_token",
86
86
  :header_params => header_params,
87
87
  :query_params => query_params,
88
88
  :form_params => form_params,
@@ -93,7 +93,7 @@ module MoneyKit
93
93
 
94
94
  data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
95
95
  if @api_client.config.debugging
96
- @api_client.config.logger.debug "API called: AccessTokenApi#generate_access_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
96
+ @api_client.config.logger.debug "API called: AccessTokenApi#create_access_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
97
97
  end
98
98
  return data, status_code, headers
99
99
  end
@@ -101,19 +101,21 @@ module MoneyKit
101
101
  # JSON Web Key Set
102
102
  # The JSON Web Key Set (JWKS) is a set of keys containing the public keys used to verify webhook JSON Web Tokens (JWT) issued by MoneyKit webhooks.
103
103
  # @param [Hash] opts the optional parameters
104
+ # @option opts [String] :x_client_id Your client ID.
104
105
  # @return [JWKSet]
105
- def get_well_known_jwks(opts = {})
106
- data, _status_code, _headers = get_well_known_jwks_with_http_info(opts)
106
+ def get_app_jwks(opts = {})
107
+ data, _status_code, _headers = get_app_jwks_with_http_info(opts)
107
108
  data
108
109
  end
109
110
 
110
111
  # JSON Web Key Set
111
112
  # The JSON Web Key Set (JWKS) is a set of keys containing the public keys used to verify webhook JSON Web Tokens (JWT) issued by MoneyKit webhooks.
112
113
  # @param [Hash] opts the optional parameters
114
+ # @option opts [String] :x_client_id Your client ID.
113
115
  # @return [Array<(JWKSet, Integer, Hash)>] JWKSet data, response status code and response headers
114
- def get_well_known_jwks_with_http_info(opts = {})
116
+ def get_app_jwks_with_http_info(opts = {})
115
117
  if @api_client.config.debugging
116
- @api_client.config.logger.debug 'Calling API: AccessTokenApi.get_well_known_jwks ...'
118
+ @api_client.config.logger.debug 'Calling API: AccessTokenApi.get_app_jwks ...'
117
119
  end
118
120
  # resource path
119
121
  local_var_path = '/.well-known/jwks.json'
@@ -125,6 +127,7 @@ module MoneyKit
125
127
  header_params = opts[:header_params] || {}
126
128
  # HTTP header 'Accept' (if needed)
127
129
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
130
+ header_params[:'X-Client-Id'] = opts[:'x_client_id'] if !opts[:'x_client_id'].nil?
128
131
 
129
132
  # form parameters
130
133
  form_params = opts[:form_params] || {}
@@ -139,7 +142,7 @@ module MoneyKit
139
142
  auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
140
143
 
141
144
  new_options = opts.merge(
142
- :operation => :"AccessTokenApi.get_well_known_jwks",
145
+ :operation => :"AccessTokenApi.get_app_jwks",
143
146
  :header_params => header_params,
144
147
  :query_params => query_params,
145
148
  :form_params => form_params,
@@ -150,7 +153,7 @@ module MoneyKit
150
153
 
151
154
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
152
155
  if @api_client.config.debugging
153
- @api_client.config.logger.debug "API called: AccessTokenApi#get_well_known_jwks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
156
+ @api_client.config.logger.debug "API called: AccessTokenApi#get_app_jwks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
154
157
  end
155
158
  return data, status_code, headers
156
159
  end
@@ -24,8 +24,8 @@ module MoneyKit
24
24
  # @param id [String] The unique ID for this link.
25
25
  # @param [Hash] opts the optional parameters
26
26
  # @return [GetAccountNumbersResponseLegacy20230218]
27
- def get_account_numbers_legacy20230218(id, opts = {})
28
- data, _status_code, _headers = get_account_numbers_legacy20230218_with_http_info(id, opts)
27
+ def get_account_numbers(id, opts = {})
28
+ data, _status_code, _headers = get_account_numbers_with_http_info(id, opts)
29
29
  data
30
30
  end
31
31
 
@@ -34,13 +34,13 @@ module MoneyKit
34
34
  # @param id [String] The unique ID for this link.
35
35
  # @param [Hash] opts the optional parameters
36
36
  # @return [Array<(GetAccountNumbersResponseLegacy20230218, Integer, Hash)>] GetAccountNumbersResponseLegacy20230218 data, response status code and response headers
37
- def get_account_numbers_legacy20230218_with_http_info(id, opts = {})
37
+ def get_account_numbers_with_http_info(id, opts = {})
38
38
  if @api_client.config.debugging
39
- @api_client.config.logger.debug 'Calling API: AccountNumbersApi.get_account_numbers_legacy20230218 ...'
39
+ @api_client.config.logger.debug 'Calling API: AccountNumbersApi.get_account_numbers ...'
40
40
  end
41
41
  # verify the required parameter 'id' is set
42
42
  if @api_client.config.client_side_validation && id.nil?
43
- fail ArgumentError, "Missing the required parameter 'id' when calling AccountNumbersApi.get_account_numbers_legacy20230218"
43
+ fail ArgumentError, "Missing the required parameter 'id' when calling AccountNumbersApi.get_account_numbers"
44
44
  end
45
45
  # resource path
46
46
  local_var_path = '/links/{id}/accounts/numbers'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
@@ -66,7 +66,7 @@ module MoneyKit
66
66
  auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
67
67
 
68
68
  new_options = opts.merge(
69
- :operation => :"AccountNumbersApi.get_account_numbers_legacy20230218",
69
+ :operation => :"AccountNumbersApi.get_account_numbers",
70
70
  :header_params => header_params,
71
71
  :query_params => query_params,
72
72
  :form_params => form_params,
@@ -77,7 +77,7 @@ module MoneyKit
77
77
 
78
78
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
79
79
  if @api_client.config.debugging
80
- @api_client.config.logger.debug "API called: AccountNumbersApi#get_account_numbers_legacy20230218\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
80
+ @api_client.config.logger.debug "API called: AccountNumbersApi#get_account_numbers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
81
  end
82
82
  return data, status_code, headers
83
83
  end
@@ -93,8 +93,8 @@ module MoneyKit
93
93
  # @param id [String] The unique ID for this link.
94
94
  # @param [Hash] opts the optional parameters
95
95
  # @return [GetAccountNumbersResponseLegacy20230218]
96
- def get_account_numbers_legacy20230218(id, opts = {})
97
- data, _status_code, _headers = get_account_numbers_legacy20230218_with_http_info(id, opts)
96
+ def get_account_numbers(id, opts = {})
97
+ data, _status_code, _headers = get_account_numbers_with_http_info(id, opts)
98
98
  data
99
99
  end
100
100
 
@@ -103,13 +103,13 @@ module MoneyKit
103
103
  # @param id [String] The unique ID for this link.
104
104
  # @param [Hash] opts the optional parameters
105
105
  # @return [Array<(GetAccountNumbersResponseLegacy20230218, Integer, Hash)>] GetAccountNumbersResponseLegacy20230218 data, response status code and response headers
106
- def get_account_numbers_legacy20230218_with_http_info(id, opts = {})
106
+ def get_account_numbers_with_http_info(id, opts = {})
107
107
  if @api_client.config.debugging
108
- @api_client.config.logger.debug 'Calling API: AccountsApi.get_account_numbers_legacy20230218 ...'
108
+ @api_client.config.logger.debug 'Calling API: AccountsApi.get_account_numbers ...'
109
109
  end
110
110
  # verify the required parameter 'id' is set
111
111
  if @api_client.config.client_side_validation && id.nil?
112
- fail ArgumentError, "Missing the required parameter 'id' when calling AccountsApi.get_account_numbers_legacy20230218"
112
+ fail ArgumentError, "Missing the required parameter 'id' when calling AccountsApi.get_account_numbers"
113
113
  end
114
114
  # resource path
115
115
  local_var_path = '/links/{id}/accounts/numbers'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
@@ -135,7 +135,7 @@ module MoneyKit
135
135
  auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
136
136
 
137
137
  new_options = opts.merge(
138
- :operation => :"AccountsApi.get_account_numbers_legacy20230218",
138
+ :operation => :"AccountsApi.get_account_numbers",
139
139
  :header_params => header_params,
140
140
  :query_params => query_params,
141
141
  :form_params => form_params,
@@ -146,7 +146,7 @@ module MoneyKit
146
146
 
147
147
  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
148
148
  if @api_client.config.debugging
149
- @api_client.config.logger.debug "API called: AccountsApi#get_account_numbers_legacy20230218\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
149
+ @api_client.config.logger.debug "API called: AccountsApi#get_account_numbers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
150
150
  end
151
151
  return data, status_code, headers
152
152
  end
@@ -24,8 +24,8 @@ module MoneyKit
24
24
  # @param id [String] The unique ID for this link.
25
25
  # @param [Hash] opts the optional parameters
26
26
  # @return [nil]
27
- def disconnect(id, opts = {})
28
- disconnect_with_http_info(id, opts)
27
+ def delete_link(id, opts = {})
28
+ delete_link_with_http_info(id, opts)
29
29
  nil
30
30
  end
31
31
 
@@ -34,13 +34,13 @@ module MoneyKit
34
34
  # @param id [String] The unique ID for this link.
35
35
  # @param [Hash] opts the optional parameters
36
36
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
37
- def disconnect_with_http_info(id, opts = {})
37
+ def delete_link_with_http_info(id, opts = {})
38
38
  if @api_client.config.debugging
39
- @api_client.config.logger.debug 'Calling API: LinksApi.disconnect ...'
39
+ @api_client.config.logger.debug 'Calling API: LinksApi.delete_link ...'
40
40
  end
41
41
  # verify the required parameter 'id' is set
42
42
  if @api_client.config.client_side_validation && id.nil?
43
- fail ArgumentError, "Missing the required parameter 'id' when calling LinksApi.disconnect"
43
+ fail ArgumentError, "Missing the required parameter 'id' when calling LinksApi.delete_link"
44
44
  end
45
45
  # resource path
46
46
  local_var_path = '/links/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
@@ -66,7 +66,7 @@ module MoneyKit
66
66
  auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
67
67
 
68
68
  new_options = opts.merge(
69
- :operation => :"LinksApi.disconnect",
69
+ :operation => :"LinksApi.delete_link",
70
70
  :header_params => header_params,
71
71
  :query_params => query_params,
72
72
  :form_params => form_params,
@@ -77,7 +77,7 @@ module MoneyKit
77
77
 
78
78
  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
79
79
  if @api_client.config.debugging
80
- @api_client.config.logger.debug "API called: LinksApi#disconnect\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
80
+ @api_client.config.logger.debug "API called: LinksApi#delete_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
81
  end
82
82
  return data, status_code, headers
83
83
  end
@@ -208,6 +208,74 @@ module MoneyKit
208
208
  return data, status_code, headers
209
209
  end
210
210
 
211
+ # /links/import
212
+ # Creates a new link with pre-populated accounts and transactions. The new link will be created in an initially `disconnected` state, with an error code of `auth_expired`, but all data will be available. As with any disconnected link, the imported link can then be reconnected at any time by starting a new <a href=#operation/create_link_session>/link-session</a> with `existing_link_id` set to the link's `link_id`. Note that the link can be reconnected using any suitable provider.
213
+ # @param import_link_request [ImportLinkRequest]
214
+ # @param [Hash] opts the optional parameters
215
+ # @return [LinkResponse]
216
+ def import_link(import_link_request, opts = {})
217
+ data, _status_code, _headers = import_link_with_http_info(import_link_request, opts)
218
+ data
219
+ end
220
+
221
+ # /links/import
222
+ # Creates a new link with pre-populated accounts and transactions. The new link will be created in an initially &#x60;disconnected&#x60; state, with an error code of &#x60;auth_expired&#x60;, but all data will be available. As with any disconnected link, the imported link can then be reconnected at any time by starting a new &lt;a href&#x3D;#operation/create_link_session&gt;/link-session&lt;/a&gt; with &#x60;existing_link_id&#x60; set to the link&#39;s &#x60;link_id&#x60;. Note that the link can be reconnected using any suitable provider.
223
+ # @param import_link_request [ImportLinkRequest]
224
+ # @param [Hash] opts the optional parameters
225
+ # @return [Array<(LinkResponse, Integer, Hash)>] LinkResponse data, response status code and response headers
226
+ def import_link_with_http_info(import_link_request, opts = {})
227
+ if @api_client.config.debugging
228
+ @api_client.config.logger.debug 'Calling API: LinksApi.import_link ...'
229
+ end
230
+ # verify the required parameter 'import_link_request' is set
231
+ if @api_client.config.client_side_validation && import_link_request.nil?
232
+ fail ArgumentError, "Missing the required parameter 'import_link_request' when calling LinksApi.import_link"
233
+ end
234
+ # resource path
235
+ local_var_path = '/links/import'
236
+
237
+ # query parameters
238
+ query_params = opts[:query_params] || {}
239
+
240
+ # header parameters
241
+ header_params = opts[:header_params] || {}
242
+ # HTTP header 'Accept' (if needed)
243
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
244
+ # HTTP header 'Content-Type'
245
+ content_type = @api_client.select_header_content_type(['application/json'])
246
+ if !content_type.nil?
247
+ header_params['Content-Type'] = content_type
248
+ end
249
+
250
+ # form parameters
251
+ form_params = opts[:form_params] || {}
252
+
253
+ # http body (model)
254
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(import_link_request)
255
+
256
+ # return_type
257
+ return_type = opts[:debug_return_type] || 'LinkResponse'
258
+
259
+ # auth_names
260
+ auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
261
+
262
+ new_options = opts.merge(
263
+ :operation => :"LinksApi.import_link",
264
+ :header_params => header_params,
265
+ :query_params => query_params,
266
+ :form_params => form_params,
267
+ :body => post_body,
268
+ :auth_names => auth_names,
269
+ :return_type => return_type
270
+ )
271
+
272
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
273
+ if @api_client.config.debugging
274
+ @api_client.config.logger.debug "API called: LinksApi#import_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
275
+ end
276
+ return data, status_code, headers
277
+ end
278
+
211
279
  # Force a \"relink required\" state on a link (Test only).
212
280
  # @param id [String] The unique ID for this link.
213
281
  # @param [Hash] opts the optional parameters