UNPKG

n8n-nodes-librenms

Version:

n8n community node for LibreNMS network monitoring system integration with comprehensive device management and monitoring capabilities

363 lines (362 loc) 10.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.billsFields = exports.billsOperations = void 0; exports.billsOperations = [ { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['bills'], }, }, options: [ { name: 'Get All', value: 'getAll', description: 'Get all bills', action: 'Get all bills', routing: { request: { method: 'GET', url: '/bills', }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'bills', }, }, ], }, }, }, { name: 'Get', value: 'get', description: 'Get a specific bill', action: 'Get a bill', routing: { request: { method: 'GET', url: '=/bills/{{$parameter.billId}}', }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'bills', }, }, ], }, }, }, { name: 'Get by Reference', value: 'getByRef', description: 'Get bill by reference', action: 'Get bill by reference', routing: { request: { method: 'GET', url: '/bills', qs: { ref: '={{$parameter.billRef}}', }, }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'bills', }, }, ], }, }, }, { name: 'Get by Customer ID', value: 'getByCustId', description: 'Get bill by customer ID', action: 'Get bill by customer ID', routing: { request: { method: 'GET', url: '/bills', qs: { custid: '={{$parameter.custId}}', }, }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'bills', }, }, ], }, }, }, { name: 'Create or Update', value: 'createOrUpdate', description: 'Create a new bill or update existing', action: 'Create or update bill', routing: { request: { method: 'POST', url: '/bills', }, send: { type: 'body', }, }, }, { name: 'Delete', value: 'delete', description: 'Delete a bill', action: 'Delete a bill', routing: { request: { method: 'DELETE', url: '=/bills/{{$parameter.billId}}', }, }, }, { name: 'Get History', value: 'getHistory', description: 'Get bill history', action: 'Get bill history', routing: { request: { method: 'GET', url: '=/bills/{{$parameter.billId}}/history', }, output: { postReceive: [ { type: 'rootProperty', properties: { property: 'bill_history', }, }, ], }, }, }, ], default: 'getAll', }, ]; exports.billsFields = [ // Bill ID for specific operations { displayName: 'Bill ID', name: 'billId', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['get', 'delete', 'getHistory'], }, }, default: '', description: 'The bill ID', }, // Bill reference { displayName: 'Bill Reference', name: 'billRef', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['getByRef'], }, }, default: '', description: 'Bill reference identifier', }, // Customer ID { displayName: 'Customer ID', name: 'custId', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['getByCustId'], }, }, default: '', description: 'Customer ID', }, // Fields for creating/updating bills { displayName: 'Bill Name', name: 'bill_name', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['createOrUpdate'], }, }, default: '', description: 'Name of the bill', }, { displayName: 'Bill Day', name: 'bill_day', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['createOrUpdate'], }, }, default: '1', description: 'Day of month for billing cycle', }, { displayName: 'Bill Type', name: 'bill_type', type: 'options', required: true, displayOptions: { show: { resource: ['bills'], operation: ['createOrUpdate'], }, }, options: [ { name: 'CDR', value: 'cdr' }, { name: 'Quota', value: 'quota' }, ], default: 'cdr', description: 'Type of billing', }, { displayName: 'Ports', name: 'ports', type: 'string', required: true, displayOptions: { show: { resource: ['bills'], operation: ['createOrUpdate'], }, }, default: '', placeholder: '1021,1022,1023', description: 'Comma-separated list of port IDs', }, // Additional bill options { displayName: 'Additional Options', name: 'additionalOptions', type: 'collection', placeholder: 'Add Option', default: {}, displayOptions: { show: { resource: ['bills'], operation: ['createOrUpdate'], }, }, options: [ { displayName: 'Bill ID (for update)', name: 'bill_id', type: 'string', default: '', description: 'Bill ID for updating existing bill', }, { displayName: 'CDR Value', name: 'bill_cdr', type: 'string', default: '', description: 'CDR value for CDR type bills', }, { displayName: 'Quota', name: 'bill_quota', type: 'string', default: '', description: 'Quota value for quota type bills', }, { displayName: 'Customer ID', name: 'bill_custid', type: 'string', default: '', description: 'Customer identifier', }, { displayName: 'Bill Reference', name: 'bill_ref', type: 'string', default: '', description: 'Bill reference', }, { displayName: 'Notes', name: 'bill_notes', type: 'string', default: '', description: 'Notes for the bill', }, ], }, // Period option for getAll and specific gets { displayName: 'Options', name: 'options', type: 'collection', placeholder: 'Add Option', default: {}, displayOptions: { show: { resource: ['bills'], operation: ['getAll', 'get', 'getByRef', 'getByCustId'], }, }, options: [ { displayName: 'Period', name: 'period', type: 'options', options: [ { name: 'Current', value: '' }, { name: 'Previous', value: 'previous' }, ], default: '', description: 'Billing period to retrieve', routing: { send: { type: 'query', property: 'period', }, }, }, ], }, ];