UNPKG

ynab

Version:

Official JavaScript client for the YNAB API. API documentation available at https://api.ynab.com. Generated from server specification version 1.85.0

166 lines (165 loc) 7.65 kB
"use strict"; /* 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 () { var ownKeys = function(o) { ownKeys = Object.getOwnPropertyNames || function (o) { var ar = []; for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; return ar; }; return ownKeys(o); }; return function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); __setModuleDefault(result, mod); return result; }; })(); Object.defineProperty(exports, "__esModule", { value: true }); exports.AccountsApi = void 0; const runtime = __importStar(require("../runtime")); const index_1 = require("../models/index"); /** * */ class AccountsApi extends runtime.BaseAPI { /** * Creates a new account * Create an account */ async createAccountRaw(requestParameters, initOverrides) { if (requestParameters.planId === null || requestParameters.planId === undefined) { throw new runtime.RequiredError('planId', 'Required parameter requestParameters.planId was null or undefined when calling createAccount.'); } if (requestParameters.data === null || requestParameters.data === undefined) { throw new runtime.RequiredError('data', 'Required parameter requestParameters.data was null or undefined when calling createAccount.'); } 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: `/plans/{plan_id}/accounts`.replace(`{${"plan_id"}}`, encodeURIComponent(String(requestParameters.planId))), method: 'POST', headers: headerParameters, query: queryParameters, body: (0, index_1.PostAccountWrapperToJSON)(requestParameters.data), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.AccountResponseFromJSON)(jsonValue)); } /** * Creates a new account * Create an account */ async createAccount(planId, data, initOverrides) { const response = await this.createAccountRaw({ planId: planId, data: data }, initOverrides); return await response.value(); } /** * Returns a single account * Get an account */ async getAccountByIdRaw(requestParameters, initOverrides) { if (requestParameters.planId === null || requestParameters.planId === undefined) { throw new runtime.RequiredError('planId', 'Required parameter requestParameters.planId was null or undefined when calling getAccountById.'); } if (requestParameters.accountId === null || requestParameters.accountId === undefined) { throw new runtime.RequiredError('accountId', 'Required parameter requestParameters.accountId was null or undefined when calling getAccountById.'); } 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: `/plans/{plan_id}/accounts/{account_id}`.replace(`{${"plan_id"}}`, encodeURIComponent(String(requestParameters.planId))).replace(`{${"account_id"}}`, encodeURIComponent(String(requestParameters.accountId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.AccountResponseFromJSON)(jsonValue)); } /** * Returns a single account * Get an account */ async getAccountById(planId, accountId, initOverrides) { const response = await this.getAccountByIdRaw({ planId: planId, accountId: accountId }, initOverrides); return await response.value(); } /** * Returns all accounts * Get all accounts */ async getAccountsRaw(requestParameters, initOverrides) { if (requestParameters.planId === null || requestParameters.planId === undefined) { throw new runtime.RequiredError('planId', 'Required parameter requestParameters.planId was null or undefined when calling getAccounts.'); } 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: `/plans/{plan_id}/accounts`.replace(`{${"plan_id"}}`, encodeURIComponent(String(requestParameters.planId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.AccountsResponseFromJSON)(jsonValue)); } /** * Returns all accounts * Get all accounts */ async getAccounts(planId, lastKnowledgeOfServer, initOverrides) { const response = await this.getAccountsRaw({ planId: planId, lastKnowledgeOfServer: lastKnowledgeOfServer }, initOverrides); return await response.value(); } } exports.AccountsApi = AccountsApi;