n8n-nodes-base
Version:
Base nodes of n8n
52 lines • 2.13 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.venafiApiRequest = venafiApiRequest;
exports.venafiApiRequestAllItems = venafiApiRequestAllItems;
const get_1 = __importDefault(require("lodash/get"));
const errors_1 = require("@n8n/errors");
async function venafiApiRequest(method, resource, body = {}, qs = {}, uri, headers = {}) {
const credentials = await this.getCredentials('venafiTlsProtectDatacenterApi');
const options = {
headers: {
'Content-Type': 'application/json',
},
method,
body,
qs,
rejectUnauthorized: !credentials.allowUnauthorizedCerts,
uri: uri || `${credentials.domain}${resource}`,
json: true,
};
try {
if (Object.keys(headers).length !== 0) {
options.headers = Object.assign({}, options.headers, headers);
}
if (Object.keys(body).length === 0) {
delete options.body;
}
return await this.helpers.requestWithAuthentication.call(this, 'venafiTlsProtectDatacenterApi', options);
}
catch (error) {
if (error.response?.body?.error) {
let errors = error.response.body.error.errors;
errors = errors.map((e) => e.message);
// Try to return the error prettier
throw new errors_1.ApplicationError(`Venafi error response [${error.statusCode}]: ${errors.join('|')}`, { level: 'warning' });
}
throw error;
}
}
async function venafiApiRequestAllItems(propertyName, method, endpoint, body = {}, query = {}) {
const returnData = [];
let responseData;
do {
responseData = await venafiApiRequest.call(this, method, endpoint, body, query);
endpoint = (0, get_1.default)(responseData, '_links[0].Next');
returnData.push.apply(returnData, responseData[propertyName]);
} while (responseData._links?.[0].Next);
return returnData;
}
//# sourceMappingURL=GenericFunctions.js.map