ynab
Version:
Official JavaScript client for the YNAB API. API documentation available at https://api.ynab.com. Generated from server specification version 1.76.0
148 lines (147 loc) • 6.63 kB
JavaScript
;
/* tslint:disable */
/* eslint-disable */
/**
* 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)
*/
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BudgetsApi = void 0;
const runtime = __importStar(require("../runtime"));
const index_1 = require("../models/index");
/**
*
*/
class BudgetsApi extends runtime.BaseAPI {
/**
* Returns a single budget with all related entities. This resource is effectively a full budget export.
* Single budget
*/
async getBudgetByIdRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling getBudgetById.');
}
const queryParameters = {};
if (requestParameters.lastKnowledgeOfServer !== undefined) {
queryParameters['last_knowledge_of_server'] = requestParameters.lastKnowledgeOfServer;
}
const headerParameters = {};
headerParameters['Accept'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("bearer", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/budgets/{budget_id}`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.BudgetDetailResponseFromJSON)(jsonValue));
}
/**
* Returns a single budget with all related entities. This resource is effectively a full budget export.
* Single budget
*/
async getBudgetById(budgetId, lastKnowledgeOfServer, initOverrides) {
const response = await this.getBudgetByIdRaw({ budgetId: budgetId, lastKnowledgeOfServer: lastKnowledgeOfServer }, initOverrides);
return await response.value();
}
/**
* Returns settings for a budget
* Budget Settings
*/
async getBudgetSettingsByIdRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling getBudgetSettingsById.');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Accept'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("bearer", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/budgets/{budget_id}/settings`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.BudgetSettingsResponseFromJSON)(jsonValue));
}
/**
* Returns settings for a budget
* Budget Settings
*/
async getBudgetSettingsById(budgetId, initOverrides) {
const response = await this.getBudgetSettingsByIdRaw({ budgetId: budgetId }, initOverrides);
return await response.value();
}
/**
* Returns budgets list with summary information
* List budgets
*/
async getBudgetsRaw(requestParameters, initOverrides) {
const queryParameters = {};
if (requestParameters.includeAccounts !== undefined) {
queryParameters['include_accounts'] = requestParameters.includeAccounts;
}
const headerParameters = {};
headerParameters['Accept'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("bearer", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/budgets`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.BudgetSummaryResponseFromJSON)(jsonValue));
}
/**
* Returns budgets list with summary information
* List budgets
*/
async getBudgets(includeAccounts, initOverrides) {
const response = await this.getBudgetsRaw({ includeAccounts: includeAccounts }, initOverrides);
return await response.value();
}
}
exports.BudgetsApi = BudgetsApi;