ynab 1.6.0 → 1.8.0
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.
- checksums.yaml +4 -4
- data/README.md +5 -8
- data/lib/ynab/api/categories_api.rb +4 -4
- data/lib/ynab/api/months_api.rb +2 -2
- data/lib/ynab/api/transactions_api.rb +92 -34
- data/lib/ynab/models/currency_format.rb +1 -0
- data/lib/ynab/models/date_format.rb +1 -0
- data/lib/ynab/models/hybrid_transaction.rb +16 -1
- data/lib/ynab/models/transaction_detail.rb +16 -1
- data/lib/ynab/models/transaction_summary.rb +16 -1
- data/lib/ynab/overrides/transactions_api.rb +3 -3
- data/lib/ynab/version.rb +1 -1
- data/spec/api/transactions_spec.rb +24 -0
- data/spec/fixtures/vcr_cassettes/update_transactions.yml +46 -0
- metadata +18 -18
- data/spec/fixtures/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ffde9835e305a5c945cbcf27c65b5656c702cfb97e9bcc01d65c114b7873b7dd
|
4
|
+
data.tar.gz: 6d2af7c33274195eec327774ef9f761f4825924c3632e165bce65a5dec14dc13
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e35384635c14dc1b809059e24badfd139d259947070337760fcf0259cbe3fd4806ad2d5e6273895b6fab75a36405c2a098cc181f9daa75d33ef38c137b0e155
|
7
|
+
data.tar.gz: a661caaefc4173d1931ce72b83175efc5dfb4f5ebe00b7e6a929a57fc4f61ef30ad9c3e3095a30a62f32191b0b587299a5462c0092cb80be38549060d620435c
|
data/README.md
CHANGED
@@ -26,8 +26,6 @@ app.
|
|
26
26
|
require 'ynab'
|
27
27
|
|
28
28
|
access_token = ENV['YNAB_ACCESS_TOKEN']
|
29
|
-
puts "access_token = " + access_token
|
30
|
-
|
31
29
|
ynab_api = YNAB::API.new(access_token)
|
32
30
|
|
33
31
|
budget_response = ynab_api.budgets.get_budgets
|
@@ -69,10 +67,10 @@ The following methods are available in this library.
|
|
69
67
|
| | [transactions.get_transactions_by_account(budget_id, account_id)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#get_transactions_by_account) | Returns all transactions for a specified account |
|
70
68
|
| | [transactions.get_transactions_by_category(budget_id, category_id)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#get_transactions_by_category) | Returns all transactions for a specified category |
|
71
69
|
| | [transactions.get_transaction_by_id(budget_id, transaction_id)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#get_transaction_by_id) | Returns a single transaction |
|
72
|
-
| | [transactions.
|
73
|
-
| | [transactions.
|
74
|
-
| | [transactions.
|
75
|
-
| | [transactions.
|
70
|
+
| | [transactions.create_transaction(budget_id, data)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#create_transaction) | Creates a single transaction |
|
71
|
+
| | [transactions.create_transactions(budget_id, data)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#create_transaction) | Creates multiple transactions |
|
72
|
+
| | [transactions.update_transaction(budget_id, id, data)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#update_transaction) | Updates a single transaction |
|
73
|
+
| | [transactions.update_transactions(budget_id, data)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/TransactionsApi.md#update_transactions) | Updates multiple transactions |
|
76
74
|
| **Scheduled Transactions** | [scheduled_transactions.get_scheduled_transactions(budget_id)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/ScheduledTransactionsApi.md#get_scheduled_transactions) | Returns all scheduled transactions |
|
77
75
|
| | [scheduled_transactions.get_scheduled_transaction_by_id(budget_id, scheduled_transaction_id)](https://github.com/ynab/ynab-sdk-ruby/blob/master/docs/ScheduledTransactionsApi.md#get_scheduled_transaction_by_id) | Returns a single scheduled transaction |
|
78
76
|
|
@@ -86,9 +84,8 @@ The following methods are available in this library.
|
|
86
84
|
|
87
85
|
## Releasing
|
88
86
|
|
89
|
-
- Generate latest with `rake generate`
|
90
87
|
- Commit all changes
|
91
|
-
- Bump
|
88
|
+
- Bump VERSION in `lib/ynab/version.rb`
|
92
89
|
- Run `rake publish` to publish to RubyGems
|
93
90
|
|
94
91
|
## License
|
@@ -132,7 +132,7 @@ module YNAB
|
|
132
132
|
# Single category for a specific budget month
|
133
133
|
# Returns a single category for a specific budget month. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC).
|
134
134
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
135
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
135
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
136
136
|
# @param category_id The id of the category
|
137
137
|
# @param [Hash] opts the optional parameters
|
138
138
|
# @return [CategoryResponse]
|
@@ -144,7 +144,7 @@ module YNAB
|
|
144
144
|
# Single category for a specific budget month
|
145
145
|
# Returns a single category for a specific budget month. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC).
|
146
146
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
147
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
147
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
148
148
|
# @param category_id The id of the category
|
149
149
|
# @param [Hash] opts the optional parameters
|
150
150
|
# @return [Array<(CategoryResponse, Fixnum, Hash)>] CategoryResponse data, response status code and response headers
|
@@ -196,7 +196,7 @@ module YNAB
|
|
196
196
|
# Update an existing month category
|
197
197
|
# Update an existing month category
|
198
198
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
199
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
199
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
200
200
|
# @param category_id The id of the category
|
201
201
|
# @param month_category The month category to update
|
202
202
|
# @param [Hash] opts the optional parameters
|
@@ -209,7 +209,7 @@ module YNAB
|
|
209
209
|
# Update an existing month category
|
210
210
|
# Update an existing month category
|
211
211
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
212
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
212
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
213
213
|
# @param category_id The id of the category
|
214
214
|
# @param month_category The month category to update
|
215
215
|
# @param [Hash] opts the optional parameters
|
data/lib/ynab/api/months_api.rb
CHANGED
@@ -22,7 +22,7 @@ module YNAB
|
|
22
22
|
# Single budget month
|
23
23
|
# Returns a single budget month
|
24
24
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
25
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
25
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
26
26
|
# @param [Hash] opts the optional parameters
|
27
27
|
# @return [MonthDetailResponse]
|
28
28
|
def get_budget_month(budget_id, month, opts = {})
|
@@ -33,7 +33,7 @@ module YNAB
|
|
33
33
|
# Single budget month
|
34
34
|
# Returns a single budget month
|
35
35
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
36
|
-
# @param month The budget month in ISO format (e.g. 2016-12-
|
36
|
+
# @param month The budget month in ISO format (e.g. 2016-12-01) (\"current\" can also be used to specify the current calendar month (UTC))
|
37
37
|
# @param [Hash] opts the optional parameters
|
38
38
|
# @return [Array<(MonthDetailResponse, Fixnum, Hash)>] MonthDetailResponse data, response status code and response headers
|
39
39
|
def get_budget_month_with_http_info(budget_id, month, opts = {})
|
@@ -22,21 +22,21 @@ module YNAB
|
|
22
22
|
# Create a single transaction or multiple transactions
|
23
23
|
# Creates a single transaction or multiple transactions. If you provide a body containing a 'transaction' object, a single transaction will be created and if you provide a body containing a 'transactions' array, multiple transactions will be created.
|
24
24
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
25
|
-
# @param
|
25
|
+
# @param data The transaction or transactions to create. To create a single transaction you can specify a value for the 'transaction' object and to create multiple transactions you can specify an array of 'transactions'. It is expected that you will only provide a value for one of these objects.
|
26
26
|
# @param [Hash] opts the optional parameters
|
27
27
|
# @return [SaveTransactionsResponse]
|
28
|
-
def create_transaction(budget_id,
|
29
|
-
data, _status_code, _headers = create_transaction_with_http_info(budget_id,
|
28
|
+
def create_transaction(budget_id, data, opts = {})
|
29
|
+
data, _status_code, _headers = create_transaction_with_http_info(budget_id, data, opts)
|
30
30
|
data
|
31
31
|
end
|
32
32
|
|
33
33
|
# Create a single transaction or multiple transactions
|
34
34
|
# Creates a single transaction or multiple transactions. If you provide a body containing a 'transaction' object, a single transaction will be created and if you provide a body containing a 'transactions' array, multiple transactions will be created.
|
35
35
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
36
|
-
# @param
|
36
|
+
# @param data The transaction or transactions to create. To create a single transaction you can specify a value for the 'transaction' object and to create multiple transactions you can specify an array of 'transactions'. It is expected that you will only provide a value for one of these objects.
|
37
37
|
# @param [Hash] opts the optional parameters
|
38
38
|
# @return [Array<(SaveTransactionsResponse, Fixnum, Hash)>] SaveTransactionsResponse data, response status code and response headers
|
39
|
-
def create_transaction_with_http_info(budget_id,
|
39
|
+
def create_transaction_with_http_info(budget_id, data, opts = {})
|
40
40
|
if @api_client.config.debugging
|
41
41
|
@api_client.config.logger.debug 'Calling API: TransactionsApi.create_transaction ...'
|
42
42
|
end
|
@@ -44,9 +44,9 @@ module YNAB
|
|
44
44
|
if @api_client.config.client_side_validation && budget_id.nil?
|
45
45
|
fail ArgumentError, "Missing the required parameter 'budget_id' when calling TransactionsApi.create_transaction"
|
46
46
|
end
|
47
|
-
# verify the required parameter '
|
48
|
-
if @api_client.config.client_side_validation &&
|
49
|
-
fail ArgumentError, "Missing the required parameter '
|
47
|
+
# verify the required parameter 'data' is set
|
48
|
+
if @api_client.config.client_side_validation && data.nil?
|
49
|
+
fail ArgumentError, "Missing the required parameter 'data' when calling TransactionsApi.create_transaction"
|
50
50
|
end
|
51
51
|
# resource path
|
52
52
|
local_var_path = '/budgets/{budget_id}/transactions'.sub('{' + 'budget_id' + '}', budget_id.to_s)
|
@@ -63,7 +63,7 @@ module YNAB
|
|
63
63
|
form_params = {}
|
64
64
|
|
65
65
|
# http body (model)
|
66
|
-
post_body = @api_client.object_to_http_body(
|
66
|
+
post_body = @api_client.object_to_http_body(data)
|
67
67
|
auth_names = ['bearer']
|
68
68
|
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
69
69
|
:header_params => header_params,
|
@@ -139,8 +139,8 @@ module YNAB
|
|
139
139
|
# Returns budget transactions
|
140
140
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
141
141
|
# @param [Hash] opts the optional parameters
|
142
|
-
# @option opts [Date] :since_date
|
143
|
-
# @option opts [String] :type
|
142
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
143
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
144
144
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
145
145
|
# @return [TransactionsResponse]
|
146
146
|
def get_transactions(budget_id, opts = {})
|
@@ -152,8 +152,8 @@ module YNAB
|
|
152
152
|
# Returns budget transactions
|
153
153
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
154
154
|
# @param [Hash] opts the optional parameters
|
155
|
-
# @option opts [Date] :since_date
|
156
|
-
# @option opts [String] :type
|
155
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
156
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
157
157
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
158
158
|
# @return [Array<(TransactionsResponse, Fixnum, Hash)>] TransactionsResponse data, response status code and response headers
|
159
159
|
def get_transactions_with_http_info(budget_id, opts = {})
|
@@ -204,8 +204,8 @@ module YNAB
|
|
204
204
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
205
205
|
# @param account_id The id of the account
|
206
206
|
# @param [Hash] opts the optional parameters
|
207
|
-
# @option opts [Date] :since_date
|
208
|
-
# @option opts [String] :type
|
207
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
208
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
209
209
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
210
210
|
# @return [TransactionsResponse]
|
211
211
|
def get_transactions_by_account(budget_id, account_id, opts = {})
|
@@ -218,8 +218,8 @@ module YNAB
|
|
218
218
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
219
219
|
# @param account_id The id of the account
|
220
220
|
# @param [Hash] opts the optional parameters
|
221
|
-
# @option opts [Date] :since_date
|
222
|
-
# @option opts [String] :type
|
221
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
222
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
223
223
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
224
224
|
# @return [Array<(TransactionsResponse, Fixnum, Hash)>] TransactionsResponse data, response status code and response headers
|
225
225
|
def get_transactions_by_account_with_http_info(budget_id, account_id, opts = {})
|
@@ -274,8 +274,8 @@ module YNAB
|
|
274
274
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
275
275
|
# @param category_id The id of the category
|
276
276
|
# @param [Hash] opts the optional parameters
|
277
|
-
# @option opts [Date] :since_date
|
278
|
-
# @option opts [String] :type
|
277
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
278
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
279
279
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
280
280
|
# @return [HybridTransactionsResponse]
|
281
281
|
def get_transactions_by_category(budget_id, category_id, opts = {})
|
@@ -288,8 +288,8 @@ module YNAB
|
|
288
288
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
289
289
|
# @param category_id The id of the category
|
290
290
|
# @param [Hash] opts the optional parameters
|
291
|
-
# @option opts [Date] :since_date
|
292
|
-
# @option opts [String] :type
|
291
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
292
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
293
293
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
294
294
|
# @return [Array<(HybridTransactionsResponse, Fixnum, Hash)>] HybridTransactionsResponse data, response status code and response headers
|
295
295
|
def get_transactions_by_category_with_http_info(budget_id, category_id, opts = {})
|
@@ -344,8 +344,8 @@ module YNAB
|
|
344
344
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
345
345
|
# @param payee_id The id of the payee
|
346
346
|
# @param [Hash] opts the optional parameters
|
347
|
-
# @option opts [Date] :since_date
|
348
|
-
# @option opts [String] :type
|
347
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
348
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
349
349
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
350
350
|
# @return [HybridTransactionsResponse]
|
351
351
|
def get_transactions_by_payee(budget_id, payee_id, opts = {})
|
@@ -358,8 +358,8 @@ module YNAB
|
|
358
358
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
359
359
|
# @param payee_id The id of the payee
|
360
360
|
# @param [Hash] opts the optional parameters
|
361
|
-
# @option opts [Date] :since_date
|
362
|
-
# @option opts [String] :type
|
361
|
+
# @option opts [Date] :since_date If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
|
362
|
+
# @option opts [String] :type If specified, only transactions of the specified type will be included. 'uncategorized' and 'unapproved' are currently supported.
|
363
363
|
# @option opts [Integer] :last_knowledge_of_server The starting server knowledge. If provided, only entities that have changed since last_knowledge_of_server will be included.
|
364
364
|
# @return [Array<(HybridTransactionsResponse, Fixnum, Hash)>] HybridTransactionsResponse data, response status code and response headers
|
365
365
|
def get_transactions_by_payee_with_http_info(budget_id, payee_id, opts = {})
|
@@ -413,11 +413,11 @@ module YNAB
|
|
413
413
|
# Updates a transaction
|
414
414
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
415
415
|
# @param transaction_id The id of the transaction
|
416
|
-
# @param
|
416
|
+
# @param data The transaction to update
|
417
417
|
# @param [Hash] opts the optional parameters
|
418
418
|
# @return [TransactionResponse]
|
419
|
-
def update_transaction(budget_id, transaction_id,
|
420
|
-
data, _status_code, _headers = update_transaction_with_http_info(budget_id, transaction_id,
|
419
|
+
def update_transaction(budget_id, transaction_id, data, opts = {})
|
420
|
+
data, _status_code, _headers = update_transaction_with_http_info(budget_id, transaction_id, data, opts)
|
421
421
|
data
|
422
422
|
end
|
423
423
|
|
@@ -425,10 +425,10 @@ module YNAB
|
|
425
425
|
# Updates a transaction
|
426
426
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
427
427
|
# @param transaction_id The id of the transaction
|
428
|
-
# @param
|
428
|
+
# @param data The transaction to update
|
429
429
|
# @param [Hash] opts the optional parameters
|
430
430
|
# @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
|
431
|
-
def update_transaction_with_http_info(budget_id, transaction_id,
|
431
|
+
def update_transaction_with_http_info(budget_id, transaction_id, data, opts = {})
|
432
432
|
if @api_client.config.debugging
|
433
433
|
@api_client.config.logger.debug 'Calling API: TransactionsApi.update_transaction ...'
|
434
434
|
end
|
@@ -440,9 +440,9 @@ module YNAB
|
|
440
440
|
if @api_client.config.client_side_validation && transaction_id.nil?
|
441
441
|
fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.update_transaction"
|
442
442
|
end
|
443
|
-
# verify the required parameter '
|
444
|
-
if @api_client.config.client_side_validation &&
|
445
|
-
fail ArgumentError, "Missing the required parameter '
|
443
|
+
# verify the required parameter 'data' is set
|
444
|
+
if @api_client.config.client_side_validation && data.nil?
|
445
|
+
fail ArgumentError, "Missing the required parameter 'data' when calling TransactionsApi.update_transaction"
|
446
446
|
end
|
447
447
|
# resource path
|
448
448
|
local_var_path = '/budgets/{budget_id}/transactions/{transaction_id}'.sub('{' + 'budget_id' + '}', budget_id.to_s).sub('{' + 'transaction_id' + '}', transaction_id.to_s)
|
@@ -459,7 +459,7 @@ module YNAB
|
|
459
459
|
form_params = {}
|
460
460
|
|
461
461
|
# http body (model)
|
462
|
-
post_body = @api_client.object_to_http_body(
|
462
|
+
post_body = @api_client.object_to_http_body(data)
|
463
463
|
auth_names = ['bearer']
|
464
464
|
data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
|
465
465
|
:header_params => header_params,
|
@@ -473,5 +473,63 @@ module YNAB
|
|
473
473
|
end
|
474
474
|
return data, status_code, headers
|
475
475
|
end
|
476
|
+
# Update multiple transactions
|
477
|
+
# Updates multiple transactions, by 'id' or 'import_id'.
|
478
|
+
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
479
|
+
# @param data The transactions to update. Optionally, transaction 'id' value(s) can be specified as null and an 'import_id' value can be provided which will allow transaction(s) to updated by their import_id.
|
480
|
+
# @param [Hash] opts the optional parameters
|
481
|
+
# @return [SaveTransactionsResponse]
|
482
|
+
def update_transactions(budget_id, data, opts = {})
|
483
|
+
data, _status_code, _headers = update_transactions_with_http_info(budget_id, data, opts)
|
484
|
+
data
|
485
|
+
end
|
486
|
+
|
487
|
+
# Update multiple transactions
|
488
|
+
# Updates multiple transactions, by 'id' or 'import_id'.
|
489
|
+
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
490
|
+
# @param data The transactions to update. Optionally, transaction 'id' value(s) can be specified as null and an 'import_id' value can be provided which will allow transaction(s) to updated by their import_id.
|
491
|
+
# @param [Hash] opts the optional parameters
|
492
|
+
# @return [Array<(SaveTransactionsResponse, Fixnum, Hash)>] SaveTransactionsResponse data, response status code and response headers
|
493
|
+
def update_transactions_with_http_info(budget_id, data, opts = {})
|
494
|
+
if @api_client.config.debugging
|
495
|
+
@api_client.config.logger.debug 'Calling API: TransactionsApi.update_transactions ...'
|
496
|
+
end
|
497
|
+
# verify the required parameter 'budget_id' is set
|
498
|
+
if @api_client.config.client_side_validation && budget_id.nil?
|
499
|
+
fail ArgumentError, "Missing the required parameter 'budget_id' when calling TransactionsApi.update_transactions"
|
500
|
+
end
|
501
|
+
# verify the required parameter 'data' is set
|
502
|
+
if @api_client.config.client_side_validation && data.nil?
|
503
|
+
fail ArgumentError, "Missing the required parameter 'data' when calling TransactionsApi.update_transactions"
|
504
|
+
end
|
505
|
+
# resource path
|
506
|
+
local_var_path = '/budgets/{budget_id}/transactions'.sub('{' + 'budget_id' + '}', budget_id.to_s)
|
507
|
+
|
508
|
+
# query parameters
|
509
|
+
query_params = {}
|
510
|
+
|
511
|
+
# header parameters
|
512
|
+
header_params = {}
|
513
|
+
# HTTP header 'Accept' (if needed)
|
514
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
515
|
+
|
516
|
+
# form parameters
|
517
|
+
form_params = {}
|
518
|
+
|
519
|
+
# http body (model)
|
520
|
+
post_body = @api_client.object_to_http_body(data)
|
521
|
+
auth_names = ['bearer']
|
522
|
+
data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
|
523
|
+
:header_params => header_params,
|
524
|
+
:query_params => query_params,
|
525
|
+
:form_params => form_params,
|
526
|
+
:body => post_body,
|
527
|
+
:auth_names => auth_names,
|
528
|
+
:return_type => 'SaveTransactionsResponse')
|
529
|
+
if @api_client.config.debugging
|
530
|
+
@api_client.config.logger.debug "API called: TransactionsApi#update_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
531
|
+
end
|
532
|
+
return data, status_code, headers
|
533
|
+
end
|
476
534
|
end
|
477
535
|
end
|
@@ -44,6 +44,9 @@ module YNAB
|
|
44
44
|
# If a transfer transaction, the id of transaction on the other side of the transfer
|
45
45
|
attr_accessor :transfer_transaction_id
|
46
46
|
|
47
|
+
# If transaction is matched, the id of the matched transaction
|
48
|
+
attr_accessor :matched_transaction_id
|
49
|
+
|
47
50
|
# If the Transaction was imported, this field is a unique (by account) import identifier. If this transaction was imported through File Based Import or Direct Import and not through the API, the import_id will have the format: 'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a transaction dated 2015-12-30 in the amount of -$294.23 USD would have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second transaction on the same account was imported and had the same date and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'.
|
48
51
|
attr_accessor :import_id
|
49
52
|
|
@@ -99,6 +102,7 @@ module YNAB
|
|
99
102
|
:'category_id' => :'category_id',
|
100
103
|
:'transfer_account_id' => :'transfer_account_id',
|
101
104
|
:'transfer_transaction_id' => :'transfer_transaction_id',
|
105
|
+
:'matched_transaction_id' => :'matched_transaction_id',
|
102
106
|
:'import_id' => :'import_id',
|
103
107
|
:'deleted' => :'deleted',
|
104
108
|
:'type' => :'type',
|
@@ -124,6 +128,7 @@ module YNAB
|
|
124
128
|
:'category_id' => :'String',
|
125
129
|
:'transfer_account_id' => :'String',
|
126
130
|
:'transfer_transaction_id' => :'String',
|
131
|
+
:'matched_transaction_id' => :'String',
|
127
132
|
:'import_id' => :'String',
|
128
133
|
:'deleted' => :'BOOLEAN',
|
129
134
|
:'type' => :'String',
|
@@ -190,6 +195,10 @@ module YNAB
|
|
190
195
|
self.transfer_transaction_id = attributes[:'transfer_transaction_id']
|
191
196
|
end
|
192
197
|
|
198
|
+
if attributes.has_key?(:'matched_transaction_id')
|
199
|
+
self.matched_transaction_id = attributes[:'matched_transaction_id']
|
200
|
+
end
|
201
|
+
|
193
202
|
if attributes.has_key?(:'import_id')
|
194
203
|
self.import_id = attributes[:'import_id']
|
195
204
|
end
|
@@ -271,6 +280,10 @@ module YNAB
|
|
271
280
|
invalid_properties.push('invalid value for "transfer_transaction_id", transfer_transaction_id cannot be nil.')
|
272
281
|
end
|
273
282
|
|
283
|
+
if @matched_transaction_id.nil?
|
284
|
+
invalid_properties.push('invalid value for "matched_transaction_id", matched_transaction_id cannot be nil.')
|
285
|
+
end
|
286
|
+
|
274
287
|
if @import_id.nil?
|
275
288
|
invalid_properties.push('invalid value for "import_id", import_id cannot be nil.')
|
276
289
|
end
|
@@ -321,6 +334,7 @@ module YNAB
|
|
321
334
|
return false if @category_id.nil?
|
322
335
|
return false if @transfer_account_id.nil?
|
323
336
|
return false if @transfer_transaction_id.nil?
|
337
|
+
return false if @matched_transaction_id.nil?
|
324
338
|
return false if @import_id.nil?
|
325
339
|
return false if @deleted.nil?
|
326
340
|
return false if @type.nil?
|
@@ -380,6 +394,7 @@ module YNAB
|
|
380
394
|
category_id == o.category_id &&
|
381
395
|
transfer_account_id == o.transfer_account_id &&
|
382
396
|
transfer_transaction_id == o.transfer_transaction_id &&
|
397
|
+
matched_transaction_id == o.matched_transaction_id &&
|
383
398
|
import_id == o.import_id &&
|
384
399
|
deleted == o.deleted &&
|
385
400
|
type == o.type &&
|
@@ -398,7 +413,7 @@ module YNAB
|
|
398
413
|
# Calculates hash code according to all attributes.
|
399
414
|
# @return [Fixnum] Hash code
|
400
415
|
def hash
|
401
|
-
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, import_id, deleted, type, parent_transaction_id, account_name, payee_name, category_name].hash
|
416
|
+
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, matched_transaction_id, import_id, deleted, type, parent_transaction_id, account_name, payee_name, category_name].hash
|
402
417
|
end
|
403
418
|
|
404
419
|
# Builds the object from hash
|
@@ -44,6 +44,9 @@ module YNAB
|
|
44
44
|
# If a transfer transaction, the id of transaction on the other side of the transfer
|
45
45
|
attr_accessor :transfer_transaction_id
|
46
46
|
|
47
|
+
# If transaction is matched, the id of the matched transaction
|
48
|
+
attr_accessor :matched_transaction_id
|
49
|
+
|
47
50
|
# If the Transaction was imported, this field is a unique (by account) import identifier. If this transaction was imported through File Based Import or Direct Import and not through the API, the import_id will have the format: 'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a transaction dated 2015-12-30 in the amount of -$294.23 USD would have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second transaction on the same account was imported and had the same date and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'.
|
48
51
|
attr_accessor :import_id
|
49
52
|
|
@@ -96,6 +99,7 @@ module YNAB
|
|
96
99
|
:'category_id' => :'category_id',
|
97
100
|
:'transfer_account_id' => :'transfer_account_id',
|
98
101
|
:'transfer_transaction_id' => :'transfer_transaction_id',
|
102
|
+
:'matched_transaction_id' => :'matched_transaction_id',
|
99
103
|
:'import_id' => :'import_id',
|
100
104
|
:'deleted' => :'deleted',
|
101
105
|
:'account_name' => :'account_name',
|
@@ -120,6 +124,7 @@ module YNAB
|
|
120
124
|
:'category_id' => :'String',
|
121
125
|
:'transfer_account_id' => :'String',
|
122
126
|
:'transfer_transaction_id' => :'String',
|
127
|
+
:'matched_transaction_id' => :'String',
|
123
128
|
:'import_id' => :'String',
|
124
129
|
:'deleted' => :'BOOLEAN',
|
125
130
|
:'account_name' => :'String',
|
@@ -185,6 +190,10 @@ module YNAB
|
|
185
190
|
self.transfer_transaction_id = attributes[:'transfer_transaction_id']
|
186
191
|
end
|
187
192
|
|
193
|
+
if attributes.has_key?(:'matched_transaction_id')
|
194
|
+
self.matched_transaction_id = attributes[:'matched_transaction_id']
|
195
|
+
end
|
196
|
+
|
188
197
|
if attributes.has_key?(:'import_id')
|
189
198
|
self.import_id = attributes[:'import_id']
|
190
199
|
end
|
@@ -264,6 +273,10 @@ module YNAB
|
|
264
273
|
invalid_properties.push('invalid value for "transfer_transaction_id", transfer_transaction_id cannot be nil.')
|
265
274
|
end
|
266
275
|
|
276
|
+
if @matched_transaction_id.nil?
|
277
|
+
invalid_properties.push('invalid value for "matched_transaction_id", matched_transaction_id cannot be nil.')
|
278
|
+
end
|
279
|
+
|
267
280
|
if @import_id.nil?
|
268
281
|
invalid_properties.push('invalid value for "import_id", import_id cannot be nil.')
|
269
282
|
end
|
@@ -310,6 +323,7 @@ module YNAB
|
|
310
323
|
return false if @category_id.nil?
|
311
324
|
return false if @transfer_account_id.nil?
|
312
325
|
return false if @transfer_transaction_id.nil?
|
326
|
+
return false if @matched_transaction_id.nil?
|
313
327
|
return false if @import_id.nil?
|
314
328
|
return false if @deleted.nil?
|
315
329
|
return false if @account_name.nil?
|
@@ -356,6 +370,7 @@ module YNAB
|
|
356
370
|
category_id == o.category_id &&
|
357
371
|
transfer_account_id == o.transfer_account_id &&
|
358
372
|
transfer_transaction_id == o.transfer_transaction_id &&
|
373
|
+
matched_transaction_id == o.matched_transaction_id &&
|
359
374
|
import_id == o.import_id &&
|
360
375
|
deleted == o.deleted &&
|
361
376
|
account_name == o.account_name &&
|
@@ -373,7 +388,7 @@ module YNAB
|
|
373
388
|
# Calculates hash code according to all attributes.
|
374
389
|
# @return [Fixnum] Hash code
|
375
390
|
def hash
|
376
|
-
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, import_id, deleted, account_name, payee_name, category_name, subtransactions].hash
|
391
|
+
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, matched_transaction_id, import_id, deleted, account_name, payee_name, category_name, subtransactions].hash
|
377
392
|
end
|
378
393
|
|
379
394
|
# Builds the object from hash
|
@@ -44,6 +44,9 @@ module YNAB
|
|
44
44
|
# If a transfer transaction, the id of transaction on the other side of the transfer
|
45
45
|
attr_accessor :transfer_transaction_id
|
46
46
|
|
47
|
+
# If transaction is matched, the id of the matched transaction
|
48
|
+
attr_accessor :matched_transaction_id
|
49
|
+
|
47
50
|
# If the Transaction was imported, this field is a unique (by account) import identifier. If this transaction was imported through File Based Import or Direct Import and not through the API, the import_id will have the format: 'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a transaction dated 2015-12-30 in the amount of -$294.23 USD would have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second transaction on the same account was imported and had the same date and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'.
|
48
51
|
attr_accessor :import_id
|
49
52
|
|
@@ -87,6 +90,7 @@ module YNAB
|
|
87
90
|
:'category_id' => :'category_id',
|
88
91
|
:'transfer_account_id' => :'transfer_account_id',
|
89
92
|
:'transfer_transaction_id' => :'transfer_transaction_id',
|
93
|
+
:'matched_transaction_id' => :'matched_transaction_id',
|
90
94
|
:'import_id' => :'import_id',
|
91
95
|
:'deleted' => :'deleted'
|
92
96
|
}
|
@@ -107,6 +111,7 @@ module YNAB
|
|
107
111
|
:'category_id' => :'String',
|
108
112
|
:'transfer_account_id' => :'String',
|
109
113
|
:'transfer_transaction_id' => :'String',
|
114
|
+
:'matched_transaction_id' => :'String',
|
110
115
|
:'import_id' => :'String',
|
111
116
|
:'deleted' => :'BOOLEAN'
|
112
117
|
}
|
@@ -168,6 +173,10 @@ module YNAB
|
|
168
173
|
self.transfer_transaction_id = attributes[:'transfer_transaction_id']
|
169
174
|
end
|
170
175
|
|
176
|
+
if attributes.has_key?(:'matched_transaction_id')
|
177
|
+
self.matched_transaction_id = attributes[:'matched_transaction_id']
|
178
|
+
end
|
179
|
+
|
171
180
|
if attributes.has_key?(:'import_id')
|
172
181
|
self.import_id = attributes[:'import_id']
|
173
182
|
end
|
@@ -229,6 +238,10 @@ module YNAB
|
|
229
238
|
invalid_properties.push('invalid value for "transfer_transaction_id", transfer_transaction_id cannot be nil.')
|
230
239
|
end
|
231
240
|
|
241
|
+
if @matched_transaction_id.nil?
|
242
|
+
invalid_properties.push('invalid value for "matched_transaction_id", matched_transaction_id cannot be nil.')
|
243
|
+
end
|
244
|
+
|
232
245
|
if @import_id.nil?
|
233
246
|
invalid_properties.push('invalid value for "import_id", import_id cannot be nil.')
|
234
247
|
end
|
@@ -259,6 +272,7 @@ module YNAB
|
|
259
272
|
return false if @category_id.nil?
|
260
273
|
return false if @transfer_account_id.nil?
|
261
274
|
return false if @transfer_transaction_id.nil?
|
275
|
+
return false if @matched_transaction_id.nil?
|
262
276
|
return false if @import_id.nil?
|
263
277
|
return false if @deleted.nil?
|
264
278
|
true
|
@@ -301,6 +315,7 @@ module YNAB
|
|
301
315
|
category_id == o.category_id &&
|
302
316
|
transfer_account_id == o.transfer_account_id &&
|
303
317
|
transfer_transaction_id == o.transfer_transaction_id &&
|
318
|
+
matched_transaction_id == o.matched_transaction_id &&
|
304
319
|
import_id == o.import_id &&
|
305
320
|
deleted == o.deleted
|
306
321
|
end
|
@@ -314,7 +329,7 @@ module YNAB
|
|
314
329
|
# Calculates hash code according to all attributes.
|
315
330
|
# @return [Fixnum] Hash code
|
316
331
|
def hash
|
317
|
-
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, import_id, deleted].hash
|
332
|
+
[id, date, amount, memo, cleared, approved, flag_color, account_id, payee_id, category_id, transfer_account_id, transfer_transaction_id, matched_transaction_id, import_id, deleted].hash
|
318
333
|
end
|
319
334
|
|
320
335
|
# Builds the object from hash
|
@@ -22,11 +22,11 @@ module YNAB
|
|
22
22
|
# Create a single transaction or multiple transactions
|
23
23
|
# Creates a single transaction or multiple transactions. If you provide a body containing a 'transaction' object, a single transaction will be created and if you provide a body containing a 'transactions' array, multiple transactions will be created.
|
24
24
|
# @param budget_id The id of the budget (\"last-used\" can also be used to specify the last used budget)
|
25
|
-
# @param
|
25
|
+
# @param data The transaction or transactions to create
|
26
26
|
# @param [Hash] opts the optional parameters
|
27
27
|
# @return [SaveTransactionsResponse]
|
28
|
-
def create_transactions(budget_id,
|
29
|
-
data, _status_code, _headers = create_transaction_with_http_info(budget_id,
|
28
|
+
def create_transactions(budget_id, data, opts = {})
|
29
|
+
data, _status_code, _headers = create_transaction_with_http_info(budget_id, data, opts)
|
30
30
|
data
|
31
31
|
end
|
32
32
|
|
data/lib/ynab/version.rb
CHANGED
@@ -133,6 +133,30 @@ describe 'transactions' do
|
|
133
133
|
end
|
134
134
|
end
|
135
135
|
|
136
|
+
describe 'PATCH /budgets/{budget_id}/transactions' do
|
137
|
+
it "updates multiple transactions" do
|
138
|
+
VCR.use_cassette("update_transactions") do
|
139
|
+
response = instance.update_transactions(budget_id, {
|
140
|
+
transactions: [
|
141
|
+
{
|
142
|
+
date: '2018-01-02',
|
143
|
+
account_id: '5982e895-98e5-41ca-9681-0b6de1036a1c',
|
144
|
+
amount: 30000
|
145
|
+
},
|
146
|
+
{
|
147
|
+
date: '2018-01-03',
|
148
|
+
account_id: '5982e895-98e5-41ca-9681-0b6de1036a1c',
|
149
|
+
amount: 40000
|
150
|
+
}
|
151
|
+
]
|
152
|
+
})
|
153
|
+
expect(client.last_request.response.options[:code]).to be 200
|
154
|
+
expect(response.data.transactions).to be
|
155
|
+
expect(response.data.transactions.length).to eq 2
|
156
|
+
end
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
136
160
|
describe 'POST /budgets/{budget_id}/transactions' do
|
137
161
|
it "create multiple transactions" do
|
138
162
|
VCR.use_cassette("multiple_transactions") do
|
@@ -0,0 +1,46 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: patch
|
5
|
+
uri: http://api.localhost:3000/v1/budgets/f419ac25-6217-4175-88dc-c3136ff5f6fd/transactions
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"transactions":[{"date":"2018-01-02","account_id":"5982e895-98e5-41ca-9681-0b6de1036a1c","amount":30000},{"date":"2018-01-03","account_id":"5982e895-98e5-41ca-9681-0b6de1036a1c","amount":40000}]}'
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- api_client/ruby/0.1.0
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Accept:
|
15
|
+
- application/json
|
16
|
+
Authorization:
|
17
|
+
- Bearer 9f1a2c4842b614a771aaae9220fc54ae835e298c4654dc2c9205fc1d7bd1a045
|
18
|
+
Expect:
|
19
|
+
- ''
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Content-Type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
Vary:
|
28
|
+
- Accept-Encoding, Origin
|
29
|
+
ETag:
|
30
|
+
- W/"7302aaaf3d3c80e9fadc152a3e84504d"
|
31
|
+
Cache-Control:
|
32
|
+
- max-age=0, private, must-revalidate
|
33
|
+
X-Request-Id:
|
34
|
+
- 6eedb96f-419a-4c61-8fdb-540c8f5ee47f
|
35
|
+
X-Runtime:
|
36
|
+
- '0.192178'
|
37
|
+
Transfer-Encoding:
|
38
|
+
- chunked
|
39
|
+
body:
|
40
|
+
encoding: UTF-8
|
41
|
+
string: '{"data":{"transactions":[{"id":"4cd63d34-3814-4f50-abd0-59ce05b40d91","date":"2018-01-02","amount":30000,"memo":null,"cleared":"uncleared","approved":false,"flag_color":null,"account_id":"5982e895-98e5-41ca-9681-0b6de1036a1c","payee_id":null,"category_id":null,"transfer_account_id":null,"import_id":null,"subtransactions":[]},{"id":"4cd63d34-3814-4f50-abd0-59ce05b40d91","date":"2018-01-03","amount":40000,"memo":null,"cleared":"uncleared","approved":false,"flag_color":null,"account_id":"5982e895-98e5-41ca-9681-0b6de1036a1c","payee_id":null,"category_id":null,"transfer_account_id":null,"import_id":null,"subtransactions":[]}]}}'
|
42
|
+
http_version: '1.1'
|
43
|
+
adapter_metadata:
|
44
|
+
effective_url: http://api.localhost:3000/v1/budgets/f419ac25-6217-4175-88dc-c3136ff5f6fd/transactions/4cd63d34-3814-4f50-abd0-59ce05b40d91
|
45
|
+
recorded_at: Thu, 15 Feb 2018 19:11:01 GMT
|
46
|
+
recorded_with: VCR 3.0.3
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ynab
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- You Need A Budget, LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-01-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: typhoeus
|
@@ -34,42 +34,42 @@ dependencies:
|
|
34
34
|
name: json
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - "~>"
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '2.1'
|
40
37
|
- - ">="
|
41
38
|
- !ruby/object:Gem::Version
|
42
39
|
version: 2.1.0
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '2.1'
|
43
43
|
type: :runtime
|
44
44
|
prerelease: false
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
|
-
- - "~>"
|
48
|
-
- !ruby/object:Gem::Version
|
49
|
-
version: '2.1'
|
50
47
|
- - ">="
|
51
48
|
- !ruby/object:Gem::Version
|
52
49
|
version: 2.1.0
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '2.1'
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: rspec
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
|
-
- - "~>"
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
version: '3.6'
|
60
57
|
- - ">="
|
61
58
|
- !ruby/object:Gem::Version
|
62
59
|
version: 3.6.0
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '3.6'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
|
-
- - "~>"
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '3.6'
|
70
67
|
- - ">="
|
71
68
|
- !ruby/object:Gem::Version
|
72
69
|
version: 3.6.0
|
70
|
+
- - "~>"
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '3.6'
|
73
73
|
- !ruby/object:Gem::Dependency
|
74
74
|
name: vcr
|
75
75
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,7 +92,7 @@ dependencies:
|
|
92
92
|
version: 3.0.1
|
93
93
|
description: Ruby gem wrapper for the YNAB API. Read the documentation at https://api.youneedabudget.com
|
94
94
|
email:
|
95
|
-
-
|
95
|
+
- api@youneedabudget.com
|
96
96
|
executables: []
|
97
97
|
extensions: []
|
98
98
|
extra_rdoc_files: []
|
@@ -198,7 +198,6 @@ files:
|
|
198
198
|
- spec/api/scheduled_transactions_spec.rb
|
199
199
|
- spec/api/transactions_spec.rb
|
200
200
|
- spec/api_error_spec.rb
|
201
|
-
- spec/fixtures/.DS_Store
|
202
201
|
- spec/fixtures/vcr_cassettes/account.yml
|
203
202
|
- spec/fixtures/vcr_cassettes/accounts.yml
|
204
203
|
- spec/fixtures/vcr_cassettes/accounts_unauthorized.yml
|
@@ -231,6 +230,7 @@ files:
|
|
231
230
|
- spec/fixtures/vcr_cassettes/transactions.yml
|
232
231
|
- spec/fixtures/vcr_cassettes/transactions_unauthorized.yml
|
233
232
|
- spec/fixtures/vcr_cassettes/update_transaction.yml
|
233
|
+
- spec/fixtures/vcr_cassettes/update_transactions.yml
|
234
234
|
- spec/spec_helper.rb
|
235
235
|
homepage: https://github.com/ynab/ynab-sdk-ruby
|
236
236
|
licenses:
|
@@ -252,7 +252,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
252
252
|
version: '0'
|
253
253
|
requirements: []
|
254
254
|
rubyforge_project:
|
255
|
-
rubygems_version: 2.7.
|
255
|
+
rubygems_version: 2.7.8
|
256
256
|
signing_key:
|
257
257
|
specification_version: 4
|
258
258
|
summary: YNAB API Endpoints Ruby Gem
|
@@ -266,7 +266,6 @@ test_files:
|
|
266
266
|
- spec/api/months_spec.rb
|
267
267
|
- spec/api/transactions_spec.rb
|
268
268
|
- spec/api_error_spec.rb
|
269
|
-
- spec/fixtures/.DS_Store
|
270
269
|
- spec/fixtures/vcr_cassettes/multiple_transactions.yml
|
271
270
|
- spec/fixtures/vcr_cassettes/payee_transactions.yml
|
272
271
|
- spec/fixtures/vcr_cassettes/categories.yml
|
@@ -284,6 +283,7 @@ test_files:
|
|
284
283
|
- spec/fixtures/vcr_cassettes/patch_month_category.yml
|
285
284
|
- spec/fixtures/vcr_cassettes/payee.yml
|
286
285
|
- spec/fixtures/vcr_cassettes/payee_location.yml
|
286
|
+
- spec/fixtures/vcr_cassettes/update_transactions.yml
|
287
287
|
- spec/fixtures/vcr_cassettes/bulk_transactions.yml
|
288
288
|
- spec/fixtures/vcr_cassettes/payee_locations_unauthorized.yml
|
289
289
|
- spec/fixtures/vcr_cassettes/payees.yml
|
data/spec/fixtures/.DS_Store
DELETED
Binary file
|