UNPKG

admin-api-aurum-connector

Version:

Module to connect to the Admin API Aurum Core

57 lines (46 loc) 1.68 kB
const { module_name, configurations_key } = require("../../utils/Constants.js"); const { logger } = require("../../utils/Logger.js"); const getFinancialVariables = async (token, filters) => { try { logger.info(`module-hub-aurum-core-connector :: get financial variables "${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?.getFinancialVariables?.endpoint || ""; endpoint = endpoint.replace("{mgtwUrl}", config.mgtwUrl); if(filters) { let init = true; for (const prop in filters) { if(init === true) { endpoint = `${endpoint}?${prop}=${filters[prop]}`; init = false; } else { endpoint = `${endpoint}&${prop}=${filters[prop]}`; } } } logger.info(`module-hub-aurum-core-connector :: get financial variables 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 :: getFinancialVariables response: ${JSON.stringify(responseJson)}`); return responseJson; } catch (error) { logger.error(`module-hub-aurum-core-connector :: Error at getFinancialVariables: ${error}`); return { responseCode: 500, error: error, message: `Error getting financial variables` }; } }; module.exports = getFinancialVariables;