UNPKG

n8n-nodes-arubacentral

Version:

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

49 lines (41 loc) 1.6 kB
import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow'; import { apiRequest } from '../../../../helpers/apiRequest'; import { logger } from '../../../../helpers/logger'; import { handleApiError } from '../../../../helpers/errorHandler'; /** * List AI Insights for an AP * * GET /aiops/v2/insights/ap/{ap_serial}/list * * @param this The n8n execution context * @returns Formatted API response */ export async function getInsightsAp(this: IExecuteFunctions): Promise<INodeExecutionData[]> { try { // Get parameters const apSerial = this.getNodeParameter('ap_serial', 0) as string; const fromDate = new Date(this.getNodeParameter('from', 0) as string); const toDate = new Date(this.getNodeParameter('to', 0) as string); // Convert dates to epoch milliseconds for API const fromMs = fromDate.getTime(); const toMs = toDate.getTime(); logger.debug( 'aiops:insights:getInsightsAp', `Getting insights for AP=${apSerial}, from=${fromMs}, to=${toMs}`, ); // Construct query parameters const qs = { from: fromMs, to: toMs, }; // Make API request const endpoint = `/aiops/v2/insights/ap/${encodeURIComponent(apSerial)}/list`; const responseData = await apiRequest.call(this, 'GET', endpoint, {}, qs); logger.debug('aiops:insights:getInsightsAp', 'Successfully retrieved insights for AP'); // Return formatted response return [{ json: responseData }]; } catch (error) { logger.error('aiops:insights:getInsightsAp:error', { message: error.message }); return handleApiError.call(this, error, 'Failed to list AI insights for AP'); } }