UNPKG

n8n-nodes-arubacentral

Version:

n8n community node for Aruba Central API integration with comprehensive monitoring, configuration, and management capabilities

59 lines (47 loc) 1.98 kB
// methods/configuration/ap/apSettings.methods.ts import { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow'; import { apiRequest } from '../../../helpers/apiRequest'; import { formatResponse } from '../../../helpers/responseFormatter'; import { CliConfig } from './apConfiguration.types'; export async function getApSettings(this: IExecuteFunctions): Promise<INodeExecutionData[]> { try { // Get parameters const serialNumber = this.getNodeParameter('serialNumber', 0) as string; // Log the request console.log('Getting per-AP settings with parameters:', { serialNumber }); // Build the endpoint const endpoint = `/configuration/v1/ap_settings_cli/${serialNumber}`; // Make API call const response = await apiRequest.call(this, 'GET', endpoint, {}, {}); console.log('Received per-AP settings'); return formatResponse.call(this, response); } catch (error) { console.log('ERROR in getApSettings:', error); throw error; } } export async function replaceApSettings(this: IExecuteFunctions): Promise<INodeExecutionData[]> { try { // Get parameters const serialNumber = this.getNodeParameter('serialNumber', 0) as string; const apSettingsJson = this.getNodeParameter('apSettings', 0) as string; // Parse the AP Settings JSON let apSettings: CliConfig; try { apSettings = JSON.parse(apSettingsJson); } catch (parseError) { throw new Error(`Invalid JSON format for AP settings: ${parseError.message}`); } // Log the request console.log('Replacing per-AP settings:', { serialNumber, apSettings }); // Build the endpoint const endpoint = `/configuration/v1/ap_settings_cli/${serialNumber}`; // Make API call const response = await apiRequest.call(this, 'POST', endpoint, apSettings as IDataObject, {}); console.log('Per-AP settings replaced successfully'); return formatResponse.call(this, response); } catch (error) { console.log('ERROR in replaceApSettings:', error); throw error; } }