¿Ya eres cliente de NinjaOne? Inicia sesión para ver más guías y las últimas actualizaciones.

Campos personalizados y documentación: CLI y escritura de scripts

Tema

Esta documentación explica cómo utilizar el componente ninjarmm-cli para los sistemas operativos Microsoft Windows, Apple macOS y Linux.

Entorno

  • Gestión de puntos finales NinjaOne
  • NinjaOne Documentation

Descripción

El componente ninjarmm-cli es un archivo ejecutable que le permite acceder e interactuar con campos personalizados específicos y datos de documentación desde la interfaz de línea de comandos (CLI), terminal o scripts personalizados.

Seleccione una categoría para obtener más información:

Notas importantes

Antes de utilizar ninjarmm-cli, debe tener en cuenta lo siguiente:

  • Los campos seguros son de sólo escritura para los campos de documentación.
  • Puede leer o escribir datos de documentación en la CLI o en scripts personalizados. Puede generar una lista de plantillas, una lista de los documentos por nombre de plantilla o número de identificación, y el valor de cada campo de un documento.
    • Los scripts CLI o personalizados sólo pueden acceder a plantillas y documentos que contengan al menos un campo relleno. Las plantillas y documentos vacíos no se mostrarán.
  • Puede utilizar secuencias de comandos personalizadas escritas en Batch o PowerShell para Windows, o en ShellScript para macOS y Linux. Debido a que el ninjarmm-cli.exe reside en una carpeta protegida que es inaccesible para los usuarios normales, debe ejecutar cualquier script que utilice esta funcionalidad como el sistema, o debe cambiar los permisos en consecuencia.
  • Para dispositivos Linux, debe añadir . / delante de ninjarmm-cli en el terminal para ejecutar el comando correctamente.
  • Para dispositivos Windows, si necesita almacenar la salida del comando get de ninjarmm-cli en una variable, puede utilizar el parámetro opcional --direct-out para forzar el uso del canal de salida estándar stdout en lugar de funciones de la API de Windows como WriteConsoleW/WriteFile. Sin embargo, al hacerlo, puede perder potencialmente el soporte de salida Unicode, que no funciona correctamente en algunas versiones de Windows con el canal stdout. Consulte el siguiente ejemplo de este comando:
 ninjarmm-cli --direct-out get [field name]

Acceso a campos seguros mediante automatizaciones

Los campos seguros no pueden tener más de 200 caracteres.

Cualquier automatización que ejecute desde la Biblioteca de automatización puede acceder a campos seguros, entre los que se incluyen:

  • Condiciones del guión
  • Condiciones del compuesto de guiones
  • Política de tareas programadas
  • Tareas programadas globales
  • Ejecutar antes de las acciones de copia de seguridad, aplicación de parches, instalación de la aplicación y tareas similares
  • Ejecutar después de las acciones de copia de seguridad, aplicación de parches, instalación de la aplicación y tareas similares
  • Acciones de automatización en función de las condiciones
  • Ejecutar la automatización

Algunas cosas importantes que hay que tener en cuenta en relación con los campos seguros son:

  • NinjaOne sólo proporciona acceso a campos personalizados seguros durante la ejecución de la automatización.
  • El terminal web o el terminal local no pueden acceder a los campos personalizados seguros.
  • Sólo los comandos ejecutados en un dispositivo local iniciado por NinjaOne pueden acceder a campos personalizados, incluyendo operaciones GET y SET, campos seguros personalizados y campos seguros de documentación. Sin embargo, los campos seguros de la documentación sólo utilizan operaciones SET a través de la CLI.

Interacción con campos personalizados a través de la CLI de Windows o el terminal

El agente desempaqueta automáticamente este ejecutable para las siguientes carpetas:

  • Windows: C:ProgramDataNinjaRMMAgentninjarmm-cli.exe
  • macOS: /Aplicaciones/NinjaRMMAgent/programdata/ninjarmm-cli
  • Linux:/opt/NinjaRMMAgent/programdata/ninjarmm-cli

Para Windows, utilice la siguiente variable de entorno especial a nivel de sistema:

  • Windows: %NINJARMMCLI% para C: ProgramDataNNinjaRMMAgentninjarmm-cli.exe
  • Linux: $NINJA_DATA_PATH/ninjarmm-cli set $nombredecampo $variable

El CLI de NinjaRMM se parece al siguiente ejemplo de Windows:

c:ProgramDataNinjaRMMAgentninjarmm-cli.exe help ninjarmm-cli - CLI tool to access and manage NinjaRMM Agent Custom Fields.Usage:  help - show this text Global and Role fields: get <attribute name> - get value of the attribute with specified name set <attribute name> <attribute value and comma-separated values list> - set value to the specified attribute   --stdin - optional modifier to use piped data. For example: dir | %NINJARMMCLI% set --stdin myfield options <attribute name> - get list of the valid values for attribute name (actual for drop-down and multi-select attributes) Documentation fields: templates - get a list of the templates, which have documents and attributes   --ids, --names - optional modifiers documents "<template id/name>" - get a list of the documents for the template by id or name (quotes required)   --ids, --names - optional modifiers get "<template id/name>" "<document name>" <attribute name> - get attribute from document by document name and template id/name (quotes required) get "<single template name>" <attribute name> - get attribute from single document by template name (quotes required) org-set "<template id/name>" "<document name>" <attribute name> "<attribute value and comma-separated values list>" - set attribute to the specified document/attribute by document name and template id/name (quotes required) org-set "<single template name>" <attribute name> "<attribute value and comma-separated values list>" - set attribute to single document/attribute by template name (quotes required) org-clear "<template id/name>" "<document name>" <attribute name> - clear value of document by document name and template id/name (quotes required, represents as NULL) org-clear "<single template name>" <attribute name> - clear the value of a single document by template name (quotes required, represents as NULL) org-options "<template id/name>" "<document name>" <attribute name> - get list of the valid values for document attribute name by document name and template id/name (actual for drop-down and multi-select attributes) org-options "<single template name>" <attribute name> - get a list of the valid values for a single document attribute name by template name (actual for drop-down and multi-select attributes) Output format: exit codes: 0 - Success, 1 - Error on success: exit with 0 and print value on error:   exit with 1 and print error description to read exit code: Win: 'echo %errorlevel%', Unix: 'echo $?' Attribute types:   CheckBox - Boolean type, acceptable values: 0, 1, true, false   Numeric - Integer type, values range from -2147483648 to 2147483647, supports Advanced Input filter settings.   Decimal - Float type, values range from -9999999.999999 to 9999999.999999, supports Advanced Input filter settings.   TextMultiLine, Text - regular string   TextEmail - regular string, should match RFC 5322 Email format   TextIpAddress - regular string, should match IPv4 or IPv6 format, supports Advanced Input filter settings   TextPhone - regular string, should match E.164 phone number format   TextEncrypted - regular encrypted string, supports Advanced Input filter settings (write-only for Documentation)   DateTime - Integer seconds since start of Unix epoch or ISO format 'yyyy-MM-ddTHH:mm: ss' without TimeZone (UTC)   Date - Integer seconds since start of Unix epoch or ISO format 'yyyy-MM-dd'   Time - Integer seconds or ISO format 'HH:mm:ss'   MultiSelect - list of unique options (view <options> command)   MultiSelectNode, MultiSelectClient, MultiSelectClientLocation - (read-only by CLI) organization-related data   Drop-down - one unique option (see <options> command)   DropdownNode, DropdownClient, DropdownClientLocation - (read-only by CLI) organization-related data   Attachment - (read-only by CLI) JSON-object with information about the file.   WYSIWYG - (read-only by CLI) JSON-object with HTML and TEXT content

Módulo PowerShell de NinjaOne

Cuando se instala el agente NinjaOne, NinjaOne despliega y carga un módulo PowerShell NinjaOne personalizado para interactuar con los campos personalizados. Puede acceder a ninjarmm-cli en dispositivos Windows a través de este módulo PowerShell simplemente llamando a los nombres de las funciones dentro de PowerShell.

Comandos PowerShell de NinjaOne

A continuación se detallan los comandos PowerShell que puede ejecutar.

Get-NinjaProperty 

El comando Get-NinjaProperty es una evolución del comando original Ninja-Property-Get. La función Get-NinjaProperty recupera y convierte un valor de campo personalizado Ninja basado en el nombre y tipo de campo especificado.

El comando acepta un nombre de campo, un tipo de propiedad y un nombre de documento opcional. Cuando proporcione un nombre de documento, la función recuperará el valor de la propiedad del documento Ninja especificado. Dependiendo del tipo especificado (por ejemplo, Date, DateTime, Checkbox, Dropdown, etc.), la función convertirá el valor crudo en un objeto PowerShell apropiado. Si el tipo de propiedad requiere opciones adicionales como desplegables o campos multiselección, la función recupera estas opciones y devuelve un valor fácil de usar.

Los tipos admitidos son: Adjunto, Casilla de verificación, Fecha, Fecha y hora, Decimal, Dispositivo desplegable, Dispositivo multiselección, Desplegable, Correo electrónico, Entero, Dirección IP, Multilínea, Multiselección, Desplegable de organización, Desplegable de ubicación de organización, Multiselección de ubicación de organización, Multiselección de organización, Teléfono, Seguro, Texto, Hora, WYSIWYG y URL.

La sintaxis es la siguiente: Get-NinjaProperty [-Name] <String[]> [[-Type] <String>] [[-DocumentName] <String>] [<CommonParameters>]

Ejemplos

La recuperación de un campo desplegable personalizado sin especificar el tipo devuelve el valor GUID de la opción desplegable seleccionada.

powershell1-escala.png
Imagen 1: No se ha especificado ningún tipo de campo (haga clic para ampliar)

Al recuperar un campo personalizado desplegable mientras se especifica el tipo de campo personalizado (desplegable), el comando devuelve el valor fácil de usar que se ve dentro de la plataforma en lugar del valor GUID.

powershell2-escala.png
Imagen 2: Tipo de campo especificado (haga clic para ampliar)

Set-NinjaProperty

El comando Set-NinjaProperty es una evolución del comando original Ninja-Property-Set. La función Set-NinjaProperty establece un campo personalizado basado en los parámetros proporcionados. Cuando se le da un tipo de campo, intenta convertir el valor proporcionado a uno soportado por ese campo en particular. Por ejemplo, cuando se le da un objeto DateTime y se especifica el tipo "Date", convierte el objeto date en una marca de tiempo de época Unix y establece el campo con ese valor.

También puede establecer campos desplegables y de selección múltiple utilizando nombres de campo en lugar de sus GUID.

Los tipos admitidos son: Casilla de verificación, Fecha, Fecha u Hora, FechaHora, Decimal, Desplegable, Correo electrónico, Entero, Dirección IP, MultiLínea, MultiSelección, Teléfono, Seguro, Texto, Hora, URL y WYSIWYG.

Ejemplos

La configuración de un campo desplegable personalizado sin especificar el tipo de campo requiere el valor GUID único para la opción desplegable deseada.

powershell3-escala.png
Imagen 3: No se ha especificado ningún tipo de campo (haga clic para ampliar)

Establecer un campo personalizado desplegable especificando el tipo de campo como desplegable le permite utilizar el valor fácil de usar que se muestra dentro de la plataforma en lugar del valor GUID.

powershell4-escala.png
Imagen 4: Tipo de campo especificado (haga clic para ampliar)

Ambos comandos, Get-NinjaProperty y Set-NinjaProperty, tienen soporte Unicode completo para que puedas establecer y recuperar emojis a través de estos comandos.

Puede acceder a detalles adicionales y ejemplos para ambos comandos abriendo PowerShell en un dispositivo con el agente NinjaOne instalado e introduciendo:

Get-Help Get-NinjaProperty

O

Get-Help Set-NinjaProperty

Todos los comandos PowerShell originales de NinjaOne siguen funcionando como se diseñaron originalmente. Esos comandos son:

Ninja-Property-Get $AttributeNameNinja-Property-Set $AttributeName $ValueNinja-Property-Options $AttributeNameNinja-Property-Clear $AttributeName

Comandos de documentación

Ninja-Property-Docs-TemplatesNinja-Property-Docs-Names $TemplateIdNinja-Property-Docs-Names "$TemplateName"Ninja-Property-Docs-Get $TemplateId "$DocumentName" $AttributeNameNinja-Property-Docs-Set $TemplateID "$DocumentName" $AttributeName "value"Ninja-Property-Docs-Get-Single "templateName" "fieldName"Ninja-Property-Docs-Set-Single "templateName" "fieldName" "new value"Ninja-Property-Docs-ClearNinja-Property-Docs-OptionsNinja-Property-Docs-Clear-Single - clear value of single document by template name (quotes required, represented as NULL)Ninja-Property-Docs-Options-Single - get list of the valid values for single document attribute name by template name (actual for drop-down and multi-select attributes)

Interacción con campos personalizados mediante comandos CLI de Windows, scripts personalizados por lotes, ShellScript en UNIX o scripts personalizados ShellScript

Los ejemplos de esta sección muestran cómo utilizar comandos y secuencias de comandos por lotes para tipos específicos de campos personalizados. Describen llamadas al ninjarmm-cli sin una ruta completa, pero puede especificar la ruta completa en función de su plataforma, como se describe anteriormente en este artículo. No hay ninguna diferencia entre las consultas a la utilidad CLI en las distintas plataformas.

Marca de tiempo

El tiempo se calcula de la siguiente manera:

  • El sistema hace referencia al 1 de enero de 1970, a las 00:00:00 UTC, como la época Unix.
  • El valor de la fecha son segundos a partir del 1 de enero de 1970, a las 00:00:00 UTC. Puede utilizar una herramienta de conversión de marcas de tiempo para obtener este valor para una fecha legible por humanos.
  • Si establece el valor en formato ISO, se convertirá a los segundos desde 1970-01-01 en UTC.

Los ejemplos de esta sección muestran cómo utilizar comandos o scripts PowerShell para tipos específicos de campos personalizados.

Selecciona un tema para continuar.

Casilla de verificación

Para el campo Casilla de verificación, el valor establecido debe ser verdadero (1) o falso (0).

Get:

# get value for checkbox field> ninjarmm-cli get globalcheckbox0

Set:

# set a boolean value to the checkbox field> ninjarmm-cli set globalcheckbox 00> ninjarmm-cli set globalcheckbox 11> ninjarmm-cli set globalcheckbox true1> ninjarmm-cli set globalcheckbox false0

Fecha

Para el campo Fecha, el valor establecido debe estar en segundos o en formato ISO (Organización Internacional de Normalización) (aaaa-mm-dd en UTC).

Get:

# get value for date field> ninjarmm-cli get globaldate456

Set:

# set value to date field> ninjarmm-cli set globaldate 1626875470000 > ninjarmm-cli set testdate 2021-10-151634256000

Fecha/Hora

Para el campo Fecha/Hora, el valor establecido debe estar en segundos o en formato ISO (aaaa-mm-dd o thh:mm:ss en UTC).

Get:

# get value for date-time field> ninjarmm-cli get globaldatetime1626875470000

Set:

# set value to date-time field> ninjarmm-cli set globaldatetime 16268754700001626875470000 > ninjarmm-cli set testdatetime 2021-10-15T00:00:001634256000

Decimal

Para el campo Decimal, el valor establecido debe ser un número y estar dentro del intervalo de -9999999,999999 a 9999999,999999.

Get:

# get value for decimal field> ninjarmm-cli get globaldecimal123.456

Set:

# set value to decimal field> ninjarmm-cli set typedecimal 11 > ninjarmm-cli set typedecimal 1.231.23 > ninjarmm-cli set typedecimal 1.231.23 > ninjarmm-cli set typedecimal 1.23456789012345678901.234567 # truncated to max precision, better not to use a shorter value to avoid data type conversion issues > ninjarmm-cli set typedecimal 1234567890.12345678901234567890.123457

Lista desplegable

Para el campo desplegable, el valor establecido debe coincidir exactamente con una opción válida, ya sea utilizando el GUID (Globally Unique Identifier) o el nombre de campo que aparece al ejecutar el comando de opciones.

Opciones:

# list options for the dropdown field> ninjarmm-cli options globaldropdown333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option274a6ffda-708e-435a-86e3-40b67c4f981a=Option1f1ba449c-fd34-49df-b878-af3877180d17=Option3

Obtener el GUID por nombre de opción:

# find the option GUID by the option name for the dropdown field> ninjarmm-cli options globaldropdown | grep "Option 1" | awk -F= '{print $1}'74a6ffda-708e-435a-86e3-40b67c4f981a

Get:

# get value for dropdown field> ninjarmm-cli get globaldropdown74a6ffda-708e-435a-86e3-40b67c4f981a

Set:

# set value to the dropdown field> ninjarmm-cli set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17

Correo electrónico

Get:

# get stored value> ninjarmm-cli get [email protected]

Set:

# correct values> ninjarmm-cli set typeemail [email protected]@test.test > ninjarmm-cli set typeemail [email protected]@test123.test.othertest # set wrong values> ninjarmm-cli set typeemail [email protected]: Wrong value format or type...

Entero

Para el campo Entero, el valor establecido debe ser un número entero (un número entero sin decimales) dentro del rango de -2147483648 a 2147483647.

Get:

# get value for integer field> ninjarmm-cli get globalinteger456

Set:

# set value to integer field> ninjarmm-cli set globalinteger 123

Dirección IP

Para el campo IP, el valor establecido debe estar en formato IPv4 (Protocolo de Internet versión 4) o IPv6 (Protocolo de Internet versión 6).

Get:

# get stored value> ninjarmm-cli get typeipaddress192.168.1.100

Set:

# set correct values> ninjarmm-cli set typeipaddress 255.255.255.255255.255.255.255 > ninjarmm-cli set typeipaddress 0.0.0.00.0.0.0 # set wrong values> ninjarmm-cli set typeipaddress 192.168.1.Error: Wrong value format / type ... > ninjarmm-cli set typeipaddress 255.255.255.256Error: Wrong value format / type ... > ninjarmm-cli set typeipaddress 0.-1.0.0Error: Wrong value format / type ...

Múltiples líneas

Get:

# get multi-line field> ninjarmm-cli get globalmultilinesampletext1

Set:

# set text field> ninjarmm-cli set globalmultiline sampletext2 
Set (alternate): # set text field with piped data> ls -alh | ninjarmm-cli set globalmultiline

NinjaOne admite el uso de una sola cadena de varias líneas si utiliza el carácter de control `n (la tecla "backtick" o "backspark" más la letra "n"). El texto debe introducirse en la línea de comandos como una sola línea de texto debido a las restricciones de CLI o Terminal y está limitado a 10.000 caracteres. También puede incorporar espacios poniendo toda la cadena entre comillas. Cuando utilice estos caracteres de control, los datos se mostrarán de la siguiente manera:

Ninja-Property-Set multiline "linea con espacios'nline2'nline3'nfinalval"

multilineline with spacesline2line3finalval

La sintaxis por defecto del comando "Set" es suficiente para la mayoría de los casos. Con la sintaxis por defecto, la herramienta 'ninjarmm-cli ' toma los datos de los argumentos de la línea de comandos. Pero a veces no es suficiente, y necesitas obtener los datos del canal stdin (entrada estándar).

Por ejemplo, si necesita introducir datos en el campo de texto multilínea , o si desea obtener la salida del archivo y almacenarla en el campo. O, para evitar la ruptura de tabulaciones o espacios en la salida formateada de otras aplicaciones.

Para ello, la herramienta CLI proporciona una sintaxis alternativa con el parámetro --stdin. Por lo tanto, cuando utilice este argumento, deberá proporcionar los datos como entrada en el canal stdin, utilizando tuberías Unix. Por ejemplo: dir | ninjarmm-cli set --stdin [mi nombre de campo ] o cat /proc/cpuinfo | grep vendor_id | ninjarmm-cli set --stdin [otro nombre de campo]. Los datos canalizados se almacenarán en el campo de destino si cumplen todas las condiciones del tipo de campo.

Selección múltiple

Opciones:

# list options for multi-select field> ninjarmm-cli options globalmultiselect333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option274a6ffda-708e-435a-86e3-40b67c4f981a=Option1f1ba449c-fd34-49df-b878-af3877180d17=Option3

Obtener el GUID por nombre de opción:

# find option GUID by the option name for the multi-select field> ninjarmm-cli options globalmultiselect | grep "Option 1" | awk -F= '{print $1}'74a6ffda-708e-435a-86e3-40b67c4f981a

Set:

# set multiple values for multi-select field, comma-separated> ninjarmm-cli set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008,74a6ffda-708e-435a-86e3-40b67c4f981a

Get:

# get values for multi-select field> ninjarmm-cli get globalmultiselect333f541e-747e-4a1e-a2e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981a

Número de teléfono

Get:

# get stored valueninjarmm-cli get typephone+1234567890

Set:

# set correct values> ninjarmm-cli set typephone +77013273916+77013273916 > ninjarmm-cli set typephone 123456789012344567123456789012344567 > ninjarmm-cli set typephone +123456789012344567+123456789012344567 # set wrong values> ninjarmm-cli set typephone 14953273916qwertyError: Wrong value format / type ... > ninjarmm-cli set typephone 1234567890123445678 # too longError: Wrong value format / type ... > ninjarmm-cli set typephone ++123456789012344567Error: Wrong value format / type ...

Seguro

Para evitar que los valores de campo seguro se muestren en la salida del script para dispositivos Windows, el script debe contener @echo off y @echo on alrededor del código que llama a %NINJARMMCLI% set [secure field name] [secured value]. Por defecto, Windows se hace eco de todos los comandos que los usuarios introducen o ejecutan.

Para evitar que se muestren valores de campos seguros en la salida del script para dispositivos Unix (macOS o Linux), el script no debe contener set -x antes de funcionar. Esta omisión impide el eco de los comandos ejecutados que contengan valores seguros.

Get: 

# get secure field> ninjarmm-cli get globalsecuresampletext1

Set:

# set secure field> ninjarmm-cli set globalsecure sampletext2

Texto

Get:

# get text field> ninjarmm-cli get globaltextsampletext1

Set:

# set text field> ninjarmm-cli set globaltext sampletext2

Tiempo

Para el campo Hora, el valor establecido debe estar en segundos o en formato ISO (hh:mm:ss).

Get:

# get value for time field> ninjarmm-cli get globaldatetime120

Set:

# set value to time field> ninjarmm-cli set globaldatetime 36003600 > ninjarmm-cli set testdatetime 00:00:000

URL

El campo URL está limitado a 200 caracteres y debe comenzar por https://.

Get:

# get URL field> ninjarmm-cli get urlhttps://www.google.com

Set:

# set URL field> ninjarmm-cli set url https://www.ninjarmm.com

Campos de documentación

Get:

# get templates list> ninjarmm-cli templates1=template 12=template 2 # get documents list by template ID> ninjarmm-cli documents 216=template 2 # get documents list by template name> ninjarmm-cli documents "template 2"16=template 2 # get field value from document> ninjarmm-cli get "template 2" "template 2" fieldnameThis is the field value

Set:

# set attribute to the specified document/attribute by document name and template id/name (quotes required)> ninjarmm-cli org-set "template 2" "ExampleDoc" ExampleTextField "SampleText1" # set attribute to single document/attribute by template name (quotes required)> ninjarmm-cli org-set "template 2" ExampleTextField "SampleText1" # clear value of document by document name and template id/name (quotes required, represented as NULL)> ninjarmm-cli org-clear "template 2" "ExampleDoc" ExampleTextField # clear value of single document by template name (quotes required, represented as NULL)> ninjarmm-cli org-clear "template 2" ExampleTextField

Opciones:

# get list of the valid values for document attribute name by document name and template id/name (actual for drop-down and multi-select attributes)> ninjarmm-cli org-options "template 2" "ExampleDoc" ExampleTextField # get list of the valid values for a single document attribute name by template name (actual for drop-down and multi-select attributes)> ninjarmm-cli org-options "template 2" ExampleTextField

Interacción con campos personalizados mediante comandos PowerShell o scripts personalizados

Los ejemplos de esta sección muestran cómo utilizar comandos o scripts PowerShell para tipos específicos de campos personalizados. Utilice los enlaces siguientes para acceder a los guiones que desee revisar:

Casilla de verificación

Para el campo Casilla, el valor establecido debe ser verdadero (1) o falso (0).

Get:

# get value for checkbox field> Ninja-Property-Get globalcheckbox0

Set:

# set a boolean value to the checkbox field> Ninja-Property-Set globalcheckbox 00> Ninja-Property-Set globalcheckbox 11> Ninja-Property-Set globalcheckbox true1> Ninja-Property-Set globalcheckbox false0

Fecha

Para el campo Fecha, el valor establecido debe estar en segundos o en formato ISO (aaaa-mm-dd en UTC).

Get:

# get value for date field> Ninja-Property-Get globaldate456

Set:

# set value to date field> Ninja-Property-Set globaldate 1626875470000 > Ninja-Property-Set testdate 2021-10-151634256000

Fecha/Hora

Get:

# get value for date-time field> Ninja-Property-Get globaldatetime1626875470000

Set:

# set value to date-time field> Ninja-Property-Set globaldatetime 16268754700001626875470000 > Ninja-Property-Set testdatetime 2021-10-15T00:00:001634256000

Decimal

Get:

# get value for decimal field> Ninja-Property-Get globaldecimal123.456

Set:

# set value to decimal field> Ninja-Property-Set typedecimal 11 > Ninja-Property-Set typedecimal 1.231.23 > Ninja-Property-Set typedecimal 1.231.23 > Ninja-Property-Set typedecimal 1.23456789012345678901.234567 # truncated to max precision, better not to use more precision to avoid data type conversion issues > Ninja-Property-Set typedecimal 1234567890.12345678901234567890.123457

Lista desplegable

Opciones:

# list options for the dropdown field> Ninja-Property-Options globaldropdown333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option274a6ffda-708e-435a-86e3-40b67c4f981a=Option1f1ba449c-fd34-49df-b878-af3877180d17=Option3

Obtener opción GUID con el nombre de opción:

# find the option GUID by the option name for the dropdown field> Ninja-Property-Get globaldropdown | grep "Option1" | awk -F= '{print $1}'74a6ffda-708e-435a-86e3-40b67c4f981a

Get:

# get value for dropdown field> Ninja-Property-Get globaldropdown74a6ffda-708e-435a-86e3-40b67c4f981a

Set:

# set value to the dropdown field> Ninja-Property-Set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17

Correo electrónico

Get:

# get stored value> Ninja-Property-Get [email protected]

Set:

# correct values> Ninja-Property-Set typeemail [email protected]@test.test > Ninja-Property-Set typeemail [email protected]@test123.test.othertest # set wrong values> Ninja-Property-Set typeemail [email protected]: Wrong value format / type ...

Entero

Para el campo Entero, el valor establecido debe ser un número entero (un número entero sin decimales) dentro del rango de -2147483648 a 2147483647.

Get:

# get value for integer field> Ninja-Property-Get globalinteger456

Set:

# set value to integer field> Ninja-Property-Set globalinteger 123

Dirección IP

Para el campo IP , el valor establecido debe estar en formato IPv4 (Protocolo de Internet versión 4) o IPv6 (Protocolo de Internet versión 6).

Get:

# get stored value> Ninja-Property-Get typeipaddress192.168.1.100

Set:

# set correct values> Ninja-Property-Set typeipaddress 255.255.255.255255.255.255.255 > Ninja-Property-Set typeipaddress 0.0.0.00.0.0.0 # set wrong values> Ninja-Property-Set typeipaddress 192.168.1.Error: Wrong value format / type ... > Ninja-Property-Set typeipaddress 255.255.255.256Error: Wrong value format / type ... > Ninja-Property-Set typeipaddress 0.-1.0.0Error: Wrong value format / type ...

Múltiples líneas

Debido a las restricciones de CLI o Terminal, el texto debe introducirse en el símbolo del sistema como una sola línea y está limitado a 10.000 caracteres.

Get:

# get text field> Ninja-Property-Get globaltextsampletext1

Set:

# set text field>Ninja-Property-Set globaltext sampletext2

Selección múltiple

Opciones:

# list options for multi-select field> Ninja-Property-Options globalmultiselect333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option274a6ffda-708e-435a-86e3-40b67c4f981a=Option1f1ba449c-fd34-49df-b878-af3877180d17=Option3

Obtener opción GUID con el nombre de opción:

# find option GUID by the option name for the multi-select field> Ninja-Property-Options globalmultiselect | grep "Option 1" | awk -F= '{print $1}'74a6ffda-708e-435a-86e3-40ba67c4f981a

Set:

# set multiple values for multi-select field, comma-separated> Ninja-Property-Set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981a

Get:

# get values for multi-select field> Ninja-Property-Get globalmultiselect333f541e-747e-4a1e-a1e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981a

Número de teléfono

Get:

# get stored valueNinja-Property-Get typephone+1234567890

Set:

# set correct values> Ninja-Property-Set typephone +77013273916+77013273916 > Ninja-Property-Set typephone 123456789012344567123456789012344567 > Ninja-Property-Set typephone 123456789012344567123456789012344567 > Ninja-Property-Set typephone +123456789012344567+123456789012344567 # set wrong values> Ninja-Property-Set typephone 14953273916qwertyError: Wrong value format / type ... > Ninja-Property-Set typephone 14953273916qwertyError: Wrong value format / type ... > Ninja-Property-Set typephone 1234567890123445678 # too longError: Wrong value format / type ... > Ninja-Property-Set typephone ++123456789012344567Error: Wrong value format / type ...

Seguro

Get:

# get secure field> Ninja-Property-Get globalsecuresampletext1

Set:

# set secure field>Ninja-Property-Set globalsecure sampletext2

Texto

Get:

# get text field> Ninja-Property-Get globaltextsampletext1

Set:

# set text field>Ninja-Property-Set globaltext sampletext2

Tiempo

Para el campo Hora , el valor establecido debe estar en segundos o en formato ISO (hh:mm:ss).

Get:

# get value for time field> Ninja-Property-Get globaldatetime120

Set:

# set value to time field> Ninja-Property-Set globaldatetime 36003600 > Ninja-Property-Set testdatetime 00:00:000

URL

El campo URL está limitado a 200 caracteres y debe comenzar por "https://'".

Get:

# get URL field> Ninja-Property-Get urlhttps://www.google.com

Set:

# set URL field>Ninja-Property-Set url https://www.google.com

Campos de documentación

Get:

# get templates list> Ninja-Property-Docs-Templates1=template 12=template 2 # get documents list by template ID> Ninja-Property-Docs-Names 216=template 2 # get documents list by template name> Ninja-Property-Docs-Names "template 2"16=template 2 # get field value from document> Ninja-Property-Docs-Get "template 2" "template 2" fieldnameThis is the field value

Set:

# set attribute to the specified document/attribute by document name and template id/name (quotes required)> Ninja-Property-Docs-Set 2 "ExampleDoc" ExampleTextField # set attribute to single document/attribute by template name (quotes required)> Ninja-Property-Docs-Set-Single "template 2" ExampleTextField "sampletext1" # clear value of document by document name and template id/name (quotes required, represented as NULL)> Ninja-Property-Docs-Clear "template 2" "ExampleDoc" ExampleTextField # clear value of single document by template name (quotes required, represented as NULL)> Ninja-Property-Docs-Clear-Single "template 2" ExampleTextField

Opciones:

# get list of the valid values for document attribute name by document name and template id/name (actual for drop-down and multi-select attributes)> Ninja-Property-Docs-Options "template 2" "ExampleDoc" ExampleTextField # get list of the valid values for a single document attribute name by template name (actual for drop-down and multi-select attributes)> Ninja-Property-Docs-Options-Single "template 2" ExampleTextField

Recursos adicionales

Para obtener más información sobre la documentación, los campos personalizados, la CLI y las secuencias de comandos, consulte los siguientes artículos:

Interfaz de línea de comandos (CLI)

Uso de la interfaz de línea de comandos (CLI) en NinjaOne.

Documentación y campos personalizados

Scripting

FAQ

Próximos pasos