admin-api-aurum-connector
Version:
Module to connect to the Admin API Aurum Core
46 lines (37 loc) • 1.5 kB
JavaScript
const { module_name, configurations_key } = require("../../utils/Constants.js");
const { logger } = require("../../utils/Logger.js");
const getCatalog = async (token, catalogType) => {
try {
logger.info(`module-hub-aurum-core-connector :: get catalog ${catalogType} "${module_name}" ...`);
if(!token) {
return {
responseCode: 401,
message: "A token is required to consume the API"
};
}
const config = global[configurations_key];
let endpoint = config?.catalog?.getCatalog?.endpoint || "";
endpoint = endpoint.replace("{mgtwUrl}", config.mgtwUrl);
endpoint = endpoint.replace("{branchId}", config.branchId);
endpoint = endpoint.replace("{catalogType}", catalogType);
logger.info(`module-hub-aurum-core-connector :: get catalog ${catalogType} to endpoint: ${endpoint}`);
const response = await fetch(endpoint, {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer " + token
}
});
const responseJson = await response.json();
logger.info(`module-hub-aurum-core-connector :: getCatalog ${catalogType} response: ${JSON.stringify(responseJson)}`);
return responseJson;
} catch (error) {
logger.error(`module-hub-aurum-core-connector :: Error at getCatalog ${catalogType}: ${error}`);
return {
responseCode: 500,
error: error,
message: `Error getting catalog ${catalogType}`
};
}
};
module.exports = getCatalog;