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
235 lines (234 loc) • 13.2 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.ScheduledTransactionsApi = void 0;
const runtime = __importStar(require("../runtime"));
const index_1 = require("../models/index");
/**
*
*/
class ScheduledTransactionsApi extends runtime.BaseAPI {
/**
* Creates a single scheduled transaction (a transaction with a future date).
* Create a single scheduled transaction
*/
async createScheduledTransactionRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling createScheduledTransaction.');
}
if (requestParameters.data === null || requestParameters.data === undefined) {
throw new runtime.RequiredError('data', 'Required parameter requestParameters.data was null or undefined when calling createScheduledTransaction.');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Accept'] = 'application/json';
headerParameters['Content-Type'] = '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}/scheduled_transactions`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.PostScheduledTransactionWrapperToJSON)(requestParameters.data),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScheduledTransactionResponseFromJSON)(jsonValue));
}
/**
* Creates a single scheduled transaction (a transaction with a future date).
* Create a single scheduled transaction
*/
async createScheduledTransaction(budgetId, data, initOverrides) {
const response = await this.createScheduledTransactionRaw({ budgetId: budgetId, data: data }, initOverrides);
return await response.value();
}
/**
* Deletes a scheduled transaction
* Deletes an existing scheduled transaction
*/
async deleteScheduledTransactionRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling deleteScheduledTransaction.');
}
if (requestParameters.scheduledTransactionId === null || requestParameters.scheduledTransactionId === undefined) {
throw new runtime.RequiredError('scheduledTransactionId', 'Required parameter requestParameters.scheduledTransactionId was null or undefined when calling deleteScheduledTransaction.');
}
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}/scheduled_transactions/{scheduled_transaction_id}`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))).replace(`{${"scheduled_transaction_id"}}`, encodeURIComponent(String(requestParameters.scheduledTransactionId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScheduledTransactionResponseFromJSON)(jsonValue));
}
/**
* Deletes a scheduled transaction
* Deletes an existing scheduled transaction
*/
async deleteScheduledTransaction(budgetId, scheduledTransactionId, initOverrides) {
const response = await this.deleteScheduledTransactionRaw({ budgetId: budgetId, scheduledTransactionId: scheduledTransactionId }, initOverrides);
return await response.value();
}
/**
* Returns a single scheduled transaction
* Single scheduled transaction
*/
async getScheduledTransactionByIdRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling getScheduledTransactionById.');
}
if (requestParameters.scheduledTransactionId === null || requestParameters.scheduledTransactionId === undefined) {
throw new runtime.RequiredError('scheduledTransactionId', 'Required parameter requestParameters.scheduledTransactionId was null or undefined when calling getScheduledTransactionById.');
}
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}/scheduled_transactions/{scheduled_transaction_id}`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))).replace(`{${"scheduled_transaction_id"}}`, encodeURIComponent(String(requestParameters.scheduledTransactionId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScheduledTransactionResponseFromJSON)(jsonValue));
}
/**
* Returns a single scheduled transaction
* Single scheduled transaction
*/
async getScheduledTransactionById(budgetId, scheduledTransactionId, initOverrides) {
const response = await this.getScheduledTransactionByIdRaw({ budgetId: budgetId, scheduledTransactionId: scheduledTransactionId }, initOverrides);
return await response.value();
}
/**
* Returns all scheduled transactions
* List scheduled transactions
*/
async getScheduledTransactionsRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling getScheduledTransactions.');
}
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}/scheduled_transactions`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScheduledTransactionsResponseFromJSON)(jsonValue));
}
/**
* Returns all scheduled transactions
* List scheduled transactions
*/
async getScheduledTransactions(budgetId, lastKnowledgeOfServer, initOverrides) {
const response = await this.getScheduledTransactionsRaw({ budgetId: budgetId, lastKnowledgeOfServer: lastKnowledgeOfServer }, initOverrides);
return await response.value();
}
/**
* Updates a single scheduled transaction
* Updates an existing scheduled transaction
*/
async updateScheduledTransactionRaw(requestParameters, initOverrides) {
if (requestParameters.budgetId === null || requestParameters.budgetId === undefined) {
throw new runtime.RequiredError('budgetId', 'Required parameter requestParameters.budgetId was null or undefined when calling updateScheduledTransaction.');
}
if (requestParameters.scheduledTransactionId === null || requestParameters.scheduledTransactionId === undefined) {
throw new runtime.RequiredError('scheduledTransactionId', 'Required parameter requestParameters.scheduledTransactionId was null or undefined when calling updateScheduledTransaction.');
}
if (requestParameters.putScheduledTransactionWrapper === null || requestParameters.putScheduledTransactionWrapper === undefined) {
throw new runtime.RequiredError('putScheduledTransactionWrapper', 'Required parameter requestParameters.putScheduledTransactionWrapper was null or undefined when calling updateScheduledTransaction.');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Accept'] = 'application/json';
headerParameters['Content-Type'] = '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}/scheduled_transactions/{scheduled_transaction_id}`.replace(`{${"budget_id"}}`, encodeURIComponent(String(requestParameters.budgetId))).replace(`{${"scheduled_transaction_id"}}`, encodeURIComponent(String(requestParameters.scheduledTransactionId))),
method: 'PUT',
headers: headerParameters,
query: queryParameters,
body: (0, index_1.PutScheduledTransactionWrapperToJSON)(requestParameters.putScheduledTransactionWrapper),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScheduledTransactionResponseFromJSON)(jsonValue));
}
/**
* Updates a single scheduled transaction
* Updates an existing scheduled transaction
*/
async updateScheduledTransaction(budgetId, scheduledTransactionId, putScheduledTransactionWrapper, initOverrides) {
const response = await this.updateScheduledTransactionRaw({ budgetId: budgetId, scheduledTransactionId: scheduledTransactionId, putScheduledTransactionWrapper: putScheduledTransactionWrapper }, initOverrides);
return await response.value();
}
}
exports.ScheduledTransactionsApi = ScheduledTransactionsApi;