openapi: 3.0.0 servers: - url: https://api.ynab.com/v1 info: contact: x-twitter: ynab description: Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com title: YNAB API Endpoints version: 1.0.0 x-apisguru-categories: - financial x-logo: url: https://twitter.com/ynab/profile_image?size=original x-origin: - format: openapi url: https://api.youneedabudget.com/papi/spec-v1-swagger.json version: "3.0" x-providerName: youneedabudget.com security: - bearer: [] tags: - name: User - name: Budgets - description: The accounts for a budget name: Accounts - description: The categories for a budget name: Categories - description: The payees for a budget name: Payees - description: When you enter a transaction and specify a payee on the YNAB mobile apps, the GPS coordinates for that location are stored, with your permission, so that the next time you are in the same place (like the Grocery store) we can pre-populate nearby payees for you! It’s handy and saves you time. This resource makes these locations available. Locations will not be available for all payees. name: Payee Locations - description: Each budget contains one or more months, which is where Ready to Assign, Age of Money and category (budgeted / activity / balances) amounts are available. name: Months - description: The transactions for a budget name: Transactions - description: The scheduled transactions for a budget name: Scheduled Transactions paths: /budgets: get: description: Returns budgets list with summary information operationId: getBudgets parameters: - description: Whether to include the list of budget accounts in: query name: include_accounts required: false schema: type: boolean responses: "200": content: application/json: schema: $ref: "#/components/schemas/BudgetSummaryResponse" description: The list of budgets "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No budgets were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List budgets tags: - Budgets "/budgets/{budget_id}": get: description: Returns a single budget with all related entities. This resource is effectively a full budget export. operationId: getBudgetById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/BudgetDetailResponse" description: The requested budget "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The specified budget was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single budget tags: - Budgets "/budgets/{budget_id}/accounts": get: description: Returns all accounts operationId: getAccounts parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/AccountsResponse" description: The list of requested accounts "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No accounts were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Account list tags: - Accounts post: description: Creates a new account operationId: createAccount parameters: - description: 'The id of the budget ("last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget)' in: path name: budget_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/PostAccountWrapper" description: The account to create. required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/AccountResponse" description: The account was successfully created "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s). summary: Create a new account tags: - Accounts "/budgets/{budget_id}/accounts/{account_id}": get: description: Returns a single account operationId: getAccountById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the account in: path name: account_id required: true schema: format: uuid type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/AccountResponse" description: The requested account "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The requested account was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single account tags: - Accounts "/budgets/{budget_id}/accounts/{account_id}/transactions": get: description: Returns all transactions for a specified account operationId: getTransactionsByAccount parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the account in: path name: account_id required: true schema: type: string - description: If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30). in: query name: since_date required: false schema: format: date type: string - description: If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported. in: query name: type required: false schema: enum: - uncategorized - unapproved type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionsResponse" description: The list of requested transactions "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No transactions were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List account transactions tags: - Transactions "/budgets/{budget_id}/categories": get: description: Returns all categories grouped by category group. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC). operationId: getCategories parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/CategoriesResponse" description: The categories grouped by category group "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No categories were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List categories tags: - Categories "/budgets/{budget_id}/categories/{category_id}": get: description: Returns a single category. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC). operationId: getCategoryById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the category in: path name: category_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/CategoryResponse" description: The requested category "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The category not was found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single category tags: - Categories "/budgets/{budget_id}/categories/{category_id}/transactions": get: description: Returns all transactions for a specified category operationId: getTransactionsByCategory parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the category in: path name: category_id required: true schema: type: string - description: If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30). in: query name: since_date required: false schema: format: date type: string - description: If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported. in: query name: type required: false schema: enum: - uncategorized - unapproved type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/HybridTransactionsResponse" description: The list of requested transactions "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No transactions were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List category transactions tags: - Transactions "/budgets/{budget_id}/months": get: description: Returns all budget months operationId: getBudgetMonths parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/MonthSummariesResponse" description: The list of budget months "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No budget months were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List budget months tags: - Months "/budgets/{budget_id}/months/{month}": get: description: Returns a single budget month operationId: getBudgetMonth parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC)) in: path name: month required: true schema: format: date type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/MonthDetailResponse" description: The budget month detail "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The budget month was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single budget month tags: - Months "/budgets/{budget_id}/months/{month}/categories/{category_id}": get: description: Returns a single category for a specific budget month. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC). operationId: getMonthCategoryById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC)) in: path name: month required: true schema: format: date type: string - description: The id of the category in: path name: category_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/CategoryResponse" description: The requested month category "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The month category was not was found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single category for a specific budget month tags: - Categories patch: description: Update a category for a specific month. Only `budgeted` amount can be updated. operationId: updateMonthCategory parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC)) in: path name: month required: true schema: format: date type: string - description: The id of the category in: path name: category_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/PatchMonthCategoryWrapper" description: The category to update. Only `budgeted` amount can be updated and any other fields specified will be ignored. required: true responses: "200": content: application/json: schema: $ref: "#/components/schemas/SaveCategoryResponse" description: The month category was successfully updated "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s) summary: Update a category for a specific month tags: - Categories "/budgets/{budget_id}/payee_locations": get: description: Returns all payee locations operationId: getPayeeLocations parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/PayeeLocationsResponse" description: The list of payee locations "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No payees locations were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List payee locations tags: - Payee Locations "/budgets/{budget_id}/payee_locations/{payee_location_id}": get: description: Returns a single payee location operationId: getPayeeLocationById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: id of payee location in: path name: payee_location_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/PayeeLocationResponse" description: The payee location "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The payee location was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single payee location tags: - Payee Locations "/budgets/{budget_id}/payees": get: description: Returns all payees operationId: getPayees parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/PayeesResponse" description: The requested list of payees "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No payees were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List payees tags: - Payees "/budgets/{budget_id}/payees/{payee_id}": get: description: Returns a single payee operationId: getPayeeById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the payee in: path name: payee_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/PayeeResponse" description: The requested payee "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The payee was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single payee tags: - Payees "/budgets/{budget_id}/payees/{payee_id}/payee_locations": get: description: Returns all payee locations for a specified payee operationId: getPayeeLocationsByPayee parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: id of payee in: path name: payee_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/PayeeLocationsResponse" description: The list of requested payee locations "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No payees locations were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List locations for a payee tags: - Payee Locations "/budgets/{budget_id}/payees/{payee_id}/transactions": get: description: Returns all transactions for a specified payee operationId: getTransactionsByPayee parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the payee in: path name: payee_id required: true schema: type: string - description: If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30). in: query name: since_date required: false schema: format: date type: string - description: If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported. in: query name: type required: false schema: enum: - uncategorized - unapproved type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/HybridTransactionsResponse" description: The list of requested transactions "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No transactions were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List payee transactions tags: - Transactions "/budgets/{budget_id}/scheduled_transactions": get: description: Returns all scheduled transactions operationId: getScheduledTransactions parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/ScheduledTransactionsResponse" description: The list of requested scheduled transactions "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No scheduled transactions were found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: List scheduled transactions tags: - Scheduled Transactions "/budgets/{budget_id}/scheduled_transactions/{scheduled_transaction_id}": get: description: Returns a single scheduled transaction operationId: getScheduledTransactionById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the scheduled transaction in: path name: scheduled_transaction_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/ScheduledTransactionResponse" description: The requested Scheduled Transaction "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The scheduled transaction was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single scheduled transaction tags: - Scheduled Transactions "/budgets/{budget_id}/settings": get: description: Returns settings for a budget operationId: getBudgetSettingsById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/BudgetSettingsResponse" description: The requested budget settings "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The specified Budget was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Budget Settings tags: - Budgets "/budgets/{budget_id}/transactions": get: description: Returns budget transactions operationId: getTransactions parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30). in: query name: since_date required: false schema: format: date type: string - description: If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported. in: query name: type required: false schema: enum: - uncategorized - unapproved type: string - description: The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included. in: query name: last_knowledge_of_server required: false schema: format: int64 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionsResponse" description: The list of requested transactions "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: No transactions were found summary: List transactions tags: - Transactions patch: description: Updates multiple transactions, by `id` or `import_id`. operationId: updateTransactions parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/PatchTransactionsWrapper" description: The transactions to update. Each transaction must have either an `id` or `import_id` specified. If `id` is specified as null an `import_id` value can be provided which will allow transaction(s) to be updated by their `import_id`. If an `id` is specified, it will always be used for lookup. required: true responses: "209": content: application/json: schema: $ref: "#/components/schemas/SaveTransactionsResponse" description: The transactions were successfully updated "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s). summary: Update multiple transactions tags: - Transactions post: description: Creates a single transaction or multiple transactions. If you provide a body containing a `transaction` object, a single transaction will be created and if you provide a body containing a `transactions` array, multiple transactions will be created. Scheduled transactions cannot be created on this endpoint. operationId: createTransaction parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/PostTransactionsWrapper" description: The transaction or transactions to create. To create a single transaction you can specify a value for the `transaction` object and to create multiple transactions you can specify an array of `transactions`. It is expected that you will only provide a value for one of these objects. required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/SaveTransactionsResponse" description: The transaction or transactions were successfully created "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s). "409": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: A transaction on the same account with the same `import_id` already exists. summary: Create a single transaction or multiple transactions tags: - Transactions "/budgets/{budget_id}/transactions/bulk": post: description: Creates multiple transactions. Although this endpoint is still supported, it is recommended to use 'POST /budgets/{budget_id}/transactions' to create multiple transactions. operationId: bulkCreateTransactions parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/BulkTransactions" description: The list of transactions to create required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/BulkResponse" description: The bulk request was processed successfully "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s) summary: Bulk create transactions tags: - Deprecated "/budgets/{budget_id}/transactions/import": post: description: Imports available transactions on all linked accounts for the given budget. Linked accounts allow transactions to be imported directly from a specified financial institution and this endpoint initiates that import. Sending a request to this endpoint is the equivalent of clicking "Import" on each account in the web application or tapping the "New Transactions" banner in the mobile applications. The response for this endpoint contains the transaction ids that have been imported. operationId: importTransactions parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionsImportResponse" description: The request was successful but there were no transactions to import "201": content: application/json: schema: $ref: "#/components/schemas/TransactionsImportResponse" description: One or more transactions were imported successfully "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s) summary: Import transactions tags: - Transactions "/budgets/{budget_id}/transactions/{transaction_id}": delete: description: Deletes a transaction operationId: deleteTransaction parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the transaction in: path name: transaction_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionResponse" description: The transaction was successfully deleted "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The transaction was not found summary: Deletes an existing transaction tags: - Transactions get: description: Returns a single transaction operationId: getTransactionById parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the transaction in: path name: transaction_id required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionResponse" description: The requested transaction "404": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The transaction was not found default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: Single transaction tags: - Transactions put: description: Updates a single transaction operationId: updateTransaction parameters: - description: 'The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.ynab.com/#oauth-default-budget).' in: path name: budget_id required: true schema: type: string - description: The id of the transaction in: path name: transaction_id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/PutTransactionWrapper" description: The transaction to update required: true responses: "200": content: application/json: schema: $ref: "#/components/schemas/TransactionResponse" description: The transaction was successfully updated "400": content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: The request could not be understood due to malformed syntax or validation error(s) summary: Updates an existing transaction tags: - Transactions /user: get: description: Returns authenticated user information operationId: getUser responses: "200": content: application/json: schema: $ref: "#/components/schemas/UserResponse" description: The user info default: content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" description: An error occurred summary: User info tags: - User components: schemas: Account: properties: balance: description: The current balance of the account in milliunits format format: int64 type: integer cleared_balance: description: The current cleared balance of the account in milliunits format format: int64 type: integer closed: description: Whether this account is closed or not type: boolean debt_escrow_amounts: $ref: "#/components/schemas/LoanAccountPeriodicValue" debt_interest_rates: $ref: "#/components/schemas/LoanAccountPeriodicValue" debt_minimum_payments: $ref: "#/components/schemas/LoanAccountPeriodicValue" debt_original_balance: description: The original debt/loan account balance, specified in milliunits format. format: int64 type: integer deleted: description: Whether or not the account has been deleted. Deleted accounts will only be included in delta requests. type: boolean direct_import_in_error: description: If an account linked to a financial institution (direct_import_linked=true) and the linked connection is not in a healthy state, this will be true. type: boolean direct_import_linked: description: Whether or not the account is linked to a financial institution for automatic transaction import. type: boolean id: format: uuid type: string last_reconciled_at: description: A date/time specifying when the account was last reconciled. format: date-time type: string name: type: string note: type: string on_budget: description: Whether this account is on budget or not type: boolean transfer_payee_id: description: The payee id which should be used when transferring to this account format: uuid type: string type: $ref: "#/components/schemas/AccountType" uncleared_balance: description: The current uncleared balance of the account in milliunits format format: int64 type: integer required: - id - name - type - on_budget - closed - balance - cleared_balance - uncleared_balance - transfer_payee_id - deleted type: object AccountResponse: properties: data: properties: account: $ref: "#/components/schemas/Account" required: - account type: object required: - data type: object AccountType: description: The type of account enum: - checking - savings - cash - creditCard - lineOfCredit - otherAsset - otherLiability - mortgage - autoLoan - studentLoan - personalLoan - medicalDebt - otherDebt type: string AccountsResponse: properties: data: properties: accounts: items: $ref: "#/components/schemas/Account" type: array server_knowledge: description: The knowledge of the server format: int64 type: integer required: - accounts - server_knowledge type: object required: - data type: object BudgetDetail: allOf: - $ref: "#/components/schemas/BudgetSummary" - properties: accounts: items: $ref: "#/components/schemas/Account" type: array categories: items: $ref: "#/components/schemas/Category" type: array category_groups: items: $ref: "#/components/schemas/CategoryGroup" type: array months: items: $ref: "#/components/schemas/MonthDetail" type: array payee_locations: items: $ref: "#/components/schemas/PayeeLocation" type: array payees: items: $ref: "#/components/schemas/Payee" type: array scheduled_subtransactions: items: $ref: "#/components/schemas/ScheduledSubTransaction" type: array scheduled_transactions: items: $ref: "#/components/schemas/ScheduledTransactionSummary" type: array subtransactions: items: $ref: "#/components/schemas/SubTransaction" type: array transactions: items: $ref: "#/components/schemas/TransactionSummary" type: array type: object BudgetDetailResponse: properties: data: properties: budget: $ref: "#/components/schemas/BudgetDetail" server_knowledge: description: The knowledge of the server format: int64 type: integer required: - budget - server_knowledge type: object required: - data type: object BudgetSettings: properties: currency_format: $ref: "#/components/schemas/CurrencyFormat" date_format: $ref: "#/components/schemas/DateFormat" required: - date_format - currency_format type: object BudgetSettingsResponse: properties: data: properties: settings: $ref: "#/components/schemas/BudgetSettings" required: - settings type: object required: - data type: object BudgetSummary: properties: accounts: description: The budget accounts (only included if `include_accounts=true` specified as query parameter) items: $ref: "#/components/schemas/Account" type: array currency_format: $ref: "#/components/schemas/CurrencyFormat" date_format: $ref: "#/components/schemas/DateFormat" first_month: description: The earliest budget month format: date type: string id: format: uuid type: string last_modified_on: description: The last time any changes were made to the budget from either a web or mobile client format: date-time type: string last_month: description: The latest budget month format: date type: string name: type: string required: - id - name type: object BudgetSummaryResponse: properties: data: properties: budgets: items: $ref: "#/components/schemas/BudgetSummary" type: array default_budget: $ref: "#/components/schemas/BudgetSummary" required: - budgets type: object required: - data type: object BulkResponse: properties: data: properties: bulk: properties: duplicate_import_ids: description: If any Transactions were not created because they had an `import_id` matching a transaction already on the same account, the specified import_id(s) will be included in this list. items: type: string type: array transaction_ids: description: The list of Transaction ids that were created. items: type: string type: array required: - transaction_ids - duplicate_import_ids type: object required: - bulk type: object required: - data type: object BulkTransactions: properties: transactions: items: $ref: "#/components/schemas/SaveTransaction" type: array required: - transactions type: object CategoriesResponse: properties: data: properties: category_groups: items: $ref: "#/components/schemas/CategoryGroupWithCategories" type: array server_knowledge: description: The knowledge of the server format: int64 type: integer required: - category_groups - server_knowledge type: object required: - data type: object Category: properties: activity: description: Activity amount in milliunits format format: int64 type: integer balance: description: Balance in milliunits format format: int64 type: integer budgeted: description: Budgeted amount in milliunits format format: int64 type: integer category_group_id: format: uuid type: string deleted: description: Whether or not the category has been deleted. Deleted categories will only be included in delta requests. type: boolean goal_cadence: description: The goal cadence format: int32 type: integer goal_cadence_frequency: description: The goal cadence frequency format: int32 type: integer goal_creation_month: description: The month a goal was created format: date type: string goal_day: description: The day of the goal format: int32 type: integer goal_months_to_budget: description: The number of months, including the current month, left in the current goal period. format: int32 type: integer goal_overall_funded: description: The total amount funded towards the goal within the current goal period. format: int64 type: integer goal_overall_left: description: The amount of funding still needed to complete the goal within the current goal period. format: int64 type: integer goal_percentage_complete: description: The percentage completion of the goal format: int32 type: integer goal_target: description: The goal target amount in milliunits format: int64 type: integer goal_target_month: description: The original target month for the goal to be completed. Only some goal types specify this date. format: date type: string goal_type: description: The type of goal, if the category has a goal (TB='Target Category Balance', TBD='Target Category Balance by Date', MF='Monthly Funding', NEED='Plan Your Spending') enum: - TB - TBD - MF - NEED - DEBT - null type: string goal_under_funded: description: The amount of funding still needed in the current month to stay on track towards completing the goal within the current goal period. This amount will generally correspond to the 'Underfunded' amount in the web and mobile clients except when viewing a category with a Needed for Spending Goal in a future month. The web and mobile clients will ignore any funding from a prior goal period when viewing category with a Needed for Spending Goal in a future month. format: int64 type: integer hidden: description: Whether or not the category is hidden type: boolean id: format: uuid type: string name: type: string note: type: string original_category_group_id: description: "DEPRECATED: No longer used. Value will always be null." format: uuid type: string required: - id - category_group_id - name - hidden - budgeted - activity - balance - deleted type: object CategoryGroup: properties: deleted: description: Whether or not the category group has been deleted. Deleted category groups will only be included in delta requests. type: boolean hidden: description: Whether or not the category group is hidden type: boolean id: format: uuid type: string name: type: string required: - id - name - hidden - deleted type: object CategoryGroupWithCategories: allOf: - $ref: "#/components/schemas/CategoryGroup" - properties: categories: description: Category group categories. Amounts (budgeted, activity, balance, etc.) are specific to the current budget month (UTC). items: $ref: "#/components/schemas/Category" type: array required: - categories type: object CategoryResponse: properties: data: properties: category: $ref: "#/components/schemas/Category" required: - category type: object required: - data type: object CurrencyFormat: description: The currency format setting for the budget. In some cases the format will not be available and will be specified as null. properties: currency_symbol: type: string decimal_digits: format: int32 type: integer decimal_separator: type: string display_symbol: type: boolean example_format: type: string group_separator: type: string iso_code: type: string symbol_first: type: boolean required: - iso_code - example_format - decimal_digits - decimal_separator - symbol_first - group_separator - currency_symbol - display_symbol type: object DateFormat: description: The date format setting for the budget. In some cases the format will not be available and will be specified as null. properties: format: type: string required: - format type: object ErrorDetail: properties: detail: type: string id: type: string name: type: string required: - id - name - detail type: object ErrorResponse: properties: error: $ref: "#/components/schemas/ErrorDetail" required: - error type: object HybridTransaction: allOf: - $ref: "#/components/schemas/TransactionSummary" - properties: account_name: type: string category_name: description: The name of the category. If a split transaction, this will be 'Split'. type: string parent_transaction_id: description: For subtransaction types, this is the id of the parent transaction. For transaction types, this id will be always be null. type: string payee_name: type: string type: description: Whether the hybrid transaction represents a regular transaction or a subtransaction enum: - transaction - subtransaction type: string required: - type - account_name type: object HybridTransactionsResponse: properties: data: properties: server_knowledge: description: The knowledge of the server format: int64 type: integer transactions: items: $ref: "#/components/schemas/HybridTransaction" type: array required: - transactions type: object required: - data type: object LoanAccountPeriodicValue: additionalProperties: format: int64 type: integer type: object MonthDetail: allOf: - $ref: "#/components/schemas/MonthSummary" - properties: categories: description: The budget month categories. Amounts (budgeted, activity, balance, etc.) are specific to the {month} parameter specified. items: $ref: "#/components/schemas/Category" type: array required: - categories type: object MonthDetailResponse: properties: data: properties: month: $ref: "#/components/schemas/MonthDetail" required: - month type: object required: - data type: object MonthSummariesResponse: properties: data: properties: months: items: $ref: "#/components/schemas/MonthSummary" type: array server_knowledge: description: The knowledge of the server format: int64 type: integer required: - months - server_knowledge type: object required: - data type: object MonthSummary: properties: activity: description: "The total amount of transactions in the month, excluding those categorized to 'Inflow: Ready to Assign'" format: int64 type: integer age_of_money: description: The Age of Money as of the month format: int32 type: integer budgeted: description: The total amount budgeted in the month format: int64 type: integer deleted: description: Whether or not the month has been deleted. Deleted months will only be included in delta requests. type: boolean income: description: "The total amount of transactions categorized to 'Inflow: Ready to Assign' in the month" format: int64 type: integer month: format: date type: string note: type: string to_be_budgeted: description: The available amount for 'Ready to Assign' format: int64 type: integer required: - month - income - budgeted - activity - to_be_budgeted - deleted type: object PatchMonthCategoryWrapper: properties: category: $ref: "#/components/schemas/SaveMonthCategory" required: - category type: object PatchTransactionsWrapper: properties: transactions: items: $ref: "#/components/schemas/SaveTransactionWithId" type: array required: - transactions type: object Payee: properties: deleted: description: Whether or not the payee has been deleted. Deleted payees will only be included in delta requests. type: boolean id: format: uuid type: string name: type: string transfer_account_id: description: If a transfer payee, the `account_id` to which this payee transfers to type: string required: - id - name - deleted type: object PayeeLocation: properties: deleted: description: Whether or not the payee location has been deleted. Deleted payee locations will only be included in delta requests. type: boolean id: format: uuid type: string latitude: type: string longitude: type: string payee_id: format: uuid type: string required: - id - payee_id - latitude - longitude - deleted type: object PayeeLocationResponse: properties: data: properties: payee_location: $ref: "#/components/schemas/PayeeLocation" required: - payee_location type: object required: - data type: object PayeeLocationsResponse: properties: data: properties: payee_locations: items: $ref: "#/components/schemas/PayeeLocation" type: array required: - payee_locations type: object required: - data type: object PayeeResponse: properties: data: properties: payee: $ref: "#/components/schemas/Payee" required: - payee type: object required: - data type: object PayeesResponse: properties: data: properties: payees: items: $ref: "#/components/schemas/Payee" type: array server_knowledge: description: The knowledge of the server format: int64 type: integer required: - payees - server_knowledge type: object required: - data type: object PostAccountWrapper: properties: account: $ref: "#/components/schemas/SaveAccount" required: - account type: object PostTransactionsWrapper: properties: transaction: $ref: "#/components/schemas/SaveTransaction" transactions: items: $ref: "#/components/schemas/SaveTransaction" type: array type: object PutTransactionWrapper: properties: transaction: $ref: "#/components/schemas/SaveTransaction" required: - transaction type: object SaveAccount: properties: balance: description: The current balance of the account in milliunits format format: int64 type: integer name: description: The name of the account type: string type: $ref: "#/components/schemas/AccountType" required: - name - type - balance type: object SaveCategoryResponse: properties: data: properties: category: $ref: "#/components/schemas/Category" server_knowledge: description: The knowledge of the server format: int64 type: integer required: - category - server_knowledge type: object required: - data type: object SaveMonthCategory: properties: budgeted: description: Budgeted amount in milliunits format format: int64 type: integer required: - budgeted type: object SaveSubTransaction: properties: amount: description: The subtransaction amount in milliunits format. format: int64 type: integer category_id: description: The category for the subtransaction. Credit Card Payment categories are not permitted and will be ignored if supplied. format: uuid type: string memo: maxLength: 200 type: string payee_id: description: The payee for the subtransaction. format: uuid type: string payee_name: description: The payee name. If a `payee_name` value is provided and `payee_id` has a null value, the `payee_name` value will be used to resolve the payee by either (1) a matching payee rename rule (only if import_id is also specified on parent transaction) or (2) a payee with the same name or (3) creation of a new payee. maxLength: 50 type: string required: - amount type: object SaveTransaction: allOf: - required: - account_id - date - amount - $ref: "#/components/schemas/SaveTransactionWithOptionalFields" SaveTransactionWithId: allOf: - properties: id: type: string type: object - $ref: "#/components/schemas/SaveTransactionWithOptionalFields" SaveTransactionWithOptionalFields: properties: account_id: format: uuid type: string amount: description: The transaction amount in milliunits format. Split transaction amounts cannot be changed and if a different amount is supplied it will be ignored. format: int64 type: integer approved: description: Whether or not the transaction is approved. If not supplied, transaction will be unapproved by default. type: boolean category_id: description: The category for the transaction. To configure a split transaction, you can specify null for `category_id` and provide a `subtransactions` array as part of the transaction object. If an existing transaction is a split, the `category_id` cannot be changed. Credit Card Payment categories are not permitted and will be ignored if supplied. format: uuid type: string cleared: description: The cleared status of the transaction enum: - cleared - uncleared - reconciled type: string date: description: The transaction date in ISO format (e.g. 2016-12-01). Future dates (scheduled transactions) are not permitted. Split transaction dates cannot be changed and if a different date is supplied it will be ignored. format: date type: string flag_color: description: The transaction flag enum: - red - orange - yellow - green - blue - purple - null type: string import_id: description: "If specified, the new transaction will be assigned this `import_id` and considered \"imported\". We will also attempt to match this imported transaction to an existing \"user-entered\" transation on the same account, with the same amount, and with a date +/-10 days from the imported transaction date.

Transactions imported through File Based Import or Direct Import (not through the API) are assigned an import_id in the format: 'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a transaction dated 2015-12-30 in the amount of -$294.23 USD would have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second transaction on the same account was imported and had the same date and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'. Using a consistent format will prevent duplicates through Direct Import and File Based Import.

If import_id is omitted or specified as null, the transaction will be treated as a \"user-entered\" transaction. As such, it will be eligible to be matched against transactions later being imported (via DI, FBI, or API)." maxLength: 36 type: string memo: maxLength: 200 type: string payee_id: description: The payee for the transaction. To create a transfer between two accounts, use the account transfer payee pointing to the target account. Account transfer payees are specified as `tranfer_payee_id` on the account resource. format: uuid type: string payee_name: description: The payee name. If a `payee_name` value is provided and `payee_id` has a null value, the `payee_name` value will be used to resolve the payee by either (1) a matching payee rename rule (only if `import_id` is also specified) or (2) a payee with the same name or (3) creation of a new payee. maxLength: 50 type: string subtransactions: description: An array of subtransactions to configure a transaction as a split. Updating `subtransactions` on an existing split transaction is not supported. items: $ref: "#/components/schemas/SaveSubTransaction" type: array type: object SaveTransactionsResponse: properties: data: properties: duplicate_import_ids: description: If multiple transactions were specified, a list of import_ids that were not created because of an existing `import_id` found on the same account items: type: string type: array server_knowledge: description: The knowledge of the server format: int64 type: integer transaction: $ref: "#/components/schemas/TransactionDetail" transaction_ids: description: The transaction ids that were saved items: type: string type: array transactions: description: If multiple transactions were specified, the transactions that were saved items: $ref: "#/components/schemas/TransactionDetail" type: array required: - transaction_ids - server_knowledge type: object required: - data type: object ScheduledSubTransaction: properties: amount: description: The scheduled subtransaction amount in milliunits format format: int64 type: integer category_id: format: uuid type: string deleted: description: Whether or not the scheduled subtransaction has been deleted. Deleted scheduled subtransactions will only be included in delta requests. type: boolean id: format: uuid type: string memo: type: string payee_id: format: uuid type: string scheduled_transaction_id: format: uuid type: string transfer_account_id: description: If a transfer, the account_id which the scheduled subtransaction transfers to format: uuid type: string required: - id - scheduled_transaction_id - amount - deleted type: object ScheduledTransactionDetail: allOf: - $ref: "#/components/schemas/ScheduledTransactionSummary" - properties: account_name: type: string category_name: description: The name of the category. If a split scheduled transaction, this will be 'Split'. type: string payee_name: type: string subtransactions: description: If a split scheduled transaction, the subtransactions. items: $ref: "#/components/schemas/ScheduledSubTransaction" type: array required: - account_name - subtransactions type: object ScheduledTransactionResponse: properties: data: properties: scheduled_transaction: $ref: "#/components/schemas/ScheduledTransactionDetail" required: - scheduled_transaction type: object required: - data type: object ScheduledTransactionSummary: properties: account_id: format: uuid type: string amount: description: The scheduled transaction amount in milliunits format format: int64 type: integer category_id: format: uuid type: string date_first: description: The first date for which the Scheduled Transaction was scheduled. format: date type: string date_next: description: The next date for which the Scheduled Transaction is scheduled. format: date type: string deleted: description: Whether or not the scheduled transaction has been deleted. Deleted scheduled transactions will only be included in delta requests. type: boolean flag_color: description: The scheduled transaction flag enum: - red - orange - yellow - green - blue - purple - null type: string frequency: enum: - never - daily - weekly - everyOtherWeek - twiceAMonth - every4Weeks - monthly - everyOtherMonth - every3Months - every4Months - twiceAYear - yearly - everyOtherYear type: string id: format: uuid type: string memo: type: string payee_id: format: uuid type: string transfer_account_id: description: If a transfer, the account_id which the scheduled transaction transfers to format: uuid type: string required: - id - date_first - date_next - frequency - amount - account_id - deleted type: object ScheduledTransactionsResponse: properties: data: properties: scheduled_transactions: items: $ref: "#/components/schemas/ScheduledTransactionDetail" type: array server_knowledge: description: The knowledge of the server format: int64 type: integer required: - scheduled_transactions - server_knowledge type: object required: - data type: object SubTransaction: properties: amount: description: The subtransaction amount in milliunits format format: int64 type: integer category_id: format: uuid type: string category_name: type: string deleted: description: Whether or not the subtransaction has been deleted. Deleted subtransactions will only be included in delta requests. type: boolean id: type: string memo: type: string payee_id: format: uuid type: string payee_name: type: string transaction_id: type: string transfer_account_id: description: If a transfer, the account_id which the subtransaction transfers to format: uuid type: string transfer_transaction_id: description: If a transfer, the id of transaction on the other side of the transfer type: string required: - id - transaction_id - amount - deleted type: object TransactionDetail: allOf: - $ref: "#/components/schemas/TransactionSummary" - properties: account_name: type: string category_name: description: The name of the category. If a split transaction, this will be 'Split'. type: string payee_name: type: string subtransactions: description: If a split transaction, the subtransactions. items: $ref: "#/components/schemas/SubTransaction" type: array required: - account_name - subtransactions type: object TransactionResponse: properties: data: properties: transaction: $ref: "#/components/schemas/TransactionDetail" required: - transaction type: object required: - data type: object TransactionSummary: properties: account_id: format: uuid type: string amount: description: The transaction amount in milliunits format format: int64 type: integer approved: description: Whether or not the transaction is approved type: boolean category_id: format: uuid type: string cleared: description: The cleared status of the transaction enum: - cleared - uncleared - reconciled type: string date: description: The transaction date in ISO format (e.g. 2016-12-01) format: date type: string debt_transaction_type: description: If the transaction is a debt/loan account transaction, the type of transaction enum: - payment - refund - fee - interest - escrow - balancedAdjustment - credit - charge - null type: string deleted: description: Whether or not the transaction has been deleted. Deleted transactions will only be included in delta requests. type: boolean flag_color: description: The transaction flag enum: - red - orange - yellow - green - blue - purple - null type: string id: type: string import_id: description: "If the transaction was imported, this field is a unique (by account) import identifier. If this transaction was imported through File Based Import or Direct Import and not through the API, the import_id will have the format: 'YNAB:[milliunit_amount]:[iso_date]:[occurrence]'. For example, a transaction dated 2015-12-30 in the amount of -$294.23 USD would have an import_id of 'YNAB:-294230:2015-12-30:1'. If a second transaction on the same account was imported and had the same date and same amount, its import_id would be 'YNAB:-294230:2015-12-30:2'." type: string import_payee_name: description: If the transaction was imported, the payee name that was used when importing and before applying any payee rename rules type: string import_payee_name_original: description: If the transaction was imported, the original payee name as it appeared on the statement type: string matched_transaction_id: description: If transaction is matched, the id of the matched transaction type: string memo: type: string payee_id: format: uuid type: string transfer_account_id: description: If a transfer transaction, the account to which it transfers format: uuid type: string transfer_transaction_id: description: If a transfer transaction, the id of transaction on the other side of the transfer type: string required: - id - date - amount - cleared - approved - account_id - deleted type: object TransactionsImportResponse: properties: data: properties: transaction_ids: description: The list of transaction ids that were imported. items: type: string type: array required: - transaction_ids type: object required: - data type: object TransactionsResponse: properties: data: properties: server_knowledge: description: The knowledge of the server format: int64 type: integer transactions: items: $ref: "#/components/schemas/TransactionDetail" type: array required: - transactions - server_knowledge type: object required: - data type: object User: properties: id: format: uuid type: string required: - id type: object UserResponse: properties: data: properties: user: $ref: "#/components/schemas/User" required: - user type: object required: - data type: object securitySchemes: bearer: in: header name: Authorization type: apiKey