API Externa

API Externa de Pandora FMS

La API externa de Pandora FMS se utiliza haciendo llamadas remotas (vía HTTP o HTTPS) sobre el fichero /include/api.php. Este es el método que se ha definido en Pandora FMS para integrar aplicaciones de terceros con Pandora FMS. Básicamente consiste en un llamada con los parámetros formateados para recibir un valor o una lista de valores que después de su aplicación usará para realizar operaciones.

Una llamada al API es tan fácil como:

http://<Pandora FMS Console install>/include/api.php<parameters>

El API sólo puede recibir los siguientes parámetros (< parameters >):

  • op (obligatorio): Es el primer parámetro. Especifica la naturaleza de la operación que puede ser get o set o help:
    • get: Devuelve un valor o valores
    • set: Envía un valor o valores
    • help: Devuelve una pequeña ayuda de las llamadas
  • op2 (obligatorio): La llamada en sí con un nombre explicativo de sobre qué actúa.
  • id (depende del comando): Primer parámetro de la llamada.
  • id2 (depende del comando): Segundo parámetro de la llamada.
  • other (depende del comando): Tercer parámetro de la llamada, algunas veces puede ser un lista de valores serializados.
  • other_mode (depende del comando): Formato de la serialización. Lista de valores posibles:
    • url_encode: El valor de other es un alfanumérico formateado como UrlEncode.
    • url_encode_separator_<separador>:El valor será una lista de valores serializados con el carácter separador por ejemplo:
...other=pears|melons|watermelon&other_mode=url_encode_separator_|

Usted puede utilizar cualquier separador, en esta documentación el caracter | (%7C percent-encoded) es usado de manera preferente. Véase también cómo trabaja el API checker.

  • returnType (depende del comando): Formato de retorno del valor o valores. Alguno de los valores disponibles actuales son:
    • string: Devuelve el valor tal cual como un alfanumérico.
    • csv: Devuelve los valores como un CSV separado por defecto con el carácter ; los campos, y separados con retornos de carro las filas.
    • csv_head: Devuelve, igual que con csv, salvo que añade una primera fila con los nombres de los campos a retornar.
  • Credenciales de seguridad: véase la sección “Seguridad”.

Seguridad

La API autentifica el acceso mediante origen y/o contraseña de API y/o credenciales de usuario.

Por origen

Actualmente, la seguridad se basa en una lista de direcciones IP que tendrán acceso a la herramienta.

Si se introduce en la caja de texto el carácter * se omite la comprobación de ACL relegando la seguridad al protocolo y al entorno.

Por contraseña de API

También se puede establecer una contraseña (·API password) para realizar las acciones del API.

  • apipass: Por defecto, y es usado en esta documentación, 1234.

Por credenciales de usuario

Se accede mediante nombre de usuario y contraseña; adicionalmente desde la versión 768 o posterior es posible autenticar mediante bearer token.

Mediante nombre de usuario y contraseña

Para acceder a las acciones de la API, también es necesario proporcionar un nombre de usuario tipo superadmin y contraseña válidos ambos en el sistema Pandora FMS.

  • user: Usuario de Pandora FMS válido.
  • pass: La contraseña del usuario proporcionado.

Las llamadas a la API llevan las contraseñas sin codificar. Debe tener cuidado y emplear conexiones SSL para evitar que se puedan ver por terceros en la red. La API admite peticiones via POST para poder cifrarlas cuando se usa SSL/HTTPS.

Retorno

Cuando la API deniega el acceso, será devuelta una simple cadena de texto auth error.

Ejemplos

En esta documentación se utiliza 1234 para la contraseña del API, el nombre de usuario es admin (tipo superadmin) y la contraseña es pandora.

Pandora FMS trae instalado, por defecto, un usuario llamado internal_API el cual ni tiene contraseña establecida ni es un superadmin. Tanto para este usuario, como para los demás que sean creados, se deberán establecer los perfiles adecuados para cada uno de los comandos y operaciones acá descritos.

Vea la sintaxis de llamada:

.../include/api.php?op=get&op2=plugins&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

Condiciones de acceso:

  • La dirección IP de origen está en la lista de ACL (o se utiliza * para ello).
  • La contraseña de la API no está establecida o es 1234.
  • El usuario admin existe, es un superadmin y su contraseña de usuario es pandora .

API checker

Acceda desde el menú de Administración: Admin toolsAPI checker.

Versión 768 o posterior: Se puede autenticar con API Token por medio de el envío en las cabeceras HTTP de un bearer token generado por cada usuario y para su propio uso privado y particular. Consulte “Editar mi usuario” para más detalles.


Flujo de trabajo del sistema de seguridad

Se implementa gracias a tres elementos:

Esto se explica en el siguiente diagrama de flujo:

Llamadas a la API

Se dividen en dos grupos según si devuelven o escriben datos en Pandora FMS.

Existe una excepción: la llamada de retorno de información.

Autenticación por bearer token

Versión 768 o posterior: Se puede autenticar con API Token por medio de el envío en las cabeceras HTTP de un bearer token generado por cada usuario y para su propio uso privado y particular. Consulte “Editar mi usuario” para más detalles.

La autenticación basada en bearer token permite que cada uno de los usuarios registrados en Pandora FMS pueda generar su propio identificador en correspondencia unívoca. Dicho bearer token debe ser insertado en las cabeceras HTTP, es decir, no forma parte de la URL completa de la API. El mecanismo de envío corresponde a la aplicación que realiza la conexión con la API de PFMS.

Versión 768 o posterior: De aparecer un icono de advertencia adyacente al API Token configure el fichero php.conf.

Para los siguientes ejemplos se utiliza el programa de línea de comandos cURL, versión 7.68 .

  • Verifique la versión de curl con curl -V.

  • Si necesita más ayuda para utilizar curl, invoque curl -h.
  • Los parámetros -k y -H sirven para aceptar conexiones con certificados autofirmados para HTTPS y enviar la información de las cabeceras, respectivamente.
  • Consulte el bearer token correspondiente al usuario que realizará la consulta API.
  • Ahora ya puede realizar una consulta API, en el siguiente ejemplo se utiliza get test (sustituya por su bearer token consultado anteriormente):
BEARER="Authorization: Bearer 811a0c1889f3aa62ef481ccd173ea5ec"
URL="http://192.168.7.117/pandora_console/include/api.php"
API_QUERY="?op=get&op2=test"
curl -k -H "$BEARER" $URL$API_QUERY && echo ""

  • Si necesita depurar la conexión utilice el parámetro -v (no confundir con -V usado para mostrar la versión).

Retorno de información

Devuelve la versión de Pandora FMS Console web, de un modo parecido a la función get test pero sin chequear la conexión a la API.

Esta llamada es útil para verificar que en esta ruta se encuentra una instalación de Pandora FMS y para obtener la versión antes de la autenticación.

La información que devuelve se puede obtener de la pantalla de login, por lo que no se considera que se vulnere la seguridad.

http://127.0.0.1/pandora_console/include/api.php?info=version

Un ejemplo de respuesta podría ser: Pandora FMS v7.0NG.768 - PC230120 MR60

GET

Devuelve los datos solicitados.

get test

Chequea la conexión al API y devuelve la versión del Pandora Console.

Esta característica está en Metaconsola.

Sintaxis de la llamada: Sin parámetros

Ejemplos

Este ejemplo devolverá OK,[version],[build]

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=test&apipass=1234&user=admin&pass=pandora

Un ejemplo de respuesta podría ser: OK,v7.0NG.751,PC201215

get license

Para consultar el estado de la licencia de uso de Pandora FMS, según el nivel de acceso que tenga las credenciales del usuario.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=license (obligatorio).
  • return_type=json (obligatorio).

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=get&op2=license&return_type=json&apipass=1234&user=admin&pass=pandora

En la versión Community devuelve:

 {
  "type":"array",
  "data":{
   "license_mode":"PANDORA-FREE",
  }
 }

get all_agents

Devuelve la lista de agentes filtrados por los filtros seteados en other.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=all_agents (obligatorio)
  • return_type=csv o json (obligatorio)
  • other=<parámetros serializados> (opcional) parámetros para filtrar la búsqueda de agentes, serializados:
    • <filter_so>
    • <filter_group>
    • <filter_module_states>
    • <filter_alias>
    • <filter_policy>
    • <csv_separator>
    • Recursión (1 o 0)

Ejemplos

Este ejemplo devolverá todos los agentes cuyo id_so sea igual a 1, id_group igual a 2, estado de warning, su alias contenga 'j', y su política asociada tenga id igual a 2.

Ejemplo para CSV:

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_agents&return_type=csv&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo para JSON:

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_agents&return_type=json&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get license_remaining

= 7.0NG 752

Para consultar el número de Agentes o Módulos disponibles según la licencia de uso de Pandora FMS y de acuerdo a el nivel de acceso que tenga las credenciales del usuario utilizadas.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2= license_remaining (obligatorio)
  • return_type = json (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=license_remaining&return_type=json&apipass=1234&user=admin&pass=pandora

get module_last_value

Devuelve el último valor de un módulo, el cual se selecciona por el ID pasado por el parámetro id. Con el parámetro other puede añadir el código de error para que su aplicación detecte este valor fuera del rango de valores del módulo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2= module_last_value (obligatorio)
  • id=<índice> (obligatorio): Debe ser un índice de un módulo agente.
  • other =<retorno error> (opcional): Que quiere que le devuelva si hay un error (no encontrado en DB el módulo normalmente).
    • Códigos de retorno de error son:
      • 'error_message': Devuelve error en un mensaje de texto.
      • 'error_value'<separador><código o valor>: Devuelve ese código o valor de error. Pero es necesario acompañarlo de 'other_mode' tal que así other_mode=url_encode_separator_<separador> para pasar el separador en other.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_last_value&id=63&other=error_value|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_last_value&id=62&apipass=1234&user=admin&pass=pandora

get agent_module_name_last_value

Devuelve el último valor de un módulo, el cual se selecciona por nombre del agente pasado por el parámetro id y nombre del módulo pasado por el id2. Con el parámetro other puede añadir el código de error para que su aplicación detecte este valor fuera del rango de valores que puede tener el módulo.

Sintaxis de la llamada:

  • op=get:(obligatorio)
  • op2= agent_module_name_last_value: (obligatorio)
  • id=<alfanumerico> (obligatorio):Contiene el nombre del agente.
  • id2=<alfanumerico> (obligatorio): Contiene el nombre del módulo.
  • other =<retorno error> (opcional): Que quiere que le devuelva si hay un error (no encontrado en DB el módulo normalmente).
    • Códigos de retorno de error son:
      • 'error_message': Devuelve error en un mensaje de texto.
      • 'error_value'<separador><código o valor>: Devuelve ese código o valor de error. Pero es necesario acompañarlo de 'other_mode' tal que así other_mode=url_encode_separator_<separador> para pasar el separador en other.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agent_module_name_last_value&id=user&id2=cpu_user&apipass=1234&user=admin&pass=pandora

get agent_module_name_last_value_alias

= 7.0NG

Devuelve el último valor de un módulo, el cual se selecciona por alias del agente pasado por el parámetro id y nombre del módulo pasado por el id2. Con el parámetro other puede añadir el código de error para que su aplicación detecte este valor fuera del rango de valores que puede ser el módulo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=agent_module_name_last_value_alias (obligatorio)
  • id=<alfanumerico> (obligatorio): Contiene el alias del agente.
  • id2=<alfanumerico> (obligatorio): Contiene el nombre del módulo.
  • other =<retorno error> (opcional): Que quiere que le devuelva si hay un error (no encontrado en DB el módulo normalmente).
    • Códigos de retorno de error son:
      • 'error_message': Devuelve error en un mensaje de texto.
      • 'error_value'<separador><código o valor>: Devuelve ese código o valor de error. Pero es necesario acompañarlo de 'other_mode' tal que así other_mode=url_encode_separator_<separador> para pasar el separador en other.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agent_module_name_last_value_alias&id=pandorafms&id2=Memory_Used&apipass=1234&user=admin&pass=pandora

get module_value_all_agents

Dado el nombre de un módulo, devuelve una lista de agentes que contienen ese nombre de módulo. El resultado devuelve el identificador del agente, alias del mismo, valor del módulo solicitado y nombre del agente, separados por punto y coma (;). Por ejemplo:

653;agente network;0.00000;a8c83b348451040dc91c1327303adf8945aefce6ac59ab9bf856c9f4e0cf6c6f

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=module_value_all_agents (obligatorio).
  • id=< nombre_del_módulo > (obligatorio).

Ejemplo (vea sintaxis de la llamada):

Se solicita un listado de todos los agentes que tengan el módulo con nombre Host Alive:

.../include/api.php?op=get&op2=module_value_all_agents&id=Host Alive&apipass=1234&user=admin&pass=pandora

get agent_modules

Devuelve la lista de módulos de un agente solicitado por su identificador numérico.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=agent_modules (obligatorio).
  • return_type= (obligatorio): Formato de salida.
  • other=< valores serializados > (obligatorio): Valores serializados para filtrar la búsqueda de módulos por agente:
    • < id_agent >

¡Es absolutamente imprescindible utilizar

other_mode=url_encode_separator_< separator >

con este parámetro!

Ejemplo (vea sintaxis de la llamada):

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agent_modules&return_type=csv&other=14&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get module_id

Devuelve la id de un módulo concreto de un agente.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_id (obligatorio)
  • id=id del agente (obligatorio)
  • other=nombre del módulo (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_id&id=5&other=Host Alive&apipass=1234&user=admin&pass=pandora

get module_custom_id

Devuelve el valor del campo Custom_id de un módulo concreto de un agente pasando como parámetro el id del módulo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_custom_id (obligatorio)
  • id=id_agente_modulo (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_custom_id&id=5&apipass=1234&user=admin&pass=pandora

set module_custom_id

Cambia, o limpia, el valor del campo Custom ID pasando como parámetros el id del módulo y el valor del custom id.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=module_custom_id (obligatorio)
  • id=id_agente_modulo (obligatorio)
  • id2=valor, o vacío para limpiar (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=module_custom_id&id=5&id2=1521&apipass=1234&user=admin&pass=pandora

get locate_agent

Obtiene el id del servidor donde se encuentra el agente, e imprime todo el resultado como un archivo csv.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=locate_agent (obligatorio)
  • return_type=<csv> (obligatorio) Formato de salida.
  • id=id_agent (obligatorio)
  • other_mode=other_mode=url_encode_separator_<separador> (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=locate_agent&return_type=csv&apipass=1234&user=admin&pass=pandora&id=Pepito&other_mode=url_encode_separator_|

get policies

Devuelve la lista políticas de un agente pasado su id dentro del parámetro other.

Sintaxis de llamada:

  • op=get (obligatorio)
  • op2=policies (obligatorio)
  • return_type=<csv> (obligatorio)
  • other=<valores serializados> (opcional) Parámetros serializados para filtrar la búsqueda de políticas por agente:
    • <id_agent>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=policies&return_type=csv&other=&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get tree_agents

Devuelve una completa lista organizada por grupos en el primer nivel, agentes el segundo nivel y módulos el tercer nivel. Esta lista se filtra por el parámetro other.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=tree_agents (obligatorio)
  • return_type=<tipo retorno> (obligatorio) que puede ser csv o csv_head.
  • other=<string o parámetros serializados> (opcional) en este caso puede ser simplemente el separador o una lista de parámetros en orden y separados con el caracter separador, vemos los dos casos:
    • <separador> el separador si del csv.
    • <separador csv>|<carácter sustitución de retorno de carro>|<campos 1>,<campos 2>,<campos N> se compondrá de los siguientes parámetros en orden (el carácter | de separación se puede especificar en other_mode):
      • <separador csv>: separador de los campos en el CSV.
      • <caracter sustitución de retorno de carro>: carácter que sustituirá si encuentra en algún valor devuelto el carácter retorno de carro para evitar la ambigüedad con el uso estándar de retorno de carro para especificar registros/filas en el CSV. Si se pasa un string en other, el carácter sustituto es el espacio en blanco.
      • <campos 1>,<campos 2>,<campos N> : los campos a mostrar en el CSV y el orden en que mostrarlos, los posibles campos son:
        • type_row
        • group_id
        • group_name
        • group_parent
        • disabled
        • custom_id
        • group_description
        • group_contact
        • group_other
        • agent_id
        • alias
        • agent_direction
        • agent_comentary
        • agent_id_group
        • agent_last_contant
        • agent_mode
        • agent_interval
        • agent_id_os
        • agent_os_version
        • agent_version
        • agent_last_remote_contact
        • agent_disabled
        • agent_id_parent
        • agent_custom_id
        • agent_server_name
        • agent_cascade_protection
        • agent_name
        • module_id_agent_modulo
        • module_id_agent
        • module_id_module_type
        • module_description
        • module_name
        • module_max
        • module_min
        • module_interval
        • module_tcp_port
        • module_tcp_send
        • module_tcp_rcv
        • module_snmp_community
        • module_snmp_oid
        • module_ip_target
        • module_id_module_group
        • module_flag
        • module_id_module
        • module_disabled
        • module_id_export
        • module_plugin_user
        • module_plugin_pass
        • module_plugin_parameter
        • module_id_plugin
        • module_post_process
        • module_prediction_module
        • module_max_timeout
        • module_custom_id
        • module_history_data
        • module_min_warning
        • module_max_warning
        • module_min_critical
        • module_max_critical
        • module_min_ff_event
        • module_delete_pending
        • module_id_agent_state
        • module_data
        • module_timestamp
        • module_state
        • module_last_try
        • module_utimestamp
        • module_current_interval
        • module_running_by
        • module_last_execution_try
        • module_status_changes
        • module_last_status
        • module_plugin_macros
        • module_macros
        • module_critical_inverse (solo versión 6.0SP1)
        • module_warning_inverse (solo versión 6.0SP1)
        • alert_id_agent_module
        • alert_id_alert_template
        • alert_internal_counter
        • alert_last_fired
        • alert_last_reference
        • alert_times_fired
        • alert_disabled
        • alert_force_execution
        • alert_id_alert_action
        • alert_type
        • alert_value
        • alert_matches_value
        • alert_max_value
        • alert_min_value
        • alert_time_threshold
        • alert_max_alerts
        • alert_min_alerts
        • alert_time_from
        • alert_time_to
        • alert_monday
        • alert_tuesday
        • alert_wednesday
        • alert_thursday
        • alert_friday
        • alert_saturday
        • alert_sunday
        • alert_recovery_notify
        • alert_field2_recovery
        • alert_field3_recovery
        • alert_id_alert_template_module
        • alert_fires_min
        • alert_fires_max
        • alert_id_alert_command
        • alert_command
        • alert_internal
        • alert_template_modules_id
        • alert_templates_id
        • alert_template_module_actions_id
        • alert_actions_id
        • alert_commands_id
        • alert_templates_name
        • alert_actions_name
        • alert_commands_name
        • alert_templates_description
        • alert_commands_description
        • alert_template_modules_priority
        • alert_templates_priority
        • alert_templates_field1
        • alert_actions_field1
        • alert_templates_field2
        • alert_actions_field2
        • alert_templates_field3
        • alert_actions_field3
        • alert_templates_id_group
        • alert_actions_id_group'

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=tree_agents&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=tree_agents&return_type=csv&other=;|   |type_row,group_id,agent_name&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get module_data

Devuelve una lista de valores de un módulo, este módulo se filtra por el id pasado por el parámetro id. Y la lista de valores es desde la fecha actual hasta el límite del periodo pasado como segundo parámetro en el other, el primero es el separador de CSV.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_data (obligatorio)
  • id=<id_modulo> (obligatorio)
  • other_mode=url_encode_separator_<separador> (obligatorio)
  • other=<parámetros serializados>(opcional)
    • el carácter de separación del CSV (punto por defecto)
    • el periodo (en segundos)
    • tiempo de inicio (<año><mes><día>T<hora»<minuto>)
    • tiempo de final (<año><mes><día>T<hora»<minuto>)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_data&id=17&other=;|604800|20121201T13:40|20171215T13:40&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get graph_module_data

Devuelve la gráfica de un módulo como un fichero de imagen, generada con el método de la gráficas estáticas de Pandora FMS. Es necesario pasar el ancho, alto, periodo, nombre de la gráfica y fecha de comienzo (sabiendo que en Pandora FMS la fecha que se indica en las gráficas siempre es la del final de los datos), pasados todos ellos como other parámetro.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_data (obligatorio)
  • id=<id_modulo> (obligatorio)
  • other=<parámetros serializados> (obligatorio), son los siguientes en este orden:
    • <period>
    • <width>
    • <height>
    • <label>
    • <start_date>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=graph_module_data&id=17&other=604800|555|245|example|2009-12-07&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get events

Devuelve la lista de eventos filtrados por el parámetro other.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=events (obligatorio).
  • id=< id del nodo > (opcional en la metaconsola, innecesario en el nodo).
  • return_type=csv o return_type=json (obligatorio).
  • other_mode=url_encode_separator_| (obligatorio).
  • other=< parámetros serializados > (opcionales), son los siguientes en este orden:
    1. < separador > (obligatorio).
    2. < criticidad > alguno de los siguientes valores desde 0 al número 6:
      1. 0:Maintenance
      2. 1:Informational
      3. 2:Normal
      4. 3:Warning
      5. 4:Critical
      6. 5:Minor
      7. 6:Major
    3. < alias de agente >
    4. < nombre de módulo >
    5. < filtrar por alerta > utilice 1 para filtrar eventos generados por alertas.
    6. < usuario dueño del evento >
    7. < fecha y hora mínima (desde) > en formato de tiempo Unix®, sin milisegundos (EPOCH).
    8. < fecha y hora máxima (hasta) > en formato de tiempo Unix®, sin milisegundos (EPOCH).
    9. < estado > 0 para filtrar eventos no validados, 1 para eventos validados.
    10. < texto > palabra clave a buscar en los eventos.
    11. < tamaño de página > establece el número de registros a devolver para la paginación (offset). Si el número de offset se omite, solamente retribuirá el primer offset (el primer offset es el número cero 0).
    12. < número de página > de acuerdo al tamaño de página del punto anterior, devuelve bloques de registro (offset) anteriores o posteriores.
    13. < estilo > solamente acepta dos valores clave:
      1. total: simplemente devuelve el número total de eventos, por ejemplo en formato JSON entrega: {“type”:“json”,“data”:{“count”:990}}.
      2. more_criticity: devuelve el número de eventos de mayor criticidad, por ejemplo si se le solicita en formato JSON: {“type”:“json”,“data”:[{“criticity”:“4”,“user_can_manage”:“1”,“user_can_write”:“1”,“server_id”:5,“server_name”:“stod”}]}.
    14. < id_grupo > devuelve los eventos no validados pertenecientes a un grupo de agentes, utilice valores numéricos solamente.
    15. < etiqueta > alguna de las tags registradas en PFMS (consulte get tags ). Debe utilizar formato JSON, por ejemplo: [“2”,“5”] (vea sintaxis de la llamada).
    16. < tipo de evento > alguno de los siguientes valores:
      • going_unknown
      • unknown
      • recon_host_detected
      • system
      • error
      • new_agent
      • going_up_warning
      • going_up_critical
      • going_down_warning
      • going_down_normal
      • going_down_critical
      • going_up_normal
      • configuration_change
      • ncm
      • not_normal

Ejemplo (vea sintaxis de la llamada):

Para obtener los eventos ncm (Network configuration manager) por consulta a una Metaconsola cuyo nodo es 5:

…include/api.php?op=get&op2=events&user=admin&pass=pandora&return_type=json&apipass=1234&other_mode=url_encode_separator_|&other=|||||||||||||||ncm&id=5

get all_alert_templates

Devuelve la lista de plantillas de alertas definidas en el Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=all_alert_templates (obligatorio)
  • other=cvs_separator (opcional)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_alert_templates&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

get module_groups

Devuelve la lista de grupos de módulos.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_groups (obligatorio)
  • other=cvs_separator (opcional)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_groups&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

get plugins

Devuelve la lista de plugins de servidor de Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=plugins (obligatorio)
  • other=cvs_separator (opcional)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=plugins&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

get tags

Devuelve la lista de etiquetas (tags) definidas en Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=tags (obligatorio)
  • return_type=csv o return_type=json (obligatorio)
  • other=< separador de campos > si solicita en formato CSV debe especificar separador, de lo contrario devolverá los campos juntos.

Ejemplos (vea sintaxis de la llamada):

Este ejemplo devolverá todos los tags del sistema en formato CSV con separador de punto y coma.

/include/api.php?op=get&op2=tags&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

get module_from_conf

= 5.0 (Sólo Enterprise)

Devuelve la configuración de módulo local.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=update_module_in_conf (obligatorio)
  • id=<id agente> (obligatorio)
  • id2=<nombre módulo> (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_from_conf&apipass=1234&user=admin&pass=pandora&id=9043&id2=example_name

Si no se encuentra el módulo se retornará cadena vacía

get total_modules

Devuelve el número total de módulos de un grupo.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=total_modules (obligatorio).
  • id=< id grupo > (obligatorio hasta la versión 768; opcional a partir de la versión 769).

Ejemplos (vea la sintaxis de la llamada):

Para obtener el total de módulos en el grupo de módulo Networking

.../include/api.php?op=get&op2=total_modules&id=2&apipass=1234&user=admin&pass=pandora

Los siguientes grupos de módulos vienen por defecto al instalar Pandora FMS:

  1. General.
  2. Networking.
  3. Application.
  4. System.
  5. Miscellaneous.
  6. Performance.
  7. Database.
  8. Enviromental.
  9. Users.

Si usted coloca 0 como id de grupo, o simplemente lo omite, retornará el número total de módulos:

.../include/api.php?op=get&op2=total_modules&apipass=1234&user=admin&pass=pandora

get total_agents

Devuelve el número total de agentes de un grupo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=total_agents (obligatorio)
  • id=<id grupo> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=total_agents&id=2&apipass=1234&user=admin&pass=pandora

get agent_name

Devuelve el nombre de un agente dado su identificador.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=agent_name (obligatorio)
  • id=<id agente> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=agent_name&id=1&apipass=1234&user=admin&pass=pandora

get agent_alias

= 7.0NG

Devuelve el alias de un agente dado su identificador.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=agent_alias (obligatorio)
  • id=<id agente> (obligatorio)
  • id2=<id del nodo> (obligatorio en la metaconsola, innecesario en el nodo)

Ejemplos

  • Nodo:
http://localhost/pandora_console/include/api.php?op=get&op2=agent_alias&id=1&apipass=1234&user=admin&pass=pandora
  • Metaconsola:
http://localhost/pandora_console/enterprise/meta/include/api.php?op=get&op2=agent_alias&id=1&id2=1&apipass=1234&user=admin&pass=pandoraInsert non-formatted text here

get module_name

Devuelve el nombre de un módulo dado su identificador.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_name (obligatorio)
  • id=<id modulo> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=module_name&id=1&apipass=1234&user=admin&pass=pandora

get alert_action_by_group

Devuelve el total de ejecuciones de alertas con una determinada acción por grupo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=alert_action_by_group (obligatorio)
  • id=<id grupo> (obligatorio)
  • id2=<id acción> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=alert_action_by_group&id=0&id2=3&apipass=1234&user=admin&pass=pandora

get alert_actions

Lista todas las acciones de alertas.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=alert_actions (obligatorio).
  • return_type=< tipo_retorno > que puede ser csv o json (obligatorio).
  • other=< parámetros_serializados > (opcionales):
    • < nombre_acción >
    • < separador >

Ejemplos

Para obtener el listado de todas las acciones de alertas en formato JSON (vea la sintaxis de la llamada):

.../include/api.php?op=get&op2=alert_actions&return_type=json&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Para obtener el listado de todas las acciones de alertas en formato CSV (vea la sintaxis de la llamada):

.../include/api.php?op=get&op2=alert_actions&return_type=csv&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get alert_actions_meta

Esta característica está en Metaconsola.

Lista acciones de alertas de nodos desde la metaconsola.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=alert_actions_meta (obligatorio)
  • return_type=<tipo retorno> (obligatorio) que puede ser 'csv' o 'json'.
  • other=<parámetros serializados> (opcional):
    • <server_name> (Opcional)
    • <action_name> (opcional)
    • <separator> (opcional)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=alert_actions_meta&apipass=1234&user=admin&pass=pandora&other=nodo|Create|&other_mode=url_encode_separator_|&return_type=json

get all_alert_commands

Devuelve todos los comandos de alertas.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=all_alert_commands (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=get&op2=all_alert_commands&return_type=csv&other=$&apipass=1234&user=admin&pass=pandora

get event_info

Devuelve toda la información de un evento pasando el id de este evento.

Esta característica está en Metaconsola.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=event_info (obligatorio)
  • id=<id_evento> (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=event_info&id=80&apipass=1234&user=admin&pass=pandora

get tactical_view

Devuelve la siguiente lista de valores (que se puede ver en la página táctica de Pandora Console)

  • monitor_checks
  • monitor_not_init
  • monitor_unknown
  • monitor_ok
  • monitor_bad
  • monitor_warning
  • monitor_critical
  • monitor_not_normal
  • monitor_alerts
  • monitor_alerts_fired
  • monitor_alerts_fire_count
  • total_agents
  • total_alerts
  • total_checks
  • alerts
  • agents_unknown
  • monitor_health
  • alert_level
  • module_sanity
  • server_sanity
  • total_not_init
  • monitor_non_init
  • agent_ok
  • agent_warning
  • agent_critical
  • agent_unknown
  • agent_not_init
  • global_health

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=tactical_view (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=tactical_view&apipass=1234&user=admin&pass=pandora

get pandora_servers

= 5.0

Devuelve la lista de servidores de Pandora FMS que hay.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=pandora_servers (obligatorio)
  • return_type=csv (obligatorio)
  • other=cvs_separator (opcional)

Example

http://localhost/pandora_console/include/api.php?op=get&op2=pandora_servers&return_type=csv&apipass=1234&user=admin&pass=pandora

Devuelve los campos en el siguiente orden:

  • nombre
  • estado (1 - arriba, 0 - abajo)
  • tipo (cadena legible por humanos)
  • maestro (1 - maestro 0 - esclavo) ????
  • módulos en ejecución
  • módulos totales
  • max retardo (seg)
  • módulos de retraso
  • hilos
  • módulos en cola
  • fecha y hora de actualización (cadena legible por humanos)

get custom_field_id

Traduce el nombre de un campo personalizado existente al identificador que tiene en la base de datos.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=custom_field_id (obligatorio).
  • other=< parámetro > (obligatorio) en este caso el nombre del campo personalizado.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=get&op2=custom_field_id&other=Serial%20Number&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get gis_agent

= 5.0

Devuelve el último valor GIS de un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=gis_agent (obligatorio)
  • id=<índice> (obligatorio) debe ser un índice de un agente.

Ejemplo

http://localhost/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=gis_agent&id=1

get special_days

= 5.1

Devuelve listado de días especiales.

Sintaxis:

  • op=get (obligatorio)
  • op2=special_days (obligatorio)
  • other=<csv separador> (opcional) CSV separador

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?apipass=1111&user=admin&pass=pandora&op=get&op2=special_days

get module_properties

= 5.1SP2

Devuelve una lista de las propiedades del módulo. La lista podría ser filtrada por el parámetro.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_properties (obligatorio)
  • id=<id_modulo> (obligatorio)
  • return_type=<tipo retorno> (obligatorio) que puede ser csv o csv_head.
  • other=<string o parámetros serializados> (opcional) en este caso puede ser simplemente el separador o una lista de parámetros en orden y separados con el carácter separador, vemos los dos casos:
    • <separador>: El separador si del csv.
    • <separador csv>|<:caracter sustitución de retorno de carro>|<campos 1>,<campos 2>,<campos N>: Se compondra de los siguientes parámetros en orden (el caracter | de separación se puede especificar en other_mode):
      • <separador csv>: Separador de los campos en el CSV.
      • <caracter sustitucion de retorno de carro>: Caracter que sustituira si encuentra en algún valor devuelto el carácter retorno de carro para evitar la ambigüedad con el uso estándar de retorno de carro para especificar registros/filas en el CSV. Si se pasa un string en other, el carácter sustituto es el espacio en blanco.
      • <campos 1>,<campos 2>,<campos N> : Los campos a mostrar en el CSV y el orden en que mostrarlos, los posibles campos son:
        • module_id_agent_modulo
        • module_id_agent
        • module_id_module_type
        • module_description
        • module_name
        • module_max
        • module_min
        • module_interval
        • module_tcp_port
        • module_tcp_send
        • module_tcp_rcv
        • module_snmp_community
        • module_snmp_oid
        • module_ip_target
        • module_id_module_group
        • module_flag
        • module_id_module
        • module_disabled
        • module_id_export
        • module_plugin_user
        • module_plugin_pass
        • module_plugin_parameter
        • module_id_plugin
        • module_post_process
        • module_prediction_module
        • module_max_timeout
        • module_custom_id
        • module_history_data
        • module_min_warning
        • module_max_warning
        • module_min_critical
        • module_max_critical
        • module_min_ff_event
        • module_delete_pending
        • module_id_agent_state
        • module_data
        • module_timestamp
        • module_state
        • module_last_try
        • module_utimestamp
        • module_current_interval
        • module_running_by
        • module_last_execution_try
        • module_status_changes
        • module_last_status
        • module_plugin_macros
        • module_macros
        • module_critical_inverse (solo versión 6.0SP1)
        • module_warning_inverse (solo versión 6.0SP1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_properties&id=6233&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_properties&id=1103&return_type=csv&other=;|   |module_id_agent_module,module_id_module_type,module_name,module_last_try,module_state&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get module_properties_by_name

= 5.1SP2

Devuelve una lista de las propiedades del módulo. La lista podria ser filtrada por el parámetro.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_properties (obligatorio)
  • id=<nombre agente> (obligatorio)
  • id2=<nombre modulo> (obligatorio)
  • return_type=<tipo retorno> (obligatorio) que puede ser 'csv' o 'csv_head'.
  • other=<string o parametros serializados> (opcional) en este caso puede ser simplemente el separador o una lista de parámetros en orden y separados con el caracter separador (el mismo que get_module_properties. para mas detalles, consulte el get_module_properties.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_properties_by_name&id=my_agent&id2=my_module&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_properties_by_name&id=my_agent&id2=my_module&return_type=csv&other=;|   |module_id_agent_module,module_id_module_type,module_type,module_name,module_last_try,module_state&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get module_properties_by_alias

= 7.0NG

Devuelve una lista de las propiedades del módulo. La lista podria ser filtrada por el parámetro.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=module_properties (obligatorio)
  • id=<alias agente> (obligatorio)
  • id2=<nombre modulo> (obligatorio)
  • return_type=<tipo retorno> (obligatorio) que puede ser 'csv' o 'csv_head'.
  • other=<string o parámetros serializados> (opcional) en este caso puede ser simplemente el separador o una lista de parámetros en orden y separados con el carácter separador (el mismo que get_module_properties. para más detalles, consulte el get_module_properties.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_properties_by_alias&id=pandorafms&id2=Memory_Used&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

get module_graph

Devuelve una gráfica de un Módulo en codificación base64.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=module_graph (obligatorio).
  • id=<id del módulo> (obligatorio).
  • other=<período en segundos> (opcional) por defecto 3600 (1 hora). Rango de tiempo en el que se recogerán datos desde la fecha de la petición hacia atrás.

A partir de la versión NG 752 dispone de más parámetros.

  • 0 para gráfica en base64, 1 para imagen (obligatorio).
  • 0 sin umbrales, 1 con umbrales - si el Módulo tiene umbrales activos - (obligatorio).
  • Alto de la gráfica, en píxeles (opcional).
  • Ancho de la gráfica, en píxeles (opcional).

Ejemplo

Anterior a versión NG 752:

http://localhost/pandora_console/include/api.php?op=get&op2=module_graph&id=5&other=3600|1&other_mode=url_encode_separator_|&apipass=1234&api=1&user=admin&pass=pandora

Versión NG 752 o posterior:

http://localhost/pandora_console/include/api.php?op=get&op2=module_graph&id=2&other=3600|1|1|500|800|&other_mode=url_encode_separator_|&apipass=1234&api=1&user=admin&pass=pandora

get all_planned_downtimes

= 5.1

Devuelve todas los registros coincidentes de paradas planificadas.

  • op=get
  • op2=all_planned_downtimes
  • return_type= CSV o JSON.
  • other=<nombre> <id_grupo> <tipo_parada> <tipo ejecución> <tipo de periodicidad> (filtros).

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_planned_downtimes&other=test|0|quiet|periodically|weekly&other_mode=url_encode_separator_|&return_type=json&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_planned_downtimes&other=test|0|quiet|periodically|weekly&other_mode=url_encode_separator_|&return_type=csv&apipass=1234&user=admin&pass=pandora

get planned_downtimes_items

= 5.1

Devuelve todos los objetos de las paradas planificadas que sean coincidentes.

  • op=get
  • op2= planned_downtimes_items
  • return_type= CSV o JSON.
  • other=<nombre> <grupo> <tipo_parada> <tipo ejecución> <tipo de periodicidad>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=planned_downtimes_items&other=test|0|quiet|periodically|weekly&other_mode=url_encode_separator_|&return_type=json&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=planned_downtimes_items&other=test|0|quiet|periodically|weekly&other_mode=url_encode_separator_|&return_type=csv&apipass=1234&user=admin&pass=pandora

get id_group_agent_by_name

= 5.1

devuelve el id de grupo de un agente.

Sintaxis de la llamada:

  • op=get
  • op2= id_group_agent_by_name
  • other=<parámetros serializados> (opcional) parámetros para filtrar, serializados:
    • <nombre_agente>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=id_group_agent_by_name&other_mode=url_encode_separator_|&other=192.168.50.40

get id_group_agent_by_alias

= 7.0NG

devuelve el id de grupo de un agente.

Sintaxis de la llamada:

  • op=get
  • op2= id_group_agent_by_alias
  • other=<parámetros serializados> (opcional) parámetros para filtrar, serializados:
    • <alias_agente>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=id_group_agent_by_alias&other_mode=url_encode_separator_|&other=pandorafms

get group_agent_by_name

= 5.1

devuelve el nombre de grupo de un agente.

Sintaxis de la llamada:

  • op=get
  • op2=group_agent_by_name
  • other=<parámetros serializados> (opcional) parámetros para filtrar, serializados:
    • <nombre_agente>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=group_agent_by_name&other_mode=url_encode_separator_|&other=192.168.50.40

get group_agent_by_alias

= 7.0NG

devuelve el nombre de grupo de un agente.

Sintaxis de la llamada:

  • op=get
  • op2=group_agent_by_alias
  • other=<parámetros serializados> (opcional) parámetros para filtrar, serializados:
    • <alias_agente>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=group_agent_by_alias&other_mode=url_encode_separator_|&other=pandorafms

get group_id_by_name

= 7.0NG

devuelve el id de grupo a partir del nombre.

Sintaxis de la llamada:

  • op=get
  • op2=group_id_by_name
  • other=<parámetros único> (obligatorio):
    • <group_name>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=group_id_by_name&other=Servers

get timezone

= 7.0NG

devuelve el timezone con el que está configurado Pandora FMS.

Sintaxis de la llamada:

  • op=get
  • op2=timezone

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=timezone

get cluster_status

= 7.0

Obtener estado del cluster a partir del id

  • op=get
  • op2=cluster_status
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=cluster_status&id=1&apipass=1234&user=admin&pass=pandora

get cluster_id_by_name

= 7.0

Obtener id de cluster a partir del nombre

  • op=get
  • op2=cluster_id_by_name
  • id=nombre del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=cluster_id_by_name&id=paco&apipass=1234&user=admin&pass=pandora

get agents_id_name_by_cluster_id

= 7.0

Obtener los id ⇒ nombres de los agentes del cluster a partir del id de cluster

  • op=get
  • op2=agents_id_name_by_cluster_id
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agents_id_name_by_cluster_id&id=1&apipass=1234&user=admin&pass=pandora

get agents_id_name_by_cluster_name

= 7.0

Obtener los id ⇒ nombres de los agentes del cluster a partir del nombre de cluster

  • op=get
  • op2=agents_id_name_by_cluster_name
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agents_id_name_by_cluster_name&id=example&apipass=1234&user=admin&pass=pandora

get modules_id_name_by_cluster_id

= 7.0

Obtener los id ⇒ nombres de todos los módulos de los agentes del cluster a partir del id del cluster

  • op=get
  • op2=modules_id_name_by_cluster_id
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=modules_id_name_by_cluster_id&id=1&apipass=1234&user=admin&pass=pandora

get modules_id_name_by_cluster_name

= 7.0

Obtener los id ⇒ nombres de todos los módulos de los agentes del cluster a partir del nombre del cluster

  • op=get
  • op2=modules_id_name_by_cluster_name
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=modules_id_name_by_cluster_name&id=example&apipass=1234&user=admin&pass=pandora

get cluster_items

= 7.0

Obtener los items en un objeto json con el formato: id de item ⇒ {nombre,id_agente_modulo,type,pcrit,pwarn}, apartir del id del cluster

pcrit: % para estado critico si es AA y 1 o 0 si es AP

pwarn: % para estado warning si es AP y nulo si es AP

  • op=get
  • op2=cluster_items
  • id=id del cluster
 http://127.0.0.1/pandora_console/include/api.php?op=get&op2=cluster_items&id=1&apipass=1234&user=admin&pass=pandora

get policy

= 7.0NG. 725

Devuelve todos los datos de una política. Si no se especifica un id de política devolverá todos los datos de todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2=policy
  • id=id_policy (opcional)
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=policy&apipass=1234&user=admin&pass=pandora&return_type=json.

get collections_policy

= 7.0NG. 725

Devuelve todas las colecciones de una política, si no se especifica un id de política devolverá todas las colecciones de todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2=collections_policy
  • id=id_policy (opcional)
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=collections_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

get plugins_policy

= 7.0NG. 725

Devuelve todas los plugins de una política, si no se especifica un id de política devolverá todos los plugins de todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2=plugins_policy
  • id=id_policy (opcional)
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=plugins_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

get inventory_policy

= 7.0NG. 725

Devuelve todos los módulos de inventario de una política, si no se especifica un id de política devolverá todos los módulos de inventario de todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2=inventory_policy
  • id=id_policy (opcional)
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=inventory_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=2

get unlinking_policy

= 7.0NG. 725

Devuelve todos los módulos deslincados de una política, si no se especifica un id de política devolverá todos los módulos deslincados de todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2=unlinking_policy
  • id=id_policy(opcional)
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=unlinking_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

get alerts_policy

= 7.0NG. 725

Devuelve las alertas asociadas a una política teniendo en cuenta:

  • Si se especifica un id de política se mostraran las alertas de dicha política sino se mostrarán las de todas las políticas.
  • Si se especifica el tipo de alerta:(tres opciones).
    • 0: por defecto muestra todas.
    • 1: Muestra solo las alertas normales.
    • 2: Muestra solo las alertas de tipo externo.

Sintaxis de la llamada:

  • op=get
  • op2=alerts_policy
  • id=id_policy(opcional).
  • id2=0:todas(por defecto), 1:normal, 2:external.
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=alerts_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id2=2.

get alerts_actions_policy

= 7.0NG. 725

Devuelve las acciones de las alertas asociadas a una política teniendo en cuenta:

  • Si se especifica un id de política se mostrarán las acciones de las alertas de dicha política, si no se mostrarán las de todas las políticas.
  • Si se especifica un id de alerta de política se mostrarán las acciones de dicha alerta especificada.

Sintaxis de la llamada:

  • op=get
  • op2 = alerts_actions_policy
  • id=id_policy(opcional).
  • id2 = id_policy_alert(opcional).
  • return_type=(json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=alerts_actions_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=1&id2=3

get agents_policy

= 7.0NG. 725

Devuelve todos los agentes que pertenecen a una política, si no se especifica un id de política devolverá todos agentes que pertenecen a todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2 = agents_policy
  • id=id_policy(opcional)
  • return_type = (json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=agents_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

get groups_policy

= 7.0NG. 725

Devuelve todos los grupos que pertenecen a una política, si no se especifica un id de política devolverá todos grupos que pertenecen a todas las políticas.

Sintaxis de la llamada:

  • op = get
  • op2 = groups_policy
  • id = id_policy(opcional)
  • return_type = (json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=groups_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=2

get queue_policy

= 7.0NG. 725

Devuelve la cola que pertenecen a una política, si no se especifica un id de política devolverá todas las colas que pertenecen a todas las políticas.

Sintaxis de la llamada:

  • op=get
  • op2 = queue_policy
  • id=id_policy(opcional)
  • return_type = (json, csv, string).

Ejemplo

http://localhost/pandora_console/include/api.php?op=get&op2=queue_policy&apipass=1234&user=admin&pass=pandora&return_type=json

get traps

= 7.0NG. 728

Devuelve los traps de origen especificado, también puede filtrar por timestamp y otros datos.

Sintaxis de la llamada:

  • op = get
  • op2 = traps
  • other=<parámetros opcionales»
    • <timestamp>
    • <limit>
    • <offset>
    • <status>
    • <oid_custom>

Ejemplo

https://localhost/pandora_console/include/api.php?op=get&op2=traps&other=1537128000|9000|0|1|.1.2.3.6.4&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get event_responses

Devuelve la lista de respuesta de eventos a las que el usuario tiene acceso en Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=event_reponses (obligatorio)
  • return_type=csv|json (obligatorio)

Ejemplo

Este ejemplo devolverá todas las respuestas de eventos del sistema en formato csv.

http://localhost/pandora_console/include/api.php?op=get&op2=event_responses&return_type=csv&apipass=1234&user=admin&pass=pandora

get users

Devuelve la lista de los usuario de Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=users (obligatorio)
  • return_type=csv|json (obligatorio)

Ejemplo

Este ejemplo devolverá todos usuario del sistema en formato csv.

http://localhost/pandora_console/include/api.php?op=get&op2=users&return_type=csv&other_mode=url_encode_separator_&apipass=1234&user=admin&pass=pandora

get list all user

Esta característica está en Metaconsola.

Listar todos los usuarios de Pandora FMS

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=list_all_user (obligatorio)
  • return_type=csv|json (obligatorio)

Ejemplo

Puede devolver Json o CSV, este retorno se indica mediante la URL solo se indica el tipo de retorno, no usa ninguna variable en específico

http://localhost/pandora_console/include/api.php?op=get&op2=list_all_user&return_type=json&apipass=1234&user=admin&pass=pandora

get info user name

Esta característica está en Metaconsola.

Lista la informacion de un usuario

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=info_user_name (obligatorio)
  • return_type=csv|json (obligatorio)
  • other=nombre de usuario(obligatorio)

Ejemplo

Obtenemos toda la información de un usuario específico Puede devolver Json o CSV, este retorno se indica mediante la URL Usamos unicamente el nombre del usuario para obtener dicha información:

http://localhost/pandora_console/include/api.php?op=get&op2=info_user_name&return_type=json&other=admin&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get user_profiles_info

Devuelve la lista de los perfiles de usuario de Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=user_profiles_info (obligatorio)
  • return_type=csv|json (obligatorio)

Ejemplo

Este ejemplo devolverá todos los perfiles de usuario del sistema en formato json.

http://localhost/pandora_console/include/api.php?op=get&op2=user_profiles_info&return_type=json&apipass=1234&user=admin&pass=pandora

get migrate_agent

= 7.21 ONLY METACONSOLE

Comprueba si existe en la cola de migración de agentes un agente determinado devolviendo los datos de tmigration_queue

  • op=get
  • op2=migrate_agent
  • id=id_agente a migrar
  • return_type = string, json, etc

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=migrate_agent&apipass=1234&user=admin&pass=pandora&id=2&return_type=json

get language

= 7.0NG 730

devuelve el idioma con el que está configurado Pandora FMS.

Sintaxis de la llamada:

  • op=get
  • op2=language

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=language

get session_timeout

= 7.0NG 730

devuelve el tiempo de sesión con el que está configurado Pandora FMS.

Sintaxis de la llamada:

  • op=get
  • op2=session_timeout

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=get&op2=session_timeout

get groups

devuelve los grupos existentes.

Sintaxis de la llamada:

  • op=get
  • op2=groups
  • other=<parámetros opcionales»
    • <csv_separator>: ';' por defecto.
    • <return_all_group>: devuelve grupo 'All'.
    • <return_all_columns>: devuelve todas las columnas.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=groups&other=;|1|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get filter user group

Esta característica está en Metaconsola.

Obtener grupos de usuario mediante filtrado.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=filter_user_group (obligatorio)
  • return_type=csv|json(obligatorio)
  • other=id group(obligatorio)|Habilitado o no(Disabled)(obligatorio)

Ejemplo

Puede devolver Json o CSV, este retorno se indica mediante la URL.

Puede tener una de las dos variables (id grupo o Habilitado) vacías, pero tiene que tener como mínimo una de ellas.

http://localhost/pandora_console/include/api.php?op=get&op2=filter_user_group&return_type=json&other=0|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get inventory_modules

Devuelve la lista de los módulos de inventario de Pandora FMS.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=inventory_modules (obligatorio)
  • return_type=csv|json (obligatorio)

Ejemplos

Este ejemplo devolverá información de todos los de inventario del sistema en formato json.

http://localhost/pandora_console/include/api.php?op=get&op2=inventory_modules&return_type=json&apipass=1234&user=admin&pass=pandora

get inventory_modules_by_name

Lista los módulos de inventario de un agente utilizando nombre de agente.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=inventory_modules_by_name (obligatorio)
  • id=<nombre de agente> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.phpop=get&op2=inventory_modules_by_name&id=name&return_type=csv&apipass=1234&user=admin&pass=pandora

get inventory_modules_by_alias

Lista los módulos de inventario de un agente utilizando alias de agente.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=inventory_modules_by_alias (obligatorio)
  • id=<alias de agente> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.phpop=get&op2=inventory_modules_by_alias&id=alias&return_type=csv&apipass=1234&user=admin&pass=pandora

get inventory_module_data

Obtiene los datos de un módulo de inventario utilizando nombre de agente y módulo.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=inventory_module_data (obligatorio)
  • id=<nombre de agente> (obligatorio)
  • id2=<nombre módulo de inventario> (opcional)
  • other=<parámetros serializados> (opcional), son los siguientes en este orden:
    • <separador>
    • <date_from» <year><month><day>T<hour»<minute>
    • <date_to» <year><month><day>T<hour»<minute>
    • <use_agent_alias> (opcional) acepta valores 0 y 1.

Ejemplos

http://127.0.0.1/pandora_console/include/api.phpop=get&op2=inventory_module_data&id=e14ae3b959b08a1fb7a057281401a08063cf04eb714efa5fbf1cf4043cfa1314&id2=Routes&other=,|20191010T13:40|20191211T13:40|0&return_type=csv&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

get list_collections

Devuelve la lista de todas las colecciones en Pandora FMS en formato JSON.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=list_collections (obligatorio)

Ejemplos

Este ejemplo devolverá información de todos las colecciones en formato json.

http://localhost/pandora_console/include/api.php?op=get&op2=list_collections&apipass=1234&user=admin&pass=pandora

get list_collection_files

Devuelve la lista de todos los ficheros de una colección. Si no se le pasa id de colección, devolverá todos los ficheros de todas las colecciones.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=list_collections_files (obligatorio)
  • id=id_collection

Ejemplos

Este ejemplo devolverá los nombres de todos los ficheros de una colección en formato json.

http://localhost/pandora_console/include/api.php?op=get&op2=list_collection_files&id=1&apipass=1234&user=admin&pass=pandora

get event_mcid

Obtiene los ID de los eventos de la metaconsola, utilizando el id del nodo y el id del evento del nodo.

Esta característica está en Metaconsola.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2=event_mcid (obligatorio)
  • id=<server_id> (obligatorio) debe ser un ID de uno de los nodos.
  • id2=<id_source_event> (obligatorio) debe de ser un ID de evento del nodo.

Ejemplo

http://172.16.0.3/pandora_console/include/api.php?op=get&op2=event_mcid&return_type=json&id=0&id2=0&apipass=1234&user=admin&pass=pandora

get is_centralized

Devuelve si un nodo está centralizado ( 1 ) o no ( 0 ). En caso de no existir el nodo devolverá una cadena de texto informando de ello. Puede utilizarse en Metaconsola o directamente en el nodo.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=is_centralized (obligatorio).
  • id=(obligatorio en la metaconsola, innecesario en el nodo).

Ejemplo nodo:

 http://localhost/pandora_console/include/api.php?op=get&op2=is_centralized&apipass=1234&user=admin&pass=pandora

Ejemplo Metaconsola:

http://localhost/pandora_console/include/api.php?op=get&op2=is_centralized&id=3&apipass=1234&user=admin&pass=pandora

SET

Envia los datos.

set new_agent

Crea un nuevo agente con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=new_agent (obligatorio).
  • id= (Metaconsola) Identificador numérico del nodo al cual pertenecerá el agente (obligatorio).
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <alias_agente>
    • <dir_ip>
    • <id_padre>
    • <id_grupo>
    • <protección_cascada>
    • <protección_cascada_módulo>
    • <intervalo_segundos>
    • <id_os>
    • <nombre_servidor>
    • <id_personalizado>
    • <modo_aprendizaje>
    • <deshabilitado>
    • <descripción>
    • <nombre_como_alias>

Ejemplos

Llamada de ejemplo para nodo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=new_agent&other=agent_api|1.1.1.1|0|4|0|0|300|10|pandorafms|8|10||description|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Llamada de ejemplo para Metaconsola (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=new_agent&id=1&other=agent_api|1.1.1.1|0|4|0|0|300|10|pandorafms|8|10||description|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
  • Nota: Si <nombre_como_alias> es un 1, el nombre del agente será igual al alias. Si es un 0, el nombre del agente se generará automáticamente.

set update_agent

Actualiza un agente con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= update_agent (obligatorio)
  • id=<id_agente> (obligatorio)
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <alias_agente>
    • <dir_ip>
    • <id_parent>
    • <id_group>
    • <cascade_protection>
    • <cascade_protection_module>
    • <interval_sec>
    • <id_os>
    • <name_server>
    • <custom_id>
    • <learning_mode>
    • <disabled>
    • <description>
    • <versión_os>

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=update_agent&id=5&other=agente_nombre|1.1.1.1|0|4|0|0|30|8|localhost.localdomain||0|0|description|Ubuntu&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_agent_field

Esta llamada actualiza el o los campos de uno o varios Agentes (esto último si utiliza alias y existen varios que coincidan con ello.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_agent_field (obligatorio)
  • id=<id_agente> o <alias> (obligatorio), dependiendo <alias> del parámetro id2.
  • id2= <0> si es <id_agente> (opcional), <1> si es <alias> (obligatorio).
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <alias_agente> (opcional)
    • <direccion> (opcional)
    • <id_parent> (opcional)
    • <id_grupo> (opcional)
    • <cascade_protection> (opcional)
    • <cascade_protection_module> (opcional)
    • <intervalo> (opcional)
    • <id_os> (opcional)
    • <server_name> (opcional)
    • <custom_id> (opcional)
    • <modo> (opcional)
    • <disabled> (opcional)
    • <comentarios> (opcional)

Ejemplos

En caso de utilizar el identificador del Agente:

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_agent_field&id=1&other=id_os,1|alias,pandora|direccion,192.168.10.16|id_parent,1cascade_protection,1|cascade_protection_module,1|intervalo,5||modo|3|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

En caso de utilizar alias, modifica todos los agentes que contengan ese alias:

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_agent_field&id=pandora&id2=1&other=id_os,1|alias,pandora|direccion,192.168.10.16|id_parent,1cascade_protection,1|cascade_protection_module,1|intervalo,5||modo|3|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_agent

Elimina un agente pasando el nombre como parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=delete_agent (obligatorio)
  • id=<nombre_agente> (obligatorio) debe ser un nombre agente.
  • other=<use_agent_alias> (opcional) acepta valores 0 y 1.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_agent&id=agente_erroneo&apipass=1234&user=admin&pass=pandora

set create_module_template

Crea una alerta a partir de la plantilla pasada como id, en un módulo elegido por id de módulo y id de agente que estarán en other.

Sintaxis de llamada:

  • op=set (obligatorio)
  • op2=create_module_template (obligatorio)
  • id=<id_template> (obligatorio) debe ser un id de template.
  • other=<id_modulo>|<id_agente>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_module_template&id=1&other=1|10&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set apply_module_template

Aplicar una plantilla de módulos a un agente..

Estas plantillas de módulos son una agrupación que contiene módulos de comprobación de red. Estas plantillas pueden ser aplicadas directamente a agentes, evitando tener que añadir módulos uno a uno.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=apply_module_template (obligatorio)
  • id=<id_template> (obligatorio) id de la plantilla que se aplicará sobre el agente.
  • id2=<id_agente> (obligatorio) id del agente en el que se crearán los módulos.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=apply_module_template&id=2&id2=2&apipass=1234&user=admin&pass=pandora

set create_network_module

Crea un módulo de red con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=create_network_module (obligatorio).
  • id= < nombre_agente > (obligatorio) debe ser un nombre agente.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del modulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < id_module_group >
  5. < min_warning >
  6. < max_warning >
  7. < str_warning >
  8. < min_critical >
  9. < max_critical >
  10. < str_critical >
  11. < ff_threshold >
  12. < history_data >
  13. < ip_target >
  14. < tcp_port >
  15. < snmp_community >
  16. < snmp_oid >
  17. < module_interval >
  18. < post_process >
  19. < min_value >
  20. < max_value >
  21. < custom_id >
  22. < description >
  23. < enable_unknown_events >
  24. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro>”: “<valor de macro>”.
  25. < each_ff >
  26. < ff_threshold_normal >
  27. < ff_threshold_warning >
  28. < ff_threshold_critical >
  29. < critical_inverse >
  30. < warning_inverse >
  31. < ff_type >
  32. < ignore_unknown > Acepta valores 0 y 1.
  33. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=create_network_module&id=example&other=test|0|7|1|10|15|0|16|18|0|15|0|127.0.0.1|0||0|180|0|0|0|0|latency%20ping&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set create_plugin_module

Crea un módulo de tipo plugin con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=create_plugin_module (obligatorio).
  • id= < nombre_agente > (obligatorio) debe ser un nombre agente.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < id_module_group >
  5. < min_warning >
  6. < max_warning >
  7. < str_warning >
  8. < min_critical >
  9. < max_critical >
  10. < str_critical >
  11. < ff_threshold >
  12. < history_data >
  13. < ip_target >
  14. < tcp_port >
  15. < snmp_community >
  16. < snmp_oid >
  17. < module_interval >
  18. < post_process >
  19. < min_value >
  20. < max_value >
  21. < custom_id >
  22. < description >
  23. < id_plugin >
  24. < plugin_user >
  25. < plugin_pass >
  26. < plugin_parameter >
  27. < enable_unknown_events >
  28. < macros > Los valores deben estar en formato JSON codificado en base 64.
  29. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro>”: “<valor de macro>” (véase ejemplo al final de esta sección).
  30. < each_ff >
  31. < ff_threshold_normal >
  32. < ff_threshold_warning >
  33. < ff_threshold_critical >
  34. < critical_inverse >
  35. < warning_inverse >
  36. < ff_type >
  37. < use_agent_alias > Acepta valores 0 y 1.
  38. < ignore_unknown > Acepta valores 0 y 1.
  39. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

Ejemplo sin macro alguno:

/include/api.php?op=set&op2=create_plugin_module&id=example&other=prueba|0|1|2|0|0||0|0||0|0|127.0.0.1|0||0|300|0|0|0|0|plugin%20module%20from%20api|4|2|admin|pass|-p%20max&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

El contenido del documento JSON debe ser un objeto compuesto de varios objetos con las siguientes propiedades:

  • macro: Nombre del macro. Deben ser _field1_, _field2_, …, _fieldN_.
  • desc: Nombre descriptivo del macro.
  • help: Descripción del macro.
  • value: Valor del macro.
  • hide: Poner a 1 para ocultar el valor del macro (útil para almacenar contraseñas).

Ejemplo de formato de macro JSON:

{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1",
   "hide": ""
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80",
   "hide": ""
 }
}

set create_data_module

Crea un módulo con los parámetros pasados.

Con esta llamada se puede añadir datos al módulo en la base de datos, pero no se puede modificar el fichero de configuración de los agentes asociados al módulo.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=create_data_module (obligatorio).
  • id=< nombre_agente > (obligatorio) debe ser un nombre agente.
  • other=< parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < description >
  5. < id_module_group >
  6. < min_value >
  7. < max_value >
  8. < post_process >
  9. < module_interval >
  10. < min_warning >
  11. < max_warning >
  12. < str_warning >
  13. < min_critical >
  14. < max_critical >
  15. < str_critical >
  16. < history_data >
  17. < enable_unknown_events >
  18. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “< nombre de macro >”: “< valor de macro >”.
  19. < ff_threshold >
  20. < each_ff >
  21. < ff_threshold_normal >
  22. < ff_threshold_warning >
  23. < ff_threshold_critical >
  24. < ff_timeout >
  25. < critical_inverse >
  26. < warning_inverse >
  27. < ff_type >
  28. < ignore_unknown > Acepta valores 0 y 1.
  29. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada), se debe tener creado previamente un agente con el nombre test:

/include/api.php?op=set&op2=create_data_module&id=test&other=test%202|0|1|data%20module%20from%20api|1|10|20|10.50|180|10|15||16|20||0|0|0|0|0|0|0|0|0|0|0|1|1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set create_snmp_module

Crea un módulo SNMP.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=create_snmp_module (obligatorio)
  • id= < nombre_agente > (obligatorio) debe ser un nombre agente.
  • other= < parámetros serializados > (obligatorio) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < id_module_group >
  5. < min_warning >
  6. < max_warning >
  7. < str_warning >
  8. < min_critical >
  9. < max_critical >
  10. < str_critical >
  11. < ff_threshold >
  12. < history_data >
  13. < ip_target >
  14. < module_port >
  15. < snmp_version >
  16. < snmp_community >
  17. < snmp_oid >
  18. < module_interval >
  19. < post_process >
  20. < min_value >
  21. < max_value >
  22. < custom_id >
  23. < description >
  24. < snmp3_priv_method [AES|DES] >
  25. < snmp3_priv_pass >
  26. < snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv] >
  27. < snmp3_auth_method [MD5|SHA] >
  28. < snmp3_auth_user >
  29. < snmp3_auth_pass >
  30. < enable_unknown_events >
  31. < each_ff >
  32. < ff_threshold_normal >
  33. < ff_threshold_warning >
  34. < ff_threshold_critical >
  35. < ff_type >
  36. < ignore_unknown > Acepta valores 0 y 1.
  37. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

Ejemplo 1 (snmp v: 3, snmp3_priv_method: AES, snmp3_priv_pass: example_priv_passw, snmp3_sec_level: authNoPriv, snmp3_auth_method:MD5, snmp3_auth_user: pepito_user, snmp3_auth_pass: example_priv_passw):

/include/api.php?op=set&op2=create_snmp_module&id=example&other=prueba|0|15|1|10|15||16|18||15|0|127.0.0.1|60|3|public|.1.3.6.1.2.1.1.1.0|180|0|0|0|0|SNMP%20module%20from%20API|AES|example_priv_passw|authNoPriv|MD5|pepito_user|example_auth_passw&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo 2 (snmp v: 1):

/include/api.php?op=set&op2=create_snmp_module&id=example&other=prueba2|0|15|1|10|15||16|18||15|0|127.0.0.1|60|1|public|.1.3.6.1.2.1.1.1.0|180|0|0|0|0|SNMP&20module&20from&20API&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_network_module

Actualiza la configuración de un módulo de red.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=update_network_module (obligatorio).
  • id=< id_modulo > (obligatorio) debe ser el ID numérico del módulo (tagente_modulo).
  • other=< parámetros serializados > (obligatorios) son la configuración y datos del modulo, serializados en el siguiente orden:
  1. < id_agent >
  2. < disabled >
  3. < id_module_group >
  4. < min_warning >
  5. < max_warning >
  6. < str_warning >
  7. < min_critical >
  8. < max_critical >
  9. < str_critical >
  10. < min_ff_even >
  11. < ff_threshold >
  12. < history_data >
  13. < ip_target >
  14. < tcp_port >
  15. < snmp_community >
  16. < snmp_oid >
  17. < module_interval >
  18. < post_process >
  19. < min_value >
  20. < max_value >
  21. < custom_id >
  22. < description >
  23. < disabled_types_event >
  24. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro >”: “<valor de macro >”.
  25. < each_ff >
  26. < ff_threshold_normal >
  27. < ff_threshold_warning >
  28. < ff_threshold_critical >
  29. < critical_inverse >
  30. < warning_inverse >
  31. < ff_type >
  32. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=update_network_module&id=132&other=|0|6|2|10|15||16|18||7|0|127.0.0.1|0||0|300|30.00|0|0|0|latency%20ping%20modified%20by%20the%20Api|||||||||||2020&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_plugin_module

Actualiza la configuración de un módulo plugin.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=update_plugin_module (obligatorio).
  • id=< nombre_modulo > (obligatorio) debe ser el identificador numérico del módulo a actualizar (tagente_modulo).
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < id_agent >
  2. < disabled >
  3. < id_module_group >
  4. < min_warning >
  5. < max_warning >
  6. < str_warning >
  7. < min_critical >
  8. < max_critical >
  9. < str_critical >
  10. < ff_threshold >
  11. < history_data >
  12. < ip_target >
  13. < tcp_port >
  14. < snmp_community >
  15. < snmp_oid >
  16. < module_interval >
  17. < post_process >
  18. < min_value >
  19. < max_value >
  20. < custom_id >
  21. < description >
  22. < id_plugin >
  23. < plugin_user >
  24. < plugin_pass >
  25. < plugin_parameter >
  26. < disabled_types_event >
  27. < macros > Los valores deben estar en formato JSON codificado en base 64.
  28. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro>”: “<valor de macro>”. Véase ejemplo al final de esta sección.
  29. < each_ff >
  30. < ff_threshold_normal >
  31. < ff_threshold_warning >
  32. < ff_threshold_critical >
  33. < critical_inverse>
  34. < warning_inverse>
  35. < policy_linked >
  36. < ff_type >
  37. < ignore_unknown > Acepta valores 0 y 1.
  38. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=update_plugin_module&id=2343&other=44|0|2|0|0||0|0||0|0|127.0.0.1|0||0|300|0|0|0|0|pluginmodule%20from%20api|2|admin|pass|-p%20max&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

El contenido del documento JSON debe ser un objeto compuesto de varios objetos con las siguientes propiedades:

  • “macro”: Nombre del macro. Deben ser _field1_, _field2_, …, _fieldN_.
  • “desc”: Nombre descriptivo del macro.
  • “help”: Descripción del macro.
  • “value”: Valor del macro.

Ejemplo de formato de macro JSON:

{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1"
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80"
 }
}

Otro ejemplo con escalado de estados:

/include/api.php?op=set&op2=update_plugin_module&id=135&other=|0|2|0|0||0|0||0|0|127.0.0.1|0||0|300|0|0|0|0|plugin%20module%20from%20api|2|admin|pass|-p%20max|||||||||||||2020&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora"

set update_data_module

Con esta llamada se puede añadir datos al módulo en la base de datos, pero no se puede modificar el fichero de configuración de los agentes asociados al módulo.

Actualiza un módulo local.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=update_data_module (obligatorio).
  • id=< id_módulo_agente > (obligatorio) el identificador numérico del módulo a actualizar.
  • other=< parámetros serializados > (obligatorio) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < id_agente >
  2. < deshabilitado > utilice 1 para deshabilitar, 0 sin cambios.
  3. < descripción >
  4. < id_modulo_grupo > véase get_module_groups.
  5. < valor_mín >
  6. < valor_máx >
  7. < post_proceso > ( Versión Enterprisesolamente para Agentes Software con configuración remota habilitada).
  8. < advertencia_valor_mín >
  9. < advertencia_valor_máx >
  10. < advertencia_valor_cadena >
  11. < crítico_valor_mín >
  12. < crítico_valor_máx >
  13. < crítico_valor_cadena >
  14. < historial_datos > Si está a 0 no se guardan datos del Módulo en la tabla tagente_datos, únicamente se actualiza la tabla tagente_estado.
  15. < deshabilitar_tipos_de_eventos > En formato JSON, por ejemplo: {“going_unknown”:1} .
  16. < macros_de_módulo > En formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro>”: “<valor de macro>”.
  17. < mín_flipflop_eventos > Número de veces que tiene que darse una condición de cambio de estado antes de que dicho cambio tenga lugar (flipflop ).
  18. < cada_flipflop>
  19. < mín_flipflop_evento_normal >
  20. < mín_flipflop_evento_advertencia >
  21. < mín_flipflop_evento_crítico >
  22. < tiempo_de _espera_flipflop >
  23. < tomar_valor_inverso_crítico >
  24. < tomar_valor_inverso_advertencia >
  25. < enlazado_política >
  26. < tipo_flipflop >
  27. < ignore_unknown > Acepta valores 0 y 1.

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=update_data_module&id=123&other=44|0|data module modified from API|6|0|0|50.00|300|10|15||16|18||0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_data_module_policy

Actualiza el módulo de datos de una política y devuelve el identificador del nuevo módulo.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=update_data_module_policy (obligatorio).
  • id=< id_policy > (obligatorio) El identificador numérico de la política a modificar.
  • other=< parámetros serializados > (obligatorio) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < id_policy_module > : Identificador numérico del módulo de la política.
  2. < description > : Descripción.
  3. < id_module_group > : Identificador del grupo del módulo.
  4. < min > : Mínimo valor.
  5. < max > : Máximo valor.
  6. < post_process > : Post procesado.
  7. < module_interval > : Intervalo del módulo.
  8. < min_warning > : Valor mínimo de advertencia.
  9. < max_warning > : Valor máximo de advertencia.
  10. < min_critical > : Valor mínimo de criticidad.
  11. < max_critical > : Valor máximo de criticidad.
  12. < str_critical > : Cadena de caracteres de criticidad.
  13. < history_data > : Datos históricos.
  14. < configuration_data > : Datos de configuración.
  15. < disabled_types_event > : Tipos de evento deshabilitados.
  16. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser: < macro name > : < macro value > .
  17. < ignore_unknown > (Acepta valores 0 y 1).

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=update_data_module_policy&id=1&other=10|data%20module%20updated%20by%20Api|2|0|0|50.00|10|20|180||21|35||1|module_begin
module_name pandora_process
module_type generic_data
module_exec ps aux | grep pandora | wc -l
module_end&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_snmp_module

Actualiza un módulo SNMP.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=update_snmp_module (obligatorio).
  • id= < id_module > (obligatorio) debe ser un identificador numérico de módulo.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < id_agent >
  2. < disabled >
  3. < id_module_group >
  4. < min_warning >
  5. < max_warning >
  6. < str_warning >
  7. < min_critical >
  8. < max_critical >
  9. < str_critical >
  10. < ff_threshold >
  11. < history_data >
  12. < ip_target >
  13. < module_port >
  14. < snmp_version >
  15. < snmp_community >
  16. < snmp_oid >
  17. < module_interval >
  18. < post_process >
  19. < min_value >
  20. < max_value >
  21. < custom_id >
  22. < description >
  23. < snmp3_priv_method [AES|DES] >
  24. < snmp3_priv_pass >
  25. < snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv] >
  26. < snmp3_auth_method [MD5|SHA] >
  27. < snmp3_auth_user >
  28. < snmp3_auth_pass >
  29. < disabled_types_event >
  30. < each_ff >
  31. < ff_threshold_normal >
  32. < ff_threshold_warning >
  33. < ff_threshold_critical>
  34. < policy_linked >
  35. < ff_type >
  36. < ignore_unknown > Acepta valores 0 y 1.
  37. < number_of_intervals_in_warning > Permite el escalado de estados especificando el máximo número de intervalos seguidos en los cuales el módulo permanece en estado de advertencia. Al superar este valor el módulo escalará a estado crítico.

Ejemplo (vea sintaxis de la llamada):

(SNMP v: 3, snmp3_priv_method: AES, snmp3_priv_pass: example_priv_passw, snmp3_sec_level: authNoPriv, snmp3_auth_method:MD5, snmp3_auth_user: pepito_user, snmp3_auth_pass: example_priv_passw):

/include/api.php?op=set&op2=update_snmp_module&id=33432&other=44|0|6|20|25||26|30||15|1|127.0.0.1|60|3|public|.1.3.6.1.2.1.1.1.0|180|50.00|10|60|0|SNMP%20module&20modified%20by%20API|AES|example_priv_passw|authNoPriv|MD5|example_user|example_auth_passw&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Otro ejemplo con escalado de estados y SNMP v1:

/include/api.php?op=set&op2=update_snmp_module&id=137&other=|0|6|20|25||26|30||15|1|127.0.0.1|60|1|public|.1.3.6.1.2.1.1.1.0|180|50.00|10|60|||||||||||2020&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora"

Otro ejemplo con escalado de estados y SNMP v3:

/include/api.php?op=set&op2=update_snmp_module&id=138&other=|0|6|20|25||26|30||15|1|127.0.0.1|60|3|public|.1.3.6.1.2.1.1.1.0|180|50.00|10|60|0|SNMP%20module%20modified%20by%20API|AES|example_priv_passw|authNoPriv|MD5|example_user|example_auth_passw|||||||||2020&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora"

set apply_policy

Aplica la política, pasada por id, en uno o varios agentes.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= apply_policy (obligatorio)
  • id=<id_policy> (obligatorio)
  • id2=<id_agent> (opcional) Id o nombre del agente según se indique en el parámetro other. Si viene vacío se aplicará la política a todos los agentes de esta.
  • other=<parámetros serializados>
    • <name_agent (Entero)> Indica si se enviará el agente por Id (0), por nombre (1) o por alias (2).
    • <id_servidor> (obligatorio en caso de usar Metaconsola) Id del servidor sobre el que se aplicará la política.

Ejemplos

http://192.168.70.102/pandora_console/include/api.php?op=set&op2=apply_policy&id=22&id2=3e&other=0|1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set apply_all_policies

Aplica todas las políticas que contiene Pandora.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= apply_all_policies (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=apply_all_policies&apipass=1234&user=admin&pass=pandora

set add_network_module_policy

Añade un módulo de red en la política pasada por identificador en el parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=add_network_module_policy (obligatorio).
  • id=< id_política > (obligatorio) debe ser un identificador de política.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < id_module_type >
  3. < description >
  4. < id_module_group >
  5. < min_value >
  6. < max_value >
  7. < post_process >
  8. < module_interval >
  9. < min_warning >
  10. < max_warning >
  11. < str_warning >
  12. < min_critical >
  13. < max_critical >
  14. < str_critical >
  15. < history_data >
  16. < ff_threshold >
  17. < disabled >
  18. < module_port >
  19. < snmp_community >
  20. < snmp_oid >
  21. < custom_id >
  22. < enable_unknown_events >
  23. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro >”: “<valor de macro >”.
  24. < each_ff >
  25. < ff_threshold_normal >
  26. < ff_threshold_warning >
  27. < ff_threshold_critical >
  28. < ff_type >
  29. < ignore_unknown > Acepta valores 0 y 1.

Ejemplo (véase sintaxis de la llamada):

/include/api.php?op=set&op2=add_network_module_policy&id=1&other=network_module_policy_example_name|6|network%20module%20created%20by%20Api|2|0|0|50.00|180|10|20||21|35||1|15|0|66|||0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_plugin_module_policy

Añade un módulo de plugin en la política pasada por identificador en el parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=add_plugin_module_policy (obligatorio).
  • id= < id_politica > (obligatorio) debe ser un identificador de política.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < id_module_group >
  5. < min_warning >
  6. < max_warning >
  7. < str_warning >
  8. < min_critical >
  9. < max_critical >
  10. < str_critical >
  11. < ff_threshold >
  12. < history_data >
  13. < module_port >
  14. < snmp_community >
  15. < snmp_oid >
  16. < module_interval >
  17. < post_process >
  18. < min_value >
  19. < max_value >
  20. < custom_id >
  21. < description >
  22. < id_plugin >
  23. < plugin_user >
  24. < plugin_pass >
  25. < plugin_parameter >
  26. < enable_unknown_events >
  27. < macros > Los valores deben estar en formato JSON codificado en base 64. Véase ejemplo al final de esta sección.
  28. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro >”: “<valor de macro >”.
  29. < each_ff >
  30. < ff_threshold_normal >
  31. < ff_threshold_warning >
  32. < ff_threshold_critical >
  33. < ff_type >
  34. < ignore_unknown > Acepta valores 0 y 1.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=add_plugin_module_policy&id=1&other=example plugin module name|0|1|2|0|0||0|0||15|0|66|||300|50.00|0|0|0|plugin module from api|2|admin|pass|-p max&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

El contenido del documento JSON debe ser un objeto compuesto de varios objetos con las siguientes propiedades:

  • “macro”: Nombre del macro. Deben ser _field1_, _field2_, …, _fieldN_.
  • “desc”: Nombre descriptivo del macro.
  • “help”: Descripción del macro.
  • “value”: Valor del macro.

Ejemplo de macro:

{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1"
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80"
 }
}

set add_data_module_policy

Añade un módulo local en la política pasada por id en el parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= add_data_module_policy (obligatorio)
  • id=<id_política> (obligatorio) debe ser un Id de política.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del módulo, serializados en el siguiente orden:
    • <name_module>
    • <id_module_type>
    • <description>
    • <id_module_group>
    • <min_value>
    • <max_value>
    • <post_process>
    • <module_interval>
    • <min_warning>
    • <max_warning>
    • <str_warning>
    • <min_critical>
    • <max_critical>
    • <str_critical>
    • <history_data>
    • <configuration_data> Este es el bloque de definición del módulo que será insertado en el fichero de configuración del agente.
    • <enable_unknown_events> (solo versión 5)
    • <module_macros> (solo versión 5) Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro>”: “<valor de macro>”.
    • <ff_threshold> (solo versión 5.1)
    • <each_ff> (solo versión 5.1)
    • <ff_threshold_normal> (solo versión 5.1)
    • <ff_threshold_warning> (solo versión 5.1)
    • <ff_threshold_critical> (solo versión 5.1)
    • <ff_timeout> (solo versión 5.1)
    • <ff_type> (solo versión 734)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_data_module_policy&id=1&other=data_module_policy_example_name~2~data module created by Api~2~0~0~50.00~10~20~180~~21~35~~1~module_begin
module_name pandora_process
module_type generic_data
module_exec ps aux | grep pandora | wc -l
module_end&other_mode=url_encode_separator_~&apipass=1234&user=admin&pass=pandora

set update_plugin_module_policy

Actualiza un módulo de plugin en la política pasada por identificador en el parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=update_plugin_module_policy (obligatorio).
  • id= < id_politica > (obligatorio) debe ser un identificador de política.
  • other= < parámetros serializados > (obligatorios) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < id_policy_module >
  2. < disabled >
  3. < id_module_group >
  4. < min_warning >
  5. < max_warning >
  6. < str_warning >
  7. < min_critical >
  8. < max_critical >
  9. < str_critical >
  10. < ff_threshold >
  11. < history_data >
  12. < module_port >
  13. < snmp_community >
  14. < snmp_oid >
  15. < module_interval >
  16. < post_process >
  17. < min_value >
  18. < max_value >
  19. < custom_id >
  20. < description >
  21. < id_plugin >
  22. < plugin_user >
  23. < plugin_pass >
  24. < plugin_parameter >
  25. < disabled_types_event >
  26. < macros > Los valores deben estar en formato JSON codificado en base 64. Véase ejemplo al final de esta sección.
  27. < module_macros > Los valores deben estar en formato JSON codificado en base 64. El formato de los datos del documento JSON debe ser “<nombre de macro >”: “<valor de macro >”.
  28. < ignore_unknown > Acepta valores 0 y 1.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=update_plugin_module_policy&id=1&other=23|0|1|0|0||0|0||15|0|166|||180|150.00|0|0|0|plugin%20module%20updated%20from%20api|2|example_user|pass|-p%20min&other_mode=url_encode_separator_|

El contenido del documento JSON debe ser un objeto compuesto de varios objetos con las siguientes propiedades:

  • “macro”: Nombre del macro. Deben ser _field1_, _field2_, …, _fieldN_.
  • “desc”: Nombre descriptivo del macro.
  • “help”: Descripción del macro.
  • “value”: Valor del macro.

set add_snmp_module_policy

Añade un módulo SNMP en la política pasada por el identificado en el parámetro.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=add_snmp_module_policy (obligatorio).
  • id= < id_política > (obligatorio) debe ser un identificador de política.
  • other= < parámetros serializados > (obligatorio) son la configuración y datos del módulo, serializados en el siguiente orden:
  1. < name_module >
  2. < disabled >
  3. < id_module_type >
  4. < id_module_group >
  5. < min_warning >
  6. < max_warning >
  7. < str_warning >
  8. < min_critical >
  9. < max_critical >
  10. < str_critical >
  11. < ff_threshold >
  12. < history_data >
  13. < module_port >
  14. < snmp_version >
  15. < snmp_community >
  16. < snmp_oid >
  17. < module_interval >
  18. < post_process >
  19. < min_value >
  20. < max_value >
  21. < custom_id >
  22. < description >
  23. < snmp3_priv_method [AES|DES] >
  24. < snmp3_priv_pass >
  25. < snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv] >
  26. < snmp3_auth_method [MD5|SHA] >
  27. < snmp3_auth_user >
  28. < snmp3_auth_pass >
  29. < enable_unknown_events >
  30. < each_ff >
  31. < ff_threshold_normal >
  32. < ff_threshold_warning >
  33. < ff_threshold_critical >
  34. < ff_type >
  35. < ignore_unknown > Acepta valores 0 y 1.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=add_snmp_module_policy&id=1&other=example%20SNMP%20module%20name|0|15|2|0|0||0|0||15|1|66|3|public|.1.3.6.1.2.1.1.1.0|180|50.00|10|60|0|SNMP module modified by API|AES|example_priv_passw|authNoPriv|MD5|example_user|example_auth_passw&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_agent_policy_by_id

Añade un agente en una política utilizando el ID de agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=add_agent_policy_by_id (obligatorio)
  • id=<id_política> (obligatorio) debe ser un Id de política.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <id_agent>
    • <id_node> (obligatorio en caso de usar Metaconsola) ID del nodo al que pertenece el agente que deseamos añadir a la política.

Ejemplos

  • Nodo:
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_agent_policy_by_id&id=2&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
  • Metaconsola:
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_agent_policy_by_id&id=2&other=1|1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_agent_policy_by_name

Añade un agente en una política utilizando el nombre de agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=add_agent_policy_by_name (obligatorio)
  • id=<id_política> (obligatorio) debe ser un Id de política.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <agent_name>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_agent_policy_by_name&id=4&other=e76774025b24057cc71df514f27027c43484c3af766ed40f259a86a4fd568f9d&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set remove_agent_from_policy_by_id

Elimina un agente de una política utilizando el ID de agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=remove_agent_from_policy_by_id (obligatorio)
  • id=<id_política> (obligatorio) debe ser un Id de política.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <id_agent>
    • <id_node> (obligatorio en caso de usar Metaconsola) ID del nodo al que pertenece el agente que deseamos eliminar de la política.

Ejemplos

  • Nodo:
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=remove_agent_from_policy_by_id&id=2&other=2&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
  • Metaconsola:
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=remove_agent_from_policy_by_id&id=4&other=1|1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set remove_agent_from_policy_by_name

Elimina un agente de una política utilizando el nombre de agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=remove_agent_from_policy_by_name (obligatorio)
  • id=<id_política> (obligatorio) debe ser un Id de política.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del agente, serializados en el siguiente orden:
    • <agent_name>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=remove_agent_from_policy_by_name&id=4&other=e76774025b24057cc71df514f27027c43484c3af766ed40f259a86a4fd568f9d&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_network_component

Crea un nuevo componente de red.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_network_component (obligatorio)
  • id=<network_component_name> (obligatorio) debe ser el nombre del componente de red.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del componente de red, serializados en el siguiente orden:
    • <network_component_type>
    • <description>
    • <module_interval>
    • <max_value>
    • <min_value>
    • <snmp_community>
    • <id_module_group>
    • <max_timeout>
    • <history_data>
    • <min_warning>
    • <max_warning>
    • <str_warning>
    • <min_critical>
    • <max_critical>
    • <str_critical>
    • <ff_threshold>
    • <post_process>
    • <network_component_group>
    • <enable_unknown_events> (solo versión 5)
    • <each_ff> (solo versión 5.1)
    • <ff_threshold_normal> (solo versión 5.1)
    • <ff_threshold_warning> (solo versión 5.1)
    • <ff_threshold_critical> (solo versión 5.1)
    • <ff_type> (solo versión 734)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_network_component&id=example_network_component_name&other=7|network component created by Api|300|30|10|public|3||1|10|20|str|21|30|str1|10|50.00|12&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_plugin_component

Crea un nuevo componente de plugin.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_plugin_component (obligatorio)
  • id=<plugin_component_name> (obligatorio) debe ser el nombre del componente de tipo plugin.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del componente de tipo plugin, serializados en el siguiente orden:
    • <plugin_component_type>
    • <description>
    • <module_interval>
    • <max_value>
    • <min_value>
    • <module_port>
    • <id_module_group>
    • <id_plugin>
    • <max_timeout>
    • <history_data>
    • <min_warning>
    • <max_warning>
    • <str_warning>
    • <min_critical>
    • <max_critical>
    • <str_critical>
    • <ff_threshold>
    • <post_process>
    • <plugin_component_group>
    • <enable_unknown_events> (solo versión 5)
    • <each_ff> (solo versión 5.1)
    • <ff_threshold_normal> (solo versión 5.1)
    • <ff_threshold_warning> (solo versión 5.1)
    • <ff_threshold_critical> (solo versión 5.1)
    • <ff_type> (solo versión 734)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_plugin_component&id=example_plugin_component_name&other=2|plugin component created by Api|300|30|10|66|3|2|example_user|example_pass|-p max||1|10|20|str|21|30|str1|10|50.00|12&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_snmp_component

Crea un nuevo componente de SNMP.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_snmp_component (obligatorio)
  • id=<snmp_component_name> (obligatorio) debe ser el nombre del componente de tipo snmp.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del componente de tipo snmp, serializados en el siguiente orden:
    • <snmp_component_type>
    • <description>
    • <module_interval>
    • <max_value>
    • <min_value>
    • <id_module_group>
    • <max_timeout>
    • <history_data>
    • <min_warning>
    • <max_warning>
    • <str_warning>
    • <min_critical>
    • <max_critical>
    • <str_critical>
    • <ff_threshold>
    • <post_process>
    • <snmp_version>
    • <snmp_oid>
    • <snmp_community>
    • <snmp3_auth_user>
    • <snmp3_auth_pass>
    • <module_port>
    • <snmp3_privacy_method>
    • <snmp3_privacy_pass>
    • <snmp3_auth_method>
    • <snmp3_security_level>
    • <snmp_component_group>
    • <enable_unknown_events> (solo versión 5)
    • <each_ff> (solo versión 5.1)
    • <ff_threshold_normal> (solo versión 5.1)
    • <ff_threshold_warning> (solo versión 5.1)
    • <ff_threshold_critical> (solo versión 5.1)
    • <ff_type> (solo versión 734)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_snmp_component&id=example_snmp_component_name&other=16|SNMP component created by Api|300|30|10|3||1|10|20|str|21|30|str1|15|50.00|3|.1.3.6.1.2.1.2.2.1.8.2|public|example_auth_user|example_auth_pass|66|AES|example_priv_pass|MD5|authNoPriv|12&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_local_component

Crea un nuevo componente local.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_local_component (obligatorio)
  • id=<local_component_name> (obligatorio) debe ser el nombre del componente de tipo local.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del componente de tipo local, serializados en el siguiente orden:
    • <description>
    • <id_os>
    • <local_component_group>
    • <configuration_data> Este es el bloque de configuración de un módulo.
    • <enable_unknown_events> (solo versión 5)
    • <ff_threshold> (solo versión 5.1)
    • <each_ff> (solo versión 5.1)
    • <ff_threshold_normal> (solo versión 5.1)
    • <ff_threshold_warning> (solo versión 5.1)
    • <ff_threshold_critical> (solo versión 5.1)
    • <ff_timeout> (solo versión 5.1)
    • <ff_type> (solo versión 734)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_local_component&id=example_local_component_name&other=local component created by Api~5~12~module_begin
module_name example_local_component_name
module_type generic_data
module_exec ps | grep pid | wc -l
module_interval 2
module_end&other_mode=url_encode_separator_~&apipass=1234&user=admin&pass=pandora

set create_alert_template

Crea una plantilla de alerta.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_alert_template (obligatorio)
  • id=<template_name> (obligatorio) el nombre de la plantilla.
  • other=<serialized parameters> (obligatorio) las configuraciones y datos de la plantilla, serializados en el siguiente orden:
    • <type [regex|max_min|max|min|equal|not_equal|warning|critical|onchange|unknown|always|not_normal]>
    • <description>
    • <id_alert_action>
    • <field1>
    • <field2>
    • <field3>
    • <value>
    • <matches_value>
    • <max_value>
    • <min_value>
    • <time_threshold>
    • <max_alerts>
    • <min_alerts>
    • <time_from>
    • <time_to>
    • <monday>
    • <tuesday>
    • <wednesday>
    • <thursday>
    • <friday>
    • <saturday>
    • <sunday>
    • <recovery_notify>
    • <field2_recovery>
    • <field3_recovery>
    • <priority>
    • <id_group>
    • <special_day>
    • <min_alerts_reset_counter>
    • <field1_recovery>
    • <field4>
    • <field5>
    • <field6>
    • <field7>
    • <field8>
    • <field9>
    • <field10>
    • <field11>
    • <field12>
    • <field13>
    • <field14>
    • <field15>
    • <field4_recovery>
    • <field5_recovery>
    • <field6_recovery>
    • <field7_recovery>
    • <field8_recovery>
    • <field9_recovery>
    • <field10_recovery>
    • <field11_recovery>
    • <field12_recovery>
    • <field13_recovery>
    • <field14_recovery>
    • <field15_recovery>

Ejemplos

Ejemplo 1 (condition: regexp =~ /pp/, action: Mail to XXX, max_alert: 10, min_alert: 0, priority: WARNING, group: databases):

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_alert_template&id=example&other=regex|template based in regexp|1||||pp|1||||10|0|||||||||||||3|8&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo 2 (condition: value is not between 5 and 10, max_value: 10.00, min_value: 5.00, time_from: 00:00:00, time_to: 15:00:00, priority: CRITICAL, group: Servers):

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_alert_template&id=template_min_max&other=max_min|template based in range|1||||||10|5||||00:00:00|15:00:00|||||||||||4|2&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_alert_template

Actualiza una plantilla de alerta.

Sintaxis de llamada:

  • op=set (obligatorio)
  • op2=update_alert_template (obligatorio)
  • id=<id_template> (obligatorio) debe ser un id de template.
  • other=<serializar parámetros> (oligatorio) son los datos de configuration del template, serializados en este orden:
    • <template_name>
    • <type [regex|max_min|max|min|equal|not_equal|warning|critical|onchange|unknown|always]>
    • <description>
    • <id_alert_action>
    • <field1>
    • <field2>
    • <field3>
    • <value>
    • <matches_value>
    • <max_value>
    • <min_value>
    • <time_threshold>
    • <max_alerts>
    • <min_alerts>
    • <time_from>
    • <time_to>
    • <monday>
    • <tuesday>
    • <wednesday>
    • <thursday>
    • <friday>
    • <saturday>
    • <sunday>
    • <recovery_notify>
    • <field2_recovery>
    • <field3_recovery>
    • <priority>
    • <id_group>
    • <special_day>
    • <min_alerts_reset_counter>
    • <field1_recovery>
    • <field4>
    • <field5>
    • <field6>
    • <field7>
    • <field8>
    • <field9>
    • <field10>
    • <field11>
    • <field12>
    • <field13>
    • <field14>
    • <field15>
    • <field4_recovery>
    • <field5_recovery>
    • <field6_recovery>
    • <field7_recovery>
    • <field8_recovery>
    • <field9_recovery>
    • <field10_recovery>
    • <field11_recovery>
    • <field12_recovery>
    • <field13_recovery>
    • <field14_recovery>
    • <field15_recovery>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_alert_template&id=18&other=example_template_with_changed_name|onchange|changing from min_max to onchange||||||1||||5|1|||1|1|0|1|1|0|0|1|field recovery example 2|field recovery example 3|1|8&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_alert_template

Borra una plantilla de alerta y todas las alertas definidas por ella.

Sintaxis de llamada:

  • op=set (oligatorio)
  • op2=delete_alert_template (obligatorio)
  • id=<id_template> (obligatorio) debe ser un id de template.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_alert_template&id=38&apipass=1234&user=admin&pass=pandora

set delete_module_template

Borra una plantilla de módulos.

Sintaxis de llamada:

  • op=set (obligatorio)
  • op2=delete_module_template (obligatorio)
  • id=<id_alert_template_module> (obligatorio) debe ser un id de alert_template_module.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_module_template&id=38&apipass=1234&user=admin&pass=pandora

set delete_module_template_by_names

Borra una plantilla de módulos.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_alert_template (obligatorio)
  • id=<nombre del agente> (obligatorio)
  • id2=<nombre de la plantilla de alerta> (obligatorio)
  • other=<parametros serializados> (obligatorio), son los siguientes en este orden:
    • <nombre modulo> (obligatorio)
    • <use_agent_alias> (Acepta valores 0 y 1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_module_template_by_names&id=sample-agent&id2=test&other=memfree&apipass=1234&user=admin&pass=pandora&other_mode=url_encode_separator_|

set stop_downtime

Para una parada planificada.

Sintaxis de llamada:

  • op=set (obligatorio)
  • op2=stop_downtime (obligatorio)
  • id=<id_downtime> (obligatorio) debe ser un id downtime.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=stop_downtime&id=1&apipass=1234&user=admin&pass=pandora

set new_user

Crea un nuevo usuario en Pandora FMS.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=new_user (obligatorio).
  • id=< identificador_usuario > (obligatorio).
  • other=< parámetros_serializados > ( todos y cada uno son obligatorios) son los datos del usuario, serializados en el siguiente orden:
    1. < nombre_completo > (utilice para insertar espacios)
    2. < primer_nombre >
    3. < primer_apellido >
    4. < segundo_nombre >
    5. < correo_electrónico >
    6. < número_de_teléfono >
    7. < idioma >
    8. < comentarios >
    9. < tiempo_refrescamiento_pantalla >
    10. < filtro_eventos_predilecto >
    11. < sección_consola_predilecta >

Si usted carece de alguno de los trece campos anteriores simplemente escriba el separador (vea sintaxis de la llamada) pero en todo caso siempre debe colocar 13 separadores.

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=new_user&id=id_nu&other=John J. Doe|John|Doe|Jay|1234|johndoe@example.com|5555555|en||30|||-1|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_user

Actualiza un usuario seleccionado por el id en parámetro id.

Sintaxis de llamada:

  • op=set (obligatorio)
  • op2=update_user (obligatorio)
  • id=<user_name> (oligatorio) debe ser un nombre de usuario.
  • other=<parametros serializados> (obligatorio) son los datos de configuración del usuario, serializados en este orden:
    • <fullname>
    • <firstname>
    • <lastname>
    • <middlename>
    • <password>
    • <email>
    • <phone>
    • <languages>
    • <comments>
    • <is_admin>
    • <block_size>
    • <flash_chart>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_user&id=example_user_name&other=example_fullname||example_lastname||example_new_passwd|example_email||example_language|example comment|1|30|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_user

Borra un usuario por medio de su identificador.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=delete_user (obligatorio).
  • id=< identificador_de_usuario > (obligatorio) el identificador del usuario a eliminar (User ID).

Ejemplo (vea sintaxis de la llamada):

../include/api.php?op=set&op2=delete_user&id=md&apipass=1234&user=admin&pass=pandora

set delete_user_permissions

Esta característica está en Metaconsola.

Borra premisos de usuario.

Sintaxis de la llamada:

  • op=set(obligatorio)
  • Op2=delete_user_permission(obligatorio)
  • return_type=csv|json(obligatorio)
  • Other=id profile(obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_user_permission&return_type=json&other=2&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Borra los permisos de un usuario. Puede devolver Json o CSV, este retorno se indica mediante la URL.

set add_permission_user_group

Esta característica está en Metaconsola.

Añadir permisos a un grupo de usuario.

Sintaxis de la llamada:

  • op=set(obligatorio)
  • Op2=add_permission_user_to_group(obligatorio)
  • return_type=csv|json(obligatorio)
  • Other=user id(obligatorio)|group_id(obligatorio)|profile id(obligatorio)|No hierarchy(opcional)| permissions id(opcional)

Ejemplo

Puede devolver Json o CSV, este retorno se indica mediante la URL.

no_hierarchy puede estar vacío, si es así toma el valor 0.

id de permissions (id_up) en la tabla se puede usar si va a modificarse un permiso existente.

http://localhost/pandora_console/include/api.php?op=set&op2=add_permission_user_to_group&return_type=json&other=admin|0|1|1||&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set enable_disable_user

Activa un usuario desactivado.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_disable_user (obligatorio)
  • id=<nombre_usuario> (obligatorio) debe ser un nombre usuario.

Ejemplos

Ejemplo 1 (Disable user 'example_name')

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=enable_disable_user&id=example_name&other=0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo 2 (Enable user 'example_name')

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=enable_disable_user&id=example_name&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set meta_synch_user

Esta característica está en Metaconsola.

Sincroniza usuarios de la metaconsola con el nodo

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=meta_synch_user (obligatorio)
  • other=<parámetros serializados> (opcional):
    • <user_name_1,user_name_2,user_name_3..> (Nombres de los usuarios separados por comas y sin espacios al inicio o al final, obligatorio)
    • <server_name> (obligatorio)
    • <profile_mode(1-0)> (opcional)
    • <group_name> (opcional)
    • <profile_1,profile_2,profile_3> (Perfiles separados por comas y sin espacios al principio y al final, opcional)
    • <create_groups(1-0)> (opcional)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=meta_synch_user&apipass=1234&user=admin&pass=pandora&other=name1,name2|nodo1|0|||&other_mode=url_encode_separator_|

set create_group

Crea un nuevo grupo.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_group (obligatorio)
  • id=<group_name> (obligatorio) debe ser un nombre de grupo.
  • other=<serialized_parameters> (obligatorio), son los siguientes en este orden:
    • <icon name>
    • <parent group id> (opcional)
    • <description> (opcional)
    • <propagate acl> (opcional)
    • <desactivar las alertas> (opcional)
    • <custom id> (opcional)
    • <Informacion de contacto> (opcional)
    • <otra informacion> (opcional)
    • <máximo número de Agentes en el grupo> (obligatorio, cero sin límite)
    • <Crear grupo de Agentes con contraseña> (opcional)

Ejemplos

Ejemplo 1 (con grupo padre: Servers)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_group&id=example_group_name&other=applications|2&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo 2 (sin grupo padre)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_group&id=example_group_name2&other=computer|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Ejemplo 3 (crear grupo de agentes con contraseña 1234, además con un límite a 3 Agentes en el grupo)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_group&id=example_group_name&other=applications|2|||||||3|1234&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_group

Actualiza el grupo con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_group (obligatorio)
  • id=<group_id> (obligatorio) id_grupo.
  • other=<serialized_parameters> (obligatorio), son los siguientes en este orden:
    • <group name>
    • <icon name>
    • <parent group id>
    • <description>
    • <propagate acl>
    • <desactivar las alertas>
    • <custom id>
    • <Informacion de contacto>
    • <otra informacion>
    • <máximo número de Agentes en el grupo> (opcional)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_group&id=example_group_id&other=New Name|application|2|new description|1|0|custom id||&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Con límite a dos Agentes en el grupo:

http://192.168.80.222/pandora_console/include/api.php?op=set&op2=update_group&id=22&other=New Namee|applications|2|new description|1|0|custom id|12|0|2&other_mode=url_encode_separator_|&apipass=APIPASS&user=USER&pass=PASSWORD

set delete_group

Eliminar un grupo

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_group (obligatorio)
  • id=<group_id> (obligatorio) id_grupo.

Ejemplos

 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_group&id=303&apipass=1234&user=admin&pass=pandora

set add_user_profile

Añade un perfil a un usuario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=add_user_profile (obligatorio)
  • id=<nombre_usuario> (obligatorio) debe ser un nombre usuario.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del grupo y profile, serializados en el siguiente orden:
    • <grupo>
    • <profile>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_user_profile&id=md&other=12|4&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_user_profile

Quita un perfil a un usuario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=delete_user_profile (obligatorio)
  • id=<nombre_usuario> (obligatorio) debe ser un nombre usuario.
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del grupo y profile, serializados en el siguiente orden:
    • <grupo>
    • <profile>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_user_profile&id=md&other=12|4&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_incident

Crea un nuevo incidente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_incident (obligatorio)
  • other=<parámetros serializados> (obligatorio) son la configuración y datos del incidente, serializados en el siguiente orden:
    • <titulo>
    • <descripción>
    • <origen>
    • <prioridad>
    • <estado>
    • <grupo>

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_incident&other=titulo|descripcion texto|Logfiles|2|10|12&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_note_incident

Crea una nota dentro de una incidencia.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_note_incident (obligatorio)
  • id=<id_incidente> (obligatorio) el id del incidente.
  • id2=<nombre_usuario> (obligatorio) el nombre del usuario.
  • other=<nota> (obligatorio) es la nota codificada en url encode.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_note_incident&id=5&id2=miguel&other=una nota para la incidencia&apipass=1234&user=admin&pass=pandora

set validate_all_alerts

Valida todas las alertas.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=validate_all_alerts (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_all_alerts&apipass=1234&user=admin&pass=pandora

set validate_all_policy_alerts

Valida todas las alertas que vienen de políticas.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=validate_all_policy_alerts (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_all_policy_alerts&apipass=1234&user=admin&pass=pandora

set event_validate_filter

Valida todos los eventos que pasan el filtro pasado como parámetros.

Esta característica está en Metaconsola.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=event_validate_filter (obligatorio)
  • other_mode=url_encode_separator_| (opcional)
  • other=<parámetros serializados> (opcional), son los siguientes en este orden:
    • <separator>
    • <criticity> De 0 a 4
    • <nombre agente>
    • <nombre módulo>
    • <nombre plantilla de alerta>
    • <usuario>
    • <nivel mínimo intervalo numérico > en unix timestamp
    • <nivel máximo intervalo numérico > en unix timestamp
    • <use_agent_name> (Acepta valores 0 y 1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=event_validate_filter&other_mode=url_encode_separator_|&other=;|2&apipass=1234&user=admin&pass=pandora

set event_validate_filter_pro

Es igual que la anterior.

Esta característica está en Metaconsola.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=event_validate_filter_pro (obligatorio)
  • other_mode=url_encode_separator_| (opcional)
  • other=<parámetros serializados> (opcional), son los siguientes en este orden:
    • <separator>
    • <criticity> De 0 a 4
    • <id agente>
    • <id modulo>
    • <id agente modulo alerta>
    • <usuario>
    • <nivel mínimo intervalo numérico > en unix timestamp
    • <nivel máximo intervalo numérico > en unix timestamp

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=event_validate_filter_pro&other_mode=url_encode_separator_|&other=;|2&apipass=1234&user=admin&pass=pandora

set validate_event_by_id

Valida un evento según la id que se pase en los parámetros.

Sintaxis de la llamada:

op=set (obligatorio) op2=validate_event_by_id (obligatorio) id=<id_evento> (obligatorio) el id del evento.

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=validate_event_by_id&id=23&apipass=1234&user=admin&pass=pandora

set new_alert_template

Aplica una alerta desde una plantilla y un módulo pasado como id de agente y nombre de módulo.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_alert_template (obligatorio)
  • id=<nombre del agente> (obligatorio)
  • id2=<nombre de la plantilla de alerta> (obligatorio)
  • other_mode=url_encode_separator_| (opcional)
  • other=<parámetros serializados> (obligatorio), son los siguientes en este orden:
    • <nombre modulo> (obligatorio)
    • <use_agent_alias> (Acepta valores 0 y 1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_alert_template&id=example&id2=test&other_mode=url_encode_separator_|&other=memfree&apipass=1234&user=admin&pass=pandora

set alert_actions

Añade acciones a una alerta.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=alert_actions (obligatorio)
  • id=<nombre del agente> (obligatorio)
  • id2=<nombre de la plantilla de alerta> (obligatorio)
  • other_mode=url_encode_separator_| (obligatorio)
  • other=<parámetros serializados> (obligatorio), son los siguientes en este orden:
    • <nombre modulo> (obligatorio)
    • <nombre acción> (obligatorio)
    • <fires min > (opcional)
    • <fires max > (opcional)
    • <use_agent_alias> (Acepta valores 0 y 1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=alert_actions&id=example&id2=test&other_mode=url_encode_separator_|&other=memfree|test&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=alert_actions&id=example&id2=test&other_mode=url_encode_separator_|&other=memfree|test|1|3&apipass=1234&user=admin&pass=pandora

set alert_commands

Añade comandos a una alerta.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=alert_commands (obligatorio)
  • id=<nombre del comando> (obligatorio)
  • other_mode=url_encode_separator_| (opcional)
  • other=<parámetros serializados> (obligatorio), son los siguientes en este orden:
    • <command> (obligatorio)
    • <id_group> (obligatorio)
    • <description > (opcional)
    • <internal > (opcional)
    • <field_description_1><field_value_1><field_description_2><field_value_2>…<field_description_n><field_value_n>

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=alert_commands&id=PRUEBA1&other=command|0|Desc|1|des1|val1|des2|val2|des3|val3||val4|des5&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set new_module

Crea un nuevo módulo.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_module (obligatorio)
  • id=<nombre del agente> (obligatorio)
  • id2=<nombre del nuevo modulo> (obligatorio)
  • other_mode=url_encode_separator_| (opcional)
  • other=<parámetros serializados> (obligatorio), son los siguientes en este orden:
    • <tipo de modulo de red> (obligatorio)
    • <nombre acción> (obligatorio)
    • <ip o url > (obligatorio)
    • <puerto > (opcional)
    • <descripción > (opcional)
    • <min > (opcional)
    • <max > (opcional)
    • <post process > (opcional)
    • <module interval > (opcional)
    • <min warning > (opcional)
    • <max warning > (opcional)
    • <min critical > (opcional)
    • <max critical > (opcional)
    • <history data > (opcional)
    • <enable_unknown_events> (solo versión 5)
    • <use_agent_alias> (Acepta valores 0 y 1)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_module&id=miguel-portatil&id2=juanito&other_mode=url_encode_separator_|&other=remote_tcp_string|localhost|33|descripcion larga&apipass=1234&user=admin&pass=pandora

set delete_module

Borra un módulo.

A partir de la versión 768 si el módulo a borrar (ej. Host Alive ) es padre de otro módulo (funcionalidad “Servicios de protección en cascada”) los módulos hijos también serán borrados.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=delete_module (obligatorio)
  • id=< nombre del agente > (obligatorio).
  • id2=< nombre del módulo > (obligatorio).

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=delete_module&id=example&id2=example2&apipass=1234&user=admin&pass=pandora&other_mode=url_encode_separator_|

Parámetro simulate

¡Es absolutamente imprescindible utilizar

other_mode=url_encode_separator_< separator >

con este parámetro!

Si desea confirmar si el agente existe y su módulo también, antes de ejecutar el borrado definitivo bien puede utilizar el parámetro simulate. Si su llamada de prueba es incorrecta la API 1.0 PFMS devolverá el siguiente mensaje: Parameter error..

Ejemplo (vea sintaxis de la llamada):

.../include/api.php?op=set&op2=delete_module&id=agent_name_example&id2=module_name_example&other=simulate&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set enable_alert

Activa una alerta dentro de un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_alert
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other: nombre del template de la alerta (p.e: Warning event) (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=enable_alert&id=example&id2=Status&other=Warning condition&apipass=1234&user=admin&pass=pandora

set enable_alert_alias

Activa una alerta dentro de un agente a partir del alias.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_alert_alias
  • id=<Alias del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other: nombre del template de la alerta (p.e: Warning event) (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=enable_alert_alias&id=example&id2=CPU Load&other=critical condition&apipass=1234&user=admin&pass=pandora

set disable_alert

Desactiva una alerta dentro de un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=disable_alert
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other: nombre del template de la alerta (p.e: Warning event) (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=disable_alert&id=example&id2=Status&other=Warning condition&apipass=1234&user=admin&pass=pandora

set disable_alert_alias

Desactiva una alerta dentro de un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=disable_alert_alias
  • id=<Alias del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other: nombre del template de la alerta (p.e: Warning event) (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=disable_alert_alias&id=example&id2=CPU Load&other=critical condition&apipass=1234&user=admin&pass=pandora

set enable_module_alerts

Igual que la llamada enable_alert.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_module_alerts
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other (opcional)=<use_agent_alias> (Acepta valores 0 y 1)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=enable_module_alerts&id=example&id2=Status&apipass=1234&user=admin&pass=pandora

set disable_module_alerts

Igual que la llamada disable_alert.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=disable_module_alerts
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other (opcional)=<use_agent_alias> (Acepta valores 0 y 1)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=disable_module_alerts&id=example&id2=Status&apipass=1234&user=admin&pass=pandora

set enable_module

Activa el módulo.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_module
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other (opcional)=<use_agent_alias> (Acepta valores 0 y 1)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=enable_module&id=example&id2=Status&apipass=1234&user=admin&pass=pandora

set disable_module

Desactiva el módulo.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=disable_module
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del modulo> (obligatorio)
  • other (opcional)=<use_agent_alias> (Acepta valores 0 y 1)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=disable_module&id=example&id2=Status&apipass=1234&user=admin&pass=pandora

set create_network_module_from_component

Crea un nuevo módulo de red desde un componente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_network_module_from_component (obligatorio)
  • id=<nombre del agente> (obligatorio)
  • id2=<Nombre del componente> (obligatorio)
  • other (opcional)=<use_agent_alias> (Acepta valores 0 y 1)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=create_network_module_from_component&id=example&id2=OS Total process&apipass=1234&user=admin&pass=pandora

set module_data

Añade un nuevo valor al módulo. Esta llamada únicamente genera un XML con los datos que se enviarán al servidor, que será el encargado de hacer la actualización en la Base de Datos.

Solamente se controla la generación del fichero XML, devolviendo un mensaje relacionado con ese proceso.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=module_data (obligatorio)
  • id=<id agente módulo> (obligatorio)
  • other: serializado el dato del módulo y el tiempo en que ocurre.
    • dato: que puede ser cualquier tipo de dato de Pandora.
    • tiempo: puede ser la cadena de texto now para el momento actual o el timestamp especifico.

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=module_data&id=14&other_mode=url_encode_separator_|&other=123|now&apipass=1234&user=admin&pass=pandora

La generación exitosa del fichero XML no garantiza que la información haya quedado almacenada en la base de datos.

set new_module_group

Crea un nuevo grupo de módulos.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=new_module_group (obligatorio)
  • id=<nombre del grupo de módulos> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=new_module_group&id=Module_group_name&apipass=1234&user=admin&pass=pandora

set module_group_synch

Esta característica está en Metaconsola.

Sincronizar grupo de módulos desde la metaconsola.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=module_group_synch (obligatorio)
  • other=<parámetros serializados> (obligatorio) en este caso el nombre del/de los servidor/es que se quiere/n sincronizar con la meta.
    • <server_name_1><server_name_2>…<server_name_n> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=module_group_synch&other=server_name1|server_name2|server_name3&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_module_in_conf

= 5.0 (Sólo Enterprise)

Añade una configuración a un módulo local.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=add_module_in_conf (obligatorio)
  • id=<id agente> (obligatorio)
  • id2=<nombre módulo> (obligatorio)
  • other: los datos del modulo que irán en el fichero de configuración codificados en base64 (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_module_in_conf&apipass=1234&user=admin&pass=pandora&id=9043&id2=example_name&other=bW9kdWxlX2JlZ2luCm1vZHVsZV9uYW1lIGV4YW1wbGVfbmFtZQptb2R1bGVfdHlwZSBnZW5lcmljX2RhdGEKbW9kdWxlX2V4ZWMgZWNobyAxOwptb2R1bGVfZW5k

Se retornará '0' en caso de éxito,'-1' en caso de error, '-2' si ya existe

set delete_module_in_conf

= 5.0 (Sólo Enterprise)

Borra la configuración de un módulo local.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=add_module_in_conf (obligatorio)
  • id=<id agente> (obligatorio)
  • id2=<nombre módulo> (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_module_in_conf&user=admin&pass=pandora&id=9043&id2=example_name

Se retornará '0' en caso de éxito ó '-1' en caso de error

set update_module_in_conf

= 5.0 (Sólo Enterprise)

Actualiza la configuración de un módulo local.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_module_in_conf (obligatorio)
  • id=<id agente> (obligatorio)
  • id2=<nombre módulo> (obligatorio)
  • other: los nuevos datos del módulo que irán en el fichero de configuración codificados en base64 (obligatorio)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_module_in_conf&apipass=1234&user=admin&pass=pandora&id=9043&id2=example_name&other=bW9kdWxlX2JlZ2luCm1vZHVsZV9uYW1lIGV4YW1wbGVfbmFtZQptb2R1bGVfdHlwZSBnZW5lcmljX2RhdGEKbW9kdWxlX2V4ZWMgZWNobyAxOwptb2R1bGVfZW5k

Se retornará '1' si no cambia, '0' en caso de éxito, '-1' en caso de error, '-2' si no existe

set create_event

Crea un evento nuevo en Pandora FMS.

Esta característica también trabaja en Metaconsola.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=create_event (obligatorio).
  • other=< parámetros_serializados > (obligatorio), son la configuración y datos del evento, serializados en el siguiente orden:
    • < texto_del_evento > (obligatorio, tipo string).
    • < id_grupo > (obligatorio, tipo string).
    • < id_agente> (obligatorio, tipo numeric).
    • < estado > 0 New (Nuevo), 1 Validated (Validado), 2 In process (En proceso).
    • < id_usuario >(tipo numeric).
    • < tipo_de_evento > Alguno de los siguientes valores:
      • unknown
      • alert_fired
      • alert_recovered
      • alert_ceased
      • alert_manual_validation
      • system
      • error
      • new_agent
      • configuration_change
      • going_unknown
      • going_down_critical
      • going_down_warning
      • going_up_normal
    • < severidad > Alguno de los siguientes valores:
      • 0 Maintenance (Mantenimiento).
      • 1 Informative (Informativo).
      • 2 Normal (Normal).
      • 3 Warning (Advertencia).
      • 4 Critical (Crítico).
      • 5 Minor (Menor).
      • 6 Major (Mayor).
    • < id_módulo_de_agente > (tipo numeric).
    • < id_alert_am> ( Identificador del módulo de alerta vinculado al evento, tipo numeric).
    • < instructiones_para_crítico > (tipo string).
    • < instructiones_para_advertencia > (tipo string).
    • < instructiones_para_desconocido > (tipo string).
    • < comentario > (tipo string).
    • < nombre_del_propietario_del_evento > (tipo string).
    • < fuente_del_evento > (tipo string).
    • < eiquetas > (tipo string).
    • < datos_personalizado> Los datos personalizados se introducen como un documento JSON codificado en base64.
    • < id_servidor > (solamente para Metaconsola) El identificador del nodo, Consola web “hija”.
    • <identificador_extra> (tipo alphanumeric).

Ejemplo (vea la sintaxis de llamada):

El evento a crear tiene los siguientes datos personalizados en JSON:

{"Answer to the Ultimate Question of Life, the Universe, and Everything": 42}

Se codifica lo anterior en base64 y se inserta en la llamada:

../include/api.php?op=set&op2=create_event&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora&other=Event_name|0|1|0|admin|alert_fired|4|1|||||comment|admin||tags|eyJBbnN3ZXIgdG8gdGhlIFVsdGltYXRlIFF1ZXN0aW9uIG9mIExpZmUsIHRoZSBVbml2ZXJzZSwgYW5kIEV2ZXJ5dGhpbmciOiA0Mn0=||12

set add_event_comment

Añade un comentario acerca del evento indicado.

Esta característica también trabaja en Metaconsola.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=add_event_comment (obligatorio).
  • id=< identificador_del_evento > (obligatorio, tipo numeric).
  • other=< parámetros_serializados> (obligatorio) son el comentario a agregar y, en el caso de utilizarlo en Metaconsola, el identificador numérico del nodo, serializados en el siguiente orden:
    • < comentario > (obligatorio, tipo string).
    • < separador > (opcional para Metaconsola).
    • < identificador_de_nodo > (opcional para Metaconsola).
  • url_encode_separator_< separador > : Vea sintaxis de llamada.

Uso en Metaconsola:

  • Versión 762 y anteriores: Después del comentario y el separador debe introducir el parámetro true.
  • Versión 766 y posteriores: Después del comentario y el separador debe introducir el identificador numérico del nodo.

Accediendo al Command Center podrá obtener dicho identificador de nodo:

Ejemplos ( vea sintaxis de llamada):

  • Nodo (el identificador del evento es 7 y el comentario es comment):
../include/api.php?op=set&op2=add_event_comment&id=7&other=comment&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
  • Metaconsola (versión 766 y posteriores, el identificador del evento es 1, el comentario es comment y el identificador del nodo es 3):
../include/api.php?op=set&op2=add_event_comment&id=1&other=comment|3&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_event

Modifica eventos a través de la API.

Esta característica se encuentra tanto en nodo como en Metaconsola.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=event (obligatorio)
  • id=event_id (obligatorio)
  • other=<serialized_parameters> (obligatorio). Son los datos del evento a actualizar, con formato campo,valor y separados con el url_encode_separator escogido (ej. |).

Campos disponibles

  • estado: Identificador numérico del estado del evento. Puede ser:
    • 0 (Nuevo)
    • 1 (Validado)
    • 2 (En proceso)
  • evento: Nombre del evento.
  • event_type: Tipo de evento. Puede ser:
    • going_unknown
    • unknown
    • alert_fired
    • alert_recovered
    • alert_ceased
    • alert_manual_validation
    • recon_host_detected
    • system
    • error
    • new_agent
    • going_up_warning
    • going_up_critical
    • going_down_warning
    • going_down_normal
    • going_down_critical
    • going_up_normal
    • configuration_change
  • criticity: Identificador numérico de la criticidad del evento. Puede ser:
    • 0 (Maintenance)
    • 1 (Informational)
    • 2 (Normal)
    • 3 (Minor)
    • 4 (Warning)
    • 5 (Major)
    • 6 (Critical)
    • 20 (Warning o Critical)
    • 21 (Distinto a Normal)
    • 34 (Critical o normal)
  • tags: Etiquetas asociadas al evento.
  • source: Fuente de los datos del evento.
  • id_extra: Si se usa esta opción, cuando se genere un evento con el mismo ID extra que otros ya existentes, estos se validarán automáticamente.
  • critical_instructions: Instrucciones para el operador sobre cómo actuar cuando el módulo esté en estado Critical. Sólo funciona si el módulo asociado está en estado Crítico.
  • warning_instructions: Instrucciones para el operador sobre cómo actuar cuando el módulo esté en estado Warning. Sólo funciona si el módulo asociado está en estado Warning.
  • unknown_instructions: Instrucciones para el operador sobre cómo actuar cuando el módulo esté en estado Unknown. Sólo funciona si el módulo asociado está en estado Desconocido.
  • owner_user: Usuario asignado al evento.
  • custom_data: Permite añadir información extra al evento. Debe ser un json (ej. {“campo1”:“valor1”,“campo2”:“valor2”}) codificado en base64 (ej. anterior: eyJjYW1wbzEiOiJ2YWxvcjEiLCJjYW1wbzIiOiJ2YWxvcjIifQ== ).
  • module_status: Identificador numérico del estado del módulo que disparó el evento. Puede ser:
    • 0 (Normal)
    • 1 (Critical)
    • 2 (Warning)
    • 3 (Unknown)
    • 4 (Not init)

Ejemplos

  • Nodo:
http://<console_ip>/pandora_console/include/api.php?op=set&op2=event&apipass=pandora&user=admin&pass=pandora&id=175&other_mode=url_encode_separator_|&other=estado,2|evento,Evento modificado|custom_data,eyJjYW1wbzEiOiJ2YWxvcjEiLCJjYW1wbzIiOiJ2YWxvcjIifQ==
  • Metaconsola:
http://<metaconsole_ip>/pandora_console/include/api.php?op=set&op2=event&apipass=1234&user=admin&pass=pandora&id=315132&other_mode=url_encode_separator_|&other=estado,0|owner_user,operator|evento,Evento modificado

set create_netflow_filter

(>=5.0)

Crea un nuevo filtro de netflow.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_netflow_filter (obligatorio)
  • other=<parámetros serializados> (obligatorio) son los datos del filtro, serializados en el siguiente orden:
    • <nombre_filtro> (obligatorio)
    • <id_grupo> (obligatorio)
    • <filtro> (obligatorio)
    • <agregado_por> (Valores posibles: dstip,dstport,none,proto,srcip,srcport) (obligatorio)
    • <formato_salida> (Valores posibles: kilobytes,kilobytespersecond,megabytes,megabytespersecond) (obligatorio)

Ejemplos

http://127.0.0.1/pandora/include/api.php?op=set&op2=create_netflow_filter&apipass=1234&user=admin&pass=pandora&other=Filter name|9|host 192.168.50.3 OR host 192.168.50.4 or HOST 192.168.50.6|dstport|kilobytes&other_mode=url_encode_separator_|

set create_custom_field

Crea un nuevo campo personalizado para los agentes. Los campos personalizados o custom fields son útiles para las macros de monitorización remota.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=create_custom_field (obligatorio).
  • other=< parámetros serializados > (obligatorios) parámetros para configurar el campo personalizado, serializados en el siguiente orden:
    • < nombre_del_campo_personalizado > (obligatorio, tipo string).
    • < mostrar_en_vista > (obligatorio) 0 no se mostrará en la vista de operación del agente, 1 sí será mostrado, siempre y cuando tenga un valor guardado).
    • < campo_contraseña > (obligatorio) 0 campo personalizado normal, 1 su contenido será ocultado con asteriscos en la Consola web.

Si la ejecución de la orden resulta exitosa, devolverá un identificador numérico correspondiente al campo personalizado creado.

Ejemplo (vea la sintaxis de llamada):

../include/api.php?op=set&op2=create_custom_field&other=mycustomfield|0|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Debe asegurarse de que el usuario utilizado tiene derechos suficientes para crear campos personalizados. En el ejemplo se utiliza las credenciales de un superadmin, si utiliza el usuario por defecto internal_API no podrá crear dichos campos personalizados.

set create_tag

= 5.0

Crea un nuevo tag.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_tag (obligatorio)
  • other=<parámetros serializados> (obligatorio) parámetros para configurar el tag
    • <name> Nombre del tag (obligatorio)
    • <description> Descripción del tag
    • <eurl> Url del tag
    • <email> Email del tag

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_tag&other=tag_name|tag_description|tag_url|tag_email&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set enable_disable_agent

Activa un agente desactivado.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=enable_disable_agent (obligatorio)
  • id=<id_agente> (obligatorio) debe ser un id agente.

Ejemplos

Example 1 (Disable agent 'example_id')

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=enable_disable_agent&id=example_id&other=0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

Example 2 (Enable agent 'example_id')

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=enable_disable_agent&id=example_id&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set gis_agent_only_position

Añade solamente la posición GIS a un agente.

Sintaxis de la llamada:

  • op=set (obligatorio).
  • op2=gis_agent_only_position (obligatorio)
  • id=<índice> (obligatorio) debe ser un índice de un agente.
  • other=<parámetros serializados> (obligatorio) parámetros para configurar el GIS utilizando el url_encode_separator_ para diferenciarlos (utilice como separador decimal el punto . ):
    • <latitude> Latitud.
    • <longitude> Longitud.
    • <altitude> Altitud.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1234&user=admin&pass=pandora&op=set&op2=gis_agent_only_position&id=582&other_mode=url_encode_separator_|&other=2|1|0

set gis_agent

= 5.0

Añade los datos GIS a un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=gis_agent_only_position (obligatorio)
  • id=<índice> (obligatorio) debe ser un índice de un agente.
  • other=<parámetros serializados> (obligatorio) parámetros para configurar el gis
    • <latitude> Latitud
    • <longitude> Longitud
    • <altitude> Altitud
    • <ignore_new_gis_data> ignorar nuevos datos gis
    • <manual_placement> posicionamiento manual
    • <start_timestamp> tiempo de comienzo en esta posición
    • <end_timestamp> tiempo de finalización de la anterior
    • <number_of_packages> número de paquetes en esta posición
    • <description_save_history> descripción
    • <description_update_gis> descripción
    • <description_first_insert> descripción

Ejemplo

http://127.0.0.1/pandora5/include/api.php?apipass=1234&user=admin&pass=pandora&op=set&op2=gis_agent&id=582&other_mode=url_encode_separator_|&other=2|2|0|0|0|2000-01-01 01:01:01|0|666|aaa|bbb|ccc

set reset_agent_counts

Actualiza el conteo de módulos y alertas de un agente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=reset_agent_counts (obligatorio)
  • id=<id_agent> (obligatorio) debe ser un id de agente o All.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=reset_agent_counts&apipass=1234&user=admin&pass=pandora&id=All

set create_special_day

= 5.1

Permite añadir un día especial.

Sintaxis:

  • op=set (obligatorio)
  • op2=create_special_day (obligatorio)
  • other=<parámetros serializados> (obligatorio)
    • <special day> Día especial
    • <same day> Mismo día
    • <description> Descripción
    • <id_group> Id Grupo

Example

http://127.0.0.1/pandora_console/include/api.php?apipass=1111&user=admin&pass=pandora&op=set&op2=create_special_day&other_mode=url_encode_separator_|&other=2014-05-03|Sunday|desc|0

set update_special_day

= 5.1

Actualizar configuración de un día especial ya definido.

Sintaxis:

  • op=set (obligatorio)
  • op2=update_special_day (obligatorio)
  • id=<id día especial> (obligatorio)
  • other=<parámetros serializados> (obligatorio)
    • <special day> Día especial
    • <same day> Mismo día
    • <description> Descripción
    • <id_group> Id grupo

Example

http://127.0.0.1/pandora_console/include/api.php?apipass=1111&user=admin&pass=pandora&op=set&op2=update_special_day&id=1&other_mode=url_encode_separator_|&other=2014-05-03|Sunday|desc|0

set delete_special_day

= 5.1

Permite borrar un día especial.

Sintaxis:

  • op=set (obligatorio)
  • op2=delete_special_day (obligatorio)
  • id=<id día especial> (obligatorio)

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?apipass=1111&user=admin&pass=pandora&op=set&op2=delete_special_day&id=1

set pagerduty_webhook

= 5.1

Conecta notificaciones de PagerDuty con alertas de Pandora FMS. Esta llamada se configurará en la opción Webhook del servicio de PagerDuty para validar las alertas de Pandora FMS previamente enlazadas a PagerDuty cuando estas sean validadas desde PagerDuty.

Sintaxis:

  • op=set (obligatorio)
  • op2=pagerduty_webhook (obligatorio)
  • id=alert (obligatorio)

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=pagerduty_webhook&apipass=1234&user=admin&pass=pandora&id=alert

set tag_user_profile

= 6

Añade un tag a un perfil de un usuario.

Sintaxis:

  • op=set (obligatorio)
  • op2=tag_user_profile (obligatorio)
  • id=id_usuario (obligatorio)
  • id2=id_etiqueta (obligatorio)
  • other_mode=url_encode_separator_| (obligatorio)
  • other=<id_grupo>|<id_perfil> (obligatorio)

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=tag_user_profile&apipass=1234&user=admin&pass=pandora&id=1&id2=2&other_mode=url_encode_separator_|&other=122|3

set tag

= 6

Añade un tag a tu Pandora FMS.

Sintaxis:

  • op=set (obligatorio)
  • op2=tag (obligatorio)
  • id=nombre (obligatorio)
  • other_mode=url_encode_separator_| (obligatorio)
  • other=<descripción>|<url>|<email>|<teléfono>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=tag&apipass=1234&user=admin&pass=pandora&id=test&other_mode=url_encode_separator_|&other="un test"|https://pandorafms.com|[email protected]|01189998819991197253

set add_tag_module

= 6

Añade un tag a un módulo.

Sintaxis:

  • op=set (obligatorio)
  • op2=add_tag_module (obligatorio)
  • id=id_modulo (obligatorio)
  • id2=id_tag (obligatorio)

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_tag_module&apipass=1234&user=admin&pass=pandora&id=1&id2=2

set remove_tag_module

= 6

Quita un tag a un módulo.

Sintaxis:

  • op=set (obligatorio)
  • op2=add_tag_module (obligatorio)
  • id=id_modulo (obligatorio)
  • id2=id_tag (obligatorio)

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=remove_tag_module&apipass=1234&user=admin&pass=pandora&id=1&id2=2

set planned_downtimes_created

= 5.1

Crea una parada planificada.

  • op=set
  • op2= planned_downtimes_created
  • other =<description>;<date_from>;<date_to>;<id_group>;<monday>;
  • <tuesday>;<wednesday>;<thursday>;<friday>;<saturday>;<sunday>;<periodically_time_from>;<periodically_time_to>;
  • <periodically_day_from>;<periodically_day_to>;<type_downtime>;<type_execution>;<type_periodicity>;<id_user>;

El formato de fecha tiene que ser MM/DD/YYYY para que esta llamada funcione adecuadamente.

Ejemplos

Una sola vez:

http://localhost/pandora_console/include/api.php?op=set&op2=planned_downtimes_created&apipass=1234&user=admin&pass=pandora&id=testing&other=testing|11/05/2018|11/16/2018|0|1|1|1|1|1|1|1|12:06:00|19:06:00|1|31|quiet|once|weekly|admin&other_mode=url_encode_separator_|

Periódicamente:

http://localhost/pandora_console/include/api.php?op=set&op2=planned_downtimes_created&apipass=1234&user=admin&pass=pandora&id=testing&other=testing|11/05/2018|11/16/2018|0|1|1|1|1|1|1|1|12:06:00|19:06:00|1|31|quiet|periodically|weekly|admin&other_mode=url_encode_separator_|

set planned_downtimes_edit

= 754

Edita una parada planificada.

  • op=set
  • op2= planned_downtimes_edit
  • id= identificador de la parada planificada
  • other = todos los parámetros son opcionales:
    • <nombre>
    • <descripción>
    • <date from>
    • <date to>
    • <time from>
    • <time to>
    • <id grupo>
    • <monday>
    • <tuesday>
    • <wednesday>
    • <thursday>
    • <friday>
    • <saturday>
    • <sunday>
    • <periodically_day_from>
    • <periodically_day_to>
    • <tipo de parada>
    • <tipo de ejecución>
    • <tipo de periodicidad>

El formato de fecha tiene que ser AAAA/MM/DD (año/mes/día) para que esta llamada funcione adecuadamente.

Ejemplo:

http://localhost/pandora_console/include/api.php?op=set&op2=planned_downtimes_edit&apipass=1234&user=admin&pass=pandora&id=2&other=testing2|test2| 2021/05/10|2021/06/12|19:03:03|19:55:00|0|0|0|0|0|0|0|0|1|31|quiet|once|weekly&other_mode=url_encode_separator_|

set planned_downtimes_add_agents

Añade agentes a la parada planificada.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=planned_downtimes_add_agents (obligatorio).
  • id=< id_parada > identificador de la parada planificada (obligatorio).
  • other=< id_agente1 separador id_agente2 separador id_agente3 separador … id_agenteN > identificador de cada Agente a agregar, para el separador vea la sintaxis de llamada.

Ejemplo (vea la sintaxis de llamada):

/include/api.php?op=set&op2=planned_downtimes_add_agents&id=4&other=1|2|3&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set planned_downtimes_delete_agents

Borra los agentes (y los Módulos de esos agentes) de la parada planificada.

Sintaxis de llamada:

  • op=set (obligatorio).
  • op2=planned_downtimes_delete_agents (obligatorio).
  • id=< id_parada > identificador de la parada planificada (obligatorio).
  • other=< id_agente1 separador id_agente2 separador id_agente3 separador … id_agenteN > identificador de cada Agente a borrar, para el separador vea la sintaxis de llamada.

Ejemplo (vea la sintaxis de llamada):

/include/api.php?op=set&op2=planned_downtimes_delete_agents&id=4&other=1|2|3&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set planned_downtimes_additem

= 5.1

Crea registros para una parada planificada.

  • op=set
  • op2=planned_downtimes_additem
  • id=planned_downtime_id
  • other = <id_agent1;id_agent2;id_agent3;….id_agentn;>;<name_module1;name_module2;name_module3;……name_modulen;>

Ejemplo:

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=planned_downtimes_additem&apipass=1234&user=admin&pass=pandora&id=123&other=1;2;3;4|Status;Unkown_modules &other_mode=url_encode_separator_|

set planned_downtimes_deleted

=5.1

Elimina una parada planificada.

  • op=set
  • op2=planned_downtimes_deleted
  • id=planned_downtime_id

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=planned_downtimes_deleted&apipass=1234&user=admin&pass=pandora&id=10

set create_synthetic_module

=5.1SP4

Crea un módulo sintético:

  • op=set
  • op2=create_synthetic_module
  • id=nombre del agente a añadir el módulo
  • id2=<use_agent_alias>
  • other=<name_module><synthetic_type><AgentName;Operation;NameModule> OR <AgentName;NameModule> OR <Operation;Value>
  • Datos del módulo:
En las creación de tipo arithmetic el primer dato si es Agente y módulo sin operador : AgentName;NameModule. Si es un valor: <Operation;Value>. El resto de valores irían ya de la forma siguiente: <AgentName;Operation;NameModule> or <Operation;Value>

average: <AgentName;Operation;NameModule> or <Operation;Value>

  • Operaciones:
  arithmetic: ADD, SUB, MUL, DIV
  average: Only AVG

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_synthetic_module&apipass=1234&user=admin&pass=pandora&id=test&other=Test|arithmetic|Agent Name;Module Name|Agent Name2;ADD;Module Name2&other_mode=url_encode_separator_|
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_synthetic_module&apipass=1234&user=admin&pass=pandora&id=example&other=prueba|average|Agent Name;AVG;Name Module|Agent Name2;AVG;Name Module2&other_mode=url_encode_separator_|

set create_service

= 7

Crea un servicio.

  • op=set
  • op2=create_service
  • other =<name>;<description>;<id_group>;<critical>;<warning>;<id_agent>;<sla_interval>;<sla_limit>;

<id_warning_module_template_alert>;<id_critical_module_template_alert>;<id_critical_module_sla_template_alert>;

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_service&return_type=json&other=test1|Descripcion|12|1|0.5|1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_service

= 7

Modifica un servicio.

  • op=set
  • op2=update_service
  • id=id del servicio
  • other =<name>;<description>;<id_group>;<critical>;<warning>;<id_agent>;<sla_interval>;<sla_limit>;

<id_warning_module_template_alert>;<id_critical_module_template_alert>;<id_critical_module_sla_template_alert>;

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_service&return_type=json&id=1&other=test2|Descripcion2|||0.6|&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_element_service

= 7

Añade uno o varios elementos al servicio.

  • op=set
  • op2=add_element_service
  • id=id del servicio
  • other=json con los elementos en base64

La estructura del json debe ser la siguiente:

[
  {
    "type": "agent",
    "id": 2,
    "description": "Test1",
    "weight_critical": 0,
    "weight_warning": 0,
    "weight_unknown": 0,
    "weight_ok": 0
  },
  {
    "type": "module",
    "id": 1,
    "description": "Test2",
    "weight_critical": 0,
    "weight_warning": 0,
    "weight_unknown": 0,
    "weight_ok": 0
  },
  {
    "type": "service",
    "id": 3,
    "description": "Test3",
    "weight_critical": 0,
    "weight_warning": 0,
    "weight_unknown": 0,
    "weight_ok": 0
  }
]

En cada tipo, el campo id hace referencia a cosas diferentes:

- Si es de tipo agent, es el id del agente.

- Si es de tipo module, es el id agente modulo

- Si es tipo service, es el id del servicio que queremos añadir.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_element_service&return_type=json&id=6&other=WwogIHsKICAgICJ0eXBlIjogImFnZW50IiwKICAgICJpZCI6IDIsCiAgICAiZGVzY3JpcHRpb24iOiAiVGVzdDEiLAogICAgIndlaWdodF9jcml0aWNhbCI6IDAsCiAgICAid2VpZ2h0X3dhcm5pbmciOiAwLAogICAgIndlaWdodF91bmtub3duIjogMCwKICAgICJ3ZWlnaHRfb2siOiAwCiAgfSwKICB7CiAgICAidHlwZSI6ICJtb2R1bGUiLAogICAgImlkIjogMSwKICAgICJkZXNjcmlwdGlvbiI6ICJUZXN0MiIsCiAgICAid2VpZ2h0X2NyaXRpY2FsIjogMCwKICAgICJ3ZWlnaHRfd2FybmluZyI6IDAsCiAgICAid2VpZ2h0X3Vua25vd24iOiAwLAogICAgIndlaWdodF9vayI6IDAKICB9LAogIHsKICAgICJ0eXBlIjogInNlcnZpY2UiLAogICAgImlkIjogMywKICAgICJkZXNjcmlwdGlvbiI6ICJUZXN0MyIsCiAgICAid2VpZ2h0X2NyaXRpY2FsIjogMCwKICAgICJ3ZWlnaHRfd2FybmluZyI6IDAsCiAgICAid2VpZ2h0X3Vua25vd24iOiAwLAogICAgIndlaWdodF9vayI6IDAKICB9Cl0=&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set metaconsole_synch

= 7

Añade licencia a metaconsole y sincroniza con los nodos

  • op=set
  • op2=metaconsole_synch
  • id=Código de licencia

Ejemplo

http://127.0.0.1/pandora_console/enterprise/meta/include/api.php?op=set&op2=metaconsole_synch&id=CODIGODELICENCIA&apipass=1234&user=admin&pass=pandora

set migrate_agent

= 7.21 ONLY METACONSOLE

Añade a la cola de migración de agentes un agente seleccionado

  • op=set
  • op2=migrate_agent
  • id=id_agente a migrar
  • other=nombre nodo origen| nombre nodo destino | (true|false) para no migrar base de datos de histórico
  • other_mode=url_encode_separator_|
  • return_type=string, json, etc

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=migrate_agent&apipass=1234&user=admin&pass=pandora&id=2&other=example|example2|0&other_mode=url_encode_separator_|&return_type=string

set new_cluster

= 7.0

Crea un cluster de agentes

Crea un cluster de monitorización con agentes e items para monitorizar distintos nodos.

  • op=set
  • op2=new_cluster
  • other=nombre_cluster| tipo_cluster| descripcion| id_grupo
  • other_mode=url_encode_separator_

Ejemplo

 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_cluster&other=nombre_cluster|AA|descripcion|12&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_cluster_agent

= 7.0

Añadir agente a cluster

  • op=set
  • op2=add_cluster_agent
  • other=json con los elementos en base64
  • other_mode=url_encode_separator_

La estructura del json debe ser la siguiente:

[
  {
    "id": 5,
    "id_agent": 2
  },
  {
    "id": 5,
    "id_agent": 3
  }
]
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_cluster_agent&other=W3siaWQiOjUsImlkX2FnZW50IjoyfSwKeyJpZCI6NSwiaWRfYWdlbnQiOjN9XQ==&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_cluster_item (activo/activo)

= 7.0

Añadir item activo/activo a cluster

  • op=set
  • op2=add_cluster_item
  • other=json con los elementos en base64
  • other_mode=url_encode_separator_

La estructura del json debe ser la siguiente:

[
  {
    "name": "Swap_Used",
    "id_cluster": 5,
    "type": "AA",
    "critical_limit": 80,
    "warning_limit":60
  },
  {
    "name": "TCP_Connections",
    "id_cluster": 5,
    "type": "AA",
    "critical_limit":80,
    "warning_limit":60
  }
]
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_cluster_item&other=WwogIHsKICAgICJuYW1lIjogIlN3YXBfVXNlZCIsCiAgICAiaWRfY2x1c3RlciI6IDUsCiAgICAidHlwZSI6ICJBQSIsCiAgICAiY3JpdGljYWxfbGltaXQiOiA4MCwKwqAgICAid2FybmluZ19saW1pdCI6NjAKICB9LAogIHsKICAgICJuYW1lIjogIlRDUF9Db25uZWN0aW9ucyIsCiAgICAiaWRfY2x1c3RlciI6IDUsCiAgICAidHlwZSI6ICJBQSIsCiAgICAiY3JpdGljYWxfbGltaXQiOjgwLArCoCAgICJ3YXJuaW5nX2xpbWl0Ijo2MAogIH0KXQo=&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set add_cluster_item (activo/pasivo)

= 7.0

Añadir item activo/pasivo a cluster

  • op=set
  • op2=add_cluster_item
  • other=json con los elementos en base64
  • other_mode=url_encode_separator_

La estructura del json debe ser la siguiente:

[
  {
    "name": "DiskUsed_/proc/kcore",
    "id_cluster": 5,
    "type": "AP",
    "is_critical": 1
  },
  {
    "name": "DiskUsed_/proc/sched_debug",
    "id_cluster": 5,
    "type": "AP",
    "is_critical": 1
  }
]

Ejemplo:

 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_cluster_item&other=WwogIHsKICAgICJuYW1lIjogIkRpc2tVc2VkXy9wcm9jL2tjb3JlIiwKICAgICJpZF9jbHVzdGVyIjogNSwKICAgICJ0eXBlIjogIkFQIiwKICAgICJpc19jcml0aWNhbCI6IDEKICB9LAogIHsKICAgICJuYW1lIjogIkRpc2tVc2VkXy9wcm9jL3NjaGVkX2RlYnVnIiwKICAgICJpZF9jbHVzdGVyIjogNSwKICAgICJ0eXBlIjogIkFQIiwKICAgICJpc19jcml0aWNhbCI6IDEKICB9Cl0=&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_cluster

= 7.0

Eliminar cluster

  • op=set
  • op2=delete_cluster
  • id=id de cluster a eliminar
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_cluster&id=7&apipass=1234&user=admin&pass=pandora

set delete_cluster_agents

= 7.0

Desasociar un agente de un cluster

  • op=set
  • op2=delete_cluster_agents
  • other=json con los elementos en base64
  • other_mode=url_encode_separator_

La estructura del json debe ser la siguiente:

[
  {
    "id": 5,
    "id_agent": 2
  },
  {
    "id": 5,
    "id_agent": 3
  }
]

Ejemplo

 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_cluster_agents&other=WwogIHsKICAgICJpZCI6IDUsCiAgICAiaWRfYWdlbnQiOiAyCiAgfSwKICB7CiAgICAiaWQiOiA1LAogICAgImlkX2FnZW50IjogMwogIH0KXQ==&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_cluster_item

= 7.0

Eliminar item de un cluster

  • op=set
  • op2=delete_cluster_item
  • id=id del item a eliminar
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_cluster_item&id=9&apipass=1234&user=admin&pass=pandora

set create_policy

= 7.0. 725

Crear una política. Son obligatorios el nombre de la política, el cual no puede estar repetido y el id_grupo el cual debe existir en la bbdd.

  • op=set
  • op2=create_policy
  • other=nombre de la política (obligatorio) | id_del grupo (obligatorio) | descripción;
  • other_mode=url_encode_separator_|
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=create_policy&apipass=1234&user=admin&pass=pandora&other=name Policy|11|this description&other_mode=url_encode_separator_|&return_type=json

set update_policy

= 7.0. 725

Actualizar una política. El nombre de la política no puede estar repetido y el id_grupo debe existir en la bbdd. devuelve 0 (false) o id de la política actualizada (true).

  • op=set
  • op2=update_policy
  • id=id política
  • other=nombre de la política | id_del grupo | descripción;
  • other_mode=url_encode_separator_|
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=update_policy&apipass=1234&user=admin&pass=pandora&id=17&other=policy2|11|this description&other_mode=url_encode_separator_|&return_type=json

set delete_policy

= 7.0. 725

Eliminar una política. es necesario introducir el id de política y que exista dicha política para poder eliminarla. devuelve 0 (false) o 1 (true).

  • op=set
  • op2=delete_policy
  • id=id política
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_policy&apipass=1234&user=admin&pass=pandora&id=10&return_type=json

set add_collections_policy

= 7.0. 725

Añadir una colección a una política. Es necesario introducir el id de política y que exista dicha política, como un id, nombre o nombre corto de la colección que se quiera añadir la cual debe existir. Ambos campos son obligatorios. devuelve 0 (false) o el id de la colección añadida a una politica (true).

  • op=set
  • op2=add_collections_policy
  • id=id política
  • id2=id, nombre o nombre corto
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=add_collections_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=4&id2=apache_plugin

set remove_collections_policy

= 7.0. 725

Para marcar una colección de una política que esta pendiente de ser borrada es necesario:

  • Un id de política y que exista dicha política. Obligatorio
  • Un id, nombre o nombre corto de la colección que se quiera eliminar la cual debe existir. Obligatorio
  • Y 0 ó 1: siendo 1 marcar como pendiente de ser borrada y si es 0 quita la marca de pendiente de ser borrada por defecto si no se añade este campo intentará marcar para que se pueda borrar.

devuelve 0 (false) o 1 (true).

  • op=set
  • op2=remove_collections_policy
  • id=id política
  • id2=id, nombre o nombre corto
  • other=(bool) 0 ó 1
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=remove_collections_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=4&id2=2&other=1.

set create_plugins_policy

= 7.0. 725

Para añadir un plugin a una política es necesario:

  • Un id de política y que exista dicha política. Obligatorio
  • La cadena del plugin a ejecutar. Obligatorio

Devuelve 0 (false) o el id del plugin que ha sido añadido a una política (true).

  • op=set
  • op2=create_plugins_policy
  • id=id política
  • id2=cadena de texto
  • return_type=(string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=create_plugins_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=2&id2=echo 1

set delete_plugins_policy

= 7.0. 725

Para eliminar un plugin de una política es necesario:

  • Un id de política y que exista dicha política. Obligatorio
  • Un id de plugin que se quiera eliminar. Obligatorio
  • 0 ó 1: siendo 1 marcar como pendiente de ser borrado el plugin y si es 0 quita la marca de pendiente de ser borrado por defecto si no se añade, este campo se marca como pendiente de ser borrado.

devuelve 0 (false) o 1 (true).

  • op=set
  • op2 = delete_plugins_policy
  • id=id política
  • id2 = id plugin
  • other = 0 ó 1
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_plugins_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=2&id2=1&other=1

set linking_policy

= 7.0. 725

Para enlazar un módulo desenlazado de una política es necesario:

  • Un id de agente modulo que este desenlazado.

devuelve 0 (false) o 1 (true).

  • op=set
  • op2 = linking_policy
  • id=id agente modulo
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=linking_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=28

set create_alerts_policy

= 7.0. 725

Para crear alertas de una política es necesario:

  • Un id de política que debe existir (obligatorio).
  • Un id módulo de política si es de tipo normal es obligatorio
  • Una id plantilla que debe existir (obligatorio).
  • Si es o no external 0 (normal), 1 (external). Por defecto es 0 normal
  • Es obligatorio en caso de ser de tipo external (1) nombre de módulo con el que coincidir.

devuelve 0 (false) o el id de la alerta añadida en la política (true).

  • op=set
  • op2 = create_alerts_policy
  • id=id política
  • id2 = id modulo política
  • Other=id modulo política|id template|0 ó 1|nombre de modulo.
  • other_mode=url_encode_separator_|
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=create_alerts_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=2&other=0|2|1|cpu load&other_mode=url_encode_separator_|

set update_alerts_policy

= 7.0. 725

Para actualizar alertas de una política es necesario:

  • Un id de política que debe existir (obligatorio).
  • Activo 0 | En espera 1
  • habilitar 0 | deshabilitar 1

devuelve 0 (false) o el id de la alerta actualizada en la política (true).

  • op=set
  • op2 = update_alerts_policy
  • id=id política
  • other = 0 ó 1 (activar/desactivar) | 0 ó 1 (habilitar/deshabilitar).
  • other_mode=url_encode_separator_|
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=update_alerts_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=7&other=1|1&other_mode=url_encode_separator_|

set delete_alerts_policy

= 7.0. 725

Para eliminar una alerta de una política es necesario:

  • Un id de alerta de política que debe existir (obligatorio).
  • 0 | 1 marcar pendiente de eliminación o no por defecto si no se añade este campo se queda a 1
  • Activo 0 | En espera 1

devuelve 0 (false) o 1 (true).

  • op=set
  • op2 = delete_alerts_policy
  • id=id política
  • id2 = 0 ó 1.
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_alerts_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=7&id2=1

set create_alerts_actions_policy

= 7.0. 725

Para añadir una acción a una alerta de una política es necesario:

  • Un id de alerta de política que debe existir (obligatorio).
  • Un id de acción de política que debe existir (obligatorio).
  • Se le puede añadir número mínimo de disparos o número máximo de disparos por defecto: 0

devuelve 0 (false) o el id de la acción añadida a la alerta de una política (true).

  • op=set
  • op2 = create_alerts_action_policy
  • id=id política
  • id2 = id acción
  • other = min fires | max fires
  • other_mode=url_encode_separator_|
  • return_type = (string, csv, json).

Ejemplo

http://172.16.0.2/pandora_console/include/api.php?op=set&op2=create_alerts_actions_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=1&id2=4&other=5|2&other_mode=url_encode_separator_|

set delete_alerts_actions_policy

= 7.0. 725

Para eliminar una acción de una alerta de una política es necesario:

  • Un id de alerta de política que debe existir (obligatorio).
  • Un id de acción de política que debe existir (obligatorio).
  • op=set
  • op2 = delete_alerts_action_policy
  • id=id política
  • id2 = id acción
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_alerts_actions_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=1&id2=4

set remove_agents_policy

= 7.0. 725

Para eliminar un agente de una política es necesario:

  • Un id de política que debe existir (obligatorio).
  • Un id de agente que debe existir (obligatorio).
  • op=set
  • op2 = remove_agents_policy
  • id=id política
  • id2 = id grupo
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=remove_agents_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=5&id2=2

set add_groups_policy

= 7.0. 725

Para agregar un grupo de una política es necesario:

  • Un id de política que debe existir (obligatorio).
  • Un id de grupo que debe existir (obligatorio).
  • op=set
  • op2 = add_groups_policy
  • id=id política
  • id2 = id grupo
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=add_groups_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=7&id2=12

set remove_groups_policy

= 7.0. 725

Para eliminar un agente de una política es necesario:

  • Un id de política que debe existir (obligatorio).
  • Un id de grupo que debe existir (obligatorio).
  • op=set
  • op2 = add_groups_policy
  • id=id política
  • id2 = id grupo
  • return_type = (string, csv, json).

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=remove_groups_policy&apipass=1234&user=admin&pass=pandora&return_type=string&id=5&id2=2

set create_os

= 7.0. 727

Crea un nuevo sistema operativo con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= create_os (obligatorio)
  • other=<parámetros serializados> (obligatorio) son los datos del sistema operativo, serializados en el siguiente orden:
    • <nombre>
    • <descripcion>
    • <icono>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_os&other=os_name|os_description|os_icon.png&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_os

= 7.0. 727

Actualiza el sistema operativo con los datos pasados como parámetros.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= update_os (obligatorio)
  • id =<id de sistema operativo> (obligatorio)
  • other=<parámetros serializados> (obligatorio) son los datos del sistema operativo, serializados en el siguiente orden:
    • <nombre>
    • <descripcion>
    • <icono>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?id=107&op=set&op2=update_os&other=os_name_to_update|os_description_to_update|os_icon_to_update.png&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set disabled_and_standby

= 7.0. 728

Deshabilita un agente y, si tiene configuración remota, lo pone en modo standby.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= disabled_and_standby (obligatorio)
  • id =<id del agente> (obligatorio). En la metaconsola es el id de tagente, es decir, el id del nodo.
  • id2=<id del nodo> (obligatorio en la metaconsola, innecesario en el nodo)
  • other =<valor> (opcional) Valor (0 para habilitar y 1 para deshabilitar) del nuevo estado. Si no se especifica ningún valor, deshabilita el agente.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?id=2&op=set&op2=disabled_and_standby&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?id=2&id2=1&op=set&op2=disabled_and_standby&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set validate_traps

= 7.0. 728

Permite validar traps.

  • op=set
  • op2 = validate_traps
  • id=id del trap

Ejemplo

https://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_traps&id=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_traps

= 7.0. 728

Permite eliminar un trap:

  • op=set
  • op2 = delete_traps
  • id=id del trap

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?id=2&op=set&op2=delete_traps&id=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set access_process

= 7.0NG. 728

Esta función permite gestionar el acceso a una tercera aplicación a partir de registros en el system audit log de pandorafms. Utiliza diferentes parámetros para procesar una de estas acciones de registro en nuestra aplicación y evita el acceso concurrente de usuarios administradores. Opcionalmente puede prohibir el acceso a usuarios no administradores.

Sintaxis de la llamada:

  • op=set
  • op2 = access_process
  • other =<parámetros obligatorios»
    • <id_usuario>

El id del usuario que intenta acceder a la aplicación, este dato queda registrado y se comprueba en la auditoría para filtrar el acceso, salida, explusión o navegación del usuario a través de la aplicación.

  • <acción> - (login,logout,exclude,browse)

login: Se usa para solicitar el acceso a la aplicación. Devuelve la cadena de texto free y registra nuestro acceso en la auditoría de pandorafms o devuelve la cadena de texto denied si en los registros de la auditoría hay otro usuario que haya accedido anteriormente al sistema y no haya salido aún. También devolverá denied si el parámetro de acceso solo para administradores está activado y el usuario no lo es.

logout: Registra la salida de un usuario de la aplicación para que vuelva a estar permitido el acceso a otros usuarios.

browse: Se debe de utilizar en todas las páginas de la aplicación externa, ya que comprueba si éste usuario sigue siendo el último que ha accedido o ha sido expulsado de la aplicación.

exclude: Expulsa al usuario registrado actualmente y registra el acceso de otro que hayamos enviado en el parámetro de id_usuario.

  • <dirección_ip_aplicación>

IP de la aplicación desde la que se está accediendo. Se registró y se comprueba en la auditoría de pandorafms para comprobar el estado de acceso de los usuarios en la aplicación.

  • <nombre_aplicación>

Nombre de la aplicación desde la que se está accediendo. Se registró y se comprueba en la auditoría de Pandora FMS para comprobar el estado de acceso de los usuarios en la aplicación.

  • <acceso_solo_administradores>

Prohibe el acceso de usuarios no administradores.

Ejemplo (requiere entorno adaptado)

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=access_process&other=1|login|192.168.50.25|external_app|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set create_event_response

Crea una nueva respuesta de evento.

Sintaxis:

  • op=set (obligatorio).
  • op2=create_event_response (obligatorio).
  • return_type=csv ó return_type=json (uno de los dos, obligatorio).
  • other=< parámetros serializados > (todos obligatorios). En este orden:
    • < nombre >
    • < descripción >
    • < objetivo > Si el cuarto parámetro (< tipo >) es command, aquí hay que indicar el comando que se quiere que ejecute la respuesta al evento. En cambio, si es url, se debe indicar la URL (target) a la que se desea acceder como respuesta al evento.
    • < tipo > command ó url.
    • < id del grupo > El usuario deberá tener permisos sobre el grupo indicado.
    • < ancho de la ventana modal > En píxeles (ver < nueva ventana >).
    • < alto de la ventana modal > En píxeles (ver < nueva ventana >).
    • < nueva ventana > 1 ó 0. Indica si la URL se muestra en una ventana nueva (1) o sobre una ventana modal (0).
    • < command timeout > Tiempo para esperar una respuesta en segundos.
    • < parámetros > Parámetros que complementan la ejecución del comando.
    • < id servidor > Identificador del servidor donde se desea que se ejecute el comando. Para la consola local el valor es 0.

Ejemplo (vea sintaxis de la llamada):

/include/api.php?op=set&op2=create_event_response&other=response|description response|touch|command|0|650|400|0|response|0|90&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_event_response

Edita una respuesta de evento existente. El usuario debe de tener permisos sobre el grupo al que pertenece la respuesta para poder editarla.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= update_event_response (obligatorio)
  • return_type=csv|json (obligatorio)
  • id =<id de la respuesta de eventos> (obligatorio)
  • other=<parámetros serializados> (opcionales). En este orden:
    • <nombre>
    • <descripción>
    • <target> Si el cuarto parámetro (<tipo>) es command, aquí hay que indicar el comando que se quiere que ejecute la respuesta al evento. En cambio, si es url, se debe indicar la URL a la que se desea acceder como respuesta al evento.
    • <tipo> command o url.
    • <id del grupo> El usuario deberá tener permisos sobre el grupo indicado.
    • <ancho de la ventana modal> En píxeles.
    • <alto de la ventana modal> En píxeles.
    • <nueva ventana> 1 o 0. Indica si la URL se muestra en una ventana nueva (1) o sobre una ventana modal (0).
    • <command timeout> Respuesta en segundos.
    • <parámetros> Parámetros que complementan la ejecución del comando.
    • <servidor> Id del servidor donde se desea que se ejecute el comando. Para la consola local el valor es 0.

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=update_event_response&id=5&other=response|description response|touch|command|0|650|400|0|response|0|90&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_event_response

Borra una respuesta de evento. El usuario debe de tener permisos sobre el grupo al que pertenece la respuesta para poder borrarla.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=delete_event_reponse (obligatorio)
  • return_type=csv|json
  • id=<id de la respuesta de eventos> (obligatorio)

Ejemplo

http://localhost/pandora_console/include/api.php?op=set&op2=delete_event_response&id=7&apipass=1234&user=admin&pass=pandora

set create_user_profile_info

Crea un nuevo perfil de usuario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_user_profile_info (obligatorio)
  • return_type=csv|json (obligatorio)
  • other=<parámetros serializados> En este orden:
    • <nombre> (obligatorio)
    • <bits de acceso» 1 si se quiere activar el bit y 0 en caso contrario. No son obligatorios pero si no se especifica ningún valor se marcará el bit como no activo. En este orden:

AR|AW|AD|LW|LM|UM|DM|ER|EW|EM|RR|RW|RM|MR|MW|MM|VR|VW|VM|PM

Para saber que permisos debemos activar, visite este enlace.

Ejemplos

Este ejemplo crea un perfil que da un acceso de solo lectura a Pandora FMS, es decir, es igual que el perfil predefinido Operator (read).

http://localhost/pandora_console/include/api.php?op=set&op2=create_user_profile_info&return_type=json&other=API_profile|1|0|0|1|0|0|0|0|0|0|1|0|0|1|0|0|1|0|0|1|0|0|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_user_profile_info

Actualiza nuevo perfil de usuario existente.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_user_profile_info (obligatorio)
  • other=<parámetros serializados> (todos opcionales) En este orden:
    • <nombre>
    • <bits de acceso» 1 si se quiere activar el bit y 0 si se quiere deshabilitar. Si no se especifica ningún valor, no cambiará. En este orden:

AR|AW|AD|LW|LM|UM|DM|ER|EW|EM|RR|RW|RM|MR|MW|MM|VR|VW|VM|PM

Para saber que permisos debemos activar, visite este enlace.

Ejemplos

En este ejemplo se cambia el nombre del perfil con ID 6 a API_profile_updated y se le dan todos los permisos (lectura, escritura y gestión) en lo relacionado a agentes y se elimina el permiso de lectura de eventos.

http://localhost/pandora_console/include/api.php?op=set&op2=update_user_profile_info&return_type=json&id=6&other=API_profile_updated||||1|1|1|||||0||||||||||||&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_user_profile_info

Borra un perfil de usuario. También elimina todas las asignaciones de ese perfil a cualquier usuario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=delete_user_profile_info (obligatorio)
  • return_type=csv|json
  • id =<id del perfil> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=delete_user_profile_info&return_type=json&id=8&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set create_event_filter

Crea un filtro de evento.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= create_event_filter (obligatorio)
  • other=<parámetros serializados>. En este orden:
    • <id_group_filter>
    • <id_group>
    • <event_type [new_agent|alert_recovered|alert_ceased|alert_fired|configuration_change|error|alert_manual_valdation|critical|normal|warning|not_normal|recon_host_detected|system|unknown|going_unknown]>
    • <severity [0|1|2|3|4|5|6|20|21|34]> (0: Mantenimiento, 1: Informativo, 2: Normal, 3: Advertencia, 4: Crítico, 5: Menor, 6: Principal, 20: No normal, 21: Crítico/Normal, 34: Advertencia/Crítico)
    • <event_status [2|3|0|1]> (0: Solo nuevos, 1: Solo validados, 2: Solo en proceso, 3: Solo no validados)
    • <free_search>
    • <agent_id>
    • <pagination_size [25|50|100|200|500]>
    • <max_hours_old>
    • <id_user_ack>
    • <duplicate [0|1]> (0: Todos los eventos, 1: Eventos agrupados)
    • <date_from> (formato: AAAA/MM/DD)
    • <date_to> (formato: AAAA/MM/DD)
    • <events_with_tags> (formato:
["id_etiqueta_1","id_etiqueta_2", "id_etiqueta3", "…"]

)

  • <events_without_tags> (formato:
["id_etiqueta_1","id_etiqueta_2", "id_etiqueta3", "…"]

)

  • <alert_events [0|1]> (0: filtrar por eventos de alertas, 1: Solo eventos de alertas)
  • <module_id>
  • <source>
  • <id_extra>
  • <user_comment>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_event_filter&id=test&other=||error|4|||1||12|||2018-12-09|2018-12-13|["6"]|["10","6","3"]|1|10|||&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_event_filter

Actualiza un filtro de evento.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=update_event_filter (obligatorio)
  • id=<event_filter_id> (obligatorio) debe ser un id de filtro de evento existente.
  • other=<parámetros serializados> (opcionales). En este orden:
    • <id_group_filter>
    • <id_group>
    • <event_type [new_agent|alert_recovered|alert_ceased|alert_fired|configuration_change|error|alert_manual_valdation|critical|normal|warning|not_normal|recon_host_detected|system|unknown|going_unknown]>
    • <severity [0|1|2|3|4|5|6|20|21|34]> (0: Mantenimiento, 1: Informativo, 2: Normal, 3: Advertencia, 4: Crítico, 5: Menor, 6: Principal, 20: No normal, 21: Crítico/Normal, 34: Advertencia/Crítico)
    • <event_status [2|3|0|1]> (0: Solo nuevos, 1: Solo validados, 2: Solo en proceso, 3: Solo no validados)
    • <free_search>
    • <agent_id>
    • <pagination_size [25|50|100|200|500]>
    • <max_hours_old>
    • <id_user_ack>
    • <duplicate [0|1]> (0: Todos los eventos, 1: Eventos agrupados)
    • <date_from> (formato: AAAA/MM/DD)
    • <date_to> (formato: AAAA/MM/DD)
    • <events_with_tags> (formato:
["id_etiqueta_1","id_etiqueta_2", "id_etiqueta3", "…"]

)

  • <events_without_tags> (formato:
["id_etiqueta_1","id_etiqueta_2", "id_etiqueta3", "…"]

)

  • <alert_events [0|1]> (0: filtrar por eventos de alertas, 1: Solo eventos de alertas)
  • <module_id>
  • <source>
  • <id_extra>
  • <user_comment>

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_event_filter&id=195&other=new_name|||alert_recovered|||||||||||||||||&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_event_filter

Borra un filtro de evento.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= delete_event_filter (obligatorio)
  • id =<event_filter_id> (obligatorio) debe ser un id de filtro de evento existente.

Ejemplo

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_event_filter&id=38&apipass=1234&user=admin&pass=pandora

get all_event_filters

Devuelve la lista de filtros de eventos existentes.

Sintaxis de la llamada:

  • op=get (obligatorio)
  • op2= all_event_filters (obligatorio)
  • other=cvs_separator (opcional)

Ejemplos

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_event_filters&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

set create_inventory_module

Crea un nuevo módulo de inventario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= create_inventory_module (obligatorio)
  • return_type=csv|json
  • other=<parámetros serializados> En este orden:
    • <nombre> (obligatorio)
    • <descripción» (obligatorio pero puede ser vacío)
    • <id sistema operation» (obligatorio). Id numérico de la tabla tconfig_os
    • <intérprete» (obligatorio aunque puede ser vacío). Si el intérprete es vacío se interpreta que solo es un módulo de inventario local.
    • <código» (obligatorio pero puede ser vacío) Script que tiene que ejecutarse para obtener los datos de inventario. Debe pasarse en base64.
    • <formato de los datos» (obligatorio) Cabecera de los datos extraídos (separados por ;).
    • <modo block» (obligatorio) 1 o 0.

Ejemplo

Este ejemplo crea módulo llamado OS de inventario que recoge los datos kernel-name y nodename de un sistema Linux.

http://localhost/pandora_console/include/api.php?op=set&op2=create_inventory_module&return_type=json&other=OS|OS_name_description|1|/bin/bash|IyEvYmluL2Jhc2gKZWNobyB1bmFtZSAtbiAtcw==|kernelname;nodename|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set update_inventory_module

Actualiza un módulo de inventario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= update_inventory_module (obligatorio)
  • id=id del módulo de inventario (obligatorio)
  • return_type=csv|json
  • other=<parámetros serializados> En este orden:
    • <nombre> (obligatorio)
    • <descripción» (obligatorio pero puede ser vacío)
    • <id sistema operation» (obligatorio). Id numérico de la tabla tconfig_os
    • <intérprete» (obligatorio aunque puede ser vacío). Si el intérprete es vacío se interpreta que solo es un módulo de inventario local.
    • <código» (obligatorio pero puede ser vacío) Script que tiene que ejecutarse para obtener los datos de inventario. Debe pasarse en base64.
    • <formato de los datos» (obligatorio) Cabecera de los datos extraídos (separados por ;).
    • <modo block» (obligatorio) 1 o 0.

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=update_inventory_module&return_type=json&id=42&other=OS_easy|OS_name_description|1|/bin/bash|IyEvYmluL2Jhc2gKZWNobyB1bmFtZSAtbiAtcw==|kernelname;nodename|0&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_inventory_module

Borra un perfil de usuario. También elimina todas las asignaciones de ese perfil a cualquier usuario.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= delete_inventory_module (obligatorio)
  • return_type=csv|json
  • id =<id del módulo de inventario> (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=delete_inventory_module&return_type=json&id=42&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set create_collection

Crea una colección.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= create_collection (obligatorio)
  • other=<valores serializados> (obligatorio) Valores serializados para crear la colección:
    • <name>
    • <short_name>
    • <id_group>
    • <description>

Es necesario acompañarlo con 'other_mode' de la siguiente manera: other_mode=url_encode_separator_<separador> para pasar el separador de los valores serializados de other.

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=create_collection&other=test_plugin|test_p|0|test&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

set delete_collection

Elimina una colección.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=delete_collection (obligatorio)
  • id=id_collection (obligatorio)

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=delete_collection&id=15&apipass=1234&user=admin&pass=pandora

set enable_disable_discovery_task

Habilita o deshabilita una tarea en Discovery Task list.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= enable_disable_discovery_task (obligatorio)
  • id=identificador de la tarea (obligatorio)
  • other = 1 para deshabilitar y 0 para habilitar

Ejemplos

http://localhost/pandora_console/include/api.php?op=set&op2=enable_disable_discovery_task&id=1&other=1&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=

set create_module_policy_json

Agrega un Módulo a la política objetivo por medio de una definición hecha en formato JSON.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2=create_module_policy_json (obligatorio)
  • id=policy id (obligatorio)
  • other=JSON codificado en base64 con la definición del módulo. Campos posibles (pseudo formato JSON):
{
name: <value>, // mandatory
id_module: <value>, // mandatory
id_tipo_modulo: <value>, // mandatory
configuration_data: <value>,
description: <value>,
unit: <value>,
max: <value>,
min: <value>,
module_interval: <value>,
ip_target: <value>,
tcp_port: <value>,
tcp_send: <value>,
tcp_rcv: <value>,
snmp_community: <value>,
snmp_oid: <value>,
id_module_group: <value>,
flag: <value>,
disabled: <value>,
id_export: <value>,
plugin_user: <value>,
plugin_pass: <value>,
plugin_parameter: <value>,
id_plugin: <value>,
post_process: <value>,
prediction_module: <value>,
max_timeout: <value>,
max_retries: <value>,
custom_id: <value>,
history_data: <value>,
min_warning: <value>,
max_warning: <value>,
str_warning: <value>,
min_critical: <value>,
max_critical: <value>,
str_critical: <value>,
min_ff_event: <value>,
custom_string_1: <value>,
custom_string_2: <value>,
custom_string_3: <value>,
custom_integer_1: <value>,
custom_integer_2: <value>,
pending_delete: <value>,
critical_instructions: <value>,
warning_instructions: <value>,
unknown_instructions: <value>,
critical_inverse: <value>,
warning_inverse: <value>,
id_category: <value>,
module_ff_interval: <value>,
quiet: <value>,
cron_interval: <value>,
macros: <value>,
disabled_types_event: {
"going_unknwon": 1, // Disable going unknown events.
},
module_macros: <value>,
min_ff_event_normal: <value>,
min_ff_event_warning: <value>,
min_ff_event_critical: <value>,
ff_type: <value>,
each_ff: <value>,
ff_timeout: <value>,
dynamic_interval: <value>,
dynamic_max: <value>,
dynamic_min: <value>,
dynamic_next: <value>,
dynamic_two_tailed: <value>,
prediction_sample_window: <value>,
prediction_samples: <value>,
prediction_threshold: <value>,
cps: <value>,
}

Ejemplos

En formato JSON antes de convertir a base64:

{
  "id_tipo_modulo": 1,
  "id_modulo": 10,
  "name": "sample module",
  "description": "Module created by API",
  "configuration_data": "module_begin\nmodule_name sample module\nmodule_type generic_data\nmodule_exec echo 1\nmodule_end",
  "min_warning": 2,
  "max_warning": 5,
  "min_critical": 5,
  "max_critical": 7
}

Una vez codificado en base64:

http://localhost/pandora_console/include/api.php?op=set&op2=create_module_policy_json&id=1&other=ewogICJpZF90aXBvX21vZHVsbyI6IDEsCiAgImlkX21vZHVsbyI6IDEwLAogICJuYW1lIjogInNhbXBsZSBtb2R1bGUiLAogICJkZXNjcmlwdGlvbiI6ICJNb2R1bGUgY3JlYXRlZCBieSBBUEkiLAogICJjb25maWd1cmF0aW9uX2RhdGEiOiAibW9kdWxlX2JlZ2luXG5tb2R1bGVfbmFtZSBzYW1wbGUgbW9kdWxlXG5tb2R1bGVfdHlwZSBnZW5lcmljX2RhdGFcbm1vZHVsZV9leGVjIGVjaG8gMVxubW9kdWxlX2VuZCIsCiAgIm1pbl93YXJuaW5nIjogMiwKICAibWF4X3dhcm5pbmciOiA1LAogICJtaW5fY3JpdGljYWwiOiA1LAogICJtYXhfY3JpdGljYWwiOiA3Cn0K&apipass=pandora&user=admin&pass=pandora

set update_module_policy_json

Actualiza la definición de un Módulo existente de la política objetivo por medio de una definición hecha en formato JSON.

Sintaxis de la llamada:

  • op=set (obligatorio)
  • op2= update_module_policy_json (obligatorio)
  • id = policy id (obligatorio)
  • other =JSON codificado en base64 con la definición del módulo. Campos posibles (pseudo formato JSON):
{
name: <value>, // mandatory
id_module: <value>, // mandatory
id_tipo_modulo: <value>, // mandatory
configuration_data: <value>,
description: <value>,
unit: <value>,
max: <value>,
min: <value>,
module_interval: <value>,
ip_target: <value>,
tcp_port: <value>,
tcp_send: <value>,
tcp_rcv: <value>,
snmp_community: <value>,
snmp_oid: <value>,
id_module_group: <value>,
flag: <value>,
disabled: <value>,
id_export: <value>,
plugin_user: <value>,
plugin_pass: <value>,
plugin_parameter: <value>,
id_plugin: <value>,
post_process: <value>,
prediction_module: <value>,
max_timeout: <value>,
max_retries: <value>,
custom_id: <value>,
history_data: <value>,
min_warning: <value>,
max_warning: <value>,
str_warning: <value>,
min_critical: <value>,
max_critical: <value>,
str_critical: <value>,
min_ff_event: <value>,
custom_string_1: <value>,
custom_string_2: <value>,
custom_string_3: <value>,
custom_integer_1: <value>,
custom_integer_2: <value>,
pending_delete: <value>,
critical_instructions: <value>,
warning_instructions: <value>,
unknown_instructions: <value>,
critical_inverse: <value>,
warning_inverse: <value>,
id_category: <value>,
module_ff_interval: <value>,
quiet: <value>,
cron_interval: <value>,
macros: <value>,
disabled_types_event: {
"going_unknwon": 1, // Disable going unknown events.
},
module_macros: <value>,
min_ff_event_normal: <value>,
min_ff_event_warning: <value>,
min_ff_event_critical: <value>,
ff_type: <value>,
each_ff: <value>,
ff_timeout: <value>,
dynamic_interval: <value>,
dynamic_max: <value>,
dynamic_min: <value>,
dynamic_next: <value>,
dynamic_two_tailed: <value>,
prediction_sample_window: <value>,
prediction_samples: <value>,
prediction_threshold: <value>,
cps: <value>,
}

Ejemplos

En formato JSON antes de convertir a base64:

{
  "id_tipo_modulo": 1,
  "id_modulo": 1,
  "name": "nombre editado",
  "description": "Module created by API",
  "configuration_data": "module_begin\nmodule_name sample module\nmodule_type generic_data\nmodule_exec echo 1\nmodule_end",
  "min_warning": 3,
  "max_warning": 6,
  "min_critical": 6,
  "max_critical": 8
}

Una vez codificado en base64:

http://localhost/pandora_console/include/api.php?op=set&op2=update_module_policy_json&id=1&id2=43&other=ewogICJpZF90aXBvX21vZHVsbyI6IDEsCiAgImlkX21vZHVsbyI6IDEsCiAgIm5hbWUiOiAibm9tYnJlIGVkaXRhZG8iLAogICJkZXNjcmlwdGlvbiI6ICJNb2R1bGUgY3JlYXRlZCBieSBBUEkiLAogICJjb25maWd1cmF0aW9uX2RhdGEiOiAibW9kdWxlX2JlZ2luXG5tb2R1bGVfbmFtZSBzYW1wbGUgbW9kdWxlXG5tb2R1bGVfdHlwZSBnZW5lcmljX2RhdGFcbm1vZHVsZV9leGVjIGVjaG8gMVxubW9kdWxlX2VuZCIsCiAgIm1pbl93YXJuaW5nIjogMywKICAibWF4X3dhcm5pbmciOiA2LAogICJtaW5fY3JpdGljYWwiOiA2LAogICJtYXhfY3JpdGljYWwiOiA4Cn0K&apipass=pandora&user=admin&pass=pandora

set event_custom_id

Para establecer un identificador personalizado en un evento.

Sintaxis de la llamada:

  • op=get (obligatorio).
  • op2=set (obligatorio).
  • id= < id_evento > (obligatorio, valor numérico).
  • id2= < id_personalizado_de_evento > (obligatorio, valor alfanumérico).
  • other=< id_nodo > Si se ejecuta en Command Center (Metaconsola), el identificador de nodo. Valor por defecto 0 (Command Center).

Ejemplo (véase sintaxis de la llamada):

/include/api.php?op=set&op2=event_custom_id&id=110&id2=9999&apipass=1234&user=admin&pass=pandora

Ejemplo para un nodo en Command Center:

/include/api.php?op=set&op2=event_custom_id&id=3831949&id2=Test123&other=1&apipass=1234&user=admin&pass=pandora

Ejemplos

Distintos ejemplos simples de llamada al API en distintos lenguajes.

Ejemplo

http://127.0.0.1/pandora5/include/api.php?apipass=1234&user=admin&pass=pandora&op=set&op2=gis_agent&id=582&other_mode=url_encode_separator_|&other=2|2|0|0|0|2000-01-01 01:01:01|0|666|aaa|bbb|ccc

PHP

<?php
$ip = '192.168.70.110';
$pandora_url = '/pandora5';
$apipass = '1234';
$user = 'admin';
$password = 'pandora';
$op = 'get';
$op2 = 'all_agents';
$return_type = 'csv';
$other = '';
$other_mode = '';

$url = "http://" . $ip . $pandora_url . "/include/api.php";

$url .= "?";
$url .= "apipass=" . $apipass;
$url .= "&user=" . $user;
$url .= "&pass=" . $password;
$url .= "&op=" . $op;
$url .= "&op2=" . $op2;
if ($id !== '') {
    $url .= "&id=" . $id;
}
if ($id2 !== '') {
    $url .= "&id2=" . $id2;
}
if ($return_type !== '') {
    $url .= "&return_type=" . $return_type;
}
if ($other !== '') {
    $url .= "&other_mode=" . $other_mode;
    $url .= "&other=" . $other;
}

$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $url);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curlObj);
curl_close($curlObj);

$agents = array();
if (!empty($result)) {
    $lines = explode("\n", $result);
    foreach ($lines as $line) {
        $fields = explode(";", $line);

        $agent = array();
        $agent['id_agent'] = $fields[0];
        $agent['name'] = $fields[1];
        $agent['ip'] = $fields[2];
        $agent['description'] = $fields[3];
        $agent['os_name'] = $fields[4];
        $agent['url_address'] = $fields[5];

        $agents[] = $agent;
    }
}

print_list_agents($agents);

function print_list_agents($agents) {
    echo "<table border='1' style='empty-cells: show;'>";

    echo "<thead>";
    echo "<tr>";
    echo "<th>" . "ID" . "</th>";
    echo "<th>" . "Name" . "</th>";
    echo "<th>" . "IP" . "</th>";
    echo "<th>" . "Description" . "</th>";
    echo "<th>" . "OS" . "</th>";
    echo "<th>" . "URL" . "</th>";
    echo "</tr>";
    echo "</thead>";

    foreach ($agents as $agent) {
        echo "<tr>";
        echo "<td>" . $agent['id_agent'] . "</td>";
        echo "<td>" . $agent['name'] . "</td>";
        echo "<td>" . $agent['ip'] . "</td>";
        echo "<td>" . $agent['description'] . "</td>";
        echo "<td>" . $agent['os_name'] . "</td>";
        echo "<td>" . $agent['url_address'] . "</td>";
        echo "</tr>";
    }
    echo "</table>";
}
?>

Python

import pycurl
import cStringIO
import pprint

def main():
    ip = '192.168.70.110'
    pandora_url = '/pandora5'
    apipass = '1234'
    user = 'admin'
    password = 'pandora'
    op = 'get'
    op2 = 'all_agents'
    return_type = 'csv'
    other = ''
    other_mode = ''

    url = "http://"   ip    pandora_url   "/include/api.php"

    url  = "?"
    url  = "apipass="   apipass
    url  = "&user="    user
    url  = "&pass="   password
    url  = "&op="   op
    url  = "&op2="   op2

    buf = cStringIO.StringIO()

    c = pycurl.Curl()
    c.setopt(c.URL, url)
    c.setopt(c.WRITEFUNCTION, buf.write)
    c.perform()

    output = buf.getvalue()
    buf.close()

    lines = output.split("\n")
    agents = []
    for line in lines:
        if not line:
            continue

        fields = line.split(";")
        agent = {}
        agent['id_agent'] = fields[0]
        agent['name'] = fields[1]
        agent['ip'] = fields[2]
        agent['description'] = fields[3]
        agent['os_name'] = fields[4]
        agent['url_address'] = fields[5]

        agents.append(agent)

    for agent in agents:
        print("---- Agent #"   agent['id_agent']   " ----")
        print("Name: "   agent['name'])
        print("IP: "   agent['ip'])
        print("Description: "   agent['description'])
        print("OS: "   agent['os_name'])
        print("URL: "   agent['url_address'])
        print("")

if __name__ == "__main__":
    main()

Perl

use strict;
use warnings;
use WWW::Curl::Easy;

sub write_callback {
    my ($chunk,$variable) = @_;

    push @{$variable}, $chunk;
    return length($chunk);
}

my $ip = '192.168.70.110';
my $pandora_url = '/pandora5';
my $apipass = '1234';
my $user = 'admin';
my $password = 'pandora';
my $op = 'get';
my $op2 = 'all_agents';
my $return_type = 'csv';
my $other = '';
my $other_mode = '';

my $url = "http://" . $ip  . $pandora_url . "/include/api.php";
$url .= "?";
$url .= "apipass=" . $apipass;
$url .= "&user=" . $user;
$url .= "&pass=" . $password;
$url .= "&op=" . $op;
$url .= "&op2=" . $op2;

my @body;

my $curl = WWW::Curl::Easy->new;
$curl->setopt(CURLOPT_URL, $url);
$curl->setopt(CURLOPT_WRITEFUNCTION, \&write_callback);
$curl->setopt(CURLOPT_FILE, \@body);
$curl->perform();

my $body=join("",@body);
my @lines = split("\n", $body);

foreach my $line (@lines) {
    my @fields = split(';', $line);

    print("\n---- Agent #" . $fields[0] . " ----");
    print("\nName: " .  $fields[1]);
    print("\nIP: " .  $fields[2]);
    print("\nDescription: " . $fields[3]);
    print("\nOS: "  . $fields[4]);
    print("\n");
}

Ruby

require 'open-uri'

ip = '192.168.70.110'
pandora_url = '/pandora5'
apipass = '1234'
user = 'admin'
password = 'pandora'
op = 'get'
op2 = 'all_agents'
return_type = 'csv'
other = ''
other_mode = ''

url = "http://"   ip    pandora_url   "/include/api.php"

url  = "?"
url  = "apipass="   apipass
url  = "&user="    user
url  = "&pass="   password
url  = "&op="   op
url  = "&op2="   op2

agents = []

open(url) do |content|

    content.each do |line|
        agent = {}

        tokens = line.split(";")

        agent[:id_agent] = tokens[0]
        agent[:name] = tokens[1]
        agent[:ip] = tokens[2]
        agent[:description] = tokens[3]
        agent[:os_name] = tokens[4]
        agent[:url_address] = tokens[5]

        agents.push agent
    end
end

agents.each do |agent|
    print("---- Agent #"   (agent[:id_agent] || "")   " ----\n")
    print("Name: "   (agent[:name] || "")   "\n")
    print("IP: "   (agent[:ip] || "")   "\n")
    print("Description: "   (agent[:description] || "")   "\n")
    print("OS: "   (agent[:os_name] || "")   "\n")
    print("URL: "   (agent[:url_address] || "")   "\n")
    print("\n")
end

Lua

require("curl")

local content = ""

function WriteMemoryCallback(s)
    content = content .. s

    return string.len(s)
end

ip = '192.168.70.110'
pandora_url = '/pandora5'
apipass = '1234'
user = 'admin'
password = 'pandora'
op = 'get'
op2 = 'all_agents'
return_type = 'csv'
other = ''
other_mode = ''

url = "http://" .. ip  .. pandora_url .. "/include/api.php"

url = url .. "?"
url = url .. "apipass=" .. apipass
url = url .. "&user=" .. user
url = url .. "&pass=" .. password
url = url .. "&op=" .. op
url = url .. "&op2=" .. op2

if curl.new then c = curl.new() else c = curl.easy_init() end

c:setopt(curl.OPT_URL, url)
c:setopt(curl.OPT_WRITEFUNCTION, WriteMemoryCallback)

c:perform()

for line in string.gmatch(content, "[^\n] ") do
    line = string.gsub(line, "\n", "")

    count = 0
    for field in string.gmatch(line, "[^\;] ") do
        if count == 0 then
            print("---- Agent #" .. field .. " ----")
        end
        if count == 1 then
            print("Name: " .. field)
        end
        if count == 2 then
            print("IP: " .. field)
        end
        if count == 3 then
            print("Description: " .. field)
        end
        if count == 4 then
            print("OS: " .. field)
        end
        if count == 5 then
            print("URL: " .. field)
        end

        count = count   1
    end
    print("")
end

Brainfuck

[-]>[-]<>         [<       >-]<-.>     [<   >-]<----.>    [<  >-]<---.>    [<---->-]< .>   [< >-]< .
-.>        [<-------->-]<--.>   [<--->-]<---.>        [<      >-]<   .
 .>        [<-------->-]<-----.>         [<       >-]<----.
  .
--.>   [<--->-]<.>   [< >-]<.>  [<>-]< .>  [<-->-]<-.>         [<--------->-]< .>         [<       >-]<---.
 .>         [<--------->-]< .>         [<       >-]<  .>    [<---->-]<.>   [< >-]<.>   [<--->-]< .>   [< >-]<-.>         [<--------->-]< .>         [<       >-]<  .>   [<--->-]<--.
----.>   [< >-]<-.
   .
-.>         [<--------->-]< .>         [<       >-]<-.>    [<---->-]<.>    [<  >-]<.>    [<---->-]<-.>        [<-------->-]<-.>        [<      >-]<       .>   [<--->-]< .
  .
  .>    [<  >-]<---.>  [<-->-]<--.
   .>        [<-------->-]<---.>   [<--->-]<---.>         [<       >-]<-.>   [<--->-]<--.>    [<  >-]<---.
---.>         [<--------->-]< .>         [<       >-]<    .>     [<----->-]<   .>   [< >-]< .>   [<--->-]< .>        [<-------->-]<-----.>         [<       >-]<----.>   [< >-]<-.>    [<---->-]<--.>  [<>-]<.>   [< >-]<--.
    .>         [<--------->-]<--.>        [<      >-]<     .>   [< >-]<  .>   [<--->-]<.
  .
--.>   [< >-]<--.>  [<>-]<.>   [<--->-]< .>  [<>-]< .>  [<-->-]<-.
    .>        [<-------->-]<-----.

Java (Android)

Puede ver nuestro proyecto (Pandroid Event Viewer) en Repositorio SVN de Pandroid Event Viewer source code en GitHub pero aquí esta el trozo de código más importante que realiza la llamada al API para sacar los eventos.

/**
     * Performs an http get petition.
     *
     * @param context
     *            Application context.
     * @param additionalParameters
     *            Petition additional parameters
     * @return Petition result.
     * @throws IOException
     *             If there is any problem with the connection.
     */
    public static String httpGet(Context context,
            List<NameValuePair> additionalParameters) throws IOException {
        SharedPreferences preferences = context.getSharedPreferences(
                context.getString(R.string.const_string_preferences),
                Activity.MODE_PRIVATE);

        String url = preferences.getString("url", "")   "/include/api.php";
        String user = preferences.getString("user", "");
        String password = preferences.getString("password", "");
        String apiPassword = preferences.getString("api_password", "");
        if (url.length() == 0 || user.length() == 0) {
            return "";
        }
        ArrayList<NameValuePair> parameters = new ArrayList<NameValuePair>();
        parameters.add(new BasicNameValuePair("user", user));
        parameters.add(new BasicNameValuePair("pass", password));
        if (apiPassword.length()> 0) {
            parameters.add(new BasicNameValuePair("apipass", apiPassword));
        }
        parameters.addAll(additionalParameters);
        Log.i(TAG, "sent: "   url);
        if (url.toLowerCase().contains("https")) {
            // Secure connection
            return Core.httpsGet(url, parameters);
        } else {
            HttpParams params = new BasicHttpParams();
            HttpConnectionParams.setConnectionTimeout(params,
                    CONNECTION_TIMEOUT);
            HttpConnectionParams.setSoTimeout(params, CONNECTION_TIMEOUT);
            DefaultHttpClient httpClient = new DefaultHttpClient(params);
            UrlEncodedFormEntity entity;
            HttpPost httpPost;
            HttpResponse response;
            HttpEntity entityResponse;
            String return_api;
            httpPost = new HttpPost(url);
            entity = new UrlEncodedFormEntity(parameters);
            httpPost.setEntity(entity);
            response = httpClient.execute(httpPost);
            entityResponse = response.getEntity();
            return_api = Core
                    .convertStreamToString(entityResponse.getContent());
            Log.i(TAG, "received: "   return_api);
            return return_api;
        }
    }

Extensión de nuevas llamadas en el API

Para desarrollar nuevas llamadas para el API tiene que tener en cuenta que:

  • La llamada tiene que estar inscrita como una función en el fichero:
<instalación Pandora Console>/include/functions_api.php
  • La función tendrá la siguiente estructura: El prefijo api, el tipo de llamada get, set o help (según si se leen datos, se escriben datos o se obtiene ayuda) y el nombre de la llamada, intentando ser coherente con la operación, por ejemplo:
function api_get_[nombre_llamada](parametros)
  • La función puede no tener parámetros, pero si los tiene, los parámetros recibidos serán los siguientes y en el mismo orden:
    • id: Primer operador o parámetro, contiene un string.
    • id2: Segundo operador o parámetro, contiene un string.
    • other: Resto de operadores o parámetros, contenido como un array de dos posiciones:
      • $other['type']: Que puede ser string o array.
      • $other['data']: Que será un string con el parámetro o un array de índices numéricos con los parámetros pasados.
  • returnType: String que especifica el tipo de retorno que tendrá la llamada. En principio es transparente para usted, pero puede usarlo o modificarlo si fuese necesario.

Nuevas llamadas en el API desde las extensiones de Pandora FMS

Es posible crear nuevas llamadas del API sin utilizar …/include/functions_api.php. La forma de hacerlo es añadiendo en el directorio de una extensión de Pandora FMS un fichero con el siguiente nombre:

<nombre_de_la_extensión>.api.php

y dentro de este fichero crear las funciones deseadas con las mismas consideraciones de la API estándar pero con el prefijo api.extensión en lugar de api.

Por ejemplo, teniendo una extensión llamada module_groups con la ruta:

<instalación de Pandora>/extensions/module_groups

Usted debe crear un fichero llamado module_groups.api.php en este directorio. En este fichero estarán las funciones deseadas, por ejemplo una función para obtener el número de módulos de un grupo. Esta función debe tener un nombre parecido a: apiextension_get_groupmodules.

Ejemplo de función

En esta función se han usado funciones imaginarias.

function apiextension_get_groupmodules($group_name) {
    $group_id = group_id_from_name($group_name);
    if($group_id == false) {
       echo 'Group doesnt exist';
       return;
    }

    $number_of_modules = group_modules($group_id);
    echo $number_of_modules;
}

Ejemplo de llamada

En esta llamada se obtiene el número de módulos del grupo Servers:

http://127.0.0.1/pandora_console/include/api.php?op=get&op2=extension&ext_name=module_groups&ext_function=groupmodules&id=Servers&apipass=1234&user=admin&pass=pandora

Funciones API

Las siguientes funciones las puede usar en el código de la función de su llamada :

  • returnError(typeError, returnType): Devuelve un error de manera uniforme para todas las llamadas.
    • typeError: De momento 'id_not_found' o null.
    • returnType: De momento 'string' o mensaje de error.
  • returnData(returnType, data, separator): Es la función que devuelve los datos de la llamada del API.
    • returnType: Que puede ser 'string', 'csv', 'csv_head'
    • data: Es un array que contiene los datos asi como su formato, tiene los siguientes campos:
      • 'type' (obligatorio): Que puede ser 'string' y 'array'.
      • 'list_index' (opcional): Contiene un array de índices numéricos conteniendo los índices alfanuméricos que se desean sacar por salida.
      • 'data' (obligatorio): Contiene o un string con el dato o un array de índice alfanuméricos o numéricos con los datos.

Ejemplo

function api_get_module_last_value($idAgentModule, $trash1, $other = ';', $returnType)
{
    $sql = sprintf('SELECT datos FROM tagente_estado WHERE id_agente_modulo = %d', $idAgentModule);
    $value = get_db_value_sql($sql);
    if ($value === false) {
        switch ($other['type']) {
            case 'string':
                switch ($other['data']) {
                    case 'error_message':
                    default:
                        returnError('id_not_found', $returnType);
                    break;
                }
                break;
            case 'array':
                switch ($other['data'][0]) {
                    case 'error_value':
                        returnData($returnType, array('type' => 'string', 'data' => $other['data'][1]));
                        break;
                }
                break;
        }
    }
    else {
        $data = array('type' => 'string', 'data' => $value);
        returnData($returnType, $data);
    }
}

Futuro del API.php

Algunas ideas para el futuro del api.php son:

  • Ampliar el conjunto de llamadas del API.
  • Devolver y recoger valores en xml, json…
  • Aumentar las securización de las llamadas para entornos inseguros.
  • Integrar con estándares de terceras herramientas.

Volver al Índice de Documentación Pandora FMS

Retorno

Cuando la API deniega el acceso, será devuelta una simple cadena de texto auth error.

Ejemplos

En esta documentación se utiliza 1234 para la contraseña del API, el nombre de usuario es admin y la contraseña es pandora.

Vea la sintaxis de llamada:

.../include/api.php?op=get&op2=plugins&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

Condiciones de acceso:

  • La dirección IP de origen está en la lista de ACL (o se utiliza * para ello).
  • La contraseña de la API no está establecida o es 1234.
  • El usuario admin existe y su contraseña de usuario es pandora .

API checker

Acceda desde el menú de Administración: Admin toolsAPI checker.

Versión 768 o posterior: Se puede autenticar con API Token por medio de el envío en las cabeceras HTTP de un bearer token generado por cada usuario y para su propio uso privado y particular. Consulte “Editar mi usuario” para más detalles.


Flujo de trabajo del sistema de seguridad

A partir de la versión 4.0.2, la API tiene algunas mejoras en el manejo de la seguridad. Esto se implementa ahora gracias a tres elementos:

  • Filtrado IP. Sólo las IP's listadas podrán acceder a la API.
  • Password global para la API, si se define, es obligatorio usarla en todas las llamadas.
  • Usuario y password válido en la consola. Se utilizarán sus permisos para cada operación solicitada.

Esto se explica en el siguiente workflow:

Volver al Índice de Documentación Pandora FMS