ynab 1.31.0 → 2.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 +11 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +42 -0
- data/README.md +3 -3
- data/Rakefile +58 -0
- data/config.json +9 -0
- data/docs/Account.md +25 -0
- data/docs/AccountResponse.md +8 -0
- data/docs/AccountResponseData.md +8 -0
- data/docs/AccountType.md +7 -0
- data/docs/AccountWrapper.md +8 -0
- data/docs/AccountsApi.md +70 -0
- data/docs/AccountsResponse.md +8 -0
- data/docs/AccountsResponseData.md +9 -0
- data/docs/AccountsWrapper.md +9 -0
- data/docs/BudgetDetail.md +24 -0
- data/docs/BudgetDetailAllOf.md +17 -0
- data/docs/BudgetDetailResponse.md +8 -0
- data/docs/BudgetDetailResponseData.md +9 -0
- data/docs/BudgetDetailWrapper.md +9 -0
- data/docs/BudgetSettings.md +9 -0
- data/docs/BudgetSettingsResponse.md +8 -0
- data/docs/BudgetSettingsResponseData.md +8 -0
- data/docs/BudgetSettingsWrapper.md +8 -0
- data/docs/BudgetSummary.md +15 -0
- data/docs/BudgetSummaryResponse.md +8 -0
- data/docs/BudgetSummaryResponseData.md +9 -0
- data/docs/BudgetSummaryWrapper.md +9 -0
- data/docs/BudgetsApi.md +68 -0
- data/docs/BulkIdWrapper.md +8 -0
- data/docs/BulkIds.md +9 -0
- data/docs/BulkResponse.md +8 -0
- data/docs/BulkResponseData.md +8 -0
- data/docs/BulkResponseDataBulk.md +9 -0
- data/docs/BulkTransactionCreateResponse.md +8 -0
- data/docs/BulkTransactionIds.md +8 -0
- data/docs/BulkTransactions.md +8 -0
- data/docs/CategoriesApi.md +94 -0
- data/docs/CategoriesResponse.md +8 -0
- data/docs/CategoriesResponseData.md +9 -0
- data/docs/Category.md +30 -0
- data/docs/CategoryGroup.md +11 -0
- data/docs/CategoryGroupWithCategories.md +12 -0
- data/docs/CategoryGroupWithCategoriesAllOf.md +8 -0
- data/docs/CategoryGroupsWrapper.md +9 -0
- data/docs/CategoryResponse.md +8 -0
- data/docs/CategoryResponseData.md +8 -0
- data/docs/CategoryWrapper.md +9 -0
- data/docs/CurrencyFormat.md +15 -0
- data/docs/DateFormat.md +8 -0
- data/docs/DeprecatedApi.md +28 -0
- data/docs/ErrorDetail.md +10 -0
- data/docs/ErrorResponse.md +8 -0
- data/docs/HybridTransaction.md +30 -0
- data/docs/HybridTransactionAllOf.md +12 -0
- data/docs/HybridTransactionsResponse.md +8 -0
- data/docs/HybridTransactionsResponseData.md +9 -0
- data/docs/HybridTransactionsWrapper.md +8 -0
- data/docs/LoanAccountPeriodicValue.md +7 -0
- data/docs/MonthDetail.md +16 -0
- data/docs/MonthDetailAllOf.md +8 -0
- data/docs/MonthDetailResponse.md +8 -0
- data/docs/MonthDetailResponseData.md +8 -0
- data/docs/MonthDetailWrapper.md +8 -0
- data/docs/MonthSummariesResponse.md +8 -0
- data/docs/MonthSummariesResponseData.md +9 -0
- data/docs/MonthSummariesWrapper.md +9 -0
- data/docs/MonthSummary.md +15 -0
- data/docs/MonthsApi.md +49 -0
- data/docs/PatchMonthCategoryWrapper.md +8 -0
- data/docs/PatchTransactionsWrapper.md +8 -0
- data/docs/Payee.md +11 -0
- data/docs/PayeeLocation.md +12 -0
- data/docs/PayeeLocationResponse.md +8 -0
- data/docs/PayeeLocationResponseData.md +8 -0
- data/docs/PayeeLocationWrapper.md +8 -0
- data/docs/PayeeLocationsApi.md +69 -0
- data/docs/PayeeLocationsResponse.md +8 -0
- data/docs/PayeeLocationsResponseData.md +8 -0
- data/docs/PayeeLocationsWrapper.md +8 -0
- data/docs/PayeeResponse.md +8 -0
- data/docs/PayeeResponseData.md +8 -0
- data/docs/PayeeWrapper.md +8 -0
- data/docs/PayeesApi.md +49 -0
- data/docs/PayeesResponse.md +8 -0
- data/docs/PayeesResponseData.md +9 -0
- data/docs/PayeesWrapper.md +9 -0
- data/docs/PostAccountWrapper.md +8 -0
- data/docs/PostTransactionsWrapper.md +9 -0
- data/docs/PutTransactionWrapper.md +8 -0
- data/docs/SaveAccount.md +10 -0
- data/docs/SaveAccountWrapper.md +8 -0
- data/docs/SaveCategoryResponse.md +8 -0
- data/docs/SaveCategoryResponseData.md +9 -0
- data/docs/SaveMonthCategory.md +8 -0
- data/docs/SaveMonthCategoryWrapper.md +8 -0
- data/docs/SaveSubTransaction.md +12 -0
- data/docs/SaveTransaction.md +19 -0
- data/docs/SaveTransactionWithId.md +20 -0
- data/docs/SaveTransactionWithIdAllOf.md +8 -0
- data/docs/SaveTransactionWithOptionalFields.md +19 -0
- data/docs/SaveTransactionWrapper.md +8 -0
- data/docs/SaveTransactionsResponse.md +8 -0
- data/docs/SaveTransactionsResponseData.md +12 -0
- data/docs/SaveTransactionsWrapper.md +9 -0
- data/docs/ScheduledSubTransaction.md +15 -0
- data/docs/ScheduledTransactionDetail.md +23 -0
- data/docs/ScheduledTransactionDetailAllOf.md +11 -0
- data/docs/ScheduledTransactionResponse.md +8 -0
- data/docs/ScheduledTransactionResponseData.md +8 -0
- data/docs/ScheduledTransactionSummary.md +19 -0
- data/docs/ScheduledTransactionWrapper.md +8 -0
- data/docs/ScheduledTransactionsApi.md +49 -0
- data/docs/ScheduledTransactionsResponse.md +8 -0
- data/docs/ScheduledTransactionsResponseData.md +9 -0
- data/docs/ScheduledTransactionsWrapper.md +8 -0
- data/docs/SubTransaction.md +18 -0
- data/docs/TransactionDetail.md +29 -0
- data/docs/TransactionDetailAllOf.md +11 -0
- data/docs/TransactionResponse.md +8 -0
- data/docs/TransactionResponseData.md +8 -0
- data/docs/TransactionSummary.md +25 -0
- data/docs/TransactionWrapper.md +8 -0
- data/docs/TransactionsApi.md +228 -0
- data/docs/TransactionsImportResponse.md +8 -0
- data/docs/TransactionsImportResponseData.md +8 -0
- data/docs/TransactionsResponse.md +8 -0
- data/docs/TransactionsResponseData.md +9 -0
- data/docs/TransactionsWrapper.md +9 -0
- data/docs/UpdateTransaction.md +20 -0
- data/docs/UpdateTransactionsWrapper.md +8 -0
- data/docs/User.md +8 -0
- data/docs/UserApi.md +25 -0
- data/docs/UserResponse.md +8 -0
- data/docs/UserResponseData.md +8 -0
- data/docs/UserWrapper.md +8 -0
- data/examples/budget-list.rb +21 -0
- data/examples/budget-month.rb +33 -0
- data/examples/category-balance.rb +23 -0
- data/examples/create-multiple-transactions.rb +42 -0
- data/examples/create-transaction.rb +30 -0
- data/examples/update-category-budgeted.rb +25 -0
- data/examples/update-multiple-transactions.rb +20 -0
- data/lib/ynab/api/accounts_api.rb +78 -41
- data/lib/ynab/api/budgets_api.rb +68 -36
- data/lib/ynab/api/categories_api.rb +108 -60
- data/lib/ynab/api/deprecated_api.rb +32 -17
- data/lib/ynab/api/months_api.rb +49 -28
- data/lib/ynab/api/payee_locations_api.rb +73 -41
- data/lib/ynab/api/payees_api.rb +49 -28
- data/lib/ynab/api/scheduled_transactions_api.rb +49 -28
- data/lib/ynab/api/transactions_api.rb +268 -140
- data/lib/ynab/api/user_api.rb +22 -12
- data/lib/ynab/api_client.rb +97 -95
- data/lib/ynab/configuration.rb +101 -14
- data/lib/ynab/models/account.rb +117 -55
- data/lib/ynab/models/account_response.rb +53 -18
- data/lib/ynab/models/account_response_data.rb +53 -18
- data/lib/ynab/models/account_type.rb +30 -20
- data/lib/ynab/models/accounts_response.rb +53 -18
- data/lib/ynab/models/accounts_response_data.rb +54 -19
- data/lib/ynab/models/budget_detail.rb +80 -35
- data/lib/ynab/models/budget_detail_all_of.rb +320 -0
- data/lib/ynab/models/budget_detail_response.rb +53 -18
- data/lib/ynab/models/budget_detail_response_data.rb +54 -19
- data/lib/ynab/models/budget_settings.rb +56 -29
- data/lib/ynab/models/budget_settings_response.rb +53 -18
- data/lib/ynab/models/budget_settings_response_data.rb +53 -18
- data/lib/ynab/models/budget_summary.rb +63 -26
- data/lib/ynab/models/budget_summary_response.rb +53 -18
- data/lib/ynab/models/budget_summary_response_data.rb +54 -20
- data/lib/ynab/models/bulk_response.rb +53 -18
- data/lib/ynab/models/bulk_response_data.rb +53 -18
- data/lib/ynab/models/bulk_response_data_bulk.rb +54 -19
- data/lib/ynab/models/bulk_transactions.rb +53 -18
- data/lib/ynab/models/categories_response.rb +53 -18
- data/lib/ynab/models/categories_response_data.rb +54 -19
- data/lib/ynab/models/category.rb +110 -48
- data/lib/ynab/models/category_group.rb +58 -23
- data/lib/ynab/models/category_group_with_categories.rb +67 -24
- data/lib/ynab/models/{save_month_category_wrapper.rb → category_group_with_categories_all_of.rb} +67 -29
- data/lib/ynab/models/category_response.rb +53 -18
- data/lib/ynab/models/category_response_data.rb +53 -18
- data/lib/ynab/models/currency_format.rb +62 -27
- data/lib/ynab/models/date_format.rb +53 -18
- data/lib/ynab/models/error_detail.rb +55 -20
- data/lib/ynab/models/error_response.rb +53 -18
- data/lib/ynab/models/hybrid_transaction.rb +118 -46
- data/lib/ynab/models/hybrid_transaction_all_of.rb +304 -0
- data/lib/ynab/models/hybrid_transactions_response.rb +53 -18
- data/lib/ynab/models/hybrid_transactions_response_data.rb +54 -19
- data/lib/ynab/models/month_detail.rb +72 -27
- data/lib/ynab/models/{update_transactions_wrapper.rb → month_detail_all_of.rb} +66 -30
- data/lib/ynab/models/month_detail_response.rb +53 -18
- data/lib/ynab/models/month_detail_response_data.rb +53 -18
- data/lib/ynab/models/month_summaries_response.rb +53 -18
- data/lib/ynab/models/month_summaries_response_data.rb +54 -19
- data/lib/ynab/models/month_summary.rb +63 -26
- data/lib/ynab/models/patch_month_category_wrapper.rb +53 -18
- data/lib/ynab/models/patch_transactions_wrapper.rb +53 -18
- data/lib/ynab/models/payee.rb +58 -22
- data/lib/ynab/models/payee_location.rb +58 -23
- data/lib/ynab/models/payee_location_response.rb +53 -18
- data/lib/ynab/models/payee_location_response_data.rb +53 -18
- data/lib/ynab/models/payee_locations_response.rb +53 -18
- data/lib/ynab/models/payee_locations_response_data.rb +53 -18
- data/lib/ynab/models/payee_response.rb +53 -18
- data/lib/ynab/models/payee_response_data.rb +53 -18
- data/lib/ynab/models/payees_response.rb +53 -18
- data/lib/ynab/models/payees_response_data.rb +54 -19
- data/lib/ynab/models/post_account_wrapper.rb +53 -18
- data/lib/ynab/models/post_transactions_wrapper.rb +54 -19
- data/lib/ynab/models/put_transaction_wrapper.rb +53 -18
- data/lib/ynab/models/save_account.rb +77 -20
- data/lib/ynab/models/save_category_response.rb +53 -18
- data/lib/ynab/models/save_category_response_data.rb +54 -19
- data/lib/ynab/models/save_month_category.rb +53 -18
- data/lib/ynab/models/save_sub_transaction.rb +61 -22
- data/lib/ynab/models/save_transaction.rb +88 -33
- data/lib/ynab/models/save_transaction_with_id.rb +102 -46
- data/lib/ynab/models/{save_transactions_wrapper.rb → save_transaction_with_id_all_of.rb} +60 -36
- data/lib/ynab/models/save_transaction_with_optional_fields.rb +81 -33
- data/lib/ynab/models/save_transactions_response.rb +53 -18
- data/lib/ynab/models/save_transactions_response_data.rb +57 -23
- data/lib/ynab/models/scheduled_sub_transaction.rb +66 -27
- data/lib/ynab/models/scheduled_transaction_detail.rb +94 -36
- data/lib/ynab/models/scheduled_transaction_detail_all_of.rb +262 -0
- data/lib/ynab/models/scheduled_transaction_response.rb +53 -18
- data/lib/ynab/models/scheduled_transaction_response_data.rb +53 -18
- data/lib/ynab/models/scheduled_transaction_summary.rb +80 -32
- data/lib/ynab/models/scheduled_transactions_response.rb +53 -18
- data/lib/ynab/models/scheduled_transactions_response_data.rb +54 -19
- data/lib/ynab/models/sub_transaction.rb +71 -29
- data/lib/ynab/models/transaction_detail.rb +112 -44
- data/lib/ynab/models/{save_transaction_wrapper.rb → transaction_detail_all_of.rb} +102 -29
- data/lib/ynab/models/transaction_response.rb +53 -18
- data/lib/ynab/models/transaction_response_data.rb +53 -18
- data/lib/ynab/models/transaction_summary.rb +98 -40
- data/lib/ynab/models/transactions_import_response.rb +53 -18
- data/lib/ynab/models/transactions_import_response_data.rb +53 -18
- data/lib/ynab/models/transactions_response.rb +53 -18
- data/lib/ynab/models/transactions_response_data.rb +54 -19
- data/lib/ynab/models/user.rb +53 -18
- data/lib/ynab/models/user_response.rb +53 -18
- data/lib/ynab/models/user_response_data.rb +53 -18
- data/lib/ynab/version.rb +1 -1
- data/lib/ynab.rb +19 -14
- data/open_api_spec.yaml +3012 -0
- data/templates/api_client.mustache +274 -0
- data/templates/api_client_typhoeus_partial.mustache +156 -0
- data/templates/api_doc.mustache +44 -0
- data/templates/gem.mustache +84 -0
- data/templates/partial_model_generic_doc.mustache +9 -0
- data/ynab.gemspec +38 -0
- metadata +192 -85
- data/lib/ynab/models/loan_account_periodic_value.rb +0 -175
- data/lib/ynab/models/save_account_wrapper.rb +0 -189
- data/lib/ynab/models/update_transaction.rb +0 -407
- data/spec/models/transaction_detail_spec.rb +0 -11
data/open_api_spec.yaml
ADDED
|
@@ -0,0 +1,3012 @@
|
|
|
1
|
+
openapi: 3.0.0
|
|
2
|
+
info:
|
|
3
|
+
title: YNAB API Endpoints
|
|
4
|
+
description: >-
|
|
5
|
+
Our API uses a REST based design, leverages the JSON data format, and relies
|
|
6
|
+
upon HTTPS for transport. We respond with meaningful HTTP response codes and
|
|
7
|
+
if an error occurs, we include error details in the response body. API
|
|
8
|
+
Documentation is at https://api.ynab.com
|
|
9
|
+
version: 1.0.0
|
|
10
|
+
servers:
|
|
11
|
+
- url: https://api.ynab.com/v1
|
|
12
|
+
security:
|
|
13
|
+
- bearer: []
|
|
14
|
+
tags:
|
|
15
|
+
- name: User
|
|
16
|
+
- name: Budgets
|
|
17
|
+
- name: Accounts
|
|
18
|
+
description: The accounts for a budget
|
|
19
|
+
- name: Categories
|
|
20
|
+
description: The categories for a budget
|
|
21
|
+
- name: Payees
|
|
22
|
+
description: The payees for a budget
|
|
23
|
+
- name: Payee Locations
|
|
24
|
+
description: >-
|
|
25
|
+
When you enter a transaction and specify a payee on the YNAB mobile apps,
|
|
26
|
+
the GPS coordinates for that location are stored, with your permission, so
|
|
27
|
+
that the next time you are in the same place (like the Grocery store) we
|
|
28
|
+
can pre-populate nearby payees for you! It’s handy and saves you time.
|
|
29
|
+
This resource makes these locations available. Locations will not be
|
|
30
|
+
available for all payees.
|
|
31
|
+
- name: Months
|
|
32
|
+
description: >-
|
|
33
|
+
Each budget contains one or more months, which is where Ready to Assign,
|
|
34
|
+
Age of Money and category (budgeted / activity / balances) amounts are
|
|
35
|
+
available.
|
|
36
|
+
- name: Transactions
|
|
37
|
+
description: The transactions for a budget
|
|
38
|
+
- name: Scheduled Transactions
|
|
39
|
+
description: The scheduled transactions for a budget
|
|
40
|
+
paths:
|
|
41
|
+
/user:
|
|
42
|
+
get:
|
|
43
|
+
tags:
|
|
44
|
+
- User
|
|
45
|
+
summary: User info
|
|
46
|
+
description: Returns authenticated user information
|
|
47
|
+
operationId: getUser
|
|
48
|
+
responses:
|
|
49
|
+
'200':
|
|
50
|
+
description: The user info
|
|
51
|
+
content:
|
|
52
|
+
application/json:
|
|
53
|
+
schema:
|
|
54
|
+
$ref: '#/components/schemas/UserResponse'
|
|
55
|
+
default:
|
|
56
|
+
description: An error occurred
|
|
57
|
+
content:
|
|
58
|
+
application/json:
|
|
59
|
+
schema:
|
|
60
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
61
|
+
/budgets:
|
|
62
|
+
get:
|
|
63
|
+
tags:
|
|
64
|
+
- Budgets
|
|
65
|
+
summary: List budgets
|
|
66
|
+
description: Returns budgets list with summary information
|
|
67
|
+
operationId: getBudgets
|
|
68
|
+
parameters:
|
|
69
|
+
- name: include_accounts
|
|
70
|
+
in: query
|
|
71
|
+
description: Whether to include the list of budget accounts
|
|
72
|
+
schema:
|
|
73
|
+
type: boolean
|
|
74
|
+
responses:
|
|
75
|
+
'200':
|
|
76
|
+
description: The list of budgets
|
|
77
|
+
content:
|
|
78
|
+
application/json:
|
|
79
|
+
schema:
|
|
80
|
+
$ref: '#/components/schemas/BudgetSummaryResponse'
|
|
81
|
+
'404':
|
|
82
|
+
description: No budgets were found
|
|
83
|
+
content:
|
|
84
|
+
application/json:
|
|
85
|
+
schema:
|
|
86
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
87
|
+
default:
|
|
88
|
+
description: An error occurred
|
|
89
|
+
content:
|
|
90
|
+
application/json:
|
|
91
|
+
schema:
|
|
92
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
93
|
+
/budgets/{budget_id}:
|
|
94
|
+
get:
|
|
95
|
+
tags:
|
|
96
|
+
- Budgets
|
|
97
|
+
summary: Single budget
|
|
98
|
+
description: >-
|
|
99
|
+
Returns a single budget with all related entities. This resource is
|
|
100
|
+
effectively a full budget export.
|
|
101
|
+
operationId: getBudgetById
|
|
102
|
+
parameters:
|
|
103
|
+
- name: budget_id
|
|
104
|
+
in: path
|
|
105
|
+
description: >-
|
|
106
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
107
|
+
used budget and "default" can be used if default budget selection is
|
|
108
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
109
|
+
required: true
|
|
110
|
+
schema:
|
|
111
|
+
type: string
|
|
112
|
+
- name: last_knowledge_of_server
|
|
113
|
+
in: query
|
|
114
|
+
description: >-
|
|
115
|
+
The starting server knowledge. If provided, only entities that have
|
|
116
|
+
changed since `last_knowledge_of_server` will be included.
|
|
117
|
+
schema:
|
|
118
|
+
type: integer
|
|
119
|
+
format: int64
|
|
120
|
+
responses:
|
|
121
|
+
'200':
|
|
122
|
+
description: The requested budget
|
|
123
|
+
content:
|
|
124
|
+
application/json:
|
|
125
|
+
schema:
|
|
126
|
+
$ref: '#/components/schemas/BudgetDetailResponse'
|
|
127
|
+
'404':
|
|
128
|
+
description: The specified budget was not found
|
|
129
|
+
content:
|
|
130
|
+
application/json:
|
|
131
|
+
schema:
|
|
132
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
133
|
+
default:
|
|
134
|
+
description: An error occurred
|
|
135
|
+
content:
|
|
136
|
+
application/json:
|
|
137
|
+
schema:
|
|
138
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
139
|
+
/budgets/{budget_id}/settings:
|
|
140
|
+
get:
|
|
141
|
+
tags:
|
|
142
|
+
- Budgets
|
|
143
|
+
summary: Budget Settings
|
|
144
|
+
description: Returns settings for a budget
|
|
145
|
+
operationId: getBudgetSettingsById
|
|
146
|
+
parameters:
|
|
147
|
+
- name: budget_id
|
|
148
|
+
in: path
|
|
149
|
+
description: >-
|
|
150
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
151
|
+
used budget and "default" can be used if default budget selection is
|
|
152
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
153
|
+
required: true
|
|
154
|
+
schema:
|
|
155
|
+
type: string
|
|
156
|
+
responses:
|
|
157
|
+
'200':
|
|
158
|
+
description: The requested budget settings
|
|
159
|
+
content:
|
|
160
|
+
application/json:
|
|
161
|
+
schema:
|
|
162
|
+
$ref: '#/components/schemas/BudgetSettingsResponse'
|
|
163
|
+
'404':
|
|
164
|
+
description: The specified Budget was not found
|
|
165
|
+
content:
|
|
166
|
+
application/json:
|
|
167
|
+
schema:
|
|
168
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
169
|
+
default:
|
|
170
|
+
description: An error occurred
|
|
171
|
+
content:
|
|
172
|
+
application/json:
|
|
173
|
+
schema:
|
|
174
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
175
|
+
/budgets/{budget_id}/accounts:
|
|
176
|
+
get:
|
|
177
|
+
tags:
|
|
178
|
+
- Accounts
|
|
179
|
+
summary: Account list
|
|
180
|
+
description: Returns all accounts
|
|
181
|
+
operationId: getAccounts
|
|
182
|
+
parameters:
|
|
183
|
+
- name: budget_id
|
|
184
|
+
in: path
|
|
185
|
+
description: >-
|
|
186
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
187
|
+
used budget and "default" can be used if default budget selection is
|
|
188
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
189
|
+
required: true
|
|
190
|
+
schema:
|
|
191
|
+
type: string
|
|
192
|
+
- name: last_knowledge_of_server
|
|
193
|
+
in: query
|
|
194
|
+
description: >-
|
|
195
|
+
The starting server knowledge. If provided, only entities that have
|
|
196
|
+
changed since `last_knowledge_of_server` will be included.
|
|
197
|
+
schema:
|
|
198
|
+
type: integer
|
|
199
|
+
format: int64
|
|
200
|
+
responses:
|
|
201
|
+
'200':
|
|
202
|
+
description: The list of requested accounts
|
|
203
|
+
content:
|
|
204
|
+
application/json:
|
|
205
|
+
schema:
|
|
206
|
+
$ref: '#/components/schemas/AccountsResponse'
|
|
207
|
+
'404':
|
|
208
|
+
description: No accounts were found
|
|
209
|
+
content:
|
|
210
|
+
application/json:
|
|
211
|
+
schema:
|
|
212
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
213
|
+
default:
|
|
214
|
+
description: An error occurred
|
|
215
|
+
content:
|
|
216
|
+
application/json:
|
|
217
|
+
schema:
|
|
218
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
219
|
+
post:
|
|
220
|
+
tags:
|
|
221
|
+
- Accounts
|
|
222
|
+
summary: Create a new account
|
|
223
|
+
description: Creates a new account
|
|
224
|
+
operationId: createAccount
|
|
225
|
+
parameters:
|
|
226
|
+
- name: budget_id
|
|
227
|
+
in: path
|
|
228
|
+
description: >-
|
|
229
|
+
The id of the budget ("last-used" can be used to specify the last
|
|
230
|
+
used budget and "default" can be used if default budget selection is
|
|
231
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget)
|
|
232
|
+
required: true
|
|
233
|
+
schema:
|
|
234
|
+
type: string
|
|
235
|
+
requestBody:
|
|
236
|
+
description: The account to create.
|
|
237
|
+
content:
|
|
238
|
+
'application/json':
|
|
239
|
+
schema:
|
|
240
|
+
$ref: '#/components/schemas/PostAccountWrapper'
|
|
241
|
+
required: true
|
|
242
|
+
responses:
|
|
243
|
+
'201':
|
|
244
|
+
description: The account was successfully created
|
|
245
|
+
content:
|
|
246
|
+
application/json:
|
|
247
|
+
schema:
|
|
248
|
+
$ref: '#/components/schemas/AccountResponse'
|
|
249
|
+
'400':
|
|
250
|
+
description: >-
|
|
251
|
+
The request could not be understood due to malformed syntax or
|
|
252
|
+
validation error(s).
|
|
253
|
+
content:
|
|
254
|
+
application/json:
|
|
255
|
+
schema:
|
|
256
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
257
|
+
x-codegen-request-body-name: data
|
|
258
|
+
/budgets/{budget_id}/accounts/{account_id}:
|
|
259
|
+
get:
|
|
260
|
+
tags:
|
|
261
|
+
- Accounts
|
|
262
|
+
summary: Single account
|
|
263
|
+
description: Returns a single account
|
|
264
|
+
operationId: getAccountById
|
|
265
|
+
parameters:
|
|
266
|
+
- name: budget_id
|
|
267
|
+
in: path
|
|
268
|
+
description: >-
|
|
269
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
270
|
+
used budget and "default" can be used if default budget selection is
|
|
271
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
272
|
+
required: true
|
|
273
|
+
schema:
|
|
274
|
+
type: string
|
|
275
|
+
- name: account_id
|
|
276
|
+
in: path
|
|
277
|
+
description: The id of the account
|
|
278
|
+
required: true
|
|
279
|
+
schema:
|
|
280
|
+
type: string
|
|
281
|
+
format: uuid
|
|
282
|
+
responses:
|
|
283
|
+
'200':
|
|
284
|
+
description: The requested account
|
|
285
|
+
content:
|
|
286
|
+
application/json:
|
|
287
|
+
schema:
|
|
288
|
+
$ref: '#/components/schemas/AccountResponse'
|
|
289
|
+
'404':
|
|
290
|
+
description: The requested account was not found
|
|
291
|
+
content:
|
|
292
|
+
application/json:
|
|
293
|
+
schema:
|
|
294
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
295
|
+
default:
|
|
296
|
+
description: An error occurred
|
|
297
|
+
content:
|
|
298
|
+
application/json:
|
|
299
|
+
schema:
|
|
300
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
301
|
+
/budgets/{budget_id}/categories:
|
|
302
|
+
get:
|
|
303
|
+
tags:
|
|
304
|
+
- Categories
|
|
305
|
+
summary: List categories
|
|
306
|
+
description: >-
|
|
307
|
+
Returns all categories grouped by category group. Amounts (budgeted,
|
|
308
|
+
activity, balance, etc.) are specific to the current budget month (UTC).
|
|
309
|
+
operationId: getCategories
|
|
310
|
+
parameters:
|
|
311
|
+
- name: budget_id
|
|
312
|
+
in: path
|
|
313
|
+
description: >-
|
|
314
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
315
|
+
used budget and "default" can be used if default budget selection is
|
|
316
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
317
|
+
required: true
|
|
318
|
+
schema:
|
|
319
|
+
type: string
|
|
320
|
+
- name: last_knowledge_of_server
|
|
321
|
+
in: query
|
|
322
|
+
description: >-
|
|
323
|
+
The starting server knowledge. If provided, only entities that have
|
|
324
|
+
changed since `last_knowledge_of_server` will be included.
|
|
325
|
+
schema:
|
|
326
|
+
type: integer
|
|
327
|
+
format: int64
|
|
328
|
+
responses:
|
|
329
|
+
'200':
|
|
330
|
+
description: The categories grouped by category group
|
|
331
|
+
content:
|
|
332
|
+
application/json:
|
|
333
|
+
schema:
|
|
334
|
+
$ref: '#/components/schemas/CategoriesResponse'
|
|
335
|
+
'404':
|
|
336
|
+
description: No categories were found
|
|
337
|
+
content:
|
|
338
|
+
application/json:
|
|
339
|
+
schema:
|
|
340
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
341
|
+
default:
|
|
342
|
+
description: An error occurred
|
|
343
|
+
content:
|
|
344
|
+
application/json:
|
|
345
|
+
schema:
|
|
346
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
347
|
+
/budgets/{budget_id}/categories/{category_id}:
|
|
348
|
+
get:
|
|
349
|
+
tags:
|
|
350
|
+
- Categories
|
|
351
|
+
summary: Single category
|
|
352
|
+
description: >-
|
|
353
|
+
Returns a single category. Amounts (budgeted, activity, balance, etc.)
|
|
354
|
+
are specific to the current budget month (UTC).
|
|
355
|
+
operationId: getCategoryById
|
|
356
|
+
parameters:
|
|
357
|
+
- name: budget_id
|
|
358
|
+
in: path
|
|
359
|
+
description: >-
|
|
360
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
361
|
+
used budget and "default" can be used if default budget selection is
|
|
362
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
363
|
+
required: true
|
|
364
|
+
schema:
|
|
365
|
+
type: string
|
|
366
|
+
- name: category_id
|
|
367
|
+
in: path
|
|
368
|
+
description: The id of the category
|
|
369
|
+
required: true
|
|
370
|
+
schema:
|
|
371
|
+
type: string
|
|
372
|
+
responses:
|
|
373
|
+
'200':
|
|
374
|
+
description: The requested category
|
|
375
|
+
content:
|
|
376
|
+
application/json:
|
|
377
|
+
schema:
|
|
378
|
+
$ref: '#/components/schemas/CategoryResponse'
|
|
379
|
+
'404':
|
|
380
|
+
description: The category not was found
|
|
381
|
+
content:
|
|
382
|
+
application/json:
|
|
383
|
+
schema:
|
|
384
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
385
|
+
default:
|
|
386
|
+
description: An error occurred
|
|
387
|
+
content:
|
|
388
|
+
application/json:
|
|
389
|
+
schema:
|
|
390
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
391
|
+
/budgets/{budget_id}/months/{month}/categories/{category_id}:
|
|
392
|
+
get:
|
|
393
|
+
tags:
|
|
394
|
+
- Categories
|
|
395
|
+
summary: Single category for a specific budget month
|
|
396
|
+
description: >-
|
|
397
|
+
Returns a single category for a specific budget month. Amounts
|
|
398
|
+
(budgeted, activity, balance, etc.) are specific to the current budget
|
|
399
|
+
month (UTC).
|
|
400
|
+
operationId: getMonthCategoryById
|
|
401
|
+
parameters:
|
|
402
|
+
- name: budget_id
|
|
403
|
+
in: path
|
|
404
|
+
description: >-
|
|
405
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
406
|
+
used budget and "default" can be used if default budget selection is
|
|
407
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
408
|
+
required: true
|
|
409
|
+
schema:
|
|
410
|
+
type: string
|
|
411
|
+
- name: month
|
|
412
|
+
in: path
|
|
413
|
+
description: >-
|
|
414
|
+
The budget month in ISO format (e.g. 2016-12-01) ("current" can also
|
|
415
|
+
be used to specify the current calendar month (UTC))
|
|
416
|
+
required: true
|
|
417
|
+
schema:
|
|
418
|
+
type: string
|
|
419
|
+
format: date
|
|
420
|
+
- name: category_id
|
|
421
|
+
in: path
|
|
422
|
+
description: The id of the category
|
|
423
|
+
required: true
|
|
424
|
+
schema:
|
|
425
|
+
type: string
|
|
426
|
+
responses:
|
|
427
|
+
'200':
|
|
428
|
+
description: The requested month category
|
|
429
|
+
content:
|
|
430
|
+
application/json:
|
|
431
|
+
schema:
|
|
432
|
+
$ref: '#/components/schemas/CategoryResponse'
|
|
433
|
+
'404':
|
|
434
|
+
description: The month category was not was found
|
|
435
|
+
content:
|
|
436
|
+
application/json:
|
|
437
|
+
schema:
|
|
438
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
439
|
+
default:
|
|
440
|
+
description: An error occurred
|
|
441
|
+
content:
|
|
442
|
+
application/json:
|
|
443
|
+
schema:
|
|
444
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
445
|
+
patch:
|
|
446
|
+
tags:
|
|
447
|
+
- Categories
|
|
448
|
+
summary: Update a category for a specific month
|
|
449
|
+
description: >-
|
|
450
|
+
Update a category for a specific month. Only `budgeted` amount can be
|
|
451
|
+
updated.
|
|
452
|
+
operationId: updateMonthCategory
|
|
453
|
+
parameters:
|
|
454
|
+
- name: budget_id
|
|
455
|
+
in: path
|
|
456
|
+
description: >-
|
|
457
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
458
|
+
used budget and "default" can be used if default budget selection is
|
|
459
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
460
|
+
required: true
|
|
461
|
+
schema:
|
|
462
|
+
type: string
|
|
463
|
+
- name: month
|
|
464
|
+
in: path
|
|
465
|
+
description: >-
|
|
466
|
+
The budget month in ISO format (e.g. 2016-12-01) ("current" can also
|
|
467
|
+
be used to specify the current calendar month (UTC))
|
|
468
|
+
required: true
|
|
469
|
+
schema:
|
|
470
|
+
type: string
|
|
471
|
+
format: date
|
|
472
|
+
- name: category_id
|
|
473
|
+
in: path
|
|
474
|
+
description: The id of the category
|
|
475
|
+
required: true
|
|
476
|
+
schema:
|
|
477
|
+
type: string
|
|
478
|
+
requestBody:
|
|
479
|
+
description: >-
|
|
480
|
+
The category to update. Only `budgeted` amount can be updated and any
|
|
481
|
+
other fields specified will be ignored.
|
|
482
|
+
content:
|
|
483
|
+
'application/json':
|
|
484
|
+
schema:
|
|
485
|
+
$ref: '#/components/schemas/PatchMonthCategoryWrapper'
|
|
486
|
+
required: true
|
|
487
|
+
responses:
|
|
488
|
+
'200':
|
|
489
|
+
description: The month category was successfully updated
|
|
490
|
+
content:
|
|
491
|
+
application/json:
|
|
492
|
+
schema:
|
|
493
|
+
$ref: '#/components/schemas/SaveCategoryResponse'
|
|
494
|
+
'400':
|
|
495
|
+
description: >-
|
|
496
|
+
The request could not be understood due to malformed syntax or
|
|
497
|
+
validation error(s)
|
|
498
|
+
content:
|
|
499
|
+
application/json:
|
|
500
|
+
schema:
|
|
501
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
502
|
+
x-codegen-request-body-name: data
|
|
503
|
+
/budgets/{budget_id}/payees:
|
|
504
|
+
get:
|
|
505
|
+
tags:
|
|
506
|
+
- Payees
|
|
507
|
+
summary: List payees
|
|
508
|
+
description: Returns all payees
|
|
509
|
+
operationId: getPayees
|
|
510
|
+
parameters:
|
|
511
|
+
- name: budget_id
|
|
512
|
+
in: path
|
|
513
|
+
description: >-
|
|
514
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
515
|
+
used budget and "default" can be used if default budget selection is
|
|
516
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
517
|
+
required: true
|
|
518
|
+
schema:
|
|
519
|
+
type: string
|
|
520
|
+
- name: last_knowledge_of_server
|
|
521
|
+
in: query
|
|
522
|
+
description: >-
|
|
523
|
+
The starting server knowledge. If provided, only entities that have
|
|
524
|
+
changed since `last_knowledge_of_server` will be included.
|
|
525
|
+
schema:
|
|
526
|
+
type: integer
|
|
527
|
+
format: int64
|
|
528
|
+
responses:
|
|
529
|
+
'200':
|
|
530
|
+
description: The requested list of payees
|
|
531
|
+
content:
|
|
532
|
+
application/json:
|
|
533
|
+
schema:
|
|
534
|
+
$ref: '#/components/schemas/PayeesResponse'
|
|
535
|
+
'404':
|
|
536
|
+
description: No payees were found
|
|
537
|
+
content:
|
|
538
|
+
application/json:
|
|
539
|
+
schema:
|
|
540
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
541
|
+
default:
|
|
542
|
+
description: An error occurred
|
|
543
|
+
content:
|
|
544
|
+
application/json:
|
|
545
|
+
schema:
|
|
546
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
547
|
+
/budgets/{budget_id}/payees/{payee_id}:
|
|
548
|
+
get:
|
|
549
|
+
tags:
|
|
550
|
+
- Payees
|
|
551
|
+
summary: Single payee
|
|
552
|
+
description: Returns a single payee
|
|
553
|
+
operationId: getPayeeById
|
|
554
|
+
parameters:
|
|
555
|
+
- name: budget_id
|
|
556
|
+
in: path
|
|
557
|
+
description: >-
|
|
558
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
559
|
+
used budget and "default" can be used if default budget selection is
|
|
560
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
561
|
+
required: true
|
|
562
|
+
schema:
|
|
563
|
+
type: string
|
|
564
|
+
- name: payee_id
|
|
565
|
+
in: path
|
|
566
|
+
description: The id of the payee
|
|
567
|
+
required: true
|
|
568
|
+
schema:
|
|
569
|
+
type: string
|
|
570
|
+
responses:
|
|
571
|
+
'200':
|
|
572
|
+
description: The requested payee
|
|
573
|
+
content:
|
|
574
|
+
application/json:
|
|
575
|
+
schema:
|
|
576
|
+
$ref: '#/components/schemas/PayeeResponse'
|
|
577
|
+
'404':
|
|
578
|
+
description: The payee was not found
|
|
579
|
+
content:
|
|
580
|
+
application/json:
|
|
581
|
+
schema:
|
|
582
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
583
|
+
default:
|
|
584
|
+
description: An error occurred
|
|
585
|
+
content:
|
|
586
|
+
application/json:
|
|
587
|
+
schema:
|
|
588
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
589
|
+
/budgets/{budget_id}/payee_locations:
|
|
590
|
+
get:
|
|
591
|
+
tags:
|
|
592
|
+
- Payee Locations
|
|
593
|
+
summary: List payee locations
|
|
594
|
+
description: Returns all payee locations
|
|
595
|
+
operationId: getPayeeLocations
|
|
596
|
+
parameters:
|
|
597
|
+
- name: budget_id
|
|
598
|
+
in: path
|
|
599
|
+
description: >-
|
|
600
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
601
|
+
used budget and "default" can be used if default budget selection is
|
|
602
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
603
|
+
required: true
|
|
604
|
+
schema:
|
|
605
|
+
type: string
|
|
606
|
+
responses:
|
|
607
|
+
'200':
|
|
608
|
+
description: The list of payee locations
|
|
609
|
+
content:
|
|
610
|
+
application/json:
|
|
611
|
+
schema:
|
|
612
|
+
$ref: '#/components/schemas/PayeeLocationsResponse'
|
|
613
|
+
'404':
|
|
614
|
+
description: No payees locations were found
|
|
615
|
+
content:
|
|
616
|
+
application/json:
|
|
617
|
+
schema:
|
|
618
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
619
|
+
default:
|
|
620
|
+
description: An error occurred
|
|
621
|
+
content:
|
|
622
|
+
application/json:
|
|
623
|
+
schema:
|
|
624
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
625
|
+
/budgets/{budget_id}/payee_locations/{payee_location_id}:
|
|
626
|
+
get:
|
|
627
|
+
tags:
|
|
628
|
+
- Payee Locations
|
|
629
|
+
summary: Single payee location
|
|
630
|
+
description: Returns a single payee location
|
|
631
|
+
operationId: getPayeeLocationById
|
|
632
|
+
parameters:
|
|
633
|
+
- name: budget_id
|
|
634
|
+
in: path
|
|
635
|
+
description: >-
|
|
636
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
637
|
+
used budget and "default" can be used if default budget selection is
|
|
638
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
639
|
+
required: true
|
|
640
|
+
schema:
|
|
641
|
+
type: string
|
|
642
|
+
- name: payee_location_id
|
|
643
|
+
in: path
|
|
644
|
+
description: id of payee location
|
|
645
|
+
required: true
|
|
646
|
+
schema:
|
|
647
|
+
type: string
|
|
648
|
+
responses:
|
|
649
|
+
'200':
|
|
650
|
+
description: The payee location
|
|
651
|
+
content:
|
|
652
|
+
application/json:
|
|
653
|
+
schema:
|
|
654
|
+
$ref: '#/components/schemas/PayeeLocationResponse'
|
|
655
|
+
'404':
|
|
656
|
+
description: The payee location was not found
|
|
657
|
+
content:
|
|
658
|
+
application/json:
|
|
659
|
+
schema:
|
|
660
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
661
|
+
default:
|
|
662
|
+
description: An error occurred
|
|
663
|
+
content:
|
|
664
|
+
application/json:
|
|
665
|
+
schema:
|
|
666
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
667
|
+
/budgets/{budget_id}/payees/{payee_id}/payee_locations:
|
|
668
|
+
get:
|
|
669
|
+
tags:
|
|
670
|
+
- Payee Locations
|
|
671
|
+
summary: List locations for a payee
|
|
672
|
+
description: Returns all payee locations for a specified payee
|
|
673
|
+
operationId: getPayeeLocationsByPayee
|
|
674
|
+
parameters:
|
|
675
|
+
- name: budget_id
|
|
676
|
+
in: path
|
|
677
|
+
description: >-
|
|
678
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
679
|
+
used budget and "default" can be used if default budget selection is
|
|
680
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
681
|
+
required: true
|
|
682
|
+
schema:
|
|
683
|
+
type: string
|
|
684
|
+
- name: payee_id
|
|
685
|
+
in: path
|
|
686
|
+
description: id of payee
|
|
687
|
+
required: true
|
|
688
|
+
schema:
|
|
689
|
+
type: string
|
|
690
|
+
responses:
|
|
691
|
+
'200':
|
|
692
|
+
description: The list of requested payee locations
|
|
693
|
+
content:
|
|
694
|
+
application/json:
|
|
695
|
+
schema:
|
|
696
|
+
$ref: '#/components/schemas/PayeeLocationsResponse'
|
|
697
|
+
'404':
|
|
698
|
+
description: No payees locations were found
|
|
699
|
+
content:
|
|
700
|
+
application/json:
|
|
701
|
+
schema:
|
|
702
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
703
|
+
default:
|
|
704
|
+
description: An error occurred
|
|
705
|
+
content:
|
|
706
|
+
application/json:
|
|
707
|
+
schema:
|
|
708
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
709
|
+
/budgets/{budget_id}/months:
|
|
710
|
+
get:
|
|
711
|
+
tags:
|
|
712
|
+
- Months
|
|
713
|
+
summary: List budget months
|
|
714
|
+
description: Returns all budget months
|
|
715
|
+
operationId: getBudgetMonths
|
|
716
|
+
parameters:
|
|
717
|
+
- name: budget_id
|
|
718
|
+
in: path
|
|
719
|
+
description: >-
|
|
720
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
721
|
+
used budget and "default" can be used if default budget selection is
|
|
722
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
723
|
+
required: true
|
|
724
|
+
schema:
|
|
725
|
+
type: string
|
|
726
|
+
- name: last_knowledge_of_server
|
|
727
|
+
in: query
|
|
728
|
+
description: >-
|
|
729
|
+
The starting server knowledge. If provided, only entities that have
|
|
730
|
+
changed since `last_knowledge_of_server` will be included.
|
|
731
|
+
schema:
|
|
732
|
+
type: integer
|
|
733
|
+
format: int64
|
|
734
|
+
responses:
|
|
735
|
+
'200':
|
|
736
|
+
description: The list of budget months
|
|
737
|
+
content:
|
|
738
|
+
application/json:
|
|
739
|
+
schema:
|
|
740
|
+
$ref: '#/components/schemas/MonthSummariesResponse'
|
|
741
|
+
'404':
|
|
742
|
+
description: No budget months were found
|
|
743
|
+
content:
|
|
744
|
+
application/json:
|
|
745
|
+
schema:
|
|
746
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
747
|
+
default:
|
|
748
|
+
description: An error occurred
|
|
749
|
+
content:
|
|
750
|
+
application/json:
|
|
751
|
+
schema:
|
|
752
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
753
|
+
/budgets/{budget_id}/months/{month}:
|
|
754
|
+
get:
|
|
755
|
+
tags:
|
|
756
|
+
- Months
|
|
757
|
+
summary: Single budget month
|
|
758
|
+
description: Returns a single budget month
|
|
759
|
+
operationId: getBudgetMonth
|
|
760
|
+
parameters:
|
|
761
|
+
- name: budget_id
|
|
762
|
+
in: path
|
|
763
|
+
description: >-
|
|
764
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
765
|
+
used budget and "default" can be used if default budget selection is
|
|
766
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
767
|
+
required: true
|
|
768
|
+
schema:
|
|
769
|
+
type: string
|
|
770
|
+
- name: month
|
|
771
|
+
in: path
|
|
772
|
+
description: >-
|
|
773
|
+
The budget month in ISO format (e.g. 2016-12-01) ("current" can also
|
|
774
|
+
be used to specify the current calendar month (UTC))
|
|
775
|
+
required: true
|
|
776
|
+
schema:
|
|
777
|
+
type: string
|
|
778
|
+
format: date
|
|
779
|
+
responses:
|
|
780
|
+
'200':
|
|
781
|
+
description: The budget month detail
|
|
782
|
+
content:
|
|
783
|
+
application/json:
|
|
784
|
+
schema:
|
|
785
|
+
$ref: '#/components/schemas/MonthDetailResponse'
|
|
786
|
+
'404':
|
|
787
|
+
description: The budget month was not found
|
|
788
|
+
content:
|
|
789
|
+
application/json:
|
|
790
|
+
schema:
|
|
791
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
792
|
+
default:
|
|
793
|
+
description: An error occurred
|
|
794
|
+
content:
|
|
795
|
+
application/json:
|
|
796
|
+
schema:
|
|
797
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
798
|
+
/budgets/{budget_id}/transactions:
|
|
799
|
+
get:
|
|
800
|
+
tags:
|
|
801
|
+
- Transactions
|
|
802
|
+
summary: List transactions
|
|
803
|
+
description: Returns budget transactions
|
|
804
|
+
operationId: getTransactions
|
|
805
|
+
parameters:
|
|
806
|
+
- name: budget_id
|
|
807
|
+
in: path
|
|
808
|
+
description: >-
|
|
809
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
810
|
+
used budget and "default" can be used if default budget selection is
|
|
811
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
812
|
+
required: true
|
|
813
|
+
schema:
|
|
814
|
+
type: string
|
|
815
|
+
- name: since_date
|
|
816
|
+
in: query
|
|
817
|
+
description: >-
|
|
818
|
+
If specified, only transactions on or after this date will be
|
|
819
|
+
included. The date should be ISO formatted (e.g. 2016-12-30).
|
|
820
|
+
schema:
|
|
821
|
+
type: string
|
|
822
|
+
format: date
|
|
823
|
+
- name: type
|
|
824
|
+
in: query
|
|
825
|
+
description: >-
|
|
826
|
+
If specified, only transactions of the specified type will be
|
|
827
|
+
included. "uncategorized" and "unapproved" are currently supported.
|
|
828
|
+
schema:
|
|
829
|
+
type: string
|
|
830
|
+
enum:
|
|
831
|
+
- uncategorized
|
|
832
|
+
- unapproved
|
|
833
|
+
- name: last_knowledge_of_server
|
|
834
|
+
in: query
|
|
835
|
+
description: >-
|
|
836
|
+
The starting server knowledge. If provided, only entities that have
|
|
837
|
+
changed since `last_knowledge_of_server` will be included.
|
|
838
|
+
schema:
|
|
839
|
+
type: integer
|
|
840
|
+
format: int64
|
|
841
|
+
responses:
|
|
842
|
+
'200':
|
|
843
|
+
description: The list of requested transactions
|
|
844
|
+
content:
|
|
845
|
+
application/json:
|
|
846
|
+
schema:
|
|
847
|
+
$ref: '#/components/schemas/TransactionsResponse'
|
|
848
|
+
'400':
|
|
849
|
+
description: An error occurred
|
|
850
|
+
content:
|
|
851
|
+
application/json:
|
|
852
|
+
schema:
|
|
853
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
854
|
+
'404':
|
|
855
|
+
description: No transactions were found
|
|
856
|
+
content:
|
|
857
|
+
application/json:
|
|
858
|
+
schema:
|
|
859
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
860
|
+
post:
|
|
861
|
+
tags:
|
|
862
|
+
- Transactions
|
|
863
|
+
summary: Create a single transaction or multiple transactions
|
|
864
|
+
description: >-
|
|
865
|
+
Creates a single transaction or multiple transactions. If you provide a
|
|
866
|
+
body containing a `transaction` object, a single transaction will be
|
|
867
|
+
created and if you provide a body containing a `transactions` array,
|
|
868
|
+
multiple transactions will be created. Scheduled transactions cannot be
|
|
869
|
+
created on this endpoint.
|
|
870
|
+
operationId: createTransaction
|
|
871
|
+
parameters:
|
|
872
|
+
- name: budget_id
|
|
873
|
+
in: path
|
|
874
|
+
description: >-
|
|
875
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
876
|
+
used budget and "default" can be used if default budget selection is
|
|
877
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
878
|
+
required: true
|
|
879
|
+
schema:
|
|
880
|
+
type: string
|
|
881
|
+
requestBody:
|
|
882
|
+
description: >-
|
|
883
|
+
The transaction or transactions to create. To create a single
|
|
884
|
+
transaction you can specify a value for the `transaction` object and
|
|
885
|
+
to create multiple transactions you can specify an array of
|
|
886
|
+
`transactions`. It is expected that you will only provide a value for
|
|
887
|
+
one of these objects.
|
|
888
|
+
content:
|
|
889
|
+
'application/json':
|
|
890
|
+
schema:
|
|
891
|
+
$ref: '#/components/schemas/PostTransactionsWrapper'
|
|
892
|
+
required: true
|
|
893
|
+
responses:
|
|
894
|
+
'201':
|
|
895
|
+
description: The transaction or transactions were successfully created
|
|
896
|
+
content:
|
|
897
|
+
application/json:
|
|
898
|
+
schema:
|
|
899
|
+
$ref: '#/components/schemas/SaveTransactionsResponse'
|
|
900
|
+
'400':
|
|
901
|
+
description: >-
|
|
902
|
+
The request could not be understood due to malformed syntax or
|
|
903
|
+
validation error(s).
|
|
904
|
+
content:
|
|
905
|
+
application/json:
|
|
906
|
+
schema:
|
|
907
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
908
|
+
'409':
|
|
909
|
+
description: >-
|
|
910
|
+
A transaction on the same account with the same `import_id` already
|
|
911
|
+
exists.
|
|
912
|
+
content:
|
|
913
|
+
application/json:
|
|
914
|
+
schema:
|
|
915
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
916
|
+
x-codegen-request-body-name: data
|
|
917
|
+
patch:
|
|
918
|
+
tags:
|
|
919
|
+
- Transactions
|
|
920
|
+
summary: Update multiple transactions
|
|
921
|
+
description: Updates multiple transactions, by `id` or `import_id`.
|
|
922
|
+
operationId: updateTransactions
|
|
923
|
+
parameters:
|
|
924
|
+
- name: budget_id
|
|
925
|
+
in: path
|
|
926
|
+
description: >-
|
|
927
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
928
|
+
used budget and "default" can be used if default budget selection is
|
|
929
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
930
|
+
required: true
|
|
931
|
+
schema:
|
|
932
|
+
type: string
|
|
933
|
+
requestBody:
|
|
934
|
+
description: >-
|
|
935
|
+
The transactions to update. Each transaction must have either an `id`
|
|
936
|
+
or `import_id` specified. If `id` is specified as null an `import_id`
|
|
937
|
+
value can be provided which will allow transaction(s) to be updated by
|
|
938
|
+
their `import_id`. If an `id` is specified, it will always be used for
|
|
939
|
+
lookup.
|
|
940
|
+
content:
|
|
941
|
+
'application/json':
|
|
942
|
+
schema:
|
|
943
|
+
$ref: '#/components/schemas/PatchTransactionsWrapper'
|
|
944
|
+
required: true
|
|
945
|
+
responses:
|
|
946
|
+
'209':
|
|
947
|
+
description: The transactions were successfully updated
|
|
948
|
+
content:
|
|
949
|
+
application/json:
|
|
950
|
+
schema:
|
|
951
|
+
$ref: '#/components/schemas/SaveTransactionsResponse'
|
|
952
|
+
'400':
|
|
953
|
+
description: >-
|
|
954
|
+
The request could not be understood due to malformed syntax or
|
|
955
|
+
validation error(s).
|
|
956
|
+
content:
|
|
957
|
+
application/json:
|
|
958
|
+
schema:
|
|
959
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
960
|
+
x-codegen-request-body-name: data
|
|
961
|
+
/budgets/{budget_id}/transactions/import:
|
|
962
|
+
post:
|
|
963
|
+
tags:
|
|
964
|
+
- Transactions
|
|
965
|
+
summary: Import transactions
|
|
966
|
+
description: >-
|
|
967
|
+
Imports available transactions on all linked accounts for the given
|
|
968
|
+
budget. Linked accounts allow transactions to be imported directly from
|
|
969
|
+
a specified financial institution and this endpoint initiates that
|
|
970
|
+
import. Sending a request to this endpoint is the equivalent of
|
|
971
|
+
clicking "Import" on each account in the web application or tapping the
|
|
972
|
+
"New Transactions" banner in the mobile applications. The response for
|
|
973
|
+
this endpoint contains the transaction ids that have been imported.
|
|
974
|
+
operationId: importTransactions
|
|
975
|
+
parameters:
|
|
976
|
+
- name: budget_id
|
|
977
|
+
in: path
|
|
978
|
+
description: >-
|
|
979
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
980
|
+
used budget and "default" can be used if default budget selection is
|
|
981
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
982
|
+
required: true
|
|
983
|
+
schema:
|
|
984
|
+
type: string
|
|
985
|
+
responses:
|
|
986
|
+
'200':
|
|
987
|
+
description: The request was successful but there were no transactions to import
|
|
988
|
+
content:
|
|
989
|
+
application/json:
|
|
990
|
+
schema:
|
|
991
|
+
$ref: '#/components/schemas/TransactionsImportResponse'
|
|
992
|
+
'201':
|
|
993
|
+
description: One or more transactions were imported successfully
|
|
994
|
+
content:
|
|
995
|
+
application/json:
|
|
996
|
+
schema:
|
|
997
|
+
$ref: '#/components/schemas/TransactionsImportResponse'
|
|
998
|
+
'400':
|
|
999
|
+
description: >-
|
|
1000
|
+
The request could not be understood due to malformed syntax or
|
|
1001
|
+
validation error(s)
|
|
1002
|
+
content:
|
|
1003
|
+
application/json:
|
|
1004
|
+
schema:
|
|
1005
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1006
|
+
/budgets/{budget_id}/transactions/{transaction_id}:
|
|
1007
|
+
get:
|
|
1008
|
+
tags:
|
|
1009
|
+
- Transactions
|
|
1010
|
+
summary: Single transaction
|
|
1011
|
+
description: Returns a single transaction
|
|
1012
|
+
operationId: getTransactionById
|
|
1013
|
+
parameters:
|
|
1014
|
+
- name: budget_id
|
|
1015
|
+
in: path
|
|
1016
|
+
description: >-
|
|
1017
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1018
|
+
used budget and "default" can be used if default budget selection is
|
|
1019
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1020
|
+
required: true
|
|
1021
|
+
schema:
|
|
1022
|
+
type: string
|
|
1023
|
+
- name: transaction_id
|
|
1024
|
+
in: path
|
|
1025
|
+
description: The id of the transaction
|
|
1026
|
+
required: true
|
|
1027
|
+
schema:
|
|
1028
|
+
type: string
|
|
1029
|
+
responses:
|
|
1030
|
+
'200':
|
|
1031
|
+
description: The requested transaction
|
|
1032
|
+
content:
|
|
1033
|
+
application/json:
|
|
1034
|
+
schema:
|
|
1035
|
+
$ref: '#/components/schemas/TransactionResponse'
|
|
1036
|
+
'404':
|
|
1037
|
+
description: The transaction was not found
|
|
1038
|
+
content:
|
|
1039
|
+
application/json:
|
|
1040
|
+
schema:
|
|
1041
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1042
|
+
default:
|
|
1043
|
+
description: An error occurred
|
|
1044
|
+
content:
|
|
1045
|
+
application/json:
|
|
1046
|
+
schema:
|
|
1047
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1048
|
+
put:
|
|
1049
|
+
tags:
|
|
1050
|
+
- Transactions
|
|
1051
|
+
summary: Updates an existing transaction
|
|
1052
|
+
description: Updates a single transaction
|
|
1053
|
+
operationId: updateTransaction
|
|
1054
|
+
parameters:
|
|
1055
|
+
- name: budget_id
|
|
1056
|
+
in: path
|
|
1057
|
+
description: >-
|
|
1058
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1059
|
+
used budget and "default" can be used if default budget selection is
|
|
1060
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1061
|
+
required: true
|
|
1062
|
+
schema:
|
|
1063
|
+
type: string
|
|
1064
|
+
- name: transaction_id
|
|
1065
|
+
in: path
|
|
1066
|
+
description: The id of the transaction
|
|
1067
|
+
required: true
|
|
1068
|
+
schema:
|
|
1069
|
+
type: string
|
|
1070
|
+
requestBody:
|
|
1071
|
+
description: The transaction to update
|
|
1072
|
+
content:
|
|
1073
|
+
'application/json':
|
|
1074
|
+
schema:
|
|
1075
|
+
$ref: '#/components/schemas/PutTransactionWrapper'
|
|
1076
|
+
required: true
|
|
1077
|
+
responses:
|
|
1078
|
+
'200':
|
|
1079
|
+
description: The transaction was successfully updated
|
|
1080
|
+
content:
|
|
1081
|
+
application/json:
|
|
1082
|
+
schema:
|
|
1083
|
+
$ref: '#/components/schemas/TransactionResponse'
|
|
1084
|
+
'400':
|
|
1085
|
+
description: >-
|
|
1086
|
+
The request could not be understood due to malformed syntax or
|
|
1087
|
+
validation error(s)
|
|
1088
|
+
content:
|
|
1089
|
+
application/json:
|
|
1090
|
+
schema:
|
|
1091
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1092
|
+
x-codegen-request-body-name: data
|
|
1093
|
+
delete:
|
|
1094
|
+
tags:
|
|
1095
|
+
- Transactions
|
|
1096
|
+
summary: Deletes an existing transaction
|
|
1097
|
+
description: Deletes a transaction
|
|
1098
|
+
operationId: deleteTransaction
|
|
1099
|
+
parameters:
|
|
1100
|
+
- name: budget_id
|
|
1101
|
+
in: path
|
|
1102
|
+
description: >-
|
|
1103
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1104
|
+
used budget and "default" can be used if default budget selection is
|
|
1105
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1106
|
+
required: true
|
|
1107
|
+
schema:
|
|
1108
|
+
type: string
|
|
1109
|
+
- name: transaction_id
|
|
1110
|
+
in: path
|
|
1111
|
+
description: The id of the transaction
|
|
1112
|
+
required: true
|
|
1113
|
+
schema:
|
|
1114
|
+
type: string
|
|
1115
|
+
responses:
|
|
1116
|
+
'200':
|
|
1117
|
+
description: The transaction was successfully deleted
|
|
1118
|
+
content:
|
|
1119
|
+
application/json:
|
|
1120
|
+
schema:
|
|
1121
|
+
$ref: '#/components/schemas/TransactionResponse'
|
|
1122
|
+
'404':
|
|
1123
|
+
description: The transaction was not found
|
|
1124
|
+
content:
|
|
1125
|
+
application/json:
|
|
1126
|
+
schema:
|
|
1127
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
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
|
|
1171
|
+
/budgets/{budget_id}/accounts/{account_id}/transactions:
|
|
1172
|
+
get:
|
|
1173
|
+
tags:
|
|
1174
|
+
- Transactions
|
|
1175
|
+
summary: List account transactions
|
|
1176
|
+
description: Returns all transactions for a specified account
|
|
1177
|
+
operationId: getTransactionsByAccount
|
|
1178
|
+
parameters:
|
|
1179
|
+
- name: budget_id
|
|
1180
|
+
in: path
|
|
1181
|
+
description: >-
|
|
1182
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1183
|
+
used budget and "default" can be used if default budget selection is
|
|
1184
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1185
|
+
required: true
|
|
1186
|
+
schema:
|
|
1187
|
+
type: string
|
|
1188
|
+
- name: account_id
|
|
1189
|
+
in: path
|
|
1190
|
+
description: The id of the account
|
|
1191
|
+
required: true
|
|
1192
|
+
schema:
|
|
1193
|
+
type: string
|
|
1194
|
+
- name: since_date
|
|
1195
|
+
in: query
|
|
1196
|
+
description: >-
|
|
1197
|
+
If specified, only transactions on or after this date will be
|
|
1198
|
+
included. The date should be ISO formatted (e.g. 2016-12-30).
|
|
1199
|
+
schema:
|
|
1200
|
+
type: string
|
|
1201
|
+
format: date
|
|
1202
|
+
- name: type
|
|
1203
|
+
in: query
|
|
1204
|
+
description: >-
|
|
1205
|
+
If specified, only transactions of the specified type will be
|
|
1206
|
+
included. "uncategorized" and "unapproved" are currently supported.
|
|
1207
|
+
schema:
|
|
1208
|
+
type: string
|
|
1209
|
+
enum:
|
|
1210
|
+
- uncategorized
|
|
1211
|
+
- unapproved
|
|
1212
|
+
- name: last_knowledge_of_server
|
|
1213
|
+
in: query
|
|
1214
|
+
description: >-
|
|
1215
|
+
The starting server knowledge. If provided, only entities that have
|
|
1216
|
+
changed since `last_knowledge_of_server` will be included.
|
|
1217
|
+
schema:
|
|
1218
|
+
type: integer
|
|
1219
|
+
format: int64
|
|
1220
|
+
responses:
|
|
1221
|
+
'200':
|
|
1222
|
+
description: The list of requested transactions
|
|
1223
|
+
content:
|
|
1224
|
+
application/json:
|
|
1225
|
+
schema:
|
|
1226
|
+
$ref: '#/components/schemas/TransactionsResponse'
|
|
1227
|
+
'404':
|
|
1228
|
+
description: No transactions were found
|
|
1229
|
+
content:
|
|
1230
|
+
application/json:
|
|
1231
|
+
schema:
|
|
1232
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1233
|
+
default:
|
|
1234
|
+
description: An error occurred
|
|
1235
|
+
content:
|
|
1236
|
+
application/json:
|
|
1237
|
+
schema:
|
|
1238
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1239
|
+
/budgets/{budget_id}/categories/{category_id}/transactions:
|
|
1240
|
+
get:
|
|
1241
|
+
tags:
|
|
1242
|
+
- Transactions
|
|
1243
|
+
summary: List category transactions
|
|
1244
|
+
description: Returns all transactions for a specified category
|
|
1245
|
+
operationId: getTransactionsByCategory
|
|
1246
|
+
parameters:
|
|
1247
|
+
- name: budget_id
|
|
1248
|
+
in: path
|
|
1249
|
+
description: >-
|
|
1250
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1251
|
+
used budget and "default" can be used if default budget selection is
|
|
1252
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1253
|
+
required: true
|
|
1254
|
+
schema:
|
|
1255
|
+
type: string
|
|
1256
|
+
- name: category_id
|
|
1257
|
+
in: path
|
|
1258
|
+
description: The id of the category
|
|
1259
|
+
required: true
|
|
1260
|
+
schema:
|
|
1261
|
+
type: string
|
|
1262
|
+
- name: since_date
|
|
1263
|
+
in: query
|
|
1264
|
+
description: >-
|
|
1265
|
+
If specified, only transactions on or after this date will be
|
|
1266
|
+
included. The date should be ISO formatted (e.g. 2016-12-30).
|
|
1267
|
+
schema:
|
|
1268
|
+
type: string
|
|
1269
|
+
format: date
|
|
1270
|
+
- name: type
|
|
1271
|
+
in: query
|
|
1272
|
+
description: >-
|
|
1273
|
+
If specified, only transactions of the specified type will be
|
|
1274
|
+
included. "uncategorized" and "unapproved" are currently supported.
|
|
1275
|
+
schema:
|
|
1276
|
+
type: string
|
|
1277
|
+
enum:
|
|
1278
|
+
- uncategorized
|
|
1279
|
+
- unapproved
|
|
1280
|
+
- name: last_knowledge_of_server
|
|
1281
|
+
in: query
|
|
1282
|
+
description: >-
|
|
1283
|
+
The starting server knowledge. If provided, only entities that have
|
|
1284
|
+
changed since `last_knowledge_of_server` will be included.
|
|
1285
|
+
schema:
|
|
1286
|
+
type: integer
|
|
1287
|
+
format: int64
|
|
1288
|
+
responses:
|
|
1289
|
+
'200':
|
|
1290
|
+
description: The list of requested transactions
|
|
1291
|
+
content:
|
|
1292
|
+
application/json:
|
|
1293
|
+
schema:
|
|
1294
|
+
$ref: '#/components/schemas/HybridTransactionsResponse'
|
|
1295
|
+
'404':
|
|
1296
|
+
description: No transactions were found
|
|
1297
|
+
content:
|
|
1298
|
+
application/json:
|
|
1299
|
+
schema:
|
|
1300
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1301
|
+
default:
|
|
1302
|
+
description: An error occurred
|
|
1303
|
+
content:
|
|
1304
|
+
application/json:
|
|
1305
|
+
schema:
|
|
1306
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1307
|
+
/budgets/{budget_id}/payees/{payee_id}/transactions:
|
|
1308
|
+
get:
|
|
1309
|
+
tags:
|
|
1310
|
+
- Transactions
|
|
1311
|
+
summary: List payee transactions
|
|
1312
|
+
description: Returns all transactions for a specified payee
|
|
1313
|
+
operationId: getTransactionsByPayee
|
|
1314
|
+
parameters:
|
|
1315
|
+
- name: budget_id
|
|
1316
|
+
in: path
|
|
1317
|
+
description: >-
|
|
1318
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1319
|
+
used budget and "default" can be used if default budget selection is
|
|
1320
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1321
|
+
required: true
|
|
1322
|
+
schema:
|
|
1323
|
+
type: string
|
|
1324
|
+
- name: payee_id
|
|
1325
|
+
in: path
|
|
1326
|
+
description: The id of the payee
|
|
1327
|
+
required: true
|
|
1328
|
+
schema:
|
|
1329
|
+
type: string
|
|
1330
|
+
- name: since_date
|
|
1331
|
+
in: query
|
|
1332
|
+
description: >-
|
|
1333
|
+
If specified, only transactions on or after this date will be
|
|
1334
|
+
included. The date should be ISO formatted (e.g. 2016-12-30).
|
|
1335
|
+
schema:
|
|
1336
|
+
type: string
|
|
1337
|
+
format: date
|
|
1338
|
+
- name: type
|
|
1339
|
+
in: query
|
|
1340
|
+
description: >-
|
|
1341
|
+
If specified, only transactions of the specified type will be
|
|
1342
|
+
included. "uncategorized" and "unapproved" are currently supported.
|
|
1343
|
+
schema:
|
|
1344
|
+
type: string
|
|
1345
|
+
enum:
|
|
1346
|
+
- uncategorized
|
|
1347
|
+
- unapproved
|
|
1348
|
+
- name: last_knowledge_of_server
|
|
1349
|
+
in: query
|
|
1350
|
+
description: >-
|
|
1351
|
+
The starting server knowledge. If provided, only entities that have
|
|
1352
|
+
changed since `last_knowledge_of_server` will be included.
|
|
1353
|
+
schema:
|
|
1354
|
+
type: integer
|
|
1355
|
+
format: int64
|
|
1356
|
+
responses:
|
|
1357
|
+
'200':
|
|
1358
|
+
description: The list of requested transactions
|
|
1359
|
+
content:
|
|
1360
|
+
application/json:
|
|
1361
|
+
schema:
|
|
1362
|
+
$ref: '#/components/schemas/HybridTransactionsResponse'
|
|
1363
|
+
'404':
|
|
1364
|
+
description: No transactions were found
|
|
1365
|
+
content:
|
|
1366
|
+
application/json:
|
|
1367
|
+
schema:
|
|
1368
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1369
|
+
default:
|
|
1370
|
+
description: An error occurred
|
|
1371
|
+
content:
|
|
1372
|
+
application/json:
|
|
1373
|
+
schema:
|
|
1374
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1375
|
+
/budgets/{budget_id}/scheduled_transactions:
|
|
1376
|
+
get:
|
|
1377
|
+
tags:
|
|
1378
|
+
- Scheduled Transactions
|
|
1379
|
+
summary: List scheduled transactions
|
|
1380
|
+
description: Returns all scheduled transactions
|
|
1381
|
+
operationId: getScheduledTransactions
|
|
1382
|
+
parameters:
|
|
1383
|
+
- name: budget_id
|
|
1384
|
+
in: path
|
|
1385
|
+
description: >-
|
|
1386
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1387
|
+
used budget and "default" can be used if default budget selection is
|
|
1388
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1389
|
+
required: true
|
|
1390
|
+
schema:
|
|
1391
|
+
type: string
|
|
1392
|
+
- name: last_knowledge_of_server
|
|
1393
|
+
in: query
|
|
1394
|
+
description: >-
|
|
1395
|
+
The starting server knowledge. If provided, only entities that have
|
|
1396
|
+
changed since `last_knowledge_of_server` will be included.
|
|
1397
|
+
schema:
|
|
1398
|
+
type: integer
|
|
1399
|
+
format: int64
|
|
1400
|
+
responses:
|
|
1401
|
+
'200':
|
|
1402
|
+
description: The list of requested scheduled transactions
|
|
1403
|
+
content:
|
|
1404
|
+
application/json:
|
|
1405
|
+
schema:
|
|
1406
|
+
$ref: '#/components/schemas/ScheduledTransactionsResponse'
|
|
1407
|
+
'404':
|
|
1408
|
+
description: No scheduled transactions were found
|
|
1409
|
+
content:
|
|
1410
|
+
application/json:
|
|
1411
|
+
schema:
|
|
1412
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1413
|
+
default:
|
|
1414
|
+
description: An error occurred
|
|
1415
|
+
content:
|
|
1416
|
+
application/json:
|
|
1417
|
+
schema:
|
|
1418
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1419
|
+
/budgets/{budget_id}/scheduled_transactions/{scheduled_transaction_id}:
|
|
1420
|
+
get:
|
|
1421
|
+
tags:
|
|
1422
|
+
- Scheduled Transactions
|
|
1423
|
+
summary: Single scheduled transaction
|
|
1424
|
+
description: Returns a single scheduled transaction
|
|
1425
|
+
operationId: getScheduledTransactionById
|
|
1426
|
+
parameters:
|
|
1427
|
+
- name: budget_id
|
|
1428
|
+
in: path
|
|
1429
|
+
description: >-
|
|
1430
|
+
The id of the budget. "last-used" can be used to specify the last
|
|
1431
|
+
used budget and "default" can be used if default budget selection is
|
|
1432
|
+
enabled (see: https://api.ynab.com/#oauth-default-budget).
|
|
1433
|
+
required: true
|
|
1434
|
+
schema:
|
|
1435
|
+
type: string
|
|
1436
|
+
- name: scheduled_transaction_id
|
|
1437
|
+
in: path
|
|
1438
|
+
description: The id of the scheduled transaction
|
|
1439
|
+
required: true
|
|
1440
|
+
schema:
|
|
1441
|
+
type: string
|
|
1442
|
+
responses:
|
|
1443
|
+
'200':
|
|
1444
|
+
description: The requested Scheduled Transaction
|
|
1445
|
+
content:
|
|
1446
|
+
application/json:
|
|
1447
|
+
schema:
|
|
1448
|
+
$ref: '#/components/schemas/ScheduledTransactionResponse'
|
|
1449
|
+
'404':
|
|
1450
|
+
description: The scheduled transaction was not found
|
|
1451
|
+
content:
|
|
1452
|
+
application/json:
|
|
1453
|
+
schema:
|
|
1454
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1455
|
+
default:
|
|
1456
|
+
description: An error occurred
|
|
1457
|
+
content:
|
|
1458
|
+
application/json:
|
|
1459
|
+
schema:
|
|
1460
|
+
$ref: '#/components/schemas/ErrorResponse'
|
|
1461
|
+
components:
|
|
1462
|
+
schemas:
|
|
1463
|
+
ErrorResponse:
|
|
1464
|
+
required:
|
|
1465
|
+
- error
|
|
1466
|
+
type: object
|
|
1467
|
+
properties:
|
|
1468
|
+
error:
|
|
1469
|
+
$ref: '#/components/schemas/ErrorDetail'
|
|
1470
|
+
ErrorDetail:
|
|
1471
|
+
required:
|
|
1472
|
+
- detail
|
|
1473
|
+
- id
|
|
1474
|
+
- name
|
|
1475
|
+
type: object
|
|
1476
|
+
properties:
|
|
1477
|
+
id:
|
|
1478
|
+
type: string
|
|
1479
|
+
name:
|
|
1480
|
+
type: string
|
|
1481
|
+
detail:
|
|
1482
|
+
type: string
|
|
1483
|
+
UserResponse:
|
|
1484
|
+
required:
|
|
1485
|
+
- data
|
|
1486
|
+
type: object
|
|
1487
|
+
properties:
|
|
1488
|
+
data:
|
|
1489
|
+
required:
|
|
1490
|
+
- user
|
|
1491
|
+
type: object
|
|
1492
|
+
properties:
|
|
1493
|
+
user:
|
|
1494
|
+
$ref: '#/components/schemas/User'
|
|
1495
|
+
User:
|
|
1496
|
+
required:
|
|
1497
|
+
- id
|
|
1498
|
+
type: object
|
|
1499
|
+
properties:
|
|
1500
|
+
id:
|
|
1501
|
+
type: string
|
|
1502
|
+
format: uuid
|
|
1503
|
+
DateFormat:
|
|
1504
|
+
required:
|
|
1505
|
+
- format
|
|
1506
|
+
type: object
|
|
1507
|
+
properties:
|
|
1508
|
+
format:
|
|
1509
|
+
type: string
|
|
1510
|
+
nullable: true
|
|
1511
|
+
description: >-
|
|
1512
|
+
The date format setting for the budget. In some cases the format will
|
|
1513
|
+
not be available and will be specified as null.
|
|
1514
|
+
CurrencyFormat:
|
|
1515
|
+
required:
|
|
1516
|
+
- currency_symbol
|
|
1517
|
+
- decimal_digits
|
|
1518
|
+
- decimal_separator
|
|
1519
|
+
- display_symbol
|
|
1520
|
+
- example_format
|
|
1521
|
+
- group_separator
|
|
1522
|
+
- iso_code
|
|
1523
|
+
- symbol_first
|
|
1524
|
+
type: object
|
|
1525
|
+
properties:
|
|
1526
|
+
iso_code:
|
|
1527
|
+
type: string
|
|
1528
|
+
example_format:
|
|
1529
|
+
type: string
|
|
1530
|
+
decimal_digits:
|
|
1531
|
+
type: integer
|
|
1532
|
+
format: int32
|
|
1533
|
+
decimal_separator:
|
|
1534
|
+
type: string
|
|
1535
|
+
symbol_first:
|
|
1536
|
+
type: boolean
|
|
1537
|
+
group_separator:
|
|
1538
|
+
type: string
|
|
1539
|
+
currency_symbol:
|
|
1540
|
+
type: string
|
|
1541
|
+
display_symbol:
|
|
1542
|
+
type: boolean
|
|
1543
|
+
nullable: true
|
|
1544
|
+
description: >-
|
|
1545
|
+
The currency format setting for the budget. In some cases the format
|
|
1546
|
+
will not be available and will be specified as null.
|
|
1547
|
+
BudgetSummaryResponse:
|
|
1548
|
+
required:
|
|
1549
|
+
- data
|
|
1550
|
+
type: object
|
|
1551
|
+
properties:
|
|
1552
|
+
data:
|
|
1553
|
+
required:
|
|
1554
|
+
- budgets
|
|
1555
|
+
type: object
|
|
1556
|
+
properties:
|
|
1557
|
+
budgets:
|
|
1558
|
+
type: array
|
|
1559
|
+
items:
|
|
1560
|
+
$ref: '#/components/schemas/BudgetSummary'
|
|
1561
|
+
default_budget:
|
|
1562
|
+
$ref: '#/components/schemas/BudgetSummary'
|
|
1563
|
+
BudgetSummary:
|
|
1564
|
+
required:
|
|
1565
|
+
- id
|
|
1566
|
+
- name
|
|
1567
|
+
type: object
|
|
1568
|
+
properties:
|
|
1569
|
+
id:
|
|
1570
|
+
type: string
|
|
1571
|
+
format: uuid
|
|
1572
|
+
name:
|
|
1573
|
+
type: string
|
|
1574
|
+
last_modified_on:
|
|
1575
|
+
type: string
|
|
1576
|
+
description: >-
|
|
1577
|
+
The last time any changes were made to the budget from either a web
|
|
1578
|
+
or mobile client
|
|
1579
|
+
format: date-time
|
|
1580
|
+
first_month:
|
|
1581
|
+
type: string
|
|
1582
|
+
description: The earliest budget month
|
|
1583
|
+
format: date
|
|
1584
|
+
last_month:
|
|
1585
|
+
type: string
|
|
1586
|
+
description: The latest budget month
|
|
1587
|
+
format: date
|
|
1588
|
+
date_format:
|
|
1589
|
+
$ref: '#/components/schemas/DateFormat'
|
|
1590
|
+
currency_format:
|
|
1591
|
+
$ref: '#/components/schemas/CurrencyFormat'
|
|
1592
|
+
accounts:
|
|
1593
|
+
type: array
|
|
1594
|
+
description: >-
|
|
1595
|
+
The budget accounts (only included if `include_accounts=true`
|
|
1596
|
+
specified as query parameter)
|
|
1597
|
+
items:
|
|
1598
|
+
$ref: '#/components/schemas/Account'
|
|
1599
|
+
BudgetDetailResponse:
|
|
1600
|
+
required:
|
|
1601
|
+
- data
|
|
1602
|
+
type: object
|
|
1603
|
+
properties:
|
|
1604
|
+
data:
|
|
1605
|
+
required:
|
|
1606
|
+
- budget
|
|
1607
|
+
- server_knowledge
|
|
1608
|
+
type: object
|
|
1609
|
+
properties:
|
|
1610
|
+
budget:
|
|
1611
|
+
$ref: '#/components/schemas/BudgetDetail'
|
|
1612
|
+
server_knowledge:
|
|
1613
|
+
type: integer
|
|
1614
|
+
description: The knowledge of the server
|
|
1615
|
+
format: int64
|
|
1616
|
+
BudgetDetail:
|
|
1617
|
+
allOf:
|
|
1618
|
+
- $ref: '#/components/schemas/BudgetSummary'
|
|
1619
|
+
- type: object
|
|
1620
|
+
properties:
|
|
1621
|
+
accounts:
|
|
1622
|
+
type: array
|
|
1623
|
+
items:
|
|
1624
|
+
$ref: '#/components/schemas/Account'
|
|
1625
|
+
payees:
|
|
1626
|
+
type: array
|
|
1627
|
+
items:
|
|
1628
|
+
$ref: '#/components/schemas/Payee'
|
|
1629
|
+
payee_locations:
|
|
1630
|
+
type: array
|
|
1631
|
+
items:
|
|
1632
|
+
$ref: '#/components/schemas/PayeeLocation'
|
|
1633
|
+
category_groups:
|
|
1634
|
+
type: array
|
|
1635
|
+
items:
|
|
1636
|
+
$ref: '#/components/schemas/CategoryGroup'
|
|
1637
|
+
categories:
|
|
1638
|
+
type: array
|
|
1639
|
+
items:
|
|
1640
|
+
$ref: '#/components/schemas/Category'
|
|
1641
|
+
months:
|
|
1642
|
+
type: array
|
|
1643
|
+
items:
|
|
1644
|
+
$ref: '#/components/schemas/MonthDetail'
|
|
1645
|
+
transactions:
|
|
1646
|
+
type: array
|
|
1647
|
+
items:
|
|
1648
|
+
$ref: '#/components/schemas/TransactionSummary'
|
|
1649
|
+
subtransactions:
|
|
1650
|
+
type: array
|
|
1651
|
+
items:
|
|
1652
|
+
$ref: '#/components/schemas/SubTransaction'
|
|
1653
|
+
scheduled_transactions:
|
|
1654
|
+
type: array
|
|
1655
|
+
items:
|
|
1656
|
+
$ref: '#/components/schemas/ScheduledTransactionSummary'
|
|
1657
|
+
scheduled_subtransactions:
|
|
1658
|
+
type: array
|
|
1659
|
+
items:
|
|
1660
|
+
$ref: '#/components/schemas/ScheduledSubTransaction'
|
|
1661
|
+
BudgetSettingsResponse:
|
|
1662
|
+
required:
|
|
1663
|
+
- data
|
|
1664
|
+
type: object
|
|
1665
|
+
properties:
|
|
1666
|
+
data:
|
|
1667
|
+
required:
|
|
1668
|
+
- settings
|
|
1669
|
+
type: object
|
|
1670
|
+
properties:
|
|
1671
|
+
settings:
|
|
1672
|
+
$ref: '#/components/schemas/BudgetSettings'
|
|
1673
|
+
BudgetSettings:
|
|
1674
|
+
required:
|
|
1675
|
+
- currency_format
|
|
1676
|
+
- date_format
|
|
1677
|
+
type: object
|
|
1678
|
+
properties:
|
|
1679
|
+
date_format:
|
|
1680
|
+
$ref: '#/components/schemas/DateFormat'
|
|
1681
|
+
currency_format:
|
|
1682
|
+
$ref: '#/components/schemas/CurrencyFormat'
|
|
1683
|
+
AccountsResponse:
|
|
1684
|
+
required:
|
|
1685
|
+
- data
|
|
1686
|
+
type: object
|
|
1687
|
+
properties:
|
|
1688
|
+
data:
|
|
1689
|
+
required:
|
|
1690
|
+
- accounts
|
|
1691
|
+
- server_knowledge
|
|
1692
|
+
type: object
|
|
1693
|
+
properties:
|
|
1694
|
+
accounts:
|
|
1695
|
+
type: array
|
|
1696
|
+
items:
|
|
1697
|
+
$ref: '#/components/schemas/Account'
|
|
1698
|
+
server_knowledge:
|
|
1699
|
+
type: integer
|
|
1700
|
+
description: The knowledge of the server
|
|
1701
|
+
format: int64
|
|
1702
|
+
AccountResponse:
|
|
1703
|
+
required:
|
|
1704
|
+
- data
|
|
1705
|
+
type: object
|
|
1706
|
+
properties:
|
|
1707
|
+
data:
|
|
1708
|
+
required:
|
|
1709
|
+
- account
|
|
1710
|
+
type: object
|
|
1711
|
+
properties:
|
|
1712
|
+
account:
|
|
1713
|
+
$ref: '#/components/schemas/Account'
|
|
1714
|
+
Account:
|
|
1715
|
+
required:
|
|
1716
|
+
- balance
|
|
1717
|
+
- cleared_balance
|
|
1718
|
+
- closed
|
|
1719
|
+
- deleted
|
|
1720
|
+
- id
|
|
1721
|
+
- name
|
|
1722
|
+
- on_budget
|
|
1723
|
+
- transfer_payee_id
|
|
1724
|
+
- type
|
|
1725
|
+
- uncleared_balance
|
|
1726
|
+
type: object
|
|
1727
|
+
properties:
|
|
1728
|
+
id:
|
|
1729
|
+
type: string
|
|
1730
|
+
format: uuid
|
|
1731
|
+
name:
|
|
1732
|
+
type: string
|
|
1733
|
+
type:
|
|
1734
|
+
$ref: '#/components/schemas/AccountType'
|
|
1735
|
+
on_budget:
|
|
1736
|
+
type: boolean
|
|
1737
|
+
description: Whether this account is on budget or not
|
|
1738
|
+
closed:
|
|
1739
|
+
type: boolean
|
|
1740
|
+
description: Whether this account is closed or not
|
|
1741
|
+
note:
|
|
1742
|
+
type: string
|
|
1743
|
+
nullable: true
|
|
1744
|
+
balance:
|
|
1745
|
+
type: integer
|
|
1746
|
+
description: The current balance of the account in milliunits format
|
|
1747
|
+
format: int64
|
|
1748
|
+
cleared_balance:
|
|
1749
|
+
type: integer
|
|
1750
|
+
description: The current cleared balance of the account in milliunits format
|
|
1751
|
+
format: int64
|
|
1752
|
+
uncleared_balance:
|
|
1753
|
+
type: integer
|
|
1754
|
+
description: The current uncleared balance of the account in milliunits format
|
|
1755
|
+
format: int64
|
|
1756
|
+
transfer_payee_id:
|
|
1757
|
+
type: string
|
|
1758
|
+
nullable: true
|
|
1759
|
+
description: The payee id which should be used when transferring to this account
|
|
1760
|
+
format: uuid
|
|
1761
|
+
direct_import_linked:
|
|
1762
|
+
type: boolean
|
|
1763
|
+
description: >-
|
|
1764
|
+
Whether or not the account is linked to a financial institution for
|
|
1765
|
+
automatic transaction import.
|
|
1766
|
+
direct_import_in_error:
|
|
1767
|
+
type: boolean
|
|
1768
|
+
description: >-
|
|
1769
|
+
If an account linked to a financial institution
|
|
1770
|
+
(direct_import_linked=true) and the linked connection is not in a
|
|
1771
|
+
healthy state, this will be true.
|
|
1772
|
+
last_reconciled_at:
|
|
1773
|
+
type: string
|
|
1774
|
+
nullable: true
|
|
1775
|
+
description: A date/time specifying when the account was last reconciled.
|
|
1776
|
+
format: date-time
|
|
1777
|
+
debt_original_balance:
|
|
1778
|
+
type: integer
|
|
1779
|
+
nullable: true
|
|
1780
|
+
description: >-
|
|
1781
|
+
The original debt/loan account balance, specified in milliunits
|
|
1782
|
+
format.
|
|
1783
|
+
format: int64
|
|
1784
|
+
debt_interest_rates:
|
|
1785
|
+
$ref: '#/components/schemas/LoanAccountPeriodicValue'
|
|
1786
|
+
debt_minimum_payments:
|
|
1787
|
+
$ref: '#/components/schemas/LoanAccountPeriodicValue'
|
|
1788
|
+
debt_escrow_amounts:
|
|
1789
|
+
$ref: '#/components/schemas/LoanAccountPeriodicValue'
|
|
1790
|
+
deleted:
|
|
1791
|
+
type: boolean
|
|
1792
|
+
description: >-
|
|
1793
|
+
Whether or not the account has been deleted. Deleted accounts will
|
|
1794
|
+
only be included in delta requests.
|
|
1795
|
+
PostAccountWrapper:
|
|
1796
|
+
required:
|
|
1797
|
+
- account
|
|
1798
|
+
type: object
|
|
1799
|
+
properties:
|
|
1800
|
+
account:
|
|
1801
|
+
$ref: '#/components/schemas/SaveAccount'
|
|
1802
|
+
SaveAccount:
|
|
1803
|
+
required:
|
|
1804
|
+
- balance
|
|
1805
|
+
- name
|
|
1806
|
+
- type
|
|
1807
|
+
type: object
|
|
1808
|
+
properties:
|
|
1809
|
+
name:
|
|
1810
|
+
type: string
|
|
1811
|
+
description: The name of the account
|
|
1812
|
+
type:
|
|
1813
|
+
$ref: '#/components/schemas/AccountType'
|
|
1814
|
+
balance:
|
|
1815
|
+
type: integer
|
|
1816
|
+
description: The current balance of the account in milliunits format
|
|
1817
|
+
format: int64
|
|
1818
|
+
LoanAccountPeriodicValue:
|
|
1819
|
+
type: object
|
|
1820
|
+
nullable: true
|
|
1821
|
+
additionalProperties:
|
|
1822
|
+
type: integer
|
|
1823
|
+
format: int64
|
|
1824
|
+
AccountType:
|
|
1825
|
+
type: string
|
|
1826
|
+
description: The type of account
|
|
1827
|
+
enum:
|
|
1828
|
+
- checking
|
|
1829
|
+
- savings
|
|
1830
|
+
- cash
|
|
1831
|
+
- creditCard
|
|
1832
|
+
- lineOfCredit
|
|
1833
|
+
- otherAsset
|
|
1834
|
+
- otherLiability
|
|
1835
|
+
- mortgage
|
|
1836
|
+
- autoLoan
|
|
1837
|
+
- studentLoan
|
|
1838
|
+
- personalLoan
|
|
1839
|
+
- medicalDebt
|
|
1840
|
+
- otherDebt
|
|
1841
|
+
CategoriesResponse:
|
|
1842
|
+
required:
|
|
1843
|
+
- data
|
|
1844
|
+
type: object
|
|
1845
|
+
properties:
|
|
1846
|
+
data:
|
|
1847
|
+
required:
|
|
1848
|
+
- category_groups
|
|
1849
|
+
- server_knowledge
|
|
1850
|
+
type: object
|
|
1851
|
+
properties:
|
|
1852
|
+
category_groups:
|
|
1853
|
+
type: array
|
|
1854
|
+
items:
|
|
1855
|
+
$ref: '#/components/schemas/CategoryGroupWithCategories'
|
|
1856
|
+
server_knowledge:
|
|
1857
|
+
type: integer
|
|
1858
|
+
description: The knowledge of the server
|
|
1859
|
+
format: int64
|
|
1860
|
+
CategoryResponse:
|
|
1861
|
+
required:
|
|
1862
|
+
- data
|
|
1863
|
+
type: object
|
|
1864
|
+
properties:
|
|
1865
|
+
data:
|
|
1866
|
+
required:
|
|
1867
|
+
- category
|
|
1868
|
+
type: object
|
|
1869
|
+
properties:
|
|
1870
|
+
category:
|
|
1871
|
+
$ref: '#/components/schemas/Category'
|
|
1872
|
+
CategoryGroupWithCategories:
|
|
1873
|
+
allOf:
|
|
1874
|
+
- $ref: '#/components/schemas/CategoryGroup'
|
|
1875
|
+
- required:
|
|
1876
|
+
- categories
|
|
1877
|
+
type: object
|
|
1878
|
+
properties:
|
|
1879
|
+
categories:
|
|
1880
|
+
type: array
|
|
1881
|
+
description: >-
|
|
1882
|
+
Category group categories. Amounts (budgeted, activity,
|
|
1883
|
+
balance, etc.) are specific to the current budget month (UTC).
|
|
1884
|
+
items:
|
|
1885
|
+
$ref: '#/components/schemas/Category'
|
|
1886
|
+
CategoryGroup:
|
|
1887
|
+
required:
|
|
1888
|
+
- deleted
|
|
1889
|
+
- hidden
|
|
1890
|
+
- id
|
|
1891
|
+
- name
|
|
1892
|
+
type: object
|
|
1893
|
+
properties:
|
|
1894
|
+
id:
|
|
1895
|
+
type: string
|
|
1896
|
+
format: uuid
|
|
1897
|
+
name:
|
|
1898
|
+
type: string
|
|
1899
|
+
hidden:
|
|
1900
|
+
type: boolean
|
|
1901
|
+
description: Whether or not the category group is hidden
|
|
1902
|
+
deleted:
|
|
1903
|
+
type: boolean
|
|
1904
|
+
description: >-
|
|
1905
|
+
Whether or not the category group has been deleted. Deleted
|
|
1906
|
+
category groups will only be included in delta requests.
|
|
1907
|
+
Category:
|
|
1908
|
+
required:
|
|
1909
|
+
- activity
|
|
1910
|
+
- balance
|
|
1911
|
+
- budgeted
|
|
1912
|
+
- category_group_id
|
|
1913
|
+
- deleted
|
|
1914
|
+
- hidden
|
|
1915
|
+
- id
|
|
1916
|
+
- name
|
|
1917
|
+
type: object
|
|
1918
|
+
properties:
|
|
1919
|
+
id:
|
|
1920
|
+
type: string
|
|
1921
|
+
format: uuid
|
|
1922
|
+
category_group_id:
|
|
1923
|
+
type: string
|
|
1924
|
+
format: uuid
|
|
1925
|
+
category_group_name:
|
|
1926
|
+
type: string
|
|
1927
|
+
name:
|
|
1928
|
+
type: string
|
|
1929
|
+
hidden:
|
|
1930
|
+
type: boolean
|
|
1931
|
+
description: Whether or not the category is hidden
|
|
1932
|
+
original_category_group_id:
|
|
1933
|
+
type: string
|
|
1934
|
+
description: 'DEPRECATED: No longer used. Value will always be null.'
|
|
1935
|
+
format: uuid
|
|
1936
|
+
nullable: true
|
|
1937
|
+
note:
|
|
1938
|
+
type: string
|
|
1939
|
+
nullable: true
|
|
1940
|
+
budgeted:
|
|
1941
|
+
type: integer
|
|
1942
|
+
description: Budgeted amount in milliunits format
|
|
1943
|
+
format: int64
|
|
1944
|
+
activity:
|
|
1945
|
+
type: integer
|
|
1946
|
+
description: Activity amount in milliunits format
|
|
1947
|
+
format: int64
|
|
1948
|
+
balance:
|
|
1949
|
+
type: integer
|
|
1950
|
+
description: Balance in milliunits format
|
|
1951
|
+
format: int64
|
|
1952
|
+
goal_type:
|
|
1953
|
+
type: string
|
|
1954
|
+
description: >-
|
|
1955
|
+
The type of goal, if the category has a goal (TB='Target Category
|
|
1956
|
+
Balance', TBD='Target Category Balance by Date', MF='Monthly
|
|
1957
|
+
Funding', NEED='Plan Your Spending')
|
|
1958
|
+
enum:
|
|
1959
|
+
- TB
|
|
1960
|
+
- TBD
|
|
1961
|
+
- MF
|
|
1962
|
+
- NEED
|
|
1963
|
+
- DEBT
|
|
1964
|
+
- null
|
|
1965
|
+
nullable: true
|
|
1966
|
+
goal_day:
|
|
1967
|
+
type: integer
|
|
1968
|
+
description: >-
|
|
1969
|
+
A day offset modifier for the goal's due date. When goal_cadence is
|
|
1970
|
+
2 (Weekly), this value specifies which day of the week the goal is
|
|
1971
|
+
due (0 = Sunday, 6 = Saturday). Otherwise, this value specifies
|
|
1972
|
+
which day of the month the goal is due (1 = 1st, 31 = 31st, null =
|
|
1973
|
+
Last day of Month).
|
|
1974
|
+
format: int32
|
|
1975
|
+
nullable: true
|
|
1976
|
+
goal_cadence:
|
|
1977
|
+
type: integer
|
|
1978
|
+
description: >-
|
|
1979
|
+
The goal cadence. Value in range 0-14. There are two subsets of
|
|
1980
|
+
these values which behave differently. For values 0, 1, 2, and 13,
|
|
1981
|
+
the goal's due date repeats every goal_cadence *
|
|
1982
|
+
goal_cadence_frequency, where 0 = None, 1 = Monthly, 2 = Weekly, and
|
|
1983
|
+
13 = Yearly. For example, goal_cadence 1 with goal_cadence_frequency
|
|
1984
|
+
2 means the goal is due every other month. For values 3-12 and 14,
|
|
1985
|
+
goal_cadence_frequency is ignored and the goal's due date repeats
|
|
1986
|
+
every goal_cadence, where 3 = Every 2 Months, 4 = Every 3 Months,
|
|
1987
|
+
..., 12 = Every 11 Months, and 14 = Every 2 Years.
|
|
1988
|
+
format: int32
|
|
1989
|
+
nullable: true
|
|
1990
|
+
goal_cadence_frequency:
|
|
1991
|
+
type: integer
|
|
1992
|
+
description: >-
|
|
1993
|
+
The goal cadence frequency. When goal_cadence is 0, 1, 2, or 13, a
|
|
1994
|
+
goal's due date repeats every goal_cadence * goal_cadence_frequency.
|
|
1995
|
+
For example, goal_cadence 1 with goal_cadence_frequency 2 means the
|
|
1996
|
+
goal is due every other month. When goal_cadence is 3-12 or 14,
|
|
1997
|
+
goal_cadence_frequency is ignored.
|
|
1998
|
+
format: int32
|
|
1999
|
+
nullable: true
|
|
2000
|
+
goal_creation_month:
|
|
2001
|
+
type: string
|
|
2002
|
+
description: The month a goal was created
|
|
2003
|
+
format: date
|
|
2004
|
+
nullable: true
|
|
2005
|
+
goal_target:
|
|
2006
|
+
type: integer
|
|
2007
|
+
description: The goal target amount in milliunits
|
|
2008
|
+
format: int64
|
|
2009
|
+
nullable: true
|
|
2010
|
+
goal_target_month:
|
|
2011
|
+
type: string
|
|
2012
|
+
description: >-
|
|
2013
|
+
The original target month for the goal to be completed. Only some
|
|
2014
|
+
goal types specify this date.
|
|
2015
|
+
format: date
|
|
2016
|
+
nullable: true
|
|
2017
|
+
goal_percentage_complete:
|
|
2018
|
+
type: integer
|
|
2019
|
+
description: The percentage completion of the goal
|
|
2020
|
+
format: int32
|
|
2021
|
+
nullable: true
|
|
2022
|
+
goal_months_to_budget:
|
|
2023
|
+
type: integer
|
|
2024
|
+
description: >-
|
|
2025
|
+
The number of months, including the current month, left in the
|
|
2026
|
+
current goal period.
|
|
2027
|
+
format: int32
|
|
2028
|
+
nullable: true
|
|
2029
|
+
goal_under_funded:
|
|
2030
|
+
type: integer
|
|
2031
|
+
description: >-
|
|
2032
|
+
The amount of funding still needed in the current month to stay on
|
|
2033
|
+
track towards completing the goal within the current goal period.
|
|
2034
|
+
This amount will generally correspond to the 'Underfunded' amount in
|
|
2035
|
+
the web and mobile clients except when viewing a category with a
|
|
2036
|
+
Needed for Spending Goal in a future month. The web and mobile
|
|
2037
|
+
clients will ignore any funding from a prior goal period when
|
|
2038
|
+
viewing category with a Needed for Spending Goal in a future month.
|
|
2039
|
+
format: int64
|
|
2040
|
+
nullable: true
|
|
2041
|
+
goal_overall_funded:
|
|
2042
|
+
type: integer
|
|
2043
|
+
description: >-
|
|
2044
|
+
The total amount funded towards the goal within the current goal
|
|
2045
|
+
period.
|
|
2046
|
+
format: int64
|
|
2047
|
+
nullable: true
|
|
2048
|
+
goal_overall_left:
|
|
2049
|
+
type: integer
|
|
2050
|
+
description: >-
|
|
2051
|
+
The amount of funding still needed to complete the goal within the
|
|
2052
|
+
current goal period.
|
|
2053
|
+
format: int64
|
|
2054
|
+
nullable: true
|
|
2055
|
+
deleted:
|
|
2056
|
+
type: boolean
|
|
2057
|
+
description: >-
|
|
2058
|
+
Whether or not the category has been deleted. Deleted categories
|
|
2059
|
+
will only be included in delta requests.
|
|
2060
|
+
SaveCategoryResponse:
|
|
2061
|
+
required:
|
|
2062
|
+
- data
|
|
2063
|
+
type: object
|
|
2064
|
+
properties:
|
|
2065
|
+
data:
|
|
2066
|
+
required:
|
|
2067
|
+
- category
|
|
2068
|
+
- server_knowledge
|
|
2069
|
+
type: object
|
|
2070
|
+
properties:
|
|
2071
|
+
category:
|
|
2072
|
+
$ref: '#/components/schemas/Category'
|
|
2073
|
+
server_knowledge:
|
|
2074
|
+
type: integer
|
|
2075
|
+
description: The knowledge of the server
|
|
2076
|
+
format: int64
|
|
2077
|
+
PayeesResponse:
|
|
2078
|
+
required:
|
|
2079
|
+
- data
|
|
2080
|
+
type: object
|
|
2081
|
+
properties:
|
|
2082
|
+
data:
|
|
2083
|
+
required:
|
|
2084
|
+
- payees
|
|
2085
|
+
- server_knowledge
|
|
2086
|
+
type: object
|
|
2087
|
+
properties:
|
|
2088
|
+
payees:
|
|
2089
|
+
type: array
|
|
2090
|
+
items:
|
|
2091
|
+
$ref: '#/components/schemas/Payee'
|
|
2092
|
+
server_knowledge:
|
|
2093
|
+
type: integer
|
|
2094
|
+
description: The knowledge of the server
|
|
2095
|
+
format: int64
|
|
2096
|
+
PayeeResponse:
|
|
2097
|
+
required:
|
|
2098
|
+
- data
|
|
2099
|
+
type: object
|
|
2100
|
+
properties:
|
|
2101
|
+
data:
|
|
2102
|
+
required:
|
|
2103
|
+
- payee
|
|
2104
|
+
type: object
|
|
2105
|
+
properties:
|
|
2106
|
+
payee:
|
|
2107
|
+
$ref: '#/components/schemas/Payee'
|
|
2108
|
+
Payee:
|
|
2109
|
+
required:
|
|
2110
|
+
- deleted
|
|
2111
|
+
- id
|
|
2112
|
+
- name
|
|
2113
|
+
type: object
|
|
2114
|
+
properties:
|
|
2115
|
+
id:
|
|
2116
|
+
type: string
|
|
2117
|
+
format: uuid
|
|
2118
|
+
name:
|
|
2119
|
+
type: string
|
|
2120
|
+
transfer_account_id:
|
|
2121
|
+
type: string
|
|
2122
|
+
nullable: true
|
|
2123
|
+
description: >-
|
|
2124
|
+
If a transfer payee, the `account_id` to which this payee transfers
|
|
2125
|
+
to
|
|
2126
|
+
deleted:
|
|
2127
|
+
type: boolean
|
|
2128
|
+
description: >-
|
|
2129
|
+
Whether or not the payee has been deleted. Deleted payees will only
|
|
2130
|
+
be included in delta requests.
|
|
2131
|
+
PayeeLocationsResponse:
|
|
2132
|
+
required:
|
|
2133
|
+
- data
|
|
2134
|
+
type: object
|
|
2135
|
+
properties:
|
|
2136
|
+
data:
|
|
2137
|
+
required:
|
|
2138
|
+
- payee_locations
|
|
2139
|
+
type: object
|
|
2140
|
+
properties:
|
|
2141
|
+
payee_locations:
|
|
2142
|
+
type: array
|
|
2143
|
+
items:
|
|
2144
|
+
$ref: '#/components/schemas/PayeeLocation'
|
|
2145
|
+
PayeeLocationResponse:
|
|
2146
|
+
required:
|
|
2147
|
+
- data
|
|
2148
|
+
type: object
|
|
2149
|
+
properties:
|
|
2150
|
+
data:
|
|
2151
|
+
required:
|
|
2152
|
+
- payee_location
|
|
2153
|
+
type: object
|
|
2154
|
+
properties:
|
|
2155
|
+
payee_location:
|
|
2156
|
+
$ref: '#/components/schemas/PayeeLocation'
|
|
2157
|
+
PayeeLocation:
|
|
2158
|
+
required:
|
|
2159
|
+
- deleted
|
|
2160
|
+
- id
|
|
2161
|
+
- latitude
|
|
2162
|
+
- longitude
|
|
2163
|
+
- payee_id
|
|
2164
|
+
type: object
|
|
2165
|
+
properties:
|
|
2166
|
+
id:
|
|
2167
|
+
type: string
|
|
2168
|
+
format: uuid
|
|
2169
|
+
payee_id:
|
|
2170
|
+
type: string
|
|
2171
|
+
format: uuid
|
|
2172
|
+
latitude:
|
|
2173
|
+
type: string
|
|
2174
|
+
longitude:
|
|
2175
|
+
type: string
|
|
2176
|
+
deleted:
|
|
2177
|
+
type: boolean
|
|
2178
|
+
description: >-
|
|
2179
|
+
Whether or not the payee location has been deleted. Deleted payee
|
|
2180
|
+
locations will only be included in delta requests.
|
|
2181
|
+
TransactionsResponse:
|
|
2182
|
+
required:
|
|
2183
|
+
- data
|
|
2184
|
+
type: object
|
|
2185
|
+
properties:
|
|
2186
|
+
data:
|
|
2187
|
+
required:
|
|
2188
|
+
- server_knowledge
|
|
2189
|
+
- transactions
|
|
2190
|
+
type: object
|
|
2191
|
+
properties:
|
|
2192
|
+
transactions:
|
|
2193
|
+
type: array
|
|
2194
|
+
items:
|
|
2195
|
+
$ref: '#/components/schemas/TransactionDetail'
|
|
2196
|
+
server_knowledge:
|
|
2197
|
+
type: integer
|
|
2198
|
+
description: The knowledge of the server
|
|
2199
|
+
format: int64
|
|
2200
|
+
HybridTransactionsResponse:
|
|
2201
|
+
required:
|
|
2202
|
+
- data
|
|
2203
|
+
type: object
|
|
2204
|
+
properties:
|
|
2205
|
+
data:
|
|
2206
|
+
required:
|
|
2207
|
+
- transactions
|
|
2208
|
+
type: object
|
|
2209
|
+
properties:
|
|
2210
|
+
transactions:
|
|
2211
|
+
type: array
|
|
2212
|
+
items:
|
|
2213
|
+
$ref: '#/components/schemas/HybridTransaction'
|
|
2214
|
+
server_knowledge:
|
|
2215
|
+
type: integer
|
|
2216
|
+
description: The knowledge of the server
|
|
2217
|
+
format: int64
|
|
2218
|
+
PutTransactionWrapper:
|
|
2219
|
+
required:
|
|
2220
|
+
- transaction
|
|
2221
|
+
type: object
|
|
2222
|
+
properties:
|
|
2223
|
+
transaction:
|
|
2224
|
+
$ref: '#/components/schemas/SaveTransaction'
|
|
2225
|
+
PostTransactionsWrapper:
|
|
2226
|
+
type: object
|
|
2227
|
+
properties:
|
|
2228
|
+
transaction:
|
|
2229
|
+
$ref: '#/components/schemas/SaveTransaction'
|
|
2230
|
+
transactions:
|
|
2231
|
+
type: array
|
|
2232
|
+
items:
|
|
2233
|
+
$ref: '#/components/schemas/SaveTransaction'
|
|
2234
|
+
SaveTransaction:
|
|
2235
|
+
allOf:
|
|
2236
|
+
- type: object
|
|
2237
|
+
- $ref: '#/components/schemas/SaveTransactionWithOptionalFields'
|
|
2238
|
+
PatchTransactionsWrapper:
|
|
2239
|
+
required:
|
|
2240
|
+
- transactions
|
|
2241
|
+
type: object
|
|
2242
|
+
properties:
|
|
2243
|
+
transactions:
|
|
2244
|
+
type: array
|
|
2245
|
+
items:
|
|
2246
|
+
$ref: '#/components/schemas/SaveTransactionWithId'
|
|
2247
|
+
SaveTransactionWithId:
|
|
2248
|
+
allOf:
|
|
2249
|
+
- type: object
|
|
2250
|
+
properties:
|
|
2251
|
+
id:
|
|
2252
|
+
type: string
|
|
2253
|
+
- $ref: '#/components/schemas/SaveTransactionWithOptionalFields'
|
|
2254
|
+
SaveTransactionWithOptionalFields:
|
|
2255
|
+
type: object
|
|
2256
|
+
properties:
|
|
2257
|
+
account_id:
|
|
2258
|
+
type: string
|
|
2259
|
+
format: uuid
|
|
2260
|
+
date:
|
|
2261
|
+
type: string
|
|
2262
|
+
description: >-
|
|
2263
|
+
The transaction date in ISO format (e.g. 2016-12-01). Future dates
|
|
2264
|
+
(scheduled transactions) are not permitted. Split transaction dates
|
|
2265
|
+
cannot be changed and if a different date is supplied it will be
|
|
2266
|
+
ignored.
|
|
2267
|
+
format: date
|
|
2268
|
+
amount:
|
|
2269
|
+
type: integer
|
|
2270
|
+
description: >-
|
|
2271
|
+
The transaction amount in milliunits format. Split transaction
|
|
2272
|
+
amounts cannot be changed and if a different amount is supplied it
|
|
2273
|
+
will be ignored.
|
|
2274
|
+
format: int64
|
|
2275
|
+
payee_id:
|
|
2276
|
+
type: string
|
|
2277
|
+
nullable: true
|
|
2278
|
+
description: >-
|
|
2279
|
+
The payee for the transaction. To create a transfer between two
|
|
2280
|
+
accounts, use the account transfer payee pointing to the target
|
|
2281
|
+
account. Account transfer payees are specified as
|
|
2282
|
+
`tranfer_payee_id` on the account resource.
|
|
2283
|
+
format: uuid
|
|
2284
|
+
payee_name:
|
|
2285
|
+
maxLength: 50
|
|
2286
|
+
type: string
|
|
2287
|
+
nullable: true
|
|
2288
|
+
description: >-
|
|
2289
|
+
The payee name. If a `payee_name` value is provided and `payee_id`
|
|
2290
|
+
has a null value, the `payee_name` value will be used to resolve the
|
|
2291
|
+
payee by either (1) a matching payee rename rule (only if
|
|
2292
|
+
`import_id` is also specified) or (2) a payee with the same name or
|
|
2293
|
+
(3) creation of a new payee.
|
|
2294
|
+
category_id:
|
|
2295
|
+
type: string
|
|
2296
|
+
nullable: true
|
|
2297
|
+
description: >-
|
|
2298
|
+
The category for the transaction. To configure a split transaction,
|
|
2299
|
+
you can specify null for `category_id` and provide a
|
|
2300
|
+
`subtransactions` array as part of the transaction object. If an
|
|
2301
|
+
existing transaction is a split, the `category_id` cannot be
|
|
2302
|
+
changed. Credit Card Payment categories are not permitted and will
|
|
2303
|
+
be ignored if supplied.
|
|
2304
|
+
format: uuid
|
|
2305
|
+
memo:
|
|
2306
|
+
maxLength: 200
|
|
2307
|
+
type: string
|
|
2308
|
+
nullable: true
|
|
2309
|
+
cleared:
|
|
2310
|
+
type: string
|
|
2311
|
+
description: The cleared status of the transaction
|
|
2312
|
+
enum:
|
|
2313
|
+
- cleared
|
|
2314
|
+
- uncleared
|
|
2315
|
+
- reconciled
|
|
2316
|
+
approved:
|
|
2317
|
+
type: boolean
|
|
2318
|
+
description: >-
|
|
2319
|
+
Whether or not the transaction is approved. If not supplied,
|
|
2320
|
+
transaction will be unapproved by default.
|
|
2321
|
+
flag_color:
|
|
2322
|
+
type: string
|
|
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).
|
|
2355
|
+
subtransactions:
|
|
2356
|
+
type: array
|
|
2357
|
+
description: >-
|
|
2358
|
+
An array of subtransactions to configure a transaction as a split.
|
|
2359
|
+
Updating `subtransactions` on an existing split transaction is not
|
|
2360
|
+
supported.
|
|
2361
|
+
items:
|
|
2362
|
+
$ref: '#/components/schemas/SaveSubTransaction'
|
|
2363
|
+
SaveSubTransaction:
|
|
2364
|
+
required:
|
|
2365
|
+
- amount
|
|
2366
|
+
type: object
|
|
2367
|
+
properties:
|
|
2368
|
+
amount:
|
|
2369
|
+
type: integer
|
|
2370
|
+
description: The subtransaction amount in milliunits format.
|
|
2371
|
+
format: int64
|
|
2372
|
+
payee_id:
|
|
2373
|
+
type: string
|
|
2374
|
+
nullable: true
|
|
2375
|
+
description: The payee for the subtransaction.
|
|
2376
|
+
format: uuid
|
|
2377
|
+
payee_name:
|
|
2378
|
+
maxLength: 50
|
|
2379
|
+
type: string
|
|
2380
|
+
nullable: true
|
|
2381
|
+
description: >-
|
|
2382
|
+
The payee name. If a `payee_name` value is provided and `payee_id`
|
|
2383
|
+
has a null value, the `payee_name` value will be used to resolve the
|
|
2384
|
+
payee by either (1) a matching payee rename rule (only if import_id
|
|
2385
|
+
is also specified on parent transaction) or (2) a payee with the
|
|
2386
|
+
same name or (3) creation of a new payee.
|
|
2387
|
+
category_id:
|
|
2388
|
+
type: string
|
|
2389
|
+
nullable: true
|
|
2390
|
+
description: >-
|
|
2391
|
+
The category for the subtransaction. Credit Card Payment categories
|
|
2392
|
+
are not permitted and will be ignored if supplied.
|
|
2393
|
+
format: uuid
|
|
2394
|
+
memo:
|
|
2395
|
+
maxLength: 200
|
|
2396
|
+
type: string
|
|
2397
|
+
nullable: true
|
|
2398
|
+
SaveTransactionsResponse:
|
|
2399
|
+
required:
|
|
2400
|
+
- data
|
|
2401
|
+
type: object
|
|
2402
|
+
properties:
|
|
2403
|
+
data:
|
|
2404
|
+
required:
|
|
2405
|
+
- server_knowledge
|
|
2406
|
+
- transaction_ids
|
|
2407
|
+
type: object
|
|
2408
|
+
properties:
|
|
2409
|
+
transaction_ids:
|
|
2410
|
+
type: array
|
|
2411
|
+
description: The transaction ids that were saved
|
|
2412
|
+
items:
|
|
2413
|
+
type: string
|
|
2414
|
+
transaction:
|
|
2415
|
+
$ref: '#/components/schemas/TransactionDetail'
|
|
2416
|
+
transactions:
|
|
2417
|
+
type: array
|
|
2418
|
+
description: >-
|
|
2419
|
+
If multiple transactions were specified, the transactions that
|
|
2420
|
+
were saved
|
|
2421
|
+
items:
|
|
2422
|
+
$ref: '#/components/schemas/TransactionDetail'
|
|
2423
|
+
duplicate_import_ids:
|
|
2424
|
+
type: array
|
|
2425
|
+
description: >-
|
|
2426
|
+
If multiple transactions were specified, a list of import_ids
|
|
2427
|
+
that were not created because of an existing `import_id` found
|
|
2428
|
+
on the same account
|
|
2429
|
+
items:
|
|
2430
|
+
type: string
|
|
2431
|
+
server_knowledge:
|
|
2432
|
+
type: integer
|
|
2433
|
+
description: The knowledge of the server
|
|
2434
|
+
format: int64
|
|
2435
|
+
TransactionResponse:
|
|
2436
|
+
required:
|
|
2437
|
+
- data
|
|
2438
|
+
type: object
|
|
2439
|
+
properties:
|
|
2440
|
+
data:
|
|
2441
|
+
required:
|
|
2442
|
+
- transaction
|
|
2443
|
+
type: object
|
|
2444
|
+
properties:
|
|
2445
|
+
transaction:
|
|
2446
|
+
$ref: '#/components/schemas/TransactionDetail'
|
|
2447
|
+
TransactionSummary:
|
|
2448
|
+
required:
|
|
2449
|
+
- account_id
|
|
2450
|
+
- amount
|
|
2451
|
+
- approved
|
|
2452
|
+
- cleared
|
|
2453
|
+
- date
|
|
2454
|
+
- deleted
|
|
2455
|
+
- id
|
|
2456
|
+
type: object
|
|
2457
|
+
properties:
|
|
2458
|
+
id:
|
|
2459
|
+
type: string
|
|
2460
|
+
date:
|
|
2461
|
+
type: string
|
|
2462
|
+
description: The transaction date in ISO format (e.g. 2016-12-01)
|
|
2463
|
+
format: date
|
|
2464
|
+
amount:
|
|
2465
|
+
type: integer
|
|
2466
|
+
description: The transaction amount in milliunits format
|
|
2467
|
+
format: int64
|
|
2468
|
+
memo:
|
|
2469
|
+
type: string
|
|
2470
|
+
nullable: true
|
|
2471
|
+
cleared:
|
|
2472
|
+
type: string
|
|
2473
|
+
description: The cleared status of the transaction
|
|
2474
|
+
enum:
|
|
2475
|
+
- cleared
|
|
2476
|
+
- uncleared
|
|
2477
|
+
- reconciled
|
|
2478
|
+
approved:
|
|
2479
|
+
type: boolean
|
|
2480
|
+
description: Whether or not the transaction is approved
|
|
2481
|
+
flag_color:
|
|
2482
|
+
type: string
|
|
2483
|
+
description: The transaction flag
|
|
2484
|
+
enum:
|
|
2485
|
+
- red
|
|
2486
|
+
- orange
|
|
2487
|
+
- yellow
|
|
2488
|
+
- green
|
|
2489
|
+
- blue
|
|
2490
|
+
- purple
|
|
2491
|
+
- null
|
|
2492
|
+
nullable: true
|
|
2493
|
+
account_id:
|
|
2494
|
+
type: string
|
|
2495
|
+
format: uuid
|
|
2496
|
+
payee_id:
|
|
2497
|
+
type: string
|
|
2498
|
+
nullable: true
|
|
2499
|
+
format: uuid
|
|
2500
|
+
category_id:
|
|
2501
|
+
type: string
|
|
2502
|
+
nullable: true
|
|
2503
|
+
format: uuid
|
|
2504
|
+
transfer_account_id:
|
|
2505
|
+
type: string
|
|
2506
|
+
nullable: true
|
|
2507
|
+
description: If a transfer transaction, the account to which it transfers
|
|
2508
|
+
format: uuid
|
|
2509
|
+
transfer_transaction_id:
|
|
2510
|
+
type: string
|
|
2511
|
+
nullable: true
|
|
2512
|
+
description: >-
|
|
2513
|
+
If a transfer transaction, the id of transaction on the other side
|
|
2514
|
+
of the transfer
|
|
2515
|
+
matched_transaction_id:
|
|
2516
|
+
type: string
|
|
2517
|
+
nullable: true
|
|
2518
|
+
description: If transaction is matched, the id of the matched transaction
|
|
2519
|
+
import_id:
|
|
2520
|
+
type: string
|
|
2521
|
+
nullable: true
|
|
2522
|
+
description: >-
|
|
2523
|
+
If the transaction was imported, this field is a unique (by account)
|
|
2524
|
+
import identifier. If this transaction was imported through File
|
|
2525
|
+
Based Import or Direct Import and not through the API, the import_id
|
|
2526
|
+
will have the format:
|
|
2527
|
+
'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a
|
|
2528
|
+
transaction dated 2015-12-30 in the amount of -$294.23 USD would
|
|
2529
|
+
have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second
|
|
2530
|
+
transaction on the same account was imported and had the same date
|
|
2531
|
+
and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'.
|
|
2532
|
+
import_payee_name:
|
|
2533
|
+
type: string
|
|
2534
|
+
nullable: true
|
|
2535
|
+
description: >-
|
|
2536
|
+
If the transaction was imported, the payee name that was used when
|
|
2537
|
+
importing and before applying any payee rename rules
|
|
2538
|
+
import_payee_name_original:
|
|
2539
|
+
type: string
|
|
2540
|
+
nullable: true
|
|
2541
|
+
description: >-
|
|
2542
|
+
If the transaction was imported, the original payee name as it
|
|
2543
|
+
appeared on the statement
|
|
2544
|
+
debt_transaction_type:
|
|
2545
|
+
type: string
|
|
2546
|
+
description: >-
|
|
2547
|
+
If the transaction is a debt/loan account transaction, the type of
|
|
2548
|
+
transaction
|
|
2549
|
+
enum:
|
|
2550
|
+
- payment
|
|
2551
|
+
- refund
|
|
2552
|
+
- fee
|
|
2553
|
+
- interest
|
|
2554
|
+
- escrow
|
|
2555
|
+
- balancedAdjustment
|
|
2556
|
+
- credit
|
|
2557
|
+
- charge
|
|
2558
|
+
- null
|
|
2559
|
+
nullable: true
|
|
2560
|
+
deleted:
|
|
2561
|
+
type: boolean
|
|
2562
|
+
description: >-
|
|
2563
|
+
Whether or not the transaction has been deleted. Deleted
|
|
2564
|
+
transactions will only be included in delta requests.
|
|
2565
|
+
TransactionDetail:
|
|
2566
|
+
allOf:
|
|
2567
|
+
- $ref: '#/components/schemas/TransactionSummary'
|
|
2568
|
+
- required:
|
|
2569
|
+
- account_name
|
|
2570
|
+
- subtransactions
|
|
2571
|
+
type: object
|
|
2572
|
+
properties:
|
|
2573
|
+
account_name:
|
|
2574
|
+
type: string
|
|
2575
|
+
payee_name:
|
|
2576
|
+
type: string
|
|
2577
|
+
nullable: true
|
|
2578
|
+
category_name:
|
|
2579
|
+
type: string
|
|
2580
|
+
nullable: true
|
|
2581
|
+
description: >-
|
|
2582
|
+
The name of the category. If a split transaction, this will be
|
|
2583
|
+
'Split'.
|
|
2584
|
+
subtransactions:
|
|
2585
|
+
type: array
|
|
2586
|
+
description: If a split transaction, the subtransactions.
|
|
2587
|
+
items:
|
|
2588
|
+
$ref: '#/components/schemas/SubTransaction'
|
|
2589
|
+
HybridTransaction:
|
|
2590
|
+
allOf:
|
|
2591
|
+
- $ref: '#/components/schemas/TransactionSummary'
|
|
2592
|
+
- required:
|
|
2593
|
+
- account_name
|
|
2594
|
+
- type
|
|
2595
|
+
type: object
|
|
2596
|
+
properties:
|
|
2597
|
+
type:
|
|
2598
|
+
type: string
|
|
2599
|
+
description: >-
|
|
2600
|
+
Whether the hybrid transaction represents a regular transaction
|
|
2601
|
+
or a subtransaction
|
|
2602
|
+
enum:
|
|
2603
|
+
- transaction
|
|
2604
|
+
- subtransaction
|
|
2605
|
+
parent_transaction_id:
|
|
2606
|
+
type: string
|
|
2607
|
+
nullable: true
|
|
2608
|
+
description: >-
|
|
2609
|
+
For subtransaction types, this is the id of the parent
|
|
2610
|
+
transaction. For transaction types, this id will be always be
|
|
2611
|
+
null.
|
|
2612
|
+
account_name:
|
|
2613
|
+
type: string
|
|
2614
|
+
payee_name:
|
|
2615
|
+
type: string
|
|
2616
|
+
nullable: true
|
|
2617
|
+
category_name:
|
|
2618
|
+
type: string
|
|
2619
|
+
description: >-
|
|
2620
|
+
The name of the category. If a split transaction, this will be
|
|
2621
|
+
'Split'.
|
|
2622
|
+
PatchMonthCategoryWrapper:
|
|
2623
|
+
required:
|
|
2624
|
+
- category
|
|
2625
|
+
type: object
|
|
2626
|
+
properties:
|
|
2627
|
+
category:
|
|
2628
|
+
$ref: '#/components/schemas/SaveMonthCategory'
|
|
2629
|
+
SaveMonthCategory:
|
|
2630
|
+
required:
|
|
2631
|
+
- budgeted
|
|
2632
|
+
type: object
|
|
2633
|
+
properties:
|
|
2634
|
+
budgeted:
|
|
2635
|
+
type: integer
|
|
2636
|
+
description: Budgeted amount in milliunits format
|
|
2637
|
+
format: int64
|
|
2638
|
+
TransactionsImportResponse:
|
|
2639
|
+
required:
|
|
2640
|
+
- data
|
|
2641
|
+
type: object
|
|
2642
|
+
properties:
|
|
2643
|
+
data:
|
|
2644
|
+
required:
|
|
2645
|
+
- transaction_ids
|
|
2646
|
+
type: object
|
|
2647
|
+
properties:
|
|
2648
|
+
transaction_ids:
|
|
2649
|
+
type: array
|
|
2650
|
+
description: The list of transaction ids that were imported.
|
|
2651
|
+
items:
|
|
2652
|
+
type: string
|
|
2653
|
+
BulkResponse:
|
|
2654
|
+
required:
|
|
2655
|
+
- data
|
|
2656
|
+
type: object
|
|
2657
|
+
properties:
|
|
2658
|
+
data:
|
|
2659
|
+
required:
|
|
2660
|
+
- bulk
|
|
2661
|
+
type: object
|
|
2662
|
+
properties:
|
|
2663
|
+
bulk:
|
|
2664
|
+
required:
|
|
2665
|
+
- duplicate_import_ids
|
|
2666
|
+
- transaction_ids
|
|
2667
|
+
type: object
|
|
2668
|
+
properties:
|
|
2669
|
+
transaction_ids:
|
|
2670
|
+
type: array
|
|
2671
|
+
description: The list of Transaction ids that were created.
|
|
2672
|
+
items:
|
|
2673
|
+
type: string
|
|
2674
|
+
duplicate_import_ids:
|
|
2675
|
+
type: array
|
|
2676
|
+
description: >-
|
|
2677
|
+
If any Transactions were not created because they had an
|
|
2678
|
+
`import_id` matching a transaction already on the same
|
|
2679
|
+
account, the specified import_id(s) will be included in this
|
|
2680
|
+
list.
|
|
2681
|
+
items:
|
|
2682
|
+
type: string
|
|
2683
|
+
BulkTransactions:
|
|
2684
|
+
required:
|
|
2685
|
+
- transactions
|
|
2686
|
+
type: object
|
|
2687
|
+
properties:
|
|
2688
|
+
transactions:
|
|
2689
|
+
type: array
|
|
2690
|
+
items:
|
|
2691
|
+
$ref: '#/components/schemas/SaveTransaction'
|
|
2692
|
+
SubTransaction:
|
|
2693
|
+
required:
|
|
2694
|
+
- amount
|
|
2695
|
+
- deleted
|
|
2696
|
+
- id
|
|
2697
|
+
- transaction_id
|
|
2698
|
+
type: object
|
|
2699
|
+
properties:
|
|
2700
|
+
id:
|
|
2701
|
+
type: string
|
|
2702
|
+
transaction_id:
|
|
2703
|
+
type: string
|
|
2704
|
+
amount:
|
|
2705
|
+
type: integer
|
|
2706
|
+
description: The subtransaction amount in milliunits format
|
|
2707
|
+
format: int64
|
|
2708
|
+
memo:
|
|
2709
|
+
type: string
|
|
2710
|
+
nullable: true
|
|
2711
|
+
payee_id:
|
|
2712
|
+
type: string
|
|
2713
|
+
format: uuid
|
|
2714
|
+
nullable: true
|
|
2715
|
+
payee_name:
|
|
2716
|
+
type: string
|
|
2717
|
+
nullable: true
|
|
2718
|
+
category_id:
|
|
2719
|
+
type: string
|
|
2720
|
+
nullable: true
|
|
2721
|
+
format: uuid
|
|
2722
|
+
category_name:
|
|
2723
|
+
type: string
|
|
2724
|
+
nullable: true
|
|
2725
|
+
transfer_account_id:
|
|
2726
|
+
type: string
|
|
2727
|
+
nullable: true
|
|
2728
|
+
description: If a transfer, the account_id which the subtransaction transfers to
|
|
2729
|
+
format: uuid
|
|
2730
|
+
transfer_transaction_id:
|
|
2731
|
+
type: string
|
|
2732
|
+
nullable: true
|
|
2733
|
+
description: >-
|
|
2734
|
+
If a transfer, the id of transaction on the other side of the
|
|
2735
|
+
transfer
|
|
2736
|
+
deleted:
|
|
2737
|
+
type: boolean
|
|
2738
|
+
description: >-
|
|
2739
|
+
Whether or not the subtransaction has been deleted. Deleted
|
|
2740
|
+
subtransactions will only be included in delta requests.
|
|
2741
|
+
ScheduledTransactionsResponse:
|
|
2742
|
+
required:
|
|
2743
|
+
- data
|
|
2744
|
+
type: object
|
|
2745
|
+
properties:
|
|
2746
|
+
data:
|
|
2747
|
+
required:
|
|
2748
|
+
- scheduled_transactions
|
|
2749
|
+
- server_knowledge
|
|
2750
|
+
type: object
|
|
2751
|
+
properties:
|
|
2752
|
+
scheduled_transactions:
|
|
2753
|
+
type: array
|
|
2754
|
+
items:
|
|
2755
|
+
$ref: '#/components/schemas/ScheduledTransactionDetail'
|
|
2756
|
+
server_knowledge:
|
|
2757
|
+
type: integer
|
|
2758
|
+
description: The knowledge of the server
|
|
2759
|
+
format: int64
|
|
2760
|
+
ScheduledTransactionResponse:
|
|
2761
|
+
required:
|
|
2762
|
+
- data
|
|
2763
|
+
type: object
|
|
2764
|
+
properties:
|
|
2765
|
+
data:
|
|
2766
|
+
required:
|
|
2767
|
+
- scheduled_transaction
|
|
2768
|
+
type: object
|
|
2769
|
+
properties:
|
|
2770
|
+
scheduled_transaction:
|
|
2771
|
+
$ref: '#/components/schemas/ScheduledTransactionDetail'
|
|
2772
|
+
ScheduledTransactionSummary:
|
|
2773
|
+
required:
|
|
2774
|
+
- account_id
|
|
2775
|
+
- amount
|
|
2776
|
+
- date_first
|
|
2777
|
+
- date_next
|
|
2778
|
+
- deleted
|
|
2779
|
+
- frequency
|
|
2780
|
+
- id
|
|
2781
|
+
type: object
|
|
2782
|
+
properties:
|
|
2783
|
+
id:
|
|
2784
|
+
type: string
|
|
2785
|
+
format: uuid
|
|
2786
|
+
date_first:
|
|
2787
|
+
type: string
|
|
2788
|
+
description: The first date for which the Scheduled Transaction was scheduled.
|
|
2789
|
+
format: date
|
|
2790
|
+
date_next:
|
|
2791
|
+
type: string
|
|
2792
|
+
description: The next date for which the Scheduled Transaction is scheduled.
|
|
2793
|
+
format: date
|
|
2794
|
+
frequency:
|
|
2795
|
+
type: string
|
|
2796
|
+
enum:
|
|
2797
|
+
- never
|
|
2798
|
+
- daily
|
|
2799
|
+
- weekly
|
|
2800
|
+
- everyOtherWeek
|
|
2801
|
+
- twiceAMonth
|
|
2802
|
+
- every4Weeks
|
|
2803
|
+
- monthly
|
|
2804
|
+
- everyOtherMonth
|
|
2805
|
+
- every3Months
|
|
2806
|
+
- every4Months
|
|
2807
|
+
- twiceAYear
|
|
2808
|
+
- yearly
|
|
2809
|
+
- everyOtherYear
|
|
2810
|
+
amount:
|
|
2811
|
+
type: integer
|
|
2812
|
+
description: The scheduled transaction amount in milliunits format
|
|
2813
|
+
format: int64
|
|
2814
|
+
memo:
|
|
2815
|
+
type: string
|
|
2816
|
+
nullable: true
|
|
2817
|
+
flag_color:
|
|
2818
|
+
type: string
|
|
2819
|
+
description: The scheduled transaction flag
|
|
2820
|
+
enum:
|
|
2821
|
+
- red
|
|
2822
|
+
- orange
|
|
2823
|
+
- yellow
|
|
2824
|
+
- green
|
|
2825
|
+
- blue
|
|
2826
|
+
- purple
|
|
2827
|
+
- null
|
|
2828
|
+
nullable: true
|
|
2829
|
+
account_id:
|
|
2830
|
+
type: string
|
|
2831
|
+
format: uuid
|
|
2832
|
+
payee_id:
|
|
2833
|
+
type: string
|
|
2834
|
+
nullable: true
|
|
2835
|
+
format: uuid
|
|
2836
|
+
category_id:
|
|
2837
|
+
type: string
|
|
2838
|
+
nullable: true
|
|
2839
|
+
format: uuid
|
|
2840
|
+
transfer_account_id:
|
|
2841
|
+
type: string
|
|
2842
|
+
nullable: true
|
|
2843
|
+
description: >-
|
|
2844
|
+
If a transfer, the account_id which the scheduled transaction
|
|
2845
|
+
transfers to
|
|
2846
|
+
format: uuid
|
|
2847
|
+
deleted:
|
|
2848
|
+
type: boolean
|
|
2849
|
+
description: >-
|
|
2850
|
+
Whether or not the scheduled transaction has been deleted. Deleted
|
|
2851
|
+
scheduled transactions will only be included in delta requests.
|
|
2852
|
+
ScheduledTransactionDetail:
|
|
2853
|
+
allOf:
|
|
2854
|
+
- $ref: '#/components/schemas/ScheduledTransactionSummary'
|
|
2855
|
+
- required:
|
|
2856
|
+
- account_name
|
|
2857
|
+
- subtransactions
|
|
2858
|
+
type: object
|
|
2859
|
+
properties:
|
|
2860
|
+
account_name:
|
|
2861
|
+
type: string
|
|
2862
|
+
payee_name:
|
|
2863
|
+
type: string
|
|
2864
|
+
nullable: true
|
|
2865
|
+
category_name:
|
|
2866
|
+
type: string
|
|
2867
|
+
nullable: true
|
|
2868
|
+
description: >-
|
|
2869
|
+
The name of the category. If a split scheduled transaction,
|
|
2870
|
+
this will be 'Split'.
|
|
2871
|
+
subtransactions:
|
|
2872
|
+
type: array
|
|
2873
|
+
description: If a split scheduled transaction, the subtransactions.
|
|
2874
|
+
items:
|
|
2875
|
+
$ref: '#/components/schemas/ScheduledSubTransaction'
|
|
2876
|
+
ScheduledSubTransaction:
|
|
2877
|
+
required:
|
|
2878
|
+
- amount
|
|
2879
|
+
- deleted
|
|
2880
|
+
- id
|
|
2881
|
+
- scheduled_transaction_id
|
|
2882
|
+
type: object
|
|
2883
|
+
properties:
|
|
2884
|
+
id:
|
|
2885
|
+
type: string
|
|
2886
|
+
format: uuid
|
|
2887
|
+
scheduled_transaction_id:
|
|
2888
|
+
type: string
|
|
2889
|
+
format: uuid
|
|
2890
|
+
amount:
|
|
2891
|
+
type: integer
|
|
2892
|
+
description: The scheduled subtransaction amount in milliunits format
|
|
2893
|
+
format: int64
|
|
2894
|
+
memo:
|
|
2895
|
+
type: string
|
|
2896
|
+
nullable: true
|
|
2897
|
+
payee_id:
|
|
2898
|
+
type: string
|
|
2899
|
+
nullable: true
|
|
2900
|
+
format: uuid
|
|
2901
|
+
category_id:
|
|
2902
|
+
type: string
|
|
2903
|
+
nullable: true
|
|
2904
|
+
format: uuid
|
|
2905
|
+
transfer_account_id:
|
|
2906
|
+
type: string
|
|
2907
|
+
nullable: true
|
|
2908
|
+
description: >-
|
|
2909
|
+
If a transfer, the account_id which the scheduled subtransaction
|
|
2910
|
+
transfers to
|
|
2911
|
+
format: uuid
|
|
2912
|
+
deleted:
|
|
2913
|
+
type: boolean
|
|
2914
|
+
description: >-
|
|
2915
|
+
Whether or not the scheduled subtransaction has been deleted.
|
|
2916
|
+
Deleted scheduled subtransactions will only be included in delta
|
|
2917
|
+
requests.
|
|
2918
|
+
MonthSummariesResponse:
|
|
2919
|
+
required:
|
|
2920
|
+
- data
|
|
2921
|
+
type: object
|
|
2922
|
+
properties:
|
|
2923
|
+
data:
|
|
2924
|
+
required:
|
|
2925
|
+
- months
|
|
2926
|
+
- server_knowledge
|
|
2927
|
+
type: object
|
|
2928
|
+
properties:
|
|
2929
|
+
months:
|
|
2930
|
+
type: array
|
|
2931
|
+
items:
|
|
2932
|
+
$ref: '#/components/schemas/MonthSummary'
|
|
2933
|
+
server_knowledge:
|
|
2934
|
+
type: integer
|
|
2935
|
+
description: The knowledge of the server
|
|
2936
|
+
format: int64
|
|
2937
|
+
MonthDetailResponse:
|
|
2938
|
+
required:
|
|
2939
|
+
- data
|
|
2940
|
+
type: object
|
|
2941
|
+
properties:
|
|
2942
|
+
data:
|
|
2943
|
+
required:
|
|
2944
|
+
- month
|
|
2945
|
+
type: object
|
|
2946
|
+
properties:
|
|
2947
|
+
month:
|
|
2948
|
+
$ref: '#/components/schemas/MonthDetail'
|
|
2949
|
+
MonthSummary:
|
|
2950
|
+
required:
|
|
2951
|
+
- activity
|
|
2952
|
+
- budgeted
|
|
2953
|
+
- deleted
|
|
2954
|
+
- income
|
|
2955
|
+
- month
|
|
2956
|
+
- to_be_budgeted
|
|
2957
|
+
type: object
|
|
2958
|
+
properties:
|
|
2959
|
+
month:
|
|
2960
|
+
type: string
|
|
2961
|
+
format: date
|
|
2962
|
+
note:
|
|
2963
|
+
type: string
|
|
2964
|
+
nullable: true
|
|
2965
|
+
income:
|
|
2966
|
+
type: integer
|
|
2967
|
+
description: >-
|
|
2968
|
+
The total amount of transactions categorized to 'Inflow: Ready to
|
|
2969
|
+
Assign' in the month
|
|
2970
|
+
format: int64
|
|
2971
|
+
budgeted:
|
|
2972
|
+
type: integer
|
|
2973
|
+
description: The total amount budgeted in the month
|
|
2974
|
+
format: int64
|
|
2975
|
+
activity:
|
|
2976
|
+
type: integer
|
|
2977
|
+
description: >-
|
|
2978
|
+
The total amount of transactions in the month, excluding those
|
|
2979
|
+
categorized to 'Inflow: Ready to Assign'
|
|
2980
|
+
format: int64
|
|
2981
|
+
to_be_budgeted:
|
|
2982
|
+
type: integer
|
|
2983
|
+
description: The available amount for 'Ready to Assign'
|
|
2984
|
+
format: int64
|
|
2985
|
+
age_of_money:
|
|
2986
|
+
type: integer
|
|
2987
|
+
description: The Age of Money as of the month
|
|
2988
|
+
format: int32
|
|
2989
|
+
nullable: true
|
|
2990
|
+
deleted:
|
|
2991
|
+
type: boolean
|
|
2992
|
+
description: >-
|
|
2993
|
+
Whether or not the month has been deleted. Deleted months will only
|
|
2994
|
+
be included in delta requests.
|
|
2995
|
+
MonthDetail:
|
|
2996
|
+
allOf:
|
|
2997
|
+
- $ref: '#/components/schemas/MonthSummary'
|
|
2998
|
+
- required:
|
|
2999
|
+
- categories
|
|
3000
|
+
type: object
|
|
3001
|
+
properties:
|
|
3002
|
+
categories:
|
|
3003
|
+
type: array
|
|
3004
|
+
description: >-
|
|
3005
|
+
The budget month categories. Amounts (budgeted, activity,
|
|
3006
|
+
balance, etc.) are specific to the {month} parameter specified.
|
|
3007
|
+
items:
|
|
3008
|
+
$ref: '#/components/schemas/Category'
|
|
3009
|
+
securitySchemes:
|
|
3010
|
+
bearer:
|
|
3011
|
+
type: http
|
|
3012
|
+
scheme: bearer
|