ynab 2.0.0 → 3.0.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/DEVELOPMENT.md +6 -2
- data/Gemfile.lock +1 -1
- data/README.md +4 -2
- data/docs/BulkTransactions.md +1 -1
- data/docs/CategoriesApi.md +22 -0
- data/docs/ExistingTransaction.md +18 -0
- data/docs/HybridTransaction.md +3 -2
- data/docs/NewTransaction.md +19 -0
- data/docs/PatchCategoryWrapper.md +8 -0
- data/docs/PatchPayeeWrapper.md +8 -0
- data/docs/PatchTransactionsWrapper.md +1 -1
- data/docs/PayeesApi.md +22 -0
- data/docs/PostTransactionsWrapper.md +2 -2
- data/docs/PutTransactionWrapper.md +1 -1
- data/docs/SaveCategory.md +10 -0
- data/docs/SavePayee.md +8 -0
- data/docs/SavePayeeResponse.md +8 -0
- data/docs/SavePayeeResponseData.md +9 -0
- data/docs/SaveTransactionWithIdOrImportId.md +20 -0
- data/docs/SaveTransactionWithOptionalFields.md +2 -3
- data/docs/ScheduledTransactionDetail.md +2 -1
- data/docs/ScheduledTransactionSummary.md +2 -1
- data/docs/TransactionClearedStatus.md +7 -0
- data/docs/TransactionDetail.md +3 -2
- data/docs/TransactionFlagColor.md +7 -0
- data/docs/TransactionSummary.md +3 -2
- data/docs/TransactionsApi.md +7 -7
- data/lib/ynab/api/accounts_api.rb +2 -2
- data/lib/ynab/api/budgets_api.rb +2 -2
- data/lib/ynab/api/categories_api.rb +82 -2
- data/lib/ynab/api/months_api.rb +2 -2
- data/lib/ynab/api/payee_locations_api.rb +2 -2
- data/lib/ynab/api/payees_api.rb +82 -2
- data/lib/ynab/api/scheduled_transactions_api.rb +2 -2
- data/lib/ynab/api/transactions_api.rb +12 -28
- data/lib/ynab/api/user_api.rb +2 -2
- data/lib/ynab/api_client.rb +2 -2
- data/lib/ynab/configuration.rb +14 -11
- data/lib/ynab/models/account.rb +13 -56
- data/lib/ynab/models/account_response.rb +13 -24
- data/lib/ynab/models/account_response_data.rb +13 -24
- data/lib/ynab/models/account_type.rb +2 -2
- data/lib/ynab/models/accounts_response.rb +13 -24
- data/lib/ynab/models/accounts_response_data.rb +13 -28
- data/lib/ynab/models/budget_detail.rb +13 -29
- data/lib/ynab/models/budget_detail_response.rb +13 -24
- data/lib/ynab/models/budget_detail_response_data.rb +13 -28
- data/lib/ynab/models/budget_settings.rb +13 -20
- data/lib/ynab/models/budget_settings_response.rb +13 -24
- data/lib/ynab/models/budget_settings_response_data.rb +13 -24
- data/lib/ynab/models/budget_summary.rb +13 -28
- data/lib/ynab/models/budget_summary_response.rb +13 -24
- data/lib/ynab/models/budget_summary_response_data.rb +13 -24
- data/lib/ynab/models/bulk_response.rb +13 -24
- data/lib/ynab/models/bulk_response_data.rb +13 -24
- data/lib/ynab/models/bulk_response_data_bulk.rb +13 -28
- data/lib/ynab/models/bulk_transactions.rb +14 -25
- data/lib/ynab/models/categories_response.rb +13 -24
- data/lib/ynab/models/categories_response_data.rb +13 -28
- data/lib/ynab/models/category.rb +13 -56
- data/lib/ynab/models/category_group.rb +13 -36
- data/lib/ynab/models/category_group_with_categories.rb +14 -42
- data/lib/ynab/models/category_group_with_categories_all_of.rb +0 -4
- data/lib/ynab/models/category_response.rb +13 -24
- data/lib/ynab/models/category_response_data.rb +13 -24
- data/lib/ynab/models/currency_format.rb +13 -52
- data/lib/ynab/models/date_format.rb +13 -24
- data/lib/ynab/models/error_detail.rb +13 -32
- data/lib/ynab/models/error_response.rb +13 -24
- data/lib/ynab/models/existing_transaction.rb +359 -0
- data/lib/ynab/models/hybrid_transaction.rb +28 -95
- data/lib/ynab/models/hybrid_transaction_all_of.rb +0 -12
- data/lib/ynab/models/hybrid_transactions_response.rb +13 -24
- data/lib/ynab/models/hybrid_transactions_response_data.rb +13 -24
- data/lib/ynab/models/month_detail.rb +13 -49
- data/lib/ynab/models/month_detail_all_of.rb +0 -4
- data/lib/ynab/models/month_detail_response.rb +13 -24
- data/lib/ynab/models/month_detail_response_data.rb +13 -24
- data/lib/ynab/models/month_summaries_response.rb +13 -24
- data/lib/ynab/models/month_summaries_response_data.rb +13 -28
- data/lib/ynab/models/month_summary.rb +13 -44
- data/lib/ynab/models/new_transaction.rb +377 -0
- data/lib/ynab/models/patch_category_wrapper.rb +213 -0
- data/lib/ynab/models/patch_month_category_wrapper.rb +13 -24
- data/lib/ynab/models/patch_payee_wrapper.rb +213 -0
- data/lib/ynab/models/patch_transactions_wrapper.rb +14 -25
- data/lib/ynab/models/payee.rb +13 -32
- data/lib/ynab/models/payee_location.rb +13 -40
- data/lib/ynab/models/payee_location_response.rb +13 -24
- data/lib/ynab/models/payee_location_response_data.rb +13 -24
- data/lib/ynab/models/payee_locations_response.rb +13 -24
- data/lib/ynab/models/payee_locations_response_data.rb +13 -24
- data/lib/ynab/models/payee_response.rb +13 -24
- data/lib/ynab/models/payee_response_data.rb +13 -24
- data/lib/ynab/models/payees_response.rb +13 -24
- data/lib/ynab/models/payees_response_data.rb +13 -28
- data/lib/ynab/models/post_account_wrapper.rb +13 -24
- data/lib/ynab/models/post_transactions_wrapper.rb +15 -22
- data/lib/ynab/models/put_transaction_wrapper.rb +14 -25
- data/lib/ynab/models/save_account.rb +13 -32
- data/lib/ynab/models/save_category.rb +232 -0
- data/lib/ynab/models/save_category_response.rb +13 -24
- data/lib/ynab/models/save_category_response_data.rb +13 -28
- data/lib/ynab/models/save_month_category.rb +13 -24
- data/lib/ynab/models/save_payee.rb +220 -0
- data/lib/ynab/models/save_payee_response.rb +213 -0
- data/lib/ynab/models/save_payee_response_data.rb +224 -0
- data/lib/ynab/models/save_sub_transaction.rb +13 -40
- data/lib/ynab/models/save_transaction.rb +0 -32
- data/lib/ynab/models/save_transaction_with_id.rb +0 -32
- data/lib/ynab/models/save_transaction_with_id_or_import_id.rb +388 -0
- data/lib/ynab/models/save_transaction_with_optional_fields.rb +17 -91
- data/lib/ynab/models/save_transactions_response.rb +13 -24
- data/lib/ynab/models/save_transactions_response_data.rb +13 -28
- data/lib/ynab/models/scheduled_sub_transaction.rb +13 -36
- data/lib/ynab/models/scheduled_transaction_detail.rb +26 -76
- data/lib/ynab/models/scheduled_transaction_detail_all_of.rb +0 -8
- data/lib/ynab/models/scheduled_transaction_response.rb +13 -24
- data/lib/ynab/models/scheduled_transaction_response_data.rb +13 -24
- data/lib/ynab/models/scheduled_transaction_summary.rb +26 -67
- data/lib/ynab/models/scheduled_transactions_response.rb +13 -24
- data/lib/ynab/models/scheduled_transactions_response_data.rb +13 -28
- data/lib/ynab/models/sub_transaction.rb +13 -36
- data/lib/ynab/models/transaction_cleared_status.rb +41 -0
- data/lib/ynab/models/transaction_detail.rb +28 -91
- data/lib/ynab/models/transaction_detail_all_of.rb +0 -8
- data/lib/ynab/models/transaction_flag_color.rb +45 -0
- data/lib/ynab/models/transaction_response.rb +13 -24
- data/lib/ynab/models/transaction_response_data.rb +13 -24
- data/lib/ynab/models/transaction_summary.rb +28 -82
- data/lib/ynab/models/transactions_import_response.rb +13 -24
- data/lib/ynab/models/transactions_import_response_data.rb +13 -24
- data/lib/ynab/models/transactions_response.rb +13 -24
- data/lib/ynab/models/transactions_response_data.rb +13 -28
- data/lib/ynab/models/user.rb +13 -24
- data/lib/ynab/models/user_response.rb +13 -24
- data/lib/ynab/models/user_response_data.rb +13 -24
- data/lib/ynab/version.rb +1 -1
- data/lib/ynab.rb +13 -12
- data/open_api_spec.yaml +455 -343
- data/templates/api.mustache +213 -0
- data/templates/partial_model_generic.mustache +305 -0
- data/ynab.gemspec +4 -3
- metadata +31 -7
data/open_api_spec.yaml
CHANGED
|
@@ -6,7 +6,7 @@ info:
|
|
|
6
6
|
upon HTTPS for transport. We respond with meaningful HTTP response codes and
|
|
7
7
|
if an error occurs, we include error details in the response body. API
|
|
8
8
|
Documentation is at https://api.ynab.com
|
|
9
|
-
version: 1.
|
|
9
|
+
version: 1.69.0
|
|
10
10
|
servers:
|
|
11
11
|
- url: https://api.ynab.com/v1
|
|
12
12
|
security:
|
|
@@ -46,18 +46,18 @@ paths:
|
|
|
46
46
|
description: Returns authenticated user information
|
|
47
47
|
operationId: getUser
|
|
48
48
|
responses:
|
|
49
|
-
|
|
49
|
+
"200":
|
|
50
50
|
description: The user info
|
|
51
51
|
content:
|
|
52
52
|
application/json:
|
|
53
53
|
schema:
|
|
54
|
-
$ref:
|
|
54
|
+
$ref: "#/components/schemas/UserResponse"
|
|
55
55
|
default:
|
|
56
56
|
description: An error occurred
|
|
57
57
|
content:
|
|
58
58
|
application/json:
|
|
59
59
|
schema:
|
|
60
|
-
$ref:
|
|
60
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
61
61
|
/budgets:
|
|
62
62
|
get:
|
|
63
63
|
tags:
|
|
@@ -72,24 +72,24 @@ paths:
|
|
|
72
72
|
schema:
|
|
73
73
|
type: boolean
|
|
74
74
|
responses:
|
|
75
|
-
|
|
75
|
+
"200":
|
|
76
76
|
description: The list of budgets
|
|
77
77
|
content:
|
|
78
78
|
application/json:
|
|
79
79
|
schema:
|
|
80
|
-
$ref:
|
|
81
|
-
|
|
80
|
+
$ref: "#/components/schemas/BudgetSummaryResponse"
|
|
81
|
+
"404":
|
|
82
82
|
description: No budgets were found
|
|
83
83
|
content:
|
|
84
84
|
application/json:
|
|
85
85
|
schema:
|
|
86
|
-
$ref:
|
|
86
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
87
87
|
default:
|
|
88
88
|
description: An error occurred
|
|
89
89
|
content:
|
|
90
90
|
application/json:
|
|
91
91
|
schema:
|
|
92
|
-
$ref:
|
|
92
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
93
93
|
/budgets/{budget_id}:
|
|
94
94
|
get:
|
|
95
95
|
tags:
|
|
@@ -118,24 +118,24 @@ paths:
|
|
|
118
118
|
type: integer
|
|
119
119
|
format: int64
|
|
120
120
|
responses:
|
|
121
|
-
|
|
121
|
+
"200":
|
|
122
122
|
description: The requested budget
|
|
123
123
|
content:
|
|
124
124
|
application/json:
|
|
125
125
|
schema:
|
|
126
|
-
$ref:
|
|
127
|
-
|
|
126
|
+
$ref: "#/components/schemas/BudgetDetailResponse"
|
|
127
|
+
"404":
|
|
128
128
|
description: The specified budget was not found
|
|
129
129
|
content:
|
|
130
130
|
application/json:
|
|
131
131
|
schema:
|
|
132
|
-
$ref:
|
|
132
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
133
133
|
default:
|
|
134
134
|
description: An error occurred
|
|
135
135
|
content:
|
|
136
136
|
application/json:
|
|
137
137
|
schema:
|
|
138
|
-
$ref:
|
|
138
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
139
139
|
/budgets/{budget_id}/settings:
|
|
140
140
|
get:
|
|
141
141
|
tags:
|
|
@@ -154,24 +154,24 @@ paths:
|
|
|
154
154
|
schema:
|
|
155
155
|
type: string
|
|
156
156
|
responses:
|
|
157
|
-
|
|
157
|
+
"200":
|
|
158
158
|
description: The requested budget settings
|
|
159
159
|
content:
|
|
160
160
|
application/json:
|
|
161
161
|
schema:
|
|
162
|
-
$ref:
|
|
163
|
-
|
|
162
|
+
$ref: "#/components/schemas/BudgetSettingsResponse"
|
|
163
|
+
"404":
|
|
164
164
|
description: The specified Budget was not found
|
|
165
165
|
content:
|
|
166
166
|
application/json:
|
|
167
167
|
schema:
|
|
168
|
-
$ref:
|
|
168
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
169
169
|
default:
|
|
170
170
|
description: An error occurred
|
|
171
171
|
content:
|
|
172
172
|
application/json:
|
|
173
173
|
schema:
|
|
174
|
-
$ref:
|
|
174
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
175
175
|
/budgets/{budget_id}/accounts:
|
|
176
176
|
get:
|
|
177
177
|
tags:
|
|
@@ -198,24 +198,24 @@ paths:
|
|
|
198
198
|
type: integer
|
|
199
199
|
format: int64
|
|
200
200
|
responses:
|
|
201
|
-
|
|
201
|
+
"200":
|
|
202
202
|
description: The list of requested accounts
|
|
203
203
|
content:
|
|
204
204
|
application/json:
|
|
205
205
|
schema:
|
|
206
|
-
$ref:
|
|
207
|
-
|
|
206
|
+
$ref: "#/components/schemas/AccountsResponse"
|
|
207
|
+
"404":
|
|
208
208
|
description: No accounts were found
|
|
209
209
|
content:
|
|
210
210
|
application/json:
|
|
211
211
|
schema:
|
|
212
|
-
$ref:
|
|
212
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
213
213
|
default:
|
|
214
214
|
description: An error occurred
|
|
215
215
|
content:
|
|
216
216
|
application/json:
|
|
217
217
|
schema:
|
|
218
|
-
$ref:
|
|
218
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
219
219
|
post:
|
|
220
220
|
tags:
|
|
221
221
|
- Accounts
|
|
@@ -235,25 +235,25 @@ paths:
|
|
|
235
235
|
requestBody:
|
|
236
236
|
description: The account to create.
|
|
237
237
|
content:
|
|
238
|
-
|
|
238
|
+
"application/json":
|
|
239
239
|
schema:
|
|
240
|
-
$ref:
|
|
240
|
+
$ref: "#/components/schemas/PostAccountWrapper"
|
|
241
241
|
required: true
|
|
242
242
|
responses:
|
|
243
|
-
|
|
243
|
+
"201":
|
|
244
244
|
description: The account was successfully created
|
|
245
245
|
content:
|
|
246
246
|
application/json:
|
|
247
247
|
schema:
|
|
248
|
-
$ref:
|
|
249
|
-
|
|
248
|
+
$ref: "#/components/schemas/AccountResponse"
|
|
249
|
+
"400":
|
|
250
250
|
description: >-
|
|
251
251
|
The request could not be understood due to malformed syntax or
|
|
252
252
|
validation error(s).
|
|
253
253
|
content:
|
|
254
254
|
application/json:
|
|
255
255
|
schema:
|
|
256
|
-
$ref:
|
|
256
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
257
257
|
x-codegen-request-body-name: data
|
|
258
258
|
/budgets/{budget_id}/accounts/{account_id}:
|
|
259
259
|
get:
|
|
@@ -280,24 +280,24 @@ paths:
|
|
|
280
280
|
type: string
|
|
281
281
|
format: uuid
|
|
282
282
|
responses:
|
|
283
|
-
|
|
283
|
+
"200":
|
|
284
284
|
description: The requested account
|
|
285
285
|
content:
|
|
286
286
|
application/json:
|
|
287
287
|
schema:
|
|
288
|
-
$ref:
|
|
289
|
-
|
|
288
|
+
$ref: "#/components/schemas/AccountResponse"
|
|
289
|
+
"404":
|
|
290
290
|
description: The requested account was not found
|
|
291
291
|
content:
|
|
292
292
|
application/json:
|
|
293
293
|
schema:
|
|
294
|
-
$ref:
|
|
294
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
295
295
|
default:
|
|
296
296
|
description: An error occurred
|
|
297
297
|
content:
|
|
298
298
|
application/json:
|
|
299
299
|
schema:
|
|
300
|
-
$ref:
|
|
300
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
301
301
|
/budgets/{budget_id}/categories:
|
|
302
302
|
get:
|
|
303
303
|
tags:
|
|
@@ -326,24 +326,24 @@ paths:
|
|
|
326
326
|
type: integer
|
|
327
327
|
format: int64
|
|
328
328
|
responses:
|
|
329
|
-
|
|
329
|
+
"200":
|
|
330
330
|
description: The categories grouped by category group
|
|
331
331
|
content:
|
|
332
332
|
application/json:
|
|
333
333
|
schema:
|
|
334
|
-
$ref:
|
|
335
|
-
|
|
334
|
+
$ref: "#/components/schemas/CategoriesResponse"
|
|
335
|
+
"404":
|
|
336
336
|
description: No categories were found
|
|
337
337
|
content:
|
|
338
338
|
application/json:
|
|
339
339
|
schema:
|
|
340
|
-
$ref:
|
|
340
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
341
341
|
default:
|
|
342
342
|
description: An error occurred
|
|
343
343
|
content:
|
|
344
344
|
application/json:
|
|
345
345
|
schema:
|
|
346
|
-
$ref:
|
|
346
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
347
347
|
/budgets/{budget_id}/categories/{category_id}:
|
|
348
348
|
get:
|
|
349
349
|
tags:
|
|
@@ -370,24 +370,71 @@ paths:
|
|
|
370
370
|
schema:
|
|
371
371
|
type: string
|
|
372
372
|
responses:
|
|
373
|
-
|
|
373
|
+
"200":
|
|
374
374
|
description: The requested category
|
|
375
375
|
content:
|
|
376
376
|
application/json:
|
|
377
377
|
schema:
|
|
378
|
-
$ref:
|
|
379
|
-
|
|
378
|
+
$ref: "#/components/schemas/CategoryResponse"
|
|
379
|
+
"404":
|
|
380
380
|
description: The category not was found
|
|
381
381
|
content:
|
|
382
382
|
application/json:
|
|
383
383
|
schema:
|
|
384
|
-
$ref:
|
|
384
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
385
385
|
default:
|
|
386
386
|
description: An error occurred
|
|
387
387
|
content:
|
|
388
388
|
application/json:
|
|
389
389
|
schema:
|
|
390
|
-
$ref:
|
|
390
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
391
|
+
patch:
|
|
392
|
+
tags:
|
|
393
|
+
- Categories
|
|
394
|
+
summary: Update a category
|
|
395
|
+
description: >-
|
|
396
|
+
Update a category
|
|
397
|
+
operationId: updateCategory
|
|
398
|
+
parameters:
|
|
399
|
+
- name: budget_id
|
|
400
|
+
in: path
|
|
401
|
+
description: >-
|
|
402
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
403
|
+
used budget and "default" can be used if default budget selection is
|
|
404
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
405
|
+
required: true
|
|
406
|
+
schema:
|
|
407
|
+
type: string
|
|
408
|
+
- name: category_id
|
|
409
|
+
in: path
|
|
410
|
+
description: The id of the category
|
|
411
|
+
required: true
|
|
412
|
+
schema:
|
|
413
|
+
type: string
|
|
414
|
+
requestBody:
|
|
415
|
+
description: >-
|
|
416
|
+
The category to update
|
|
417
|
+
content:
|
|
418
|
+
"application/json":
|
|
419
|
+
schema:
|
|
420
|
+
$ref: "#/components/schemas/PatchCategoryWrapper"
|
|
421
|
+
required: true
|
|
422
|
+
responses:
|
|
423
|
+
"200":
|
|
424
|
+
description: The category was successfully updated
|
|
425
|
+
content:
|
|
426
|
+
application/json:
|
|
427
|
+
schema:
|
|
428
|
+
$ref: "#/components/schemas/SaveCategoryResponse"
|
|
429
|
+
"400":
|
|
430
|
+
description: >-
|
|
431
|
+
The request could not be understood due to malformed syntax or
|
|
432
|
+
validation error(s)
|
|
433
|
+
content:
|
|
434
|
+
application/json:
|
|
435
|
+
schema:
|
|
436
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
437
|
+
x-codegen-request-body-name: data
|
|
391
438
|
/budgets/{budget_id}/months/{month}/categories/{category_id}:
|
|
392
439
|
get:
|
|
393
440
|
tags:
|
|
@@ -424,24 +471,24 @@ paths:
|
|
|
424
471
|
schema:
|
|
425
472
|
type: string
|
|
426
473
|
responses:
|
|
427
|
-
|
|
474
|
+
"200":
|
|
428
475
|
description: The requested month category
|
|
429
476
|
content:
|
|
430
477
|
application/json:
|
|
431
478
|
schema:
|
|
432
|
-
$ref:
|
|
433
|
-
|
|
479
|
+
$ref: "#/components/schemas/CategoryResponse"
|
|
480
|
+
"404":
|
|
434
481
|
description: The month category was not was found
|
|
435
482
|
content:
|
|
436
483
|
application/json:
|
|
437
484
|
schema:
|
|
438
|
-
$ref:
|
|
485
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
439
486
|
default:
|
|
440
487
|
description: An error occurred
|
|
441
488
|
content:
|
|
442
489
|
application/json:
|
|
443
490
|
schema:
|
|
444
|
-
$ref:
|
|
491
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
445
492
|
patch:
|
|
446
493
|
tags:
|
|
447
494
|
- Categories
|
|
@@ -480,25 +527,25 @@ paths:
|
|
|
480
527
|
The category to update. Only `budgeted` amount can be updated and any
|
|
481
528
|
other fields specified will be ignored.
|
|
482
529
|
content:
|
|
483
|
-
|
|
530
|
+
"application/json":
|
|
484
531
|
schema:
|
|
485
|
-
$ref:
|
|
532
|
+
$ref: "#/components/schemas/PatchMonthCategoryWrapper"
|
|
486
533
|
required: true
|
|
487
534
|
responses:
|
|
488
|
-
|
|
535
|
+
"200":
|
|
489
536
|
description: The month category was successfully updated
|
|
490
537
|
content:
|
|
491
538
|
application/json:
|
|
492
539
|
schema:
|
|
493
|
-
$ref:
|
|
494
|
-
|
|
540
|
+
$ref: "#/components/schemas/SaveCategoryResponse"
|
|
541
|
+
"400":
|
|
495
542
|
description: >-
|
|
496
543
|
The request could not be understood due to malformed syntax or
|
|
497
544
|
validation error(s)
|
|
498
545
|
content:
|
|
499
546
|
application/json:
|
|
500
547
|
schema:
|
|
501
|
-
$ref:
|
|
548
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
502
549
|
x-codegen-request-body-name: data
|
|
503
550
|
/budgets/{budget_id}/payees:
|
|
504
551
|
get:
|
|
@@ -526,24 +573,24 @@ paths:
|
|
|
526
573
|
type: integer
|
|
527
574
|
format: int64
|
|
528
575
|
responses:
|
|
529
|
-
|
|
576
|
+
"200":
|
|
530
577
|
description: The requested list of payees
|
|
531
578
|
content:
|
|
532
579
|
application/json:
|
|
533
580
|
schema:
|
|
534
|
-
$ref:
|
|
535
|
-
|
|
581
|
+
$ref: "#/components/schemas/PayeesResponse"
|
|
582
|
+
"404":
|
|
536
583
|
description: No payees were found
|
|
537
584
|
content:
|
|
538
585
|
application/json:
|
|
539
586
|
schema:
|
|
540
|
-
$ref:
|
|
587
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
541
588
|
default:
|
|
542
589
|
description: An error occurred
|
|
543
590
|
content:
|
|
544
591
|
application/json:
|
|
545
592
|
schema:
|
|
546
|
-
$ref:
|
|
593
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
547
594
|
/budgets/{budget_id}/payees/{payee_id}:
|
|
548
595
|
get:
|
|
549
596
|
tags:
|
|
@@ -568,24 +615,71 @@ paths:
|
|
|
568
615
|
schema:
|
|
569
616
|
type: string
|
|
570
617
|
responses:
|
|
571
|
-
|
|
618
|
+
"200":
|
|
572
619
|
description: The requested payee
|
|
573
620
|
content:
|
|
574
621
|
application/json:
|
|
575
622
|
schema:
|
|
576
|
-
$ref:
|
|
577
|
-
|
|
623
|
+
$ref: "#/components/schemas/PayeeResponse"
|
|
624
|
+
"404":
|
|
578
625
|
description: The payee was not found
|
|
579
626
|
content:
|
|
580
627
|
application/json:
|
|
581
628
|
schema:
|
|
582
|
-
$ref:
|
|
629
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
583
630
|
default:
|
|
584
631
|
description: An error occurred
|
|
585
632
|
content:
|
|
586
633
|
application/json:
|
|
587
634
|
schema:
|
|
588
|
-
$ref:
|
|
635
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
636
|
+
patch:
|
|
637
|
+
tags:
|
|
638
|
+
- Payees
|
|
639
|
+
summary: Update a payee
|
|
640
|
+
description: >-
|
|
641
|
+
Update a payee
|
|
642
|
+
operationId: updatePayee
|
|
643
|
+
parameters:
|
|
644
|
+
- name: budget_id
|
|
645
|
+
in: path
|
|
646
|
+
description: >-
|
|
647
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
648
|
+
used budget and "default" can be used if default budget selection is
|
|
649
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
650
|
+
required: true
|
|
651
|
+
schema:
|
|
652
|
+
type: string
|
|
653
|
+
- name: payee_id
|
|
654
|
+
in: path
|
|
655
|
+
description: The id of the payee
|
|
656
|
+
required: true
|
|
657
|
+
schema:
|
|
658
|
+
type: string
|
|
659
|
+
requestBody:
|
|
660
|
+
description: >-
|
|
661
|
+
The payee to update
|
|
662
|
+
content:
|
|
663
|
+
"application/json":
|
|
664
|
+
schema:
|
|
665
|
+
$ref: "#/components/schemas/PatchPayeeWrapper"
|
|
666
|
+
required: true
|
|
667
|
+
responses:
|
|
668
|
+
"200":
|
|
669
|
+
description: The payee was successfully updated
|
|
670
|
+
content:
|
|
671
|
+
application/json:
|
|
672
|
+
schema:
|
|
673
|
+
$ref: "#/components/schemas/SavePayeeResponse"
|
|
674
|
+
"400":
|
|
675
|
+
description: >-
|
|
676
|
+
The request could not be understood due to malformed syntax or
|
|
677
|
+
validation error(s)
|
|
678
|
+
content:
|
|
679
|
+
application/json:
|
|
680
|
+
schema:
|
|
681
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
682
|
+
x-codegen-request-body-name: data
|
|
589
683
|
/budgets/{budget_id}/payee_locations:
|
|
590
684
|
get:
|
|
591
685
|
tags:
|
|
@@ -604,24 +698,24 @@ paths:
|
|
|
604
698
|
schema:
|
|
605
699
|
type: string
|
|
606
700
|
responses:
|
|
607
|
-
|
|
701
|
+
"200":
|
|
608
702
|
description: The list of payee locations
|
|
609
703
|
content:
|
|
610
704
|
application/json:
|
|
611
705
|
schema:
|
|
612
|
-
$ref:
|
|
613
|
-
|
|
706
|
+
$ref: "#/components/schemas/PayeeLocationsResponse"
|
|
707
|
+
"404":
|
|
614
708
|
description: No payees locations were found
|
|
615
709
|
content:
|
|
616
710
|
application/json:
|
|
617
711
|
schema:
|
|
618
|
-
$ref:
|
|
712
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
619
713
|
default:
|
|
620
714
|
description: An error occurred
|
|
621
715
|
content:
|
|
622
716
|
application/json:
|
|
623
717
|
schema:
|
|
624
|
-
$ref:
|
|
718
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
625
719
|
/budgets/{budget_id}/payee_locations/{payee_location_id}:
|
|
626
720
|
get:
|
|
627
721
|
tags:
|
|
@@ -646,24 +740,24 @@ paths:
|
|
|
646
740
|
schema:
|
|
647
741
|
type: string
|
|
648
742
|
responses:
|
|
649
|
-
|
|
743
|
+
"200":
|
|
650
744
|
description: The payee location
|
|
651
745
|
content:
|
|
652
746
|
application/json:
|
|
653
747
|
schema:
|
|
654
|
-
$ref:
|
|
655
|
-
|
|
748
|
+
$ref: "#/components/schemas/PayeeLocationResponse"
|
|
749
|
+
"404":
|
|
656
750
|
description: The payee location was not found
|
|
657
751
|
content:
|
|
658
752
|
application/json:
|
|
659
753
|
schema:
|
|
660
|
-
$ref:
|
|
754
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
661
755
|
default:
|
|
662
756
|
description: An error occurred
|
|
663
757
|
content:
|
|
664
758
|
application/json:
|
|
665
759
|
schema:
|
|
666
|
-
$ref:
|
|
760
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
667
761
|
/budgets/{budget_id}/payees/{payee_id}/payee_locations:
|
|
668
762
|
get:
|
|
669
763
|
tags:
|
|
@@ -688,24 +782,24 @@ paths:
|
|
|
688
782
|
schema:
|
|
689
783
|
type: string
|
|
690
784
|
responses:
|
|
691
|
-
|
|
785
|
+
"200":
|
|
692
786
|
description: The list of requested payee locations
|
|
693
787
|
content:
|
|
694
788
|
application/json:
|
|
695
789
|
schema:
|
|
696
|
-
$ref:
|
|
697
|
-
|
|
790
|
+
$ref: "#/components/schemas/PayeeLocationsResponse"
|
|
791
|
+
"404":
|
|
698
792
|
description: No payees locations were found
|
|
699
793
|
content:
|
|
700
794
|
application/json:
|
|
701
795
|
schema:
|
|
702
|
-
$ref:
|
|
796
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
703
797
|
default:
|
|
704
798
|
description: An error occurred
|
|
705
799
|
content:
|
|
706
800
|
application/json:
|
|
707
801
|
schema:
|
|
708
|
-
$ref:
|
|
802
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
709
803
|
/budgets/{budget_id}/months:
|
|
710
804
|
get:
|
|
711
805
|
tags:
|
|
@@ -732,24 +826,24 @@ paths:
|
|
|
732
826
|
type: integer
|
|
733
827
|
format: int64
|
|
734
828
|
responses:
|
|
735
|
-
|
|
829
|
+
"200":
|
|
736
830
|
description: The list of budget months
|
|
737
831
|
content:
|
|
738
832
|
application/json:
|
|
739
833
|
schema:
|
|
740
|
-
$ref:
|
|
741
|
-
|
|
834
|
+
$ref: "#/components/schemas/MonthSummariesResponse"
|
|
835
|
+
"404":
|
|
742
836
|
description: No budget months were found
|
|
743
837
|
content:
|
|
744
838
|
application/json:
|
|
745
839
|
schema:
|
|
746
|
-
$ref:
|
|
840
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
747
841
|
default:
|
|
748
842
|
description: An error occurred
|
|
749
843
|
content:
|
|
750
844
|
application/json:
|
|
751
845
|
schema:
|
|
752
|
-
$ref:
|
|
846
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
753
847
|
/budgets/{budget_id}/months/{month}:
|
|
754
848
|
get:
|
|
755
849
|
tags:
|
|
@@ -777,30 +871,30 @@ paths:
|
|
|
777
871
|
type: string
|
|
778
872
|
format: date
|
|
779
873
|
responses:
|
|
780
|
-
|
|
874
|
+
"200":
|
|
781
875
|
description: The budget month detail
|
|
782
876
|
content:
|
|
783
877
|
application/json:
|
|
784
878
|
schema:
|
|
785
|
-
$ref:
|
|
786
|
-
|
|
879
|
+
$ref: "#/components/schemas/MonthDetailResponse"
|
|
880
|
+
"404":
|
|
787
881
|
description: The budget month was not found
|
|
788
882
|
content:
|
|
789
883
|
application/json:
|
|
790
884
|
schema:
|
|
791
|
-
$ref:
|
|
885
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
792
886
|
default:
|
|
793
887
|
description: An error occurred
|
|
794
888
|
content:
|
|
795
889
|
application/json:
|
|
796
890
|
schema:
|
|
797
|
-
$ref:
|
|
891
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
798
892
|
/budgets/{budget_id}/transactions:
|
|
799
893
|
get:
|
|
800
894
|
tags:
|
|
801
895
|
- Transactions
|
|
802
896
|
summary: List transactions
|
|
803
|
-
description: Returns budget transactions
|
|
897
|
+
description: Returns budget transactions, excluding any pending transactions
|
|
804
898
|
operationId: getTransactions
|
|
805
899
|
parameters:
|
|
806
900
|
- name: budget_id
|
|
@@ -839,24 +933,24 @@ paths:
|
|
|
839
933
|
type: integer
|
|
840
934
|
format: int64
|
|
841
935
|
responses:
|
|
842
|
-
|
|
936
|
+
"200":
|
|
843
937
|
description: The list of requested transactions
|
|
844
938
|
content:
|
|
845
939
|
application/json:
|
|
846
940
|
schema:
|
|
847
|
-
$ref:
|
|
848
|
-
|
|
941
|
+
$ref: "#/components/schemas/TransactionsResponse"
|
|
942
|
+
"400":
|
|
849
943
|
description: An error occurred
|
|
850
944
|
content:
|
|
851
945
|
application/json:
|
|
852
946
|
schema:
|
|
853
|
-
$ref:
|
|
854
|
-
|
|
947
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
948
|
+
"404":
|
|
855
949
|
description: No transactions were found
|
|
856
950
|
content:
|
|
857
951
|
application/json:
|
|
858
952
|
schema:
|
|
859
|
-
$ref:
|
|
953
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
860
954
|
post:
|
|
861
955
|
tags:
|
|
862
956
|
- Transactions
|
|
@@ -886,33 +980,33 @@ paths:
|
|
|
886
980
|
`transactions`. It is expected that you will only provide a value for
|
|
887
981
|
one of these objects.
|
|
888
982
|
content:
|
|
889
|
-
|
|
983
|
+
"application/json":
|
|
890
984
|
schema:
|
|
891
|
-
$ref:
|
|
985
|
+
$ref: "#/components/schemas/PostTransactionsWrapper"
|
|
892
986
|
required: true
|
|
893
987
|
responses:
|
|
894
|
-
|
|
988
|
+
"201":
|
|
895
989
|
description: The transaction or transactions were successfully created
|
|
896
990
|
content:
|
|
897
991
|
application/json:
|
|
898
992
|
schema:
|
|
899
|
-
$ref:
|
|
900
|
-
|
|
993
|
+
$ref: "#/components/schemas/SaveTransactionsResponse"
|
|
994
|
+
"400":
|
|
901
995
|
description: >-
|
|
902
996
|
The request could not be understood due to malformed syntax or
|
|
903
997
|
validation error(s).
|
|
904
998
|
content:
|
|
905
999
|
application/json:
|
|
906
1000
|
schema:
|
|
907
|
-
$ref:
|
|
908
|
-
|
|
1001
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1002
|
+
"409":
|
|
909
1003
|
description: >-
|
|
910
1004
|
A transaction on the same account with the same `import_id` already
|
|
911
1005
|
exists.
|
|
912
1006
|
content:
|
|
913
1007
|
application/json:
|
|
914
1008
|
schema:
|
|
915
|
-
$ref:
|
|
1009
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
916
1010
|
x-codegen-request-body-name: data
|
|
917
1011
|
patch:
|
|
918
1012
|
tags:
|
|
@@ -935,28 +1029,30 @@ paths:
|
|
|
935
1029
|
The transactions to update. Each transaction must have either an `id`
|
|
936
1030
|
or `import_id` specified. If `id` is specified as null an `import_id`
|
|
937
1031
|
value can be provided which will allow transaction(s) to be updated by
|
|
938
|
-
|
|
939
|
-
lookup.
|
|
1032
|
+
its `import_id`. If an `id` is specified, it will always be used for
|
|
1033
|
+
lookup. You should not specify both `id` and `import_id`. Updating
|
|
1034
|
+
an `import_id` on an existing transaction is not allowed; if an `import_id`
|
|
1035
|
+
is specified, it will only be used to lookup the transaction.
|
|
940
1036
|
content:
|
|
941
|
-
|
|
1037
|
+
"application/json":
|
|
942
1038
|
schema:
|
|
943
|
-
$ref:
|
|
1039
|
+
$ref: "#/components/schemas/PatchTransactionsWrapper"
|
|
944
1040
|
required: true
|
|
945
1041
|
responses:
|
|
946
|
-
|
|
1042
|
+
"209":
|
|
947
1043
|
description: The transactions were successfully updated
|
|
948
1044
|
content:
|
|
949
1045
|
application/json:
|
|
950
1046
|
schema:
|
|
951
|
-
$ref:
|
|
952
|
-
|
|
1047
|
+
$ref: "#/components/schemas/SaveTransactionsResponse"
|
|
1048
|
+
"400":
|
|
953
1049
|
description: >-
|
|
954
1050
|
The request could not be understood due to malformed syntax or
|
|
955
1051
|
validation error(s).
|
|
956
1052
|
content:
|
|
957
1053
|
application/json:
|
|
958
1054
|
schema:
|
|
959
|
-
$ref:
|
|
1055
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
960
1056
|
x-codegen-request-body-name: data
|
|
961
1057
|
/budgets/{budget_id}/transactions/import:
|
|
962
1058
|
post:
|
|
@@ -983,26 +1079,26 @@ paths:
|
|
|
983
1079
|
schema:
|
|
984
1080
|
type: string
|
|
985
1081
|
responses:
|
|
986
|
-
|
|
1082
|
+
"200":
|
|
987
1083
|
description: The request was successful but there were no transactions to import
|
|
988
1084
|
content:
|
|
989
1085
|
application/json:
|
|
990
1086
|
schema:
|
|
991
|
-
$ref:
|
|
992
|
-
|
|
1087
|
+
$ref: "#/components/schemas/TransactionsImportResponse"
|
|
1088
|
+
"201":
|
|
993
1089
|
description: One or more transactions were imported successfully
|
|
994
1090
|
content:
|
|
995
1091
|
application/json:
|
|
996
1092
|
schema:
|
|
997
|
-
$ref:
|
|
998
|
-
|
|
1093
|
+
$ref: "#/components/schemas/TransactionsImportResponse"
|
|
1094
|
+
"400":
|
|
999
1095
|
description: >-
|
|
1000
1096
|
The request could not be understood due to malformed syntax or
|
|
1001
1097
|
validation error(s)
|
|
1002
1098
|
content:
|
|
1003
1099
|
application/json:
|
|
1004
1100
|
schema:
|
|
1005
|
-
$ref:
|
|
1101
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1006
1102
|
/budgets/{budget_id}/transactions/{transaction_id}:
|
|
1007
1103
|
get:
|
|
1008
1104
|
tags:
|
|
@@ -1027,24 +1123,24 @@ paths:
|
|
|
1027
1123
|
schema:
|
|
1028
1124
|
type: string
|
|
1029
1125
|
responses:
|
|
1030
|
-
|
|
1126
|
+
"200":
|
|
1031
1127
|
description: The requested transaction
|
|
1032
1128
|
content:
|
|
1033
1129
|
application/json:
|
|
1034
1130
|
schema:
|
|
1035
|
-
$ref:
|
|
1036
|
-
|
|
1131
|
+
$ref: "#/components/schemas/TransactionResponse"
|
|
1132
|
+
"404":
|
|
1037
1133
|
description: The transaction was not found
|
|
1038
1134
|
content:
|
|
1039
1135
|
application/json:
|
|
1040
1136
|
schema:
|
|
1041
|
-
$ref:
|
|
1137
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1042
1138
|
default:
|
|
1043
1139
|
description: An error occurred
|
|
1044
1140
|
content:
|
|
1045
1141
|
application/json:
|
|
1046
1142
|
schema:
|
|
1047
|
-
$ref:
|
|
1143
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1048
1144
|
put:
|
|
1049
1145
|
tags:
|
|
1050
1146
|
- Transactions
|
|
@@ -1070,25 +1166,25 @@ paths:
|
|
|
1070
1166
|
requestBody:
|
|
1071
1167
|
description: The transaction to update
|
|
1072
1168
|
content:
|
|
1073
|
-
|
|
1169
|
+
"application/json":
|
|
1074
1170
|
schema:
|
|
1075
|
-
$ref:
|
|
1171
|
+
$ref: "#/components/schemas/PutTransactionWrapper"
|
|
1076
1172
|
required: true
|
|
1077
1173
|
responses:
|
|
1078
|
-
|
|
1174
|
+
"200":
|
|
1079
1175
|
description: The transaction was successfully updated
|
|
1080
1176
|
content:
|
|
1081
1177
|
application/json:
|
|
1082
1178
|
schema:
|
|
1083
|
-
$ref:
|
|
1084
|
-
|
|
1179
|
+
$ref: "#/components/schemas/TransactionResponse"
|
|
1180
|
+
"400":
|
|
1085
1181
|
description: >-
|
|
1086
1182
|
The request could not be understood due to malformed syntax or
|
|
1087
1183
|
validation error(s)
|
|
1088
1184
|
content:
|
|
1089
1185
|
application/json:
|
|
1090
1186
|
schema:
|
|
1091
|
-
$ref:
|
|
1187
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1092
1188
|
x-codegen-request-body-name: data
|
|
1093
1189
|
delete:
|
|
1094
1190
|
tags:
|
|
@@ -1113,67 +1209,24 @@ paths:
|
|
|
1113
1209
|
schema:
|
|
1114
1210
|
type: string
|
|
1115
1211
|
responses:
|
|
1116
|
-
|
|
1212
|
+
"200":
|
|
1117
1213
|
description: The transaction was successfully deleted
|
|
1118
1214
|
content:
|
|
1119
1215
|
application/json:
|
|
1120
1216
|
schema:
|
|
1121
|
-
$ref:
|
|
1122
|
-
|
|
1217
|
+
$ref: "#/components/schemas/TransactionResponse"
|
|
1218
|
+
"404":
|
|
1123
1219
|
description: The transaction was not found
|
|
1124
1220
|
content:
|
|
1125
1221
|
application/json:
|
|
1126
1222
|
schema:
|
|
1127
|
-
$ref:
|
|
1128
|
-
/budgets/{budget_id}/transactions/bulk:
|
|
1129
|
-
post:
|
|
1130
|
-
tags:
|
|
1131
|
-
- Deprecated
|
|
1132
|
-
summary: Bulk create transactions
|
|
1133
|
-
description: >-
|
|
1134
|
-
Creates multiple transactions. Although this endpoint is still
|
|
1135
|
-
supported, it is recommended to use 'POST
|
|
1136
|
-
/budgets/{budget_id}/transactions' to create multiple transactions.
|
|
1137
|
-
operationId: bulkCreateTransactions
|
|
1138
|
-
parameters:
|
|
1139
|
-
- name: budget_id
|
|
1140
|
-
in: path
|
|
1141
|
-
description: >-
|
|
1142
|
-
The id of the budget. "last-used" can be used to specify the last
|
|
1143
|
-
used budget and "default" can be used if default budget selection is
|
|
1144
|
-
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1145
|
-
required: true
|
|
1146
|
-
schema:
|
|
1147
|
-
type: string
|
|
1148
|
-
requestBody:
|
|
1149
|
-
description: The list of transactions to create
|
|
1150
|
-
content:
|
|
1151
|
-
'application/json':
|
|
1152
|
-
schema:
|
|
1153
|
-
$ref: '#/components/schemas/BulkTransactions'
|
|
1154
|
-
required: true
|
|
1155
|
-
responses:
|
|
1156
|
-
'201':
|
|
1157
|
-
description: The bulk request was processed successfully
|
|
1158
|
-
content:
|
|
1159
|
-
application/json:
|
|
1160
|
-
schema:
|
|
1161
|
-
$ref: '#/components/schemas/BulkResponse'
|
|
1162
|
-
'400':
|
|
1163
|
-
description: >-
|
|
1164
|
-
The request could not be understood due to malformed syntax or
|
|
1165
|
-
validation error(s)
|
|
1166
|
-
content:
|
|
1167
|
-
application/json:
|
|
1168
|
-
schema:
|
|
1169
|
-
$ref: '#/components/schemas/ErrorResponse'
|
|
1170
|
-
x-codegen-request-body-name: transactions
|
|
1223
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1171
1224
|
/budgets/{budget_id}/accounts/{account_id}/transactions:
|
|
1172
1225
|
get:
|
|
1173
1226
|
tags:
|
|
1174
1227
|
- Transactions
|
|
1175
1228
|
summary: List account transactions
|
|
1176
|
-
description: Returns all transactions for a specified account
|
|
1229
|
+
description: Returns all transactions for a specified account, excluding any pending transactions
|
|
1177
1230
|
operationId: getTransactionsByAccount
|
|
1178
1231
|
parameters:
|
|
1179
1232
|
- name: budget_id
|
|
@@ -1218,29 +1271,29 @@ paths:
|
|
|
1218
1271
|
type: integer
|
|
1219
1272
|
format: int64
|
|
1220
1273
|
responses:
|
|
1221
|
-
|
|
1274
|
+
"200":
|
|
1222
1275
|
description: The list of requested transactions
|
|
1223
1276
|
content:
|
|
1224
1277
|
application/json:
|
|
1225
1278
|
schema:
|
|
1226
|
-
$ref:
|
|
1227
|
-
|
|
1279
|
+
$ref: "#/components/schemas/TransactionsResponse"
|
|
1280
|
+
"404":
|
|
1228
1281
|
description: No transactions were found
|
|
1229
1282
|
content:
|
|
1230
1283
|
application/json:
|
|
1231
1284
|
schema:
|
|
1232
|
-
$ref:
|
|
1285
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1233
1286
|
default:
|
|
1234
1287
|
description: An error occurred
|
|
1235
1288
|
content:
|
|
1236
1289
|
application/json:
|
|
1237
1290
|
schema:
|
|
1238
|
-
$ref:
|
|
1291
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1239
1292
|
/budgets/{budget_id}/categories/{category_id}/transactions:
|
|
1240
1293
|
get:
|
|
1241
1294
|
tags:
|
|
1242
1295
|
- Transactions
|
|
1243
|
-
summary: List category transactions
|
|
1296
|
+
summary: List category transactions, excluding any pending transactions
|
|
1244
1297
|
description: Returns all transactions for a specified category
|
|
1245
1298
|
operationId: getTransactionsByCategory
|
|
1246
1299
|
parameters:
|
|
@@ -1286,29 +1339,29 @@ paths:
|
|
|
1286
1339
|
type: integer
|
|
1287
1340
|
format: int64
|
|
1288
1341
|
responses:
|
|
1289
|
-
|
|
1342
|
+
"200":
|
|
1290
1343
|
description: The list of requested transactions
|
|
1291
1344
|
content:
|
|
1292
1345
|
application/json:
|
|
1293
1346
|
schema:
|
|
1294
|
-
$ref:
|
|
1295
|
-
|
|
1347
|
+
$ref: "#/components/schemas/HybridTransactionsResponse"
|
|
1348
|
+
"404":
|
|
1296
1349
|
description: No transactions were found
|
|
1297
1350
|
content:
|
|
1298
1351
|
application/json:
|
|
1299
1352
|
schema:
|
|
1300
|
-
$ref:
|
|
1353
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1301
1354
|
default:
|
|
1302
1355
|
description: An error occurred
|
|
1303
1356
|
content:
|
|
1304
1357
|
application/json:
|
|
1305
1358
|
schema:
|
|
1306
|
-
$ref:
|
|
1359
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1307
1360
|
/budgets/{budget_id}/payees/{payee_id}/transactions:
|
|
1308
1361
|
get:
|
|
1309
1362
|
tags:
|
|
1310
1363
|
- Transactions
|
|
1311
|
-
summary: List payee transactions
|
|
1364
|
+
summary: List payee transactions, excluding any pending transactions
|
|
1312
1365
|
description: Returns all transactions for a specified payee
|
|
1313
1366
|
operationId: getTransactionsByPayee
|
|
1314
1367
|
parameters:
|
|
@@ -1354,24 +1407,24 @@ paths:
|
|
|
1354
1407
|
type: integer
|
|
1355
1408
|
format: int64
|
|
1356
1409
|
responses:
|
|
1357
|
-
|
|
1410
|
+
"200":
|
|
1358
1411
|
description: The list of requested transactions
|
|
1359
1412
|
content:
|
|
1360
1413
|
application/json:
|
|
1361
1414
|
schema:
|
|
1362
|
-
$ref:
|
|
1363
|
-
|
|
1415
|
+
$ref: "#/components/schemas/HybridTransactionsResponse"
|
|
1416
|
+
"404":
|
|
1364
1417
|
description: No transactions were found
|
|
1365
1418
|
content:
|
|
1366
1419
|
application/json:
|
|
1367
1420
|
schema:
|
|
1368
|
-
$ref:
|
|
1421
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1369
1422
|
default:
|
|
1370
1423
|
description: An error occurred
|
|
1371
1424
|
content:
|
|
1372
1425
|
application/json:
|
|
1373
1426
|
schema:
|
|
1374
|
-
$ref:
|
|
1427
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1375
1428
|
/budgets/{budget_id}/scheduled_transactions:
|
|
1376
1429
|
get:
|
|
1377
1430
|
tags:
|
|
@@ -1398,24 +1451,24 @@ paths:
|
|
|
1398
1451
|
type: integer
|
|
1399
1452
|
format: int64
|
|
1400
1453
|
responses:
|
|
1401
|
-
|
|
1454
|
+
"200":
|
|
1402
1455
|
description: The list of requested scheduled transactions
|
|
1403
1456
|
content:
|
|
1404
1457
|
application/json:
|
|
1405
1458
|
schema:
|
|
1406
|
-
$ref:
|
|
1407
|
-
|
|
1459
|
+
$ref: "#/components/schemas/ScheduledTransactionsResponse"
|
|
1460
|
+
"404":
|
|
1408
1461
|
description: No scheduled transactions were found
|
|
1409
1462
|
content:
|
|
1410
1463
|
application/json:
|
|
1411
1464
|
schema:
|
|
1412
|
-
$ref:
|
|
1465
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1413
1466
|
default:
|
|
1414
1467
|
description: An error occurred
|
|
1415
1468
|
content:
|
|
1416
1469
|
application/json:
|
|
1417
1470
|
schema:
|
|
1418
|
-
$ref:
|
|
1471
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1419
1472
|
/budgets/{budget_id}/scheduled_transactions/{scheduled_transaction_id}:
|
|
1420
1473
|
get:
|
|
1421
1474
|
tags:
|
|
@@ -1440,24 +1493,24 @@ paths:
|
|
|
1440
1493
|
schema:
|
|
1441
1494
|
type: string
|
|
1442
1495
|
responses:
|
|
1443
|
-
|
|
1496
|
+
"200":
|
|
1444
1497
|
description: The requested Scheduled Transaction
|
|
1445
1498
|
content:
|
|
1446
1499
|
application/json:
|
|
1447
1500
|
schema:
|
|
1448
|
-
$ref:
|
|
1449
|
-
|
|
1501
|
+
$ref: "#/components/schemas/ScheduledTransactionResponse"
|
|
1502
|
+
"404":
|
|
1450
1503
|
description: The scheduled transaction was not found
|
|
1451
1504
|
content:
|
|
1452
1505
|
application/json:
|
|
1453
1506
|
schema:
|
|
1454
|
-
$ref:
|
|
1507
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1455
1508
|
default:
|
|
1456
1509
|
description: An error occurred
|
|
1457
1510
|
content:
|
|
1458
1511
|
application/json:
|
|
1459
1512
|
schema:
|
|
1460
|
-
$ref:
|
|
1513
|
+
$ref: "#/components/schemas/ErrorResponse"
|
|
1461
1514
|
components:
|
|
1462
1515
|
schemas:
|
|
1463
1516
|
ErrorResponse:
|
|
@@ -1466,7 +1519,7 @@ components:
|
|
|
1466
1519
|
type: object
|
|
1467
1520
|
properties:
|
|
1468
1521
|
error:
|
|
1469
|
-
$ref:
|
|
1522
|
+
$ref: "#/components/schemas/ErrorDetail"
|
|
1470
1523
|
ErrorDetail:
|
|
1471
1524
|
required:
|
|
1472
1525
|
- detail
|
|
@@ -1491,7 +1544,7 @@ components:
|
|
|
1491
1544
|
type: object
|
|
1492
1545
|
properties:
|
|
1493
1546
|
user:
|
|
1494
|
-
$ref:
|
|
1547
|
+
$ref: "#/components/schemas/User"
|
|
1495
1548
|
User:
|
|
1496
1549
|
required:
|
|
1497
1550
|
- id
|
|
@@ -1557,9 +1610,9 @@ components:
|
|
|
1557
1610
|
budgets:
|
|
1558
1611
|
type: array
|
|
1559
1612
|
items:
|
|
1560
|
-
$ref:
|
|
1613
|
+
$ref: "#/components/schemas/BudgetSummary"
|
|
1561
1614
|
default_budget:
|
|
1562
|
-
$ref:
|
|
1615
|
+
$ref: "#/components/schemas/BudgetSummary"
|
|
1563
1616
|
BudgetSummary:
|
|
1564
1617
|
required:
|
|
1565
1618
|
- id
|
|
@@ -1586,16 +1639,16 @@ components:
|
|
|
1586
1639
|
description: The latest budget month
|
|
1587
1640
|
format: date
|
|
1588
1641
|
date_format:
|
|
1589
|
-
$ref:
|
|
1642
|
+
$ref: "#/components/schemas/DateFormat"
|
|
1590
1643
|
currency_format:
|
|
1591
|
-
$ref:
|
|
1644
|
+
$ref: "#/components/schemas/CurrencyFormat"
|
|
1592
1645
|
accounts:
|
|
1593
1646
|
type: array
|
|
1594
1647
|
description: >-
|
|
1595
1648
|
The budget accounts (only included if `include_accounts=true`
|
|
1596
1649
|
specified as query parameter)
|
|
1597
1650
|
items:
|
|
1598
|
-
$ref:
|
|
1651
|
+
$ref: "#/components/schemas/Account"
|
|
1599
1652
|
BudgetDetailResponse:
|
|
1600
1653
|
required:
|
|
1601
1654
|
- data
|
|
@@ -1608,56 +1661,56 @@ components:
|
|
|
1608
1661
|
type: object
|
|
1609
1662
|
properties:
|
|
1610
1663
|
budget:
|
|
1611
|
-
$ref:
|
|
1664
|
+
$ref: "#/components/schemas/BudgetDetail"
|
|
1612
1665
|
server_knowledge:
|
|
1613
1666
|
type: integer
|
|
1614
1667
|
description: The knowledge of the server
|
|
1615
1668
|
format: int64
|
|
1616
1669
|
BudgetDetail:
|
|
1617
1670
|
allOf:
|
|
1618
|
-
- $ref:
|
|
1671
|
+
- $ref: "#/components/schemas/BudgetSummary"
|
|
1619
1672
|
- type: object
|
|
1620
1673
|
properties:
|
|
1621
1674
|
accounts:
|
|
1622
1675
|
type: array
|
|
1623
1676
|
items:
|
|
1624
|
-
$ref:
|
|
1677
|
+
$ref: "#/components/schemas/Account"
|
|
1625
1678
|
payees:
|
|
1626
1679
|
type: array
|
|
1627
1680
|
items:
|
|
1628
|
-
$ref:
|
|
1681
|
+
$ref: "#/components/schemas/Payee"
|
|
1629
1682
|
payee_locations:
|
|
1630
1683
|
type: array
|
|
1631
1684
|
items:
|
|
1632
|
-
$ref:
|
|
1685
|
+
$ref: "#/components/schemas/PayeeLocation"
|
|
1633
1686
|
category_groups:
|
|
1634
1687
|
type: array
|
|
1635
1688
|
items:
|
|
1636
|
-
$ref:
|
|
1689
|
+
$ref: "#/components/schemas/CategoryGroup"
|
|
1637
1690
|
categories:
|
|
1638
1691
|
type: array
|
|
1639
1692
|
items:
|
|
1640
|
-
$ref:
|
|
1693
|
+
$ref: "#/components/schemas/Category"
|
|
1641
1694
|
months:
|
|
1642
1695
|
type: array
|
|
1643
1696
|
items:
|
|
1644
|
-
$ref:
|
|
1697
|
+
$ref: "#/components/schemas/MonthDetail"
|
|
1645
1698
|
transactions:
|
|
1646
1699
|
type: array
|
|
1647
1700
|
items:
|
|
1648
|
-
$ref:
|
|
1701
|
+
$ref: "#/components/schemas/TransactionSummary"
|
|
1649
1702
|
subtransactions:
|
|
1650
1703
|
type: array
|
|
1651
1704
|
items:
|
|
1652
|
-
$ref:
|
|
1705
|
+
$ref: "#/components/schemas/SubTransaction"
|
|
1653
1706
|
scheduled_transactions:
|
|
1654
1707
|
type: array
|
|
1655
1708
|
items:
|
|
1656
|
-
$ref:
|
|
1709
|
+
$ref: "#/components/schemas/ScheduledTransactionSummary"
|
|
1657
1710
|
scheduled_subtransactions:
|
|
1658
1711
|
type: array
|
|
1659
1712
|
items:
|
|
1660
|
-
$ref:
|
|
1713
|
+
$ref: "#/components/schemas/ScheduledSubTransaction"
|
|
1661
1714
|
BudgetSettingsResponse:
|
|
1662
1715
|
required:
|
|
1663
1716
|
- data
|
|
@@ -1669,7 +1722,7 @@ components:
|
|
|
1669
1722
|
type: object
|
|
1670
1723
|
properties:
|
|
1671
1724
|
settings:
|
|
1672
|
-
$ref:
|
|
1725
|
+
$ref: "#/components/schemas/BudgetSettings"
|
|
1673
1726
|
BudgetSettings:
|
|
1674
1727
|
required:
|
|
1675
1728
|
- currency_format
|
|
@@ -1677,9 +1730,9 @@ components:
|
|
|
1677
1730
|
type: object
|
|
1678
1731
|
properties:
|
|
1679
1732
|
date_format:
|
|
1680
|
-
$ref:
|
|
1733
|
+
$ref: "#/components/schemas/DateFormat"
|
|
1681
1734
|
currency_format:
|
|
1682
|
-
$ref:
|
|
1735
|
+
$ref: "#/components/schemas/CurrencyFormat"
|
|
1683
1736
|
AccountsResponse:
|
|
1684
1737
|
required:
|
|
1685
1738
|
- data
|
|
@@ -1694,7 +1747,7 @@ components:
|
|
|
1694
1747
|
accounts:
|
|
1695
1748
|
type: array
|
|
1696
1749
|
items:
|
|
1697
|
-
$ref:
|
|
1750
|
+
$ref: "#/components/schemas/Account"
|
|
1698
1751
|
server_knowledge:
|
|
1699
1752
|
type: integer
|
|
1700
1753
|
description: The knowledge of the server
|
|
@@ -1710,7 +1763,7 @@ components:
|
|
|
1710
1763
|
type: object
|
|
1711
1764
|
properties:
|
|
1712
1765
|
account:
|
|
1713
|
-
$ref:
|
|
1766
|
+
$ref: "#/components/schemas/Account"
|
|
1714
1767
|
Account:
|
|
1715
1768
|
required:
|
|
1716
1769
|
- balance
|
|
@@ -1731,7 +1784,7 @@ components:
|
|
|
1731
1784
|
name:
|
|
1732
1785
|
type: string
|
|
1733
1786
|
type:
|
|
1734
|
-
$ref:
|
|
1787
|
+
$ref: "#/components/schemas/AccountType"
|
|
1735
1788
|
on_budget:
|
|
1736
1789
|
type: boolean
|
|
1737
1790
|
description: Whether this account is on budget or not
|
|
@@ -1782,11 +1835,11 @@ components:
|
|
|
1782
1835
|
format.
|
|
1783
1836
|
format: int64
|
|
1784
1837
|
debt_interest_rates:
|
|
1785
|
-
$ref:
|
|
1838
|
+
$ref: "#/components/schemas/LoanAccountPeriodicValue"
|
|
1786
1839
|
debt_minimum_payments:
|
|
1787
|
-
$ref:
|
|
1840
|
+
$ref: "#/components/schemas/LoanAccountPeriodicValue"
|
|
1788
1841
|
debt_escrow_amounts:
|
|
1789
|
-
$ref:
|
|
1842
|
+
$ref: "#/components/schemas/LoanAccountPeriodicValue"
|
|
1790
1843
|
deleted:
|
|
1791
1844
|
type: boolean
|
|
1792
1845
|
description: >-
|
|
@@ -1798,7 +1851,7 @@ components:
|
|
|
1798
1851
|
type: object
|
|
1799
1852
|
properties:
|
|
1800
1853
|
account:
|
|
1801
|
-
$ref:
|
|
1854
|
+
$ref: "#/components/schemas/SaveAccount"
|
|
1802
1855
|
SaveAccount:
|
|
1803
1856
|
required:
|
|
1804
1857
|
- balance
|
|
@@ -1810,7 +1863,7 @@ components:
|
|
|
1810
1863
|
type: string
|
|
1811
1864
|
description: The name of the account
|
|
1812
1865
|
type:
|
|
1813
|
-
$ref:
|
|
1866
|
+
$ref: "#/components/schemas/AccountType"
|
|
1814
1867
|
balance:
|
|
1815
1868
|
type: integer
|
|
1816
1869
|
description: The current balance of the account in milliunits format
|
|
@@ -1852,7 +1905,7 @@ components:
|
|
|
1852
1905
|
category_groups:
|
|
1853
1906
|
type: array
|
|
1854
1907
|
items:
|
|
1855
|
-
$ref:
|
|
1908
|
+
$ref: "#/components/schemas/CategoryGroupWithCategories"
|
|
1856
1909
|
server_knowledge:
|
|
1857
1910
|
type: integer
|
|
1858
1911
|
description: The knowledge of the server
|
|
@@ -1868,10 +1921,10 @@ components:
|
|
|
1868
1921
|
type: object
|
|
1869
1922
|
properties:
|
|
1870
1923
|
category:
|
|
1871
|
-
$ref:
|
|
1924
|
+
$ref: "#/components/schemas/Category"
|
|
1872
1925
|
CategoryGroupWithCategories:
|
|
1873
1926
|
allOf:
|
|
1874
|
-
- $ref:
|
|
1927
|
+
- $ref: "#/components/schemas/CategoryGroup"
|
|
1875
1928
|
- required:
|
|
1876
1929
|
- categories
|
|
1877
1930
|
type: object
|
|
@@ -1882,7 +1935,7 @@ components:
|
|
|
1882
1935
|
Category group categories. Amounts (budgeted, activity,
|
|
1883
1936
|
balance, etc.) are specific to the current budget month (UTC).
|
|
1884
1937
|
items:
|
|
1885
|
-
$ref:
|
|
1938
|
+
$ref: "#/components/schemas/Category"
|
|
1886
1939
|
CategoryGroup:
|
|
1887
1940
|
required:
|
|
1888
1941
|
- deleted
|
|
@@ -1931,7 +1984,7 @@ components:
|
|
|
1931
1984
|
description: Whether or not the category is hidden
|
|
1932
1985
|
original_category_group_id:
|
|
1933
1986
|
type: string
|
|
1934
|
-
description:
|
|
1987
|
+
description: "DEPRECATED: No longer used. Value will always be null."
|
|
1935
1988
|
format: uuid
|
|
1936
1989
|
nullable: true
|
|
1937
1990
|
note:
|
|
@@ -2069,7 +2122,7 @@ components:
|
|
|
2069
2122
|
type: object
|
|
2070
2123
|
properties:
|
|
2071
2124
|
category:
|
|
2072
|
-
$ref:
|
|
2125
|
+
$ref: "#/components/schemas/Category"
|
|
2073
2126
|
server_knowledge:
|
|
2074
2127
|
type: integer
|
|
2075
2128
|
description: The knowledge of the server
|
|
@@ -2088,7 +2141,7 @@ components:
|
|
|
2088
2141
|
payees:
|
|
2089
2142
|
type: array
|
|
2090
2143
|
items:
|
|
2091
|
-
$ref:
|
|
2144
|
+
$ref: "#/components/schemas/Payee"
|
|
2092
2145
|
server_knowledge:
|
|
2093
2146
|
type: integer
|
|
2094
2147
|
description: The knowledge of the server
|
|
@@ -2104,7 +2157,24 @@ components:
|
|
|
2104
2157
|
type: object
|
|
2105
2158
|
properties:
|
|
2106
2159
|
payee:
|
|
2107
|
-
$ref:
|
|
2160
|
+
$ref: "#/components/schemas/Payee"
|
|
2161
|
+
SavePayeeResponse:
|
|
2162
|
+
required:
|
|
2163
|
+
- data
|
|
2164
|
+
type: object
|
|
2165
|
+
properties:
|
|
2166
|
+
data:
|
|
2167
|
+
required:
|
|
2168
|
+
- payee
|
|
2169
|
+
- server_knowledge
|
|
2170
|
+
type: object
|
|
2171
|
+
properties:
|
|
2172
|
+
payee:
|
|
2173
|
+
$ref: "#/components/schemas/Payee"
|
|
2174
|
+
server_knowledge:
|
|
2175
|
+
type: integer
|
|
2176
|
+
description: The knowledge of the server
|
|
2177
|
+
format: int64
|
|
2108
2178
|
Payee:
|
|
2109
2179
|
required:
|
|
2110
2180
|
- deleted
|
|
@@ -2141,7 +2211,7 @@ components:
|
|
|
2141
2211
|
payee_locations:
|
|
2142
2212
|
type: array
|
|
2143
2213
|
items:
|
|
2144
|
-
$ref:
|
|
2214
|
+
$ref: "#/components/schemas/PayeeLocation"
|
|
2145
2215
|
PayeeLocationResponse:
|
|
2146
2216
|
required:
|
|
2147
2217
|
- data
|
|
@@ -2153,7 +2223,7 @@ components:
|
|
|
2153
2223
|
type: object
|
|
2154
2224
|
properties:
|
|
2155
2225
|
payee_location:
|
|
2156
|
-
$ref:
|
|
2226
|
+
$ref: "#/components/schemas/PayeeLocation"
|
|
2157
2227
|
PayeeLocation:
|
|
2158
2228
|
required:
|
|
2159
2229
|
- deleted
|
|
@@ -2192,7 +2262,7 @@ components:
|
|
|
2192
2262
|
transactions:
|
|
2193
2263
|
type: array
|
|
2194
2264
|
items:
|
|
2195
|
-
$ref:
|
|
2265
|
+
$ref: "#/components/schemas/TransactionDetail"
|
|
2196
2266
|
server_knowledge:
|
|
2197
2267
|
type: integer
|
|
2198
2268
|
description: The knowledge of the server
|
|
@@ -2210,7 +2280,7 @@ components:
|
|
|
2210
2280
|
transactions:
|
|
2211
2281
|
type: array
|
|
2212
2282
|
items:
|
|
2213
|
-
$ref:
|
|
2283
|
+
$ref: "#/components/schemas/HybridTransaction"
|
|
2214
2284
|
server_knowledge:
|
|
2215
2285
|
type: integer
|
|
2216
2286
|
description: The knowledge of the server
|
|
@@ -2221,20 +2291,16 @@ components:
|
|
|
2221
2291
|
type: object
|
|
2222
2292
|
properties:
|
|
2223
2293
|
transaction:
|
|
2224
|
-
$ref:
|
|
2294
|
+
$ref: "#/components/schemas/ExistingTransaction"
|
|
2225
2295
|
PostTransactionsWrapper:
|
|
2226
2296
|
type: object
|
|
2227
2297
|
properties:
|
|
2228
2298
|
transaction:
|
|
2229
|
-
$ref:
|
|
2299
|
+
$ref: "#/components/schemas/NewTransaction"
|
|
2230
2300
|
transactions:
|
|
2231
2301
|
type: array
|
|
2232
2302
|
items:
|
|
2233
|
-
$ref:
|
|
2234
|
-
SaveTransaction:
|
|
2235
|
-
allOf:
|
|
2236
|
-
- type: object
|
|
2237
|
-
- $ref: '#/components/schemas/SaveTransactionWithOptionalFields'
|
|
2303
|
+
$ref: "#/components/schemas/NewTransaction"
|
|
2238
2304
|
PatchTransactionsWrapper:
|
|
2239
2305
|
required:
|
|
2240
2306
|
- transactions
|
|
@@ -2243,14 +2309,61 @@ components:
|
|
|
2243
2309
|
transactions:
|
|
2244
2310
|
type: array
|
|
2245
2311
|
items:
|
|
2246
|
-
$ref:
|
|
2247
|
-
|
|
2312
|
+
$ref: "#/components/schemas/SaveTransactionWithIdOrImportId"
|
|
2313
|
+
ExistingTransaction:
|
|
2314
|
+
allOf:
|
|
2315
|
+
- type: object
|
|
2316
|
+
- $ref: "#/components/schemas/SaveTransactionWithOptionalFields"
|
|
2317
|
+
NewTransaction:
|
|
2318
|
+
allOf:
|
|
2319
|
+
- $ref: "#/components/schemas/SaveTransactionWithOptionalFields"
|
|
2320
|
+
- type: object
|
|
2321
|
+
properties:
|
|
2322
|
+
import_id:
|
|
2323
|
+
maxLength: 36
|
|
2324
|
+
type: string
|
|
2325
|
+
nullable: true
|
|
2326
|
+
description: >-
|
|
2327
|
+
If specified, a new transaction will be assigned this `import_id`
|
|
2328
|
+
and considered "imported". We will also attempt to match this
|
|
2329
|
+
imported transaction to an existing "user-entered" transaction on the
|
|
2330
|
+
same account, with the same amount, and with a date +/-10 days from
|
|
2331
|
+
the imported transaction date.<br><br>Transactions imported through
|
|
2332
|
+
File Based Import or Direct Import (not through the API) are
|
|
2333
|
+
assigned an import_id in the format:
|
|
2334
|
+
'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a
|
|
2335
|
+
transaction dated 2015-12-30 in the amount of -$294.23 USD would
|
|
2336
|
+
have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second
|
|
2337
|
+
transaction on the same account was imported and had the same date
|
|
2338
|
+
and same amount, its import_id would be
|
|
2339
|
+
'YNAB:-294230:2015-12-30:2'. Using a consistent format will prevent
|
|
2340
|
+
duplicates through Direct Import and File Based Import.<br><br>If
|
|
2341
|
+
import_id is omitted or specified as null, the transaction will be
|
|
2342
|
+
treated as a "user-entered" transaction. As such, it will be
|
|
2343
|
+
eligible to be matched against transactions later being imported
|
|
2344
|
+
(via DI, FBI, or API).
|
|
2345
|
+
SaveTransactionWithIdOrImportId:
|
|
2248
2346
|
allOf:
|
|
2249
2347
|
- type: object
|
|
2250
2348
|
properties:
|
|
2251
2349
|
id:
|
|
2252
2350
|
type: string
|
|
2253
|
-
|
|
2351
|
+
nullable: true
|
|
2352
|
+
description: >-
|
|
2353
|
+
If specified, this id will be used to lookup a transaction by
|
|
2354
|
+
its `id` for the purpose of updating the transaction itself.
|
|
2355
|
+
If not specified, an `import_id` should be supplied.
|
|
2356
|
+
import_id:
|
|
2357
|
+
maxLength: 36
|
|
2358
|
+
type: string
|
|
2359
|
+
nullable: true
|
|
2360
|
+
description: >-
|
|
2361
|
+
If specified, this id will be used to lookup a transaction by
|
|
2362
|
+
its `import_id` for the purpose of updating the transaction itself.
|
|
2363
|
+
If not specified, an `id` should be supplied. You may not
|
|
2364
|
+
provide both an `id` and an `import_id` and updating an `import_id`
|
|
2365
|
+
on an existing transaction is not allowed.
|
|
2366
|
+
- $ref: "#/components/schemas/SaveTransactionWithOptionalFields"
|
|
2254
2367
|
SaveTransactionWithOptionalFields:
|
|
2255
2368
|
type: object
|
|
2256
2369
|
properties:
|
|
@@ -2307,51 +2420,14 @@ components:
|
|
|
2307
2420
|
type: string
|
|
2308
2421
|
nullable: true
|
|
2309
2422
|
cleared:
|
|
2310
|
-
|
|
2311
|
-
description: The cleared status of the transaction
|
|
2312
|
-
enum:
|
|
2313
|
-
- cleared
|
|
2314
|
-
- uncleared
|
|
2315
|
-
- reconciled
|
|
2423
|
+
$ref: "#/components/schemas/TransactionClearedStatus"
|
|
2316
2424
|
approved:
|
|
2317
2425
|
type: boolean
|
|
2318
2426
|
description: >-
|
|
2319
2427
|
Whether or not the transaction is approved. If not supplied,
|
|
2320
2428
|
transaction will be unapproved by default.
|
|
2321
2429
|
flag_color:
|
|
2322
|
-
|
|
2323
|
-
description: The transaction flag
|
|
2324
|
-
enum:
|
|
2325
|
-
- red
|
|
2326
|
-
- orange
|
|
2327
|
-
- yellow
|
|
2328
|
-
- green
|
|
2329
|
-
- blue
|
|
2330
|
-
- purple
|
|
2331
|
-
- null
|
|
2332
|
-
import_id:
|
|
2333
|
-
maxLength: 36
|
|
2334
|
-
type: string
|
|
2335
|
-
nullable: true
|
|
2336
|
-
description: >-
|
|
2337
|
-
If specified, the new transaction will be assigned this `import_id`
|
|
2338
|
-
and considered "imported". We will also attempt to match this
|
|
2339
|
-
imported transaction to an existing "user-entered" transation on the
|
|
2340
|
-
same account, with the same amount, and with a date +/-10 days from
|
|
2341
|
-
the imported transaction date.<br><br>Transactions imported through
|
|
2342
|
-
File Based Import or Direct Import (not through the API) are
|
|
2343
|
-
assigned an import_id in the format:
|
|
2344
|
-
'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a
|
|
2345
|
-
transaction dated 2015-12-30 in the amount of -$294.23 USD would
|
|
2346
|
-
have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second
|
|
2347
|
-
transaction on the same account was imported and had the same date
|
|
2348
|
-
and same amount, its import_id would be
|
|
2349
|
-
'YNAB:-294230:2015-12-30:2'. Using a consistent format will prevent
|
|
2350
|
-
duplicates through Direct Import and File Based Import.<br><br>If
|
|
2351
|
-
import_id is omitted or specified as null, the transaction will be
|
|
2352
|
-
treated as a "user-entered" transaction. As such, it will be
|
|
2353
|
-
eligible to be matched against transactions later being imported
|
|
2354
|
-
(via DI, FBI, or API).
|
|
2430
|
+
$ref: "#/components/schemas/TransactionFlagColor"
|
|
2355
2431
|
subtransactions:
|
|
2356
2432
|
type: array
|
|
2357
2433
|
description: >-
|
|
@@ -2359,7 +2435,7 @@ components:
|
|
|
2359
2435
|
Updating `subtransactions` on an existing split transaction is not
|
|
2360
2436
|
supported.
|
|
2361
2437
|
items:
|
|
2362
|
-
$ref:
|
|
2438
|
+
$ref: "#/components/schemas/SaveSubTransaction"
|
|
2363
2439
|
SaveSubTransaction:
|
|
2364
2440
|
required:
|
|
2365
2441
|
- amount
|
|
@@ -2412,14 +2488,14 @@ components:
|
|
|
2412
2488
|
items:
|
|
2413
2489
|
type: string
|
|
2414
2490
|
transaction:
|
|
2415
|
-
$ref:
|
|
2491
|
+
$ref: "#/components/schemas/TransactionDetail"
|
|
2416
2492
|
transactions:
|
|
2417
2493
|
type: array
|
|
2418
2494
|
description: >-
|
|
2419
2495
|
If multiple transactions were specified, the transactions that
|
|
2420
2496
|
were saved
|
|
2421
2497
|
items:
|
|
2422
|
-
$ref:
|
|
2498
|
+
$ref: "#/components/schemas/TransactionDetail"
|
|
2423
2499
|
duplicate_import_ids:
|
|
2424
2500
|
type: array
|
|
2425
2501
|
description: >-
|
|
@@ -2443,7 +2519,7 @@ components:
|
|
|
2443
2519
|
type: object
|
|
2444
2520
|
properties:
|
|
2445
2521
|
transaction:
|
|
2446
|
-
$ref:
|
|
2522
|
+
$ref: "#/components/schemas/TransactionDetail"
|
|
2447
2523
|
TransactionSummary:
|
|
2448
2524
|
required:
|
|
2449
2525
|
- account_id
|
|
@@ -2469,27 +2545,14 @@ components:
|
|
|
2469
2545
|
type: string
|
|
2470
2546
|
nullable: true
|
|
2471
2547
|
cleared:
|
|
2472
|
-
|
|
2473
|
-
description: The cleared status of the transaction
|
|
2474
|
-
enum:
|
|
2475
|
-
- cleared
|
|
2476
|
-
- uncleared
|
|
2477
|
-
- reconciled
|
|
2548
|
+
$ref: "#/components/schemas/TransactionClearedStatus"
|
|
2478
2549
|
approved:
|
|
2479
2550
|
type: boolean
|
|
2480
2551
|
description: Whether or not the transaction is approved
|
|
2481
2552
|
flag_color:
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2485
|
-
- red
|
|
2486
|
-
- orange
|
|
2487
|
-
- yellow
|
|
2488
|
-
- green
|
|
2489
|
-
- blue
|
|
2490
|
-
- purple
|
|
2491
|
-
- null
|
|
2492
|
-
nullable: true
|
|
2553
|
+
$ref: "#/components/schemas/TransactionFlagColor"
|
|
2554
|
+
flag_name:
|
|
2555
|
+
$ref: "#/components/schemas/TransactionFlagName"
|
|
2493
2556
|
account_id:
|
|
2494
2557
|
type: string
|
|
2495
2558
|
format: uuid
|
|
@@ -2552,7 +2615,7 @@ components:
|
|
|
2552
2615
|
- fee
|
|
2553
2616
|
- interest
|
|
2554
2617
|
- escrow
|
|
2555
|
-
-
|
|
2618
|
+
- balanceAdjustment
|
|
2556
2619
|
- credit
|
|
2557
2620
|
- charge
|
|
2558
2621
|
- null
|
|
@@ -2564,7 +2627,7 @@ components:
|
|
|
2564
2627
|
transactions will only be included in delta requests.
|
|
2565
2628
|
TransactionDetail:
|
|
2566
2629
|
allOf:
|
|
2567
|
-
- $ref:
|
|
2630
|
+
- $ref: "#/components/schemas/TransactionSummary"
|
|
2568
2631
|
- required:
|
|
2569
2632
|
- account_name
|
|
2570
2633
|
- subtransactions
|
|
@@ -2585,10 +2648,10 @@ components:
|
|
|
2585
2648
|
type: array
|
|
2586
2649
|
description: If a split transaction, the subtransactions.
|
|
2587
2650
|
items:
|
|
2588
|
-
$ref:
|
|
2651
|
+
$ref: "#/components/schemas/SubTransaction"
|
|
2589
2652
|
HybridTransaction:
|
|
2590
2653
|
allOf:
|
|
2591
|
-
- $ref:
|
|
2654
|
+
- $ref: "#/components/schemas/TransactionSummary"
|
|
2592
2655
|
- required:
|
|
2593
2656
|
- account_name
|
|
2594
2657
|
- type
|
|
@@ -2619,13 +2682,47 @@ components:
|
|
|
2619
2682
|
description: >-
|
|
2620
2683
|
The name of the category. If a split transaction, this will be
|
|
2621
2684
|
'Split'.
|
|
2685
|
+
PatchPayeeWrapper:
|
|
2686
|
+
required:
|
|
2687
|
+
- payee
|
|
2688
|
+
type: object
|
|
2689
|
+
properties:
|
|
2690
|
+
payee:
|
|
2691
|
+
$ref: "#/components/schemas/SavePayee"
|
|
2692
|
+
SavePayee:
|
|
2693
|
+
type: object
|
|
2694
|
+
properties:
|
|
2695
|
+
name:
|
|
2696
|
+
type: string
|
|
2697
|
+
nullable: false
|
|
2698
|
+
maxLength: 500
|
|
2699
|
+
description: The name of the payee. The name must be a maximum of 500 characters.
|
|
2700
|
+
PatchCategoryWrapper:
|
|
2701
|
+
required:
|
|
2702
|
+
- category
|
|
2703
|
+
type: object
|
|
2704
|
+
properties:
|
|
2705
|
+
category:
|
|
2706
|
+
$ref: "#/components/schemas/SaveCategory"
|
|
2707
|
+
SaveCategory:
|
|
2708
|
+
type: object
|
|
2709
|
+
properties:
|
|
2710
|
+
name:
|
|
2711
|
+
type: string
|
|
2712
|
+
nullable: true
|
|
2713
|
+
note:
|
|
2714
|
+
type: string
|
|
2715
|
+
nullable: true
|
|
2716
|
+
category_group_id:
|
|
2717
|
+
type: string
|
|
2718
|
+
format: uuid
|
|
2622
2719
|
PatchMonthCategoryWrapper:
|
|
2623
2720
|
required:
|
|
2624
2721
|
- category
|
|
2625
2722
|
type: object
|
|
2626
2723
|
properties:
|
|
2627
2724
|
category:
|
|
2628
|
-
$ref:
|
|
2725
|
+
$ref: "#/components/schemas/SaveMonthCategory"
|
|
2629
2726
|
SaveMonthCategory:
|
|
2630
2727
|
required:
|
|
2631
2728
|
- budgeted
|
|
@@ -2688,7 +2785,7 @@ components:
|
|
|
2688
2785
|
transactions:
|
|
2689
2786
|
type: array
|
|
2690
2787
|
items:
|
|
2691
|
-
$ref:
|
|
2788
|
+
$ref: "#/components/schemas/SaveTransactionWithOptionalFields"
|
|
2692
2789
|
SubTransaction:
|
|
2693
2790
|
required:
|
|
2694
2791
|
- amount
|
|
@@ -2752,7 +2849,7 @@ components:
|
|
|
2752
2849
|
scheduled_transactions:
|
|
2753
2850
|
type: array
|
|
2754
2851
|
items:
|
|
2755
|
-
$ref:
|
|
2852
|
+
$ref: "#/components/schemas/ScheduledTransactionDetail"
|
|
2756
2853
|
server_knowledge:
|
|
2757
2854
|
type: integer
|
|
2758
2855
|
description: The knowledge of the server
|
|
@@ -2768,7 +2865,7 @@ components:
|
|
|
2768
2865
|
type: object
|
|
2769
2866
|
properties:
|
|
2770
2867
|
scheduled_transaction:
|
|
2771
|
-
$ref:
|
|
2868
|
+
$ref: "#/components/schemas/ScheduledTransactionDetail"
|
|
2772
2869
|
ScheduledTransactionSummary:
|
|
2773
2870
|
required:
|
|
2774
2871
|
- account_id
|
|
@@ -2815,17 +2912,9 @@ components:
|
|
|
2815
2912
|
type: string
|
|
2816
2913
|
nullable: true
|
|
2817
2914
|
flag_color:
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
- red
|
|
2822
|
-
- orange
|
|
2823
|
-
- yellow
|
|
2824
|
-
- green
|
|
2825
|
-
- blue
|
|
2826
|
-
- purple
|
|
2827
|
-
- null
|
|
2828
|
-
nullable: true
|
|
2915
|
+
$ref: "#/components/schemas/TransactionFlagColor"
|
|
2916
|
+
flag_name:
|
|
2917
|
+
$ref: "#/components/schemas/TransactionFlagName"
|
|
2829
2918
|
account_id:
|
|
2830
2919
|
type: string
|
|
2831
2920
|
format: uuid
|
|
@@ -2851,7 +2940,7 @@ components:
|
|
|
2851
2940
|
scheduled transactions will only be included in delta requests.
|
|
2852
2941
|
ScheduledTransactionDetail:
|
|
2853
2942
|
allOf:
|
|
2854
|
-
- $ref:
|
|
2943
|
+
- $ref: "#/components/schemas/ScheduledTransactionSummary"
|
|
2855
2944
|
- required:
|
|
2856
2945
|
- account_name
|
|
2857
2946
|
- subtransactions
|
|
@@ -2872,7 +2961,7 @@ components:
|
|
|
2872
2961
|
type: array
|
|
2873
2962
|
description: If a split scheduled transaction, the subtransactions.
|
|
2874
2963
|
items:
|
|
2875
|
-
$ref:
|
|
2964
|
+
$ref: "#/components/schemas/ScheduledSubTransaction"
|
|
2876
2965
|
ScheduledSubTransaction:
|
|
2877
2966
|
required:
|
|
2878
2967
|
- amount
|
|
@@ -2929,7 +3018,7 @@ components:
|
|
|
2929
3018
|
months:
|
|
2930
3019
|
type: array
|
|
2931
3020
|
items:
|
|
2932
|
-
$ref:
|
|
3021
|
+
$ref: "#/components/schemas/MonthSummary"
|
|
2933
3022
|
server_knowledge:
|
|
2934
3023
|
type: integer
|
|
2935
3024
|
description: The knowledge of the server
|
|
@@ -2945,7 +3034,7 @@ components:
|
|
|
2945
3034
|
type: object
|
|
2946
3035
|
properties:
|
|
2947
3036
|
month:
|
|
2948
|
-
$ref:
|
|
3037
|
+
$ref: "#/components/schemas/MonthDetail"
|
|
2949
3038
|
MonthSummary:
|
|
2950
3039
|
required:
|
|
2951
3040
|
- activity
|
|
@@ -2994,7 +3083,7 @@ components:
|
|
|
2994
3083
|
be included in delta requests.
|
|
2995
3084
|
MonthDetail:
|
|
2996
3085
|
allOf:
|
|
2997
|
-
- $ref:
|
|
3086
|
+
- $ref: "#/components/schemas/MonthSummary"
|
|
2998
3087
|
- required:
|
|
2999
3088
|
- categories
|
|
3000
3089
|
type: object
|
|
@@ -3005,7 +3094,30 @@ components:
|
|
|
3005
3094
|
The budget month categories. Amounts (budgeted, activity,
|
|
3006
3095
|
balance, etc.) are specific to the {month} parameter specified.
|
|
3007
3096
|
items:
|
|
3008
|
-
$ref:
|
|
3097
|
+
$ref: "#/components/schemas/Category"
|
|
3098
|
+
TransactionFlagColor:
|
|
3099
|
+
type: string
|
|
3100
|
+
description: The transaction flag
|
|
3101
|
+
enum:
|
|
3102
|
+
- red
|
|
3103
|
+
- orange
|
|
3104
|
+
- yellow
|
|
3105
|
+
- green
|
|
3106
|
+
- blue
|
|
3107
|
+
- purple
|
|
3108
|
+
- null
|
|
3109
|
+
nullable: true
|
|
3110
|
+
TransactionFlagName:
|
|
3111
|
+
type: string
|
|
3112
|
+
description: The customized name of a transaction flag
|
|
3113
|
+
nullable: true
|
|
3114
|
+
TransactionClearedStatus:
|
|
3115
|
+
type: string
|
|
3116
|
+
description: The cleared status of the transaction
|
|
3117
|
+
enum:
|
|
3118
|
+
- cleared
|
|
3119
|
+
- uncleared
|
|
3120
|
+
- reconciled
|
|
3009
3121
|
securitySchemes:
|
|
3010
3122
|
bearer:
|
|
3011
3123
|
type: http
|