n8n-nodes-arubacentralnextgen
Version:
n8n community node for Aruba Central NextGen API integration with modern monitoring and management capabilities
170 lines (169 loc) • 5.2 kB
JavaScript
;
// descriptions/system/snmp.descriptions.ts
// UI Descriptions for SNMP Operations
Object.defineProperty(exports, "__esModule", { value: true });
exports.snmpFields = exports.snmpOperations = void 0;
/**
* SNMP Operations
* Manage SNMP profiles.
*
* API Reference: https://developer.arubanetworks.com/new-central-config/reference
* Base Path: /network-config/v1alpha1/snmp
*/
exports.snmpOperations = {
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
domain: ['system'],
resource: ['snmp'],
},
},
options: [
{
name: 'Get All SNMP Profiles',
value: 'getAllSNMP',
description: 'Retrieve all SNMP profiles',
action: 'Get all SNMP profiles',
},
{
name: 'Get SNMP Profile',
value: 'getSNMP',
description: 'Get a specific SNMP profile by name',
action: 'Get SNMP profile',
},
{
name: 'Create SNMP Profile',
value: 'createSNMP',
description: 'Create a new SNMP profile',
action: 'Create SNMP profile',
},
{
name: 'Update SNMP Profile',
value: 'updateSNMP',
description: 'Update an existing SNMP profile',
action: 'Update SNMP profile',
},
{
name: 'Delete SNMP Profile',
value: 'deleteSNMP',
description: 'Delete an SNMP profile',
action: 'Delete SNMP profile',
},
],
default: 'getAllSNMP',
};
exports.snmpFields = [
// ============================================================
// Profile Name (Get, Update, Delete)
// ============================================================
{
displayName: 'Profile Name',
name: 'profileName',
type: 'string',
required: true,
default: '',
displayOptions: {
show: {
domain: ['system'],
resource: ['snmp'],
operation: ['getSNMP', 'updateSNMP', 'deleteSNMP'],
},
},
description: 'Name of the SNMP profile',
},
// ============================================================
// SNMP Profile Body (Create, Update)
// ============================================================
{
displayName: 'SNMP Profile Body',
name: 'snmpBody',
type: 'json',
default: '{}',
displayOptions: {
show: {
domain: ['system'],
resource: ['snmp'],
operation: ['createSNMP', 'updateSNMP'],
},
},
description: 'JSON body for the SNMP profile configuration',
},
// ============================================================
// Additional Fields (Get All, Get)
// ============================================================
{
displayName: 'Additional Fields',
name: 'additionalFields',
type: 'collection',
placeholder: 'Add Field',
default: {},
displayOptions: {
show: {
domain: ['system'],
resource: ['snmp'],
operation: ['getAllSNMP', 'getSNMP'],
},
},
options: [
{
displayName: 'View Type',
name: 'viewType',
type: 'string',
default: '',
description: 'View type filter',
},
{
displayName: 'Object Type',
name: 'objectType',
type: 'string',
default: '',
description: 'Object type filter',
},
{
displayName: 'Scope ID',
name: 'scopeId',
type: 'string',
default: '',
description: 'Scope ID filter',
},
{
displayName: 'Persona',
name: 'persona',
type: 'string',
default: '',
description: 'Persona filter',
},
{
displayName: 'Effective',
name: 'effective',
type: 'boolean',
default: false,
description: 'Whether to return effective configuration',
},
{
displayName: 'Detailed',
name: 'detailed',
type: 'boolean',
default: false,
description: 'Whether to return detailed configuration',
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
default: 100,
description: 'Max results to return',
},
{
displayName: 'Offset',
name: 'offset',
type: 'number',
default: 0,
description: 'Pagination offset',
},
],
},
];