UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

83 lines 2.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.description = void 0; exports.execute = execute; const utilities_1 = require("../../../../../utils/utilities"); const utils_1 = require("../../helpers/utils"); const transport_1 = require("../../transport"); const properties = [ { displayName: 'Name', name: 'name', description: 'Login name of the user', type: 'string', required: true, default: '', }, { // eslint-disable-next-line n8n-nodes-base/node-param-display-name-wrong-for-dynamic-multi-options displayName: 'Roles', name: 'roles', type: 'multiOptions', description: 'Comma-separated list of roles to assign to the user. Choose from the list, or specify IDs using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.', required: true, default: ['user'], typeOptions: { loadOptionsMethod: 'getRoles', }, }, { displayName: 'Password', name: 'password', type: 'string', typeOptions: { password: true }, required: true, default: '', }, { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, options: [ { displayName: 'Email', name: 'email', type: 'string', placeholder: 'name@email.com', default: '', }, { displayName: 'Full Name', name: 'realname', type: 'string', default: '', description: 'Full name of the user', }, ], }, ]; const displayOptions = { show: { resource: ['user'], operation: ['create'], }, }; exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties); async function execute(i) { // https://docs.splunk.com/Documentation/Splunk/8.2.2/RESTREF/RESTaccess#authentication.2Fusers const roles = this.getNodeParameter('roles', i); const body = { name: this.getNodeParameter('name', i), roles, password: this.getNodeParameter('password', i), }; const additionalFields = this.getNodeParameter('additionalFields', i); (0, utils_1.populate)(additionalFields, body); const endpoint = '/services/authentication/users'; const responseData = (await transport_1.splunkApiRequest.call(this, 'POST', endpoint, body)); const returnData = (0, utils_1.formatFeed)(responseData); return returnData; } //# sourceMappingURL=create.operation.js.map