/** * YNAB API Endpoints * 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 * * Generated by: OpenAPI Generator (https://openapi-generator.tech) */ import * as runtime from '../runtime'; import type { HybridTransactionsResponse, PatchTransactionsWrapper, PostTransactionsWrapper, PutTransactionWrapper, SaveTransactionsResponse, TransactionResponse, TransactionsImportResponse, TransactionsResponse } from '../models/index'; export interface CreateTransactionRequest { planId: string; data: PostTransactionsWrapper; } export interface DeleteTransactionRequest { planId: string; transactionId: string; } export interface GetTransactionByIdRequest { planId: string; transactionId: string; } export interface GetTransactionsRequest { planId: string; sinceDate?: string; type?: GetTransactionsTypeEnum; lastKnowledgeOfServer?: number; } export interface GetTransactionsByAccountRequest { planId: string; accountId: string; sinceDate?: string; type?: GetTransactionsByAccountTypeEnum; lastKnowledgeOfServer?: number; } export interface GetTransactionsByCategoryRequest { planId: string; categoryId: string; sinceDate?: string; type?: GetTransactionsByCategoryTypeEnum; lastKnowledgeOfServer?: number; } export interface GetTransactionsByMonthRequest { planId: string; month: string; sinceDate?: string; type?: GetTransactionsByMonthTypeEnum; lastKnowledgeOfServer?: number; } export interface GetTransactionsByPayeeRequest { planId: string; payeeId: string; sinceDate?: string; type?: GetTransactionsByPayeeTypeEnum; lastKnowledgeOfServer?: number; } export interface ImportTransactionsRequest { planId: string; } export interface UpdateTransactionRequest { planId: string; transactionId: string; data: PutTransactionWrapper; } export interface UpdateTransactionsRequest { planId: string; data: PatchTransactionsWrapper; } /** * */ export declare class TransactionsApi extends runtime.BaseAPI { /** * 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 (transactions with a future date) cannot be created on this endpoint. * Create a single transaction or multiple transactions */ createTransactionRaw(requestParameters: CreateTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * 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 (transactions with a future date) cannot be created on this endpoint. * Create a single transaction or multiple transactions */ createTransaction(planId: string, data: PostTransactionsWrapper, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Deletes a transaction * Delete a transaction */ deleteTransactionRaw(requestParameters: DeleteTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Deletes a transaction * Delete a transaction */ deleteTransaction(planId: string, transactionId: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns a single transaction * Get a transaction */ getTransactionByIdRaw(requestParameters: GetTransactionByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns a single transaction * Get a transaction */ getTransactionById(planId: string, transactionId: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns plan transactions, excluding any pending transactions * Get all transactions */ getTransactionsRaw(requestParameters: GetTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns plan transactions, excluding any pending transactions * Get all transactions */ getTransactions(planId: string, sinceDate?: string, type?: GetTransactionsTypeEnum, lastKnowledgeOfServer?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns all transactions for a specified account, excluding any pending transactions * Get all account transactions */ getTransactionsByAccountRaw(requestParameters: GetTransactionsByAccountRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns all transactions for a specified account, excluding any pending transactions * Get all account transactions */ getTransactionsByAccount(planId: string, accountId: string, sinceDate?: string, type?: GetTransactionsByAccountTypeEnum, lastKnowledgeOfServer?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns all transactions for a specified category, excluding any pending transactions * Get all category transactions */ getTransactionsByCategoryRaw(requestParameters: GetTransactionsByCategoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns all transactions for a specified category, excluding any pending transactions * Get all category transactions */ getTransactionsByCategory(planId: string, categoryId: string, sinceDate?: string, type?: GetTransactionsByCategoryTypeEnum, lastKnowledgeOfServer?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns all transactions for a specified month, excluding any pending transactions * Get all plan month transactions */ getTransactionsByMonthRaw(requestParameters: GetTransactionsByMonthRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns all transactions for a specified month, excluding any pending transactions * Get all plan month transactions */ getTransactionsByMonth(planId: string, month: string, sinceDate?: string, type?: GetTransactionsByMonthTypeEnum, lastKnowledgeOfServer?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns all transactions for a specified payee, excluding any pending transactions * Get all payee transactions */ getTransactionsByPayeeRaw(requestParameters: GetTransactionsByPayeeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns all transactions for a specified payee, excluding any pending transactions * Get all payee transactions */ getTransactionsByPayee(planId: string, payeeId: string, sinceDate?: string, type?: GetTransactionsByPayeeTypeEnum, lastKnowledgeOfServer?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Imports available transactions on all linked accounts for the given plan. 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. * Import transactions */ importTransactionsRaw(requestParameters: ImportTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Imports available transactions on all linked accounts for the given plan. 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. * Import transactions */ importTransactions(planId: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Updates a single transaction * Update a transaction */ updateTransactionRaw(requestParameters: UpdateTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Updates a single transaction * Update a transaction */ updateTransaction(planId: string, transactionId: string, data: PutTransactionWrapper, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Updates multiple transactions, by `id` or `import_id`. * Update multiple transactions */ updateTransactionsRaw(requestParameters: UpdateTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Updates multiple transactions, by `id` or `import_id`. * Update multiple transactions */ updateTransactions(planId: string, data: PatchTransactionsWrapper, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } /** * @export */ export declare const GetTransactionsTypeEnum: { readonly Uncategorized: "uncategorized"; readonly Unapproved: "unapproved"; }; export type GetTransactionsTypeEnum = typeof GetTransactionsTypeEnum[keyof typeof GetTransactionsTypeEnum]; /** * @export */ export declare const GetTransactionsByAccountTypeEnum: { readonly Uncategorized: "uncategorized"; readonly Unapproved: "unapproved"; }; export type GetTransactionsByAccountTypeEnum = typeof GetTransactionsByAccountTypeEnum[keyof typeof GetTransactionsByAccountTypeEnum]; /** * @export */ export declare const GetTransactionsByCategoryTypeEnum: { readonly Uncategorized: "uncategorized"; readonly Unapproved: "unapproved"; }; export type GetTransactionsByCategoryTypeEnum = typeof GetTransactionsByCategoryTypeEnum[keyof typeof GetTransactionsByCategoryTypeEnum]; /** * @export */ export declare const GetTransactionsByMonthTypeEnum: { readonly Uncategorized: "uncategorized"; readonly Unapproved: "unapproved"; }; export type GetTransactionsByMonthTypeEnum = typeof GetTransactionsByMonthTypeEnum[keyof typeof GetTransactionsByMonthTypeEnum]; /** * @export */ export declare const GetTransactionsByPayeeTypeEnum: { readonly Uncategorized: "uncategorized"; readonly Unapproved: "unapproved"; }; export type GetTransactionsByPayeeTypeEnum = typeof GetTransactionsByPayeeTypeEnum[keyof typeof GetTransactionsByPayeeTypeEnum];