UNPKG

n8n-nodes-cativa

Version:

This is an n8n community node to communicate with Cativa.

73 lines 2.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.requestAccountOptions = exports.authorizationError = exports.apiRequest = void 0; const n8n_workflow_1 = require("n8n-workflow"); class RequestError extends Error { constructor(options, status, message) { super(message); this.options = options; } } async function apiRequest(method, endpoint, body = {}, qs = {}, headers = {}, returnFullResponse = false) { const options = { headers: { Accept: 'application/json', }, method, qs, url: endpoint, json: true, returnFullResponse, }; if (Object.keys(headers).length !== 0) { options.headers = Object.assign({}, options.headers, headers); } if (Object.keys(body).length !== 0) { options.body = body; } qs = qs || {}; if (options.qs && Object.keys(options.qs).length === 0) { delete options.qs; } try { return await this.helpers.httpRequest(options); } catch (error) { throw new n8n_workflow_1.NodeApiError(this.getNode(), error); } } exports.apiRequest = apiRequest; function authorizationError(resp, realm, responseCode, message) { if (message === undefined) { message = 'Authorization problem!'; if (responseCode === 401) { message = 'Authorization is required!'; } else if (responseCode === 403) { message = 'Authorization data is wrong!'; } } resp.writeHead(responseCode, { 'WWW-Authenticate': `Basic realm="${realm}"` }); resp.end(message); return { noWebhookResponse: true, }; } exports.authorizationError = authorizationError; function requestAccountOptions(credentials) { let baseUrl = credentials.baseUrl; if (baseUrl.endsWith('/')) { baseUrl = baseUrl.slice(0, -1); } const options = { headers: { Authorization: `Bearer ${credentials.apiKey}`, }, method: 'GET', uri: `${baseUrl}/api/v1.1/auth/me`, json: true, }; return options; } exports.requestAccountOptions = requestAccountOptions; //# sourceMappingURL=GenericFunctions.js.map