Pandora: Documentation en: Annex ExternalAPI

From Pandora FMS Wiki
Jump to: navigation, search

Go back to Pandora FMS documentation index

Contents

1 Pandora FMS External API

The Pandora FMS External API is used doing remote calls (through HTTP) on the file /include/api.php. This is the method that has been defined in Pandora FMS to integrate applications from third parts with Pandora FMS. It basically consist on a call with the parameters formated to receive a value or a list of values that after its application it will use to do operations.

A call to the API.php is as simple as this:

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

The API only can receive the following parameters:

  • op (required): is the first parameter that specify the nature of the operation, which could be "get" or "set" or "help":
  • get: returns a value or values.
  • set: send a value or values.
  • help: returns a little help from the calls
  • op2 (required): the call with an explanatory name of the one that works.
  • id (optional): first parameter of the call.
  • id2 (optional): second parameter of the call.
  • other (optional): third parameter of the call, sometimes it could be a list of serial values..
  • other_mode (optional): format of the serial. list of posible values:
  • url_encode: el valor de other es un alfanumérico formateado como UrlEncode.
  • url_encode_separator_<separador>:the value will be a serial value list with the divider character, for example:
...other=peras|melones|sandias&other_mode=url_encode_separator_|
  • returnType (optional): return format of the value or values. The current available values are:
  • string: returns the value as it is as an alphanumeric one.
  • csv:return the values as a CSV separated by default with the ";" character (fields) and with CR (files)
  • csv_head: returns same as with "csv" except that it adds a first file with the field names to return.

1.1 Security

At the moment, the security is based on an IPs list that will have access to the tool. And it will be configured as we could see at the image, in the Pandora Console configuration options.

If you introduce the character * in the box text, the ACL check will be omitted relegating the security to the protocol and to the environment. In the same way, the character * can be used as wildcard. In example. 183.234.33.*

Screnshot of api acl list setup.png

You can also set a password for the actions of the API.

In order to setup the password it is necessary to follow these steps:

  • apipass: Api password configured in the console. You can do it in the following configuration view (Administration>Setup>):

Nota: Before the 4.0.2 version, this parameter was pass

Api password.png

To access to the actions of the API, is necessary give a valid user and pass of Pandora FMS, too.

  • user: Valid user of Pandora FMS
  • pass: The password of the given user

Note: In the API calls the passwords are uncodified. So please be careful and use SSL connections to avoid sniffers. The API allows POST petitions to codify it when use SSL/HTTPS.

1.1.1 Return

When the API denies the access, a simple string "auth error" is returned.

1.1.2 Examples

In this case, is provided the API password 1234 and the access credentials are user: admin and password: pandora.

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

Access conditions:

  • The origin IP is in the ACLs IP list
  • The API password is not setted or is 1234
  • The user admin exists and their password is pandora

1.1.3 Security Workflow

Starting from version 4.0.2, the API will have several security improvements, and this is implemented by three factors:

  • IP filtering. Only listed / filtered IP will be allowed to connect the API.
  • Global API password, if defined, needed to use the API.
  • User & Password in the console, need to be valid and have permissions to perform the operation requested.

This is explained in this workflow:

API access.svg

1.2 New Calls Extension in the API

To develop new calls for the API you have to consider that:

  • The call has to be inscribed as a function in the file <instalación Pandora Console>/include/functions_api.php .
  • The function must have the next structure: The prefix "api", the kind of operation "get", "set" or "help" (depend if is a data read, data write or retrieve help operation) and the name of the call, trying to be coherent with the operation, as for example:function api_get_[call_name](parameters) .
  • The function can have no parameters, but if it have it, the parameters received will be the following in the same order:
  • id: first operator or parameter, contains an string.
  • id2: second operator or parameter, contains an string.
  • other: rest of operators or parameters, contains as an array of two positions:
  • $other['type']: that could be string or array.
  • $other['data']: that will be an string with the parameter or an array of numeric index with the past parameters.
  • returnType: string that specify the kind of return that the call will have. It is usually transparent for you, but you could use or modify it if necessary.

1.2.1 New Calls in the API from the Pandora FMS extensions

Is possible to create new API calls without use /include/functions_api.php. The way is adding into a Pandora FMS extension directory a file with the following name: <extension_name>.api.php and into this file create the desired functions with the same considerations of the standard API but with "apiextension" prefix instead of "api".


For example, having an extension called "module_groups" with the path <Pandora installation>/extensions/module_groups we must create a file called module_groups.api.php into this directory.


Into this file will be the desired functions, for example a function to get the number of modules in a group. This function must have a name like: "apiextension_get_groupmodules".

1.2.1.1 Function example

In this function have been used imaginary functions.

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;
}

1.2.1.2 Call example

This call example gets the number of modules of the group "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

1.2.2 API Functions

The following functions could be used in the function code of your call:

  • returnError(typeError, returnType): gives back an error in an standardized way for all calls.
  • typeError: by now 'id_not_found' or null.
  • returnType: by now 'string' or error message.
  • returnData(returnType, data, separator): is the function that returns the API call data.
  • returnType: that could be 'string', 'csv', 'csv_head'
  • data: is an array that contains the data, as well as its format. It has the following fields:
  • 'type' (required): that could be 'string' and 'array'.
  • 'list_index' (optional): contains a numeric index array containing the alphanumeric index that are wanted to take out through exit.
  • 'data' (required): contains and string with the data or an array of alphanumeric index or numeric index with the data.

1.2.3 Example

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);
	}
}

1.3 API Calls

They are divided in two groups, depending on if they get back or write data in Pandora FMS.

There is an exception: The info retrieving call.

1.3.1 INFO RETRIEVING

Returns the version of Pandora Console in a similar way of the call get test but without check the API connection.

This call is useful to verify that this path allows a Pandora FMS installation and to retrieve the version before the authentication.

The returned info can be retrieved from the login screen, so it doesn't be considered a security vulnerability.

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

A return sample could be: Pandora FMS v5.0 - PC131015

1.3.2 GET

It gets back the required data.

1.3.2.1 get test

Checks the connection to API and returns the version of Pandora Console.

This feature is in Metaconsole.


Call syntax: Without parameters

1.3.2.1.1 Examples

This example will return OK,[version],[build]

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

A return sample could be: OK,v4.0.2,PC120614

1.3.2.2 get all_agents

Returns a list of agents filters by the filter in other parameter.

Call syntax:

  • op=get (required)
  • op2=all_agents (required)
  • return_type= csv or json (required)
  • other=<parámetros serializados> (optional) serialized parameters to filter the agent search:
  • <filter_so>
  • <filter_group>
  • <filter_module_states>
  • <filter_alias>
  • <filter_policy>
  • <csv_separator>
1.3.2.2.1 Examples

This example will return all agents which id_os is equal to 1, id_group equal to 2, state equal to warning, their alias will contain 'j', and the policy associated equal to 2.

CSV example: 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_%7C&apipass=1234&user=admin&pass=pandora
JSON example: 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_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.3 get module_last_value

Returns the last value of module. This module is filtered by the ID of module pass as parameter id. With the other parameter you can add a error code that your application knows and it is out range of module values.

Call syntax:

  • op=get (required)
  • op2=module_last_value (required)
  • id=<índex> (required) should be an index of an agent module.
  • other=<error return> (optional) that you want to it gives back if there is an error(usually not located in the database.
  • Error return code are:
  • 'error_message' returns an error in a text message.
  • 'error_value'<separator><code or value&gt gives back this code or error value. But it is necessary to enclose it with 'other_mode',like other_mode=url_encode_separator_<separador&gt to put the divider on other.
1.3.2.3.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_last_value&id=63&other=error_value%7C0&other_mode=url_encode_separator_%7C&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

1.3.2.4 get agent_module_name_last_value

Returns the last value of module. This module is filtered by the agent name pass as parameter id and module name pass as parameter id2. With the other parameter you can add a error code that your application knows and it is out range of module values.


Call Syntax:

  • op=get (required)
  • op2=agent_module_name_last_value (required)
  • id=<alphanumeric>(required) contains the agent name.
  • id2=<alphanumeric> (required) contains the module name.
  • other=<error return> (optional) that you want to return if there is an error ( that usually has not been found in the DB).
  • Codes of error return are:
  • 'error_message' returns error in a text message.
  • 'error_value'<separator><code or value&gt gives back this code or error value,but it is necessary that it comes with 'other_mode' such as other_mode=url_encode_separator_<separator&gt to use the divider in other.
1.3.2.4.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=agent_module_name_last_value&id=miguel-portatil&id2=cpu_user&apipass=1234&user=admin&pass=pandora

1.3.2.5 get agent_module_name_last_value_alias

=> 7.0NG

Returns the last value of module. This module is filtered by the agent alias pass as parameter id and module name pass as parameter id2. With the other parameter you can add a error code that your application knows and it is out range of module values.

Call Syntax:

  • op=get (required)
  • op2=module_last_value_alias (required)
  • id=<alphanumeric>(required) contains the agent alias.
  • id2=<alphanumeric> (required) contains the module name.
  • other=<error return> (optional) that you want to return if there is an error ( that usually has not been found in the DB).
  • Codes of error return are:
  • 'error_message' returns error in a text message.
  • 'error_value'<separator><code or value&gt gives back this code or error value,but it is necessary that it comes with 'other_mode' such as other_mode=url_encode_separator_<separator&gt to use the divider in other.
1.3.2.5.1 Examples
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

1.3.2.6 get module_value_all_agents

Returns a list of agents and module value, these modules are in all of agents of list and they are filtered by the name of module pass as the parameter id.

Call syntax:

  • op=get (required)
  • op2=module_value_all_agents (required)
  • id=<name of the module> (required) This is the module name.
1.3.2.6.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_value_all_agents&id=example_module_name&apipass=1234&user=admin&pass=pandora

1.3.2.7 get agent_modules

Returns the list of modules of agent, this agent is filtered by the id agent pass as id parameter.

Call syntax:

  • op=get (required)
  • op2=agent_modules (required)
  • return_type=<csv> (required) Output format.
  • other=<serialized values> (required) Serialized values in order to filter by agent:
  • <id_agent>

It's necessary to complete 'other_mode' parameter in this way other_mode=url_encode_separator_<separador> in order to configure separator in other field.

1.3.2.7.1 Examples
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_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.8 get module_id

Returns the id of a module of an agent.

Call syntax:

  • op=get (required)
  • op2=module_id (required)
  • id=id agent (required)
  • other=module name (required)
1.3.2.8.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_id&id=5&other=Host%20Alive&apipass=1234&user=admin&pass=pandora

1.3.2.9 get locate_agent

Get id server whare agent is located, and print all the result like a csv.

Call syntax:

  • op=get (required)
  • op2=locate_agent (required)
  • return_type=<csv> (required) Output format.
  • id=id_agent (required)
  • other_mode= other_mode=url_encode_separator_<separator&gt (required)
1.3.2.9.1 Examples
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_%7C

1.3.2.10 get policies

Returns the list of polities of agent, this agent is filtered by id into the other parameter.

Call syntax:

  • op=get (required)
  • op2=policies (required)
  • return_type=<csv> (required)
  • other=<serialized values> (optional) Serialized values for filter policy by policy agent:
  • <id_agent>
1.3.2.10.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=policies&return_type=csv&other=&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.11 Get tree_agents

Returns a complete list structured by the groups in the first level, agents in the second level and modules in the third level. This list is filtered by the other parameter.

Call Syntax:

  • op=get (required)
  • op2=tree_agents (required)
  • return_type=<return kind> (required) that could be 'csv' or 'csv_head'.
  • other=<string or serialized parameters> (optional) in this case could be the divider or a parameter list in order and separated by the divider character. We are going to examine the two cases:
  • <separator> The divider "yes" of the 'csv'.
  • <separator csv>|<character that replaces the CR|<fields 1>,<fields 2>,<fields N>it will compose the following parameters in order( the divider character '|' could be specified in "other_mode"):
  • <separator csv>: divider of the fields in the CSV.
  • <character that replaces the CR> character that will be replaced if it finds in any returned character the character RC in order to avoid the ambiguity with the standard use of the RC character to specify registers/files in the CSV. If you pass an string in other, the substitute character is the blank space.
  • <fields 1>,<fields2>,<fields N&gt :the fields to show in the CSV are:
  • type_row
  • group_id
  • group_name
  • group_parent
  • disabled
  • custom_id
  • group_description
  • group_contact
  • group_other
  • agent_id
  • alias
  • agent_direction
  • agent_commentary
  • agent_id_group
  • agent_last_contact
  • 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 (only in version 6.0SP1 or later)
  • module_warning_inverse (only in version 6.0SP1 or later)
  • 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'
1.3.2.11.1 Examples
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=;%7C%20%7Ctype_row,group_id,agent_name&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.12 get module_data

Returns a list of values of a module, this module is filtered by the id of module pass as id in the url. And the list of values is from the now to the period limit passed as second parameter into the other parameter, the first is the CSV separator.

Call syntax:

  • op=set (required)
  • op2=module_data (required)
  • id=<id_modulo> (required)
  • other_mode=url_encode_separator_<separator> (required)
  • other=<serialized parameters> (optional)
  • The CSV divider character (point by default)
  • The period (in seconds)
  • Start time (<year><month><day>T<hour>:<minute>)
  • End time (<year><month><day>T<hour>:<minute>)
1.3.2.12.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=module_data&id=17&other=;%7C604800%7C20121201T13:40%7C20171215T13:40&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.13 get graph_module_data

Returns the chart of a module as a image file, this chart is generated with the same method of static graphs of Pandora. It is necesary pass the width, height, period, label and start date of chart (knowing in Pandora the date indicated in graphs always is the end of data) all of they into the other parameter.


Call syntax:

  • op=set (required)
  • op2=module_data (required)
  • id=<id_modulo> (required)
  • other=<serialized parameters> (required). Are the following in this order:
  • <period>
  • <width>
  • <height>
  • <label>
  • <start_date>
1.3.2.13.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=graph_module_data&id=17&other=604800%7C555%7C245%7Cpepito%7C2009-12-07&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.14 get events

Returns a list of events filtered by the other parameter.

This feature is in Metaconsole.


Call syntax:

  • op=get (required)
  • op2=events (required)
  • return_type=csv (required)
  • other_mode=url_encode_separator_| (optional)
  • other=<serialized parameters> (optional).Are the following in this order:
  • <separator>
  • <criticity> From 0 to 4, or -1 for to avoid this param
  • <agent alias>
  • <module name>
  • <alert template name>
  • <user>
  • <numeric interval minimum level > in unix timestamp
  • <numeric interval maximum level > in unix timestamp
  • <status>
  • <event substring>
  • <register limit>
  • <offset register>
  • <optional style [total|more_criticity]> (total - returns the number of the records, more_criticity - returns the biggest value of criticity)
  • <event type> unknown, alert_fired, alert_recovered,.. or its substring. you can also use 'not_normal'.
1.3.2.14.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=events&return_type=csv&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=events&other_mode=url_encode_separator_%7C&return_type=csv&other=;%7C2%7CSERVER%7CCPU%7Ctemplate_alert00%7C%7C1274715715%7C127471781&apipass=1234&user=admin&pass=pandora
1.3.2.14.2 Full usage example

Sample event #1 report this information:

951140;3998;0;14;0;2012-06-23 22:51:28;Module CheckPandora (0.00) is going to 
CRITICAL;1340484688;going_up_critical;8176;0;4;;;RemoteAgent;Aerin;transmit;Going down to critical 
state;http://firefly.artica.es/pandora_demo//images/b_red.png;Critical;http://firefly.artica.es/pandora_demo//
images/status_sets/default/severity_critical.png 

Most of the fields, match the fields in the dababase, try to do this query using the SQL manager at pandora:

select * from tevento order by id_evento DESC limit 100;

You will see the fields are like this:

  • Field 1 - ID event number (incremental)
  • Field 2 - ID agent
  • Field 3 - ID user which validate the event
  • Field 4 - ID Group (numerical)
  • Field 5 - Status (0 - new, 1 validated... see more in docs about status codes)
  • Field 6 - Timestamp (human string timestamp)
  • Field 7 - Event description (pure text)
  • Field 8 - utimestamp (Unix timestamp, numerical seconds since 1970)
  • Field 9 - event type, tokens representing event type with fixed strings
  • Field 10 - ID agent_module the numerical ID of the module with raise this event. It depends on the event type a new_agent event type do not come with any value here (0). Later the API will get the name, you dont need to call again the api to "resolve" the name by asking with the ID.
  • Field 11- Id alert. THe same with F10
  • Field 12 - Criticity (values), check out the docs to see the codes.
  • Field 13 - User comments (if provided by the user)
  • Field 14 - Tags

Now comes the API aditional fields, not in DB:

  • Field 15 - Agent name
  • Field 16 - Group name
  • Field 17 - Group image name.
  • Field 18 - Long description of the event type
  • Field 19 - URL to image representing the event status (red ball)
  • Field 20 - Description of the event criticity (Field 12)
  • Field 21 - URL to image representing the criticity.

1.3.2.15 get all_alert_templates

Returns the list of alert templates defined into the Pandora.

Call syntax:

  • op=get (required)
  • op2=all_alert_templates (required)
  • other=cvs_separator (optional)
1.3.2.15.1 Examples
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

1.3.2.16 get module_groups

Returns the list of module groups.

Call syntax:

  • op=get (required)
  • op2=module_groups (required)
  • other=cvs_separator (optional)
1.3.2.16.1 Examples
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

1.3.2.17 get plugins

Returns the list of server plugins of Pandora.

Call syntax:

  • op=get (required)
  • op2=plugins (required)
  • other=cvs_separator (optional)
1.3.2.17.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=plugins&return_type=csv&other=;&apipass=1234&user=admin&pass=pandora

1.3.2.18 get tags

Returns the list of tags defined into Pandora.

Call syntax:

  • op=get (required)
  • op2=tags (required)
  • return_type=csv (required)
1.3.2.18.1 Examples

This example will return all tags in the system.

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

1.3.2.19 get module_from_conf

>= 5.0 (Only Enterprise)

Returns the configuration of a local module.

Call syntax:

  • op=get (required)
  • op2=update_module_in_conf (required)
  • id=<id agente> (required)
  • id2=<nombre módulo> (required)
1.3.2.19.1 Examples
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

It returns null string if no modules are found.

1.3.2.20 get total_modules

Total modules by group.

Call syntax:

  • op=get (required)
  • op2=total_modules (required)
  • id=<id group> (required)
1.3.2.20.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=total_modules&id=2&apipass=1234&user=admin&pass=pandora

1.3.2.21 get total_agents

Total agents by group.

Call syntax:

  • op=get (required)
  • op2=total_agents (required)
  • id=<id group> (required)
1.3.2.21.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=total_agents&id=2&apipass=1234&user=admin&pass=pandora

1.3.2.22 get agent_name

Agent name for a given id

Call syntax:

  • op=get (required)
  • op2=agent_name (required)
  • id=<id agent> (required)
1.3.2.22.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=agent_name&id=1&apipass=1234&user=admin&pass=pandora

1.3.2.23 get agent_alias

>= 7.0NG

Agent alias for a given id.

Call syntax:

  • op=get (required)
  • op2=agent_alias (required)
  • id=<id agent> (required)
  • id2=<id node> (required in the meta console, unnecessary in the node)
1.3.2.23.1 Examples

Node:

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

Metaconsole:

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

1.3.2.24 get module_name

Module name for a given id.

Call syntax:

  • op=get (required)
  • op2=module_name (required)
  • id=<id module> (required)
1.3.2.24.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=module_name&id=1&apipass=1234&user=admin&pass=pandora

1.3.2.25 get alert_action_by_group

Total alert execution with an action by group.

Call syntax:

  • op=get (required)
  • op2=alert_action_by_group (required)
  • id=<id group> (required)
  • id2=<id action> (required)
1.3.2.25.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=alert_action_by_group&id=0&id2=3&apipass=1234&user=admin&pass=pandora

1.3.2.26 get event_info

Return all of event data. This event is selected by id in the id parameter.

This feature is in Metaconsole.


Call syntax:

  • op=get (required)
  • op2=event_info (required)
  • id=<id_event> (required)
1.3.2.26.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=event_info&id=80&apipass=1234&user=admin&pass=pandora

1.3.2.27 get tactical_view

Returns the next values list (this values you can see in the tactical page in 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

Call syntax:

  • op=get (required)
  • op2=tactical_view (required)
1.3.2.27.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=tactical_view&apipass=1234&user=admin&pass=pandora

1.3.2.28 get pandora_servers

>= 5.0

Returns the list of pandora servers.

call syntax:

  • op=get (required)
  • op2=pandora_servers (required)
  • other=cvs_separator (optional)
  • return_type=csv (required)
1.3.2.28.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=pandora_servers&return_type=csv&apipass=1234&user=admin&pass=pandora

It returns the fields in this order:

  • name
  • status (1 - up, 0 - down)
  • type (human readable string)
  • master (1 - master, 0 - not master)
  • running modules
  • total modules
  • max delay (sec)
  • delayed modules
  • threads
  • queued_modules
  • timestamp of update (human readable string)

1.3.2.29 get custom_field_id

>= 5.0

Translate the name of custom field to the id in the data base.

Call syntax:

  • op=get (required)
  • op2=custom_field_id (required)
  • other=<serialized parameters> (required) in this case custom field name
  • <name> (required)
1.3.2.29.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=custom_field_id&other=mycustomfield&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.30 get gis_agent

>= 5.0

Return the last gis agent data.

Syntax call:

  • op=set (required)
  • op2=gis_agent (required)
  • id=<index> (required) agent index.
1.3.2.30.1 Example

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

1.3.2.31 get special_days

>= 5.1

Return special day's list.

Syntax call:

  • op=get (required)
  • op2=special_days (required)
  • other=<csv separator> (optional) CSV separator
1.3.2.31.1 Example
http://127.0.0.1/pandora_console/include/api.php?apipass=caca&user=admin&pass=pandora&op=get&op2=special_days

1.3.2.32 get module_properties

>= 5.1SP2

Returns a list of module properties. The list could be filtered by the parameter.

Call Syntax:

  • op=get (required)
  • op2=module_properties (required)
  • id=module-id (required)
  • return_type=<return kind> (required) that could be 'csv' or 'csv_head'.
  • other=<string or serialized parameters> (optional) in this case could be the divider or a parameter list in order and separated by the divider character. We are going to examine the two cases:
  • <separator> The divider "yes" of the 'csv'.
  • <separator csv>|<character that replaces the CR|<fields 1>,<fields 2>,<fields N>it will compose the following parameters in order( the divider character '|' could be specified in "other_mode"):
  • <separator csv>: divider of the fields in the CSV.
  • <character that replaces the CR> character that will be replaced if it finds in any returned character the character RC in order to avoid the ambiguity with the standard use of the RC character to specify registers/files in the CSV. If you pass an string in other, the substitute character is the blank space.
  • <fields 1>,<fields2>,<fields N> :the fields to output in CSV are:
  • 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 (only in version 6.0SP1 or later)
  • module_warning_inverse (only in version 6.0SP1 or later)
1.3.2.32.1 Examples
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=;%7C%20%7Cmodule_id_agent_module,module_id_module_type,module_name,module_last_try,module_state&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.33 get module_properties_by_name

>= 5.1SP2

Returns a list of module properties. The list could be filtered by the parameter.

Call Syntax:

  • op=get (required)
  • op2=module_properties_by_name (required)
  • id=agent_name (required)
  • id2=agentmodule_name (required)
  • return_type=<return kind> (required) that could be 'csv' or 'csv_head'.
  • other=<string or serialized parameters> (optional) in this case could be the divider or a parameter list in order and separated by the divider character. (the same as 'get module_properties'. For details, see 'get module_properties')
1.3.2.33.1 Examples
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=;%7C%20%7Cmodule_id_agent_module,module_id_module_type,module_type,module_name,module_last_try,module_state&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.34 get module_properties_by_alias

>= 7.0NG

Returns a list of module properties. The list could be filtered by the parameter.

Call Syntax:

  • op=get (required)
  • op2=module_properties_by_alias (required)
  • id=agent_alias (required)
  • id2=agentmodule_name (required)
  • return_type=<return kind> (required) that could be 'csv' or 'csv_head'.
  • other=<string or serialized parameters> (optional) in this case could be the divider or a parameter list in order and separated by the divider character. (the same as 'get module_properties'. For details, see 'get module_properties')
1.3.2.34.1 Examples
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

1.3.2.35 get module_graph

>= 6.0

Returns a module graph encoded with base64.

Call Syntax:

  • op=get (required)
  • op2=module_graph (required)
  • id=<module id> (required)
  • other=<period in seconds> (optional) 3600 by default (1 hour). Period of time used in the data recovery.
1.3.2.35.1 Examples
http://localhost/pandora_console/include/api.php?op=get&op2=module_graph&id=5&other=3600%7C1&other_mode=url_encode_separator_%7C&apipass=1234&api=1&user=admin&pass=pandora

1.3.2.36 get all_planned_downtimes

>= 5.1

Return all matches of planned downtime.

op=get op2=all_planned_downtimes return_type=csv other=<name> <group> <type_downtime> <type_execution> <type_periodicity> (for filter)


1.3.2.36.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=all_planned_downtimes&other=test%7C0%7Cquiet%7Cperiodically%7Cweekly&other_mode=url_encode_separator_%7C&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%7C0%7Cquiet%7Cperiodically%7Cweekly&other_mode=url_encode_separator_%7C&return_type=csv&apipass=1234&user=admin&pass=pandora

1.3.2.37 get planned_downtimes_items

>= 5.1

Return all matches of planned downtime items.

op=get op2=planned_downtimes_items return_type=csv other=<name> <group> <type_downtime> <type_execution> <type_periodicity> (for filter)

1.3.2.37.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=planned_downtimes_items&other=test%7C0%7Cquiet%7Cperiodically%7Cweekly&other_mode=url_encode_separator_%7C&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%7C0%7Cquiet%7Cperiodically%7Cweekly&other_mode=url_encode_separator_%7C&return_type=csv&apipass=1234&user=admin&pass=pandora

1.3.2.38 get id_group_agent_by_name

>= 5.1

Return the group id of an agent.

Call Syntax:

  • op=get
  • op2=id_group_agent_by_name
  • other=<string or serialized parameters> Agent name and filtering parameters (optional)
  • <agent_name>
1.3.2.38.1 Example
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_%7C&other=192.168.50.40

1.3.2.39 get id_group_agent_by_alias

>= 7.0NG

Return the group id of an agent.

Call Syntax:

  • op=get
  • op2=id_group_agent_by_alias
  • other=<string or serialized parameters> Agent alias and filtering parameters (optional)
  • <agent_alias>
1.3.2.39.1 Example
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_%7C&other=pandorafms

1.3.2.40 get group_agent_by_name

>= 5.1

Return the group name for a agent.

Call Syntax:

  • op=get
  • op2=group_agent_by_name
  • other=<string or serialized parameters> Agent name and filtering parameters (optional).
  • <agent_name>
1.3.2.40.1 Example
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_%7C&other=192.168.50.40

1.3.2.41 get group_agent_by_alias

>= 7.0NG

Return the group name for a agent.

Call Syntax:

  • op=get
  • op2=group_agent_by_alias
  • other=<string or serialized parameters> Agent alias and filtering parameters (optional).
  • <agent_alias>
1.3.2.41.1 Example
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_%7C&other=pandorafms


1.3.2.42 get group_id_by_name

>= 7.0NG

Returns the group id from the name.

Call syntax:

  • op=get
  • op2=group_id_by_name
  • other=<unique parameter> (required):
  • <group_name>
1.3.2.42.1 Example
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

1.3.2.43 get get_timezone

>= 7.0NG

Returns the timezone with which pandora is configured.

Call syntax:

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

1.3.2.44 get cluster_status

>= 7.0

Returns the cluster status by id

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

1.3.2.45 get cluster_id_by_name

>= 7.0

Returns the id of the cluster by name

  • op=get
  • op2=cluster_id_by_name
  • id=cluster name
 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

1.3.2.46 get agents_id_name_by_cluster_id

>= 7.0

Returns the id => cluster agents names by the cluster id

  • op=get
  • op2=agents_id_name_by_cluster_id
  • id=cluster id
 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

1.3.2.47 get agents_id_name_by_cluster_name

>= 7.0 Returns the id => cluster agents names by the cluster name

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

1.3.2.48 get modules_id_name_by_cluster_id

>= 7.0

Returns the id => all the module names of the cluster agents by the cluster id

  • op=get
  • op2=modules_id_name_by_cluster_id
  • id=cluster id
 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

1.3.2.49 get modules_id_name_by_cluster_name

>= 7.0

Returns the id => all the module names of the cluster agents by the cluster name

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

1.3.2.50 get cluster_items

>= 7.0

Returns the items of a json object with the format: item id => (name,id,module_agent,type,pcrit,pwarn), by the cluster id

pcrit: % for the critic state if its AA or 1 o 0 if its AP

pwarn: % for the warning state if its AA or null if its AP

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

1.3.2.51 get policy

>= 7.0NG. 725

Returns all data from a policy. If no policy id is specified, it will return all data from all policies.


Call syntax:

  • op=get
  • op2=policy
  • id=id_policy (optional)
  • return_type=(json, csv, string).
1.3.2.51.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=policy&apipass=1234&user=admin&pass=pandora&return_type=json.

1.3.2.52 get collections_policy

>= 7.0NG. 725

Returns all colections of a policy. If no policy id is specified, it returns all colections of all policies.


Call syntax:

  • op=get
  • op2=collections_policy
  • id=id_policy (optional)
  • return_type=(json, csv, string).
1.3.2.52.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=collections_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

1.3.2.53 get plugins_policy

>= 7.0NG. 725

Returns all plugins of a policy. If no policy id is specified, it returns all plugins of all policies.

Call syntax:

  • op=get
  • op2=plugins_policy
  • id=id_policy (optional)
  • return_type=(json, csv, string).
1.3.2.53.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=plugins_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

1.3.2.54 get inventory_policy

>= 7.0NG. 725

Returns all inventory modules of a policy. If no policy id is specified, it returns all inventory modules of all policies.


Call syntax:

  • op=get
  • op2=inventory_policy
  • id=id_policy (optional)
  • return_type=(json, csv, string).
1.3.2.54.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=inventory_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=2

1.3.2.55 get unlinking_policy

>= 7.0NG. 725

Returns all unlinked modules of a policy. If no policy id is specified, it returns all unlinked modules of all policies.


Call syntax:

  • op=get
  • op2=unlinking_policy
  • id=id_policy(optional)
  • return_type=(json, csv, string).
1.3.2.55.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=unlinking_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

1.3.2.56 get alerts_policy

>= 7.0NG. 725

Returns the alerts of a policy, taking into account:

  • If a policy id is specified, it returns the alerts of that policy. If not, it returns all alerts of all policies.
  • If the type of alert is specified:(three options).
    • 0: it shows all by default.
    • 1: Shows only the normal alerts.
    • 2: Shows only the external alerts.

Call syntax:

  • op=get
  • op2=alerts_policy
  • id=id_policy(optional).
  • id2= 0:all(by default), 1:normal, 2:external.
  • return_type=(json, csv, string).
1.3.2.56.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=alerts_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id2=2.

1.3.2.57 get alerts_actions_policy

>= 7.0NG. 725

Returns all actions of the alerts of a policy, taking into account:

  • If a policy id is specified, it returns the actions of the alerts of that policy. If not, it returns all the actions of all the alerts of all policies.
  • If an alert id is specified, it returns the action of that alert.

Sintaxis de la llamada:

  • op = get
  • op2 = alerts_actions_policy
  • id = id_policy(optional).
  • id2 = id_policy_alert(optional).
  • return_type=(json, csv, string).
1.3.2.57.1 Example
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

1.3.2.58 get agents_policy

>= 7.0NG. 725

Returns all agent of a policy. If no policy id is specified, it returns all agents of all policies.


Call syntax:

  • op = get
  • op2 = agents_policy
  • id = id_policy(optional)
  • return_type = (json, csv, string).
1.3.2.58.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=agents_policy&apipass=1234&user=admin&pass=pandora&return_type=json.

1.3.2.59 get groups_policy

>= 7.0NG. 725

Returns all groups of a policy. If no policy id is specified, it returns all groups of all policies.

Call syntax:

  • op = get
  • op2 = groups_policy
  • id = id_policy(optional)
  • return_type = (json, csv, string).
1.3.2.59.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=groups_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=2

1.3.2.60 get queue_policy

>= 7.0NG. 725

Returns the queue of a policy. If no id policy is specified, its returns all queues of all policies.

Call syntax:

  • op = get
  • op2 = queue_policy
  • id = id_policy(optional)
  • return_type = (json, csv, string).
1.3.2.60.1 Example
http://localhost/pandora_console/include/api.php?op=get&op2=queue_policy&apipass=1234&user=admin&pass=pandora&return_type=json

1.3.2.61 get traps

>= 7.0NG. 728

Returns the specified source traps, you can also filter by timestamp and other data.

Call syntax:

  • op = get
  • op2 = traps
  • other=<optional parameters>:
  • <timestamp>
  • <limit>
  • <offset>
  • <status>
  • <oid_custom>
1.3.2.61.1 Example
https://localhost/pandora_console/include/api.php?op=get&op2=traps&other=1537128000%7C9000%7C0%7C1%7C.1.2.3.6.4&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.2.62 get event_responses

Returns the response list of events the user has access to in Pandora FMS.

Call syntax:

  • op=get (required)
  • op2=event_reponses (required)
  • return_type=csv|json (required)
1.3.2.62.1 Example

This example will return all system event responses in csv format.

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

1.3.2.63 get user_profiles_info

Returns the list of Pandora FMS' user profiles.

Call syntax:

  • op=get (required)
  • op2=user_profiles_info (required)
  • return_type=csv|json (required)
1.3.2.63.1 Example

This example will return all system user profiles in json format.

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

1.3.2.64 get migrate_agent

>= 7.21 ONLY METACONSOLE

Looks up if an especific agent existis en de migration queue, returning the data of tmigration_queue

  • op=get
  • op2=migrate_agent
  • id=id_agente a migrar
  • return_type = string, json, etc
1.3.2.64.1 Example
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

1.3.2.65 get language

>= 7.0NG 730

Returns the language with which Pandora FMS is configured.

Call syntax:

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

1.3.2.66 get session_timeout

>= 7.0NG 730

Returns the session time with which Pandora FMS is configured.

Call syntax:

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

1.3.3 SET

Send data

1.3.3.1 Set new_agent

Create a new agent with the data passed as parameters.

Call syntax:

  • op=set (required)
  • op2=new_agent (required)
  • other=<serialized parameters> (required).They are the agent configuration and data, serial in the following order:
  • <agent_alias>
  • <ip>
  • <id_parent>
  • <id_group>
  • <cascade_protection>
  • <cascade_protection_module>
  • <interval_sec>
  • <id_os>
  • <name_server>
  • <custom_id>
  • <learning_mode>
  • <disabled>
  • <description>
  • <alias_as_name>
1.3.3.1.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_agent&other=agente_alias%7C1.1.1.1%7C0%7C4%7C0%7C0%7C300%7C10%7Cpandorafms%7C8%7C10%7C%7Cla%20descripcion%7C1&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora
  • Note: If alias_as_name is 1, the agent name will be the same as the alias. If it is 0, the agent name will be automatically generated.

1.3.3.2 Set update_agent

Update a new agent with the data passed as parameters.

Call syntax:

  • op=set (required)
  • op2=update_agent (required)
  • id=<id_agent> (required)
  • other=<serialized parameters> (required).They are the agent configuration and data, serial in the following order:
  • <agent_alias>
  • <ip>
  • <id_parent>
  • <id_group>
  • <cascade_protection>
  • <interval_sec>
  • <id_os>
  • <name_server>
  • <custom_id>
  • <learning_mode>
  • <disabled>
  • <description>
1.3.3.2.1 Examples
http://127.0.0.1/pandora_console/include/api.php?id=5&op=set&op2=update_agent&other=agente_nombre%7C1.1.1.1%7C0%7C4%7C0%7C0%7C30%7C8%7Clocalhost.localdomain%7C%7C0%7C0%7Cla%20descripcion&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.3 Set delete_agent

Delete a agent that passed the name as parameter.

Call syntax:

  • op=set (required)
  • op2=delete_agent (required)
  • id=<name_agent> (required) should be an agent name.
1.3.3.3.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_agent&id=agente_erroneo&apipass=1234&user=admin&pass=pandora

1.3.3.4 set create_module_template

Create a alert from a template pass as id parameter, in the module pass as id into other and agent pass as id into the other.

Call syntax:

  • op=set (required)
  • op2=create_module_template (required)
  • id=<id_template> (required) should be a template id.
  • other=<id_module>|<id_agent>
1.3.3.4.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_module_template&id=1&other=1%7C10&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.5 set apply_module_template

Apply module template to agent

Module template are an agrupation which contain network check modules. This templates can be applied directly to agents, avoiding add modules one by one.

Call Syntax:

  • op=set (required)
  • op2=apply_module_template (required)
  • id<id_template> (required) id of the template that will be applied on the module.
  • id2<id_agente> (required) id of the agent in which the modules will be created.
1.3.3.5.1 Examples
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

1.3.3.6 set create_network_module

Create a network module from the data pass as parameters.

Call syntax:

  • op=set (required)
  • op2=create_network_module (required)
  • id=<agent_name> (required) should be an agent name.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <id_module_type>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <tcp_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min>
  • <max>
  • <custom_id>
  • <description>
  • <enable_unknown_events> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.6.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_network_module&id=pepito&other=prueba%7C0%7C7%7C1%7C10%7C15%7C0%7C16%7C18%7C0%7C15%7C0%7C127.0.0.1%7C0%7C%7C0%7C180%7C0%7C0%7C0%7C0%7Clatency%20ping&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.7 set create_plugin_module

Create a module plugin with the data passed as parameters.

Call Syntax:

  • op=set (required)
  • op2=create_plugin_module (required)
  • id=<agent_name> (required) should be an agent name.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <id_module_type>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <tcp_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <id_plugin>
  • <plugin_user>
  • <plugin_pass>
  • <plugin_parameter>
  • <enable_unknown_events> (only in version 5 or later)
  • <macros> (only in version 5 or later) Should be a base 64 encoded JSON document. The content should be an object formed by objects with the following properties:
    • "macro": Macro name. Should be _field1_, _field2_, ..., _fieldN_.
    • "desc": Descriptive name of the macro.
    • "help": Description of the macro.
    • "value": Value of the macro.
    • "hide": Set to "1" to hide the value of the macro (useful for storing passwords).
1.3.3.7.1 Example
{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1",
   "hide": ""
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80",
   "hide": ""  

}

}
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.7.2 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_plugin_module&id=pepito&other=prueba%7C0%7C1%7C2%7C0%7C0%7C%7C0%7C0%7C%7C0%7C0%7C127.0.0.1%7C0%7C%7C0%7C300%7C0%7C0%7C0%7C0%7Cplugin%20module%20from%20api%7C2%7Cadmin%7Cpass%7C-p%20max&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.8 set create_data_module

Create a module from parameters passed.

Template warning.png

With this call you can add database module data but you cannot modify configuration file of the agents associated to the module

 


Call Syntax:

  • op=set (required)
  • op2=create_data_module (required)
  • id=<agent_name> (required) should be an agent name.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <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>
  • <enable_unknown_events> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <ff_threshold> (only in version 5.1 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <ff_timeout> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.8.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_data_module&id=pepito&other=prueba%7C0%7C1%7Cdata%20module%20from%20api%7C1%7C10%7C20%7C10.50%7C180%7C10%7C15%7C%7C16%7C20%7C%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.9 set create_SNMP_module

Create a SNMP module.

Call Syntax:

  • op=set (required)
  • op2=create_snmp_module (required)
  • id=<agent_name> (required) should be an agent name.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <id_module_type>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <module_port>
  • <snmp_version>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <snmp3_priv_method [AES|DES]>
  • <snmp3_priv_pass>
  • <snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv]>
  • <snmp3_auth_method [MD5|SHA]>
  • <snmp3_auth_user>
  • <snmp3_auth_pass>
  • <enable_unknown_events> (only in version 5 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.9.1 Examples

Example 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)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_snmp_module&id=pepito&other=prueba%7C0%7C15%7C1%7C10%7C15%7C%7C16%7C18%7C%7C15%7C0%7C127.0.0.1%7C60%7C3%7Cpublic%7C.1.3.6.1.2.1.1.1.0%7C180%7C0%7C0%7C0%7C0%7CSNMP%20module%20from%20API%7CAES%7Cexample_priv_passw%7CauthNoPriv%7CMD5%7Cpepito_user%7Cexample_auth_passw&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

Example 2 (snmp v: 1)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_snmp_module&id=pepito1&other=prueba2%7C0%7C15%7C1%7C10%7C15%7C%7C16%7C18%7C%7C15%7C0%7C127.0.0.1%7C60%7C1%7Cpublic%7C.1.3.6.1.2.1.1.1.0%7C180%7C0%7C0%7C0%7C0%7CSNMP module from API&other_mode=url_encode_separator_|&apipass=1234&user=admin&pass=pandora

1.3.3.10 set update_network_module

Update the network module.

Call syntax:

  • op=set (required)
  • op2=update_network_module (required)
  • id=<module_id> (required) should be a module id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <id_agent>
  • <disabled>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <module_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min>
  • <max>
  • <custom_id>
  • <description>
  • <disabled_types_event> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.10.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_network_module&id=3431&other=44%7C0%7C2%7C10%7C15%7C%7C16%7C18%7C%7C7%7C0%7C127.0.0.1%7C0%7C%7C0%7C300%7C30.00%7C0%7C0%7C0%7Clatency%20ping%20modified%20by%20the%20Api&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.11 set update_plugin_module

Update the plugin module.

Call Syntax:

  • op=set (required)
  • op2=update_plugin_module (required)
  • id=<module_id> (required) should be a module id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <id_agent>
  • <disabled>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <module_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <id_plugin>
  • <plugin_user>
  • <plugin_pass>
  • <plugin_parameter>
  • <disabled_types_event> (only in version 5 or later)
  • <macros> (only in version 5 or later) Should be a base 64 encoded JSON document. The content should be an object formed by objects with the following properties:
    • "macro": Macro name. Should be _field1_, _field2_, ..., _fieldN_.
    • "desc": Descriptive name of the macro.
    • "help": Description of the macro.
    • "value":Value of the macro.
1.3.3.11.1 Example
{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1"
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80"
 }
}
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.11.2 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_plugin_module&id=2343&other=44%7C0%7C2%7C0%7C0%7C%7C0%7C0%7C%7C0%7C0%7C127.0.0.1%7C0%7C%7C0%7C300%7C0%7C0%7C0%7C0%7Cplugin%20module%20from%20api%7C2%7Cadmin%7Cpass%7C-p%20max&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.12 set update_data_module

Template warning.png

With this call you can add database module data but you cannot modify configuration file of the agents associated to the module

 


Update the local module.

Call Syntax:

  • op=set (required)
  • op2=update_data_module (required)
  • id=<module_id> (required) should be a module id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <id_agent>
  • <disabled>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <module_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <disabled_types_event> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <ff_threshold> (only in version 5.1 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <ff_timeout> (only in version 5.1 or later)
  • <critical_inverse> (only in version 6.0SP1 or later)
  • <warning_inverse> (only in version 6.0SP1 or later)
1.3.3.12.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_data_module&id=23234&other=44%7C0%7Cdata%20module%20modified%20from%20API%7C6%7C0%7C0%7C50.00%7C300%7C10%7C15%7C%7C16%7C18%7C%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.13 set update_data_module_policy

Update data module in policy and return id from new module.

Call Syntax:

  • op=set (required)
  • op2=update_data_module (required)
  • id=<id_agent_module> (required) Id of the target policy module.
  • other=<parámetros serializados> (required) are the module configuration and data, serialized in the following order:
  • <id_policy_module>
  • <description>
  • <id_module_group>
  • <min>
  • <max>
  • <post_process>
  • <module_interval>
  • <min_warning>
  • <max_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <history_data>
  • <configuration_data>
  • <disabled_types_event> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) hould be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
1.3.3.13.1 Examples
http://127.0.0.1/pandora_console/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%0dmodule_name%20pandora_process%0dmodule_type%20generic_data%0dmodule_exec%20ps%20aux%20%7C%20grep%20pandora%20%7C%20wc%20-l%0dmodule_end&other_mode=url_encode_separator_

1.3.3.14 set update_SNMP_module

Update a SNMP module.

Call Syntax:

  • op=set (required)
  • op2=update_snmp_module (required)
  • id=<module_id> (required) should be a module id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <id_agent>
  • <disabled>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <ip_target>
  • <module_port>
  • <snmp_version>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <snmp3_priv_method [AES|DES]>
  • <snmp3_priv_pass>
  • <snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv]>
  • <snmp3_auth_method [MD5|SHA]>
  • <snmp3_auth_user>
  • <snmp3_auth_pass>
  • <disabled_types_event> (only in version 5 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.14.1 Examples

Example (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)

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_snmp_module&id=33432&other=44%7C0%7C6%7C20%7C25%7C%7C26%7C30%7C%7C15%7C1%7C127.0.0.1%7C60%7C3%7Cpublic%7C.1.3.6.1.2.1.1.1.0%7C180%7C50.00%7C10%7C60%7C0%7CSNMP%20module%20modified%20by%20API%7CAES%7Cexample_priv_passw%7CauthNoPriv%7CMD5%7Cpepito_user%7Cexample_auth_passw&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.15 set apply_policy

Apply the policy pass as policy id into the id parameter.

Call syntax:

  • op=set (required)
  • op2=apply_policy (required)
  • id=<id_policy> (required) should be a policy Id.
1.3.3.15.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=apply_policy&id=1&apipass=1234&user=admin&pass=pandora

1.3.3.16 set apply_all_policies

Apply all policies that are in Pandora.

Call syntax:

  • op=set (required)
  • op2=apply_all_policies (required)
1.3.3.16.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=apply_all_policies&apipass=1234&user=admin&pass=pandora

1.3.3.17 set add_network_module_policy

Add a network module in the policy pass as id in the parameter.

Call syntax:

  • op=set (required)
  • op2=add_network_module_policy (required)
  • id=<id_policy> (required) should be a policy Id.
  • other=<parámetros serializados> (required) are the module configuration and data, serialized in the following order:
  • <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>
  • <ff_threshold>
  • <disabled>
  • <module_port>
  • <snmp_community>
  • <snmp_oid>
  • <custom_id>
  • <enable_unknown_events> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.17.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_network_module_policy&id=1&other=network_module_policy_example_name%7C6%7Cnetwork%20module%20created%20by%20Api%7C2%7C0%7C0%7C50.00%7C180%7C10%7C20%7C%7C21%7C35%7C%7C1%7C15%7C0%7C66%7C%7C%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.18 set add_plugin_module_policy

Add a plugin module in the policy pass as id in the parameter.

Call syntax:

  • op=set (required)
  • op2=add_plugin_module_policy (required)
  • id=<id_policy> (required) should be a policy Id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <id_module_type>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <module_port>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <id_plugin>
  • <plugin_user>
  • <plugin_pass>
  • <plugin_parameter>
  • <enable_unknown_events> (only in version 5)
  • <macros> (only in version 5 or later) Should be a base 64 encoded JSON document. The content should be an object formed by objects with the following properties:
    • "macro": Macro name. Should be _field1_, _field2_, ..., _fieldN_.
    • "desc": Descriptive name of the macro.
    • "help": Description of the macro.
    • "value":Value of the macro.
1.3.3.18.1 Example
{
 "1": {
   "macro": "_field1_",
   "desc": "Target IP",
   "help": "",
   "value": "192.168.0.1"
 },
 "2": {
   "macro": "_field2_",
   "desc": "Port",
   "help": "",
   "value": "80"
 }
}
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.18.2 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_plugin_module_policy&id=1&other=example%20plugin%20module%20name%7C0%7C1%7C2%7C0%7C0%7C%7C0%7C0%7C%7C15%7C0%7C66%7C%7C%7C300%7C50.00%7C0%7C0%7C0%7Cplugin%20module%20from%20api%7C2%7Cadmin%7Cpass%7C-p%20max&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.19 set add_data_module_policy

Add a local module in the policy pass as id in the parameter.

Call syntax:

  • op=set (required)
  • op2=add_data_module_policy (required)
  • id=<id_policy> (required) should be a policy Id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <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> This is the definition block of the agent that will be inserted in the config file of the policy agent.
  • <enable_unknown_events> (only in version 5 or later)
  • <module_macros> (only in version 5 or later) Should be a base 64 encoded JSON document formed by an object with one property for each macro. The format of the JSON properties should be "<macro name>": "<macro value>".
  • <ff_threshold> (only in version 5.1 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <ff_timeout> (only in version 5.1 or later)
1.3.3.19.1 Examples
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%20module%20created%20by%20Api~2~0~0~50.00~10~20~180~~21~35~~1~module_begin%0dmodule_name%20pandora_process%0dmodule_type%20generic_data%0dmodule_exec%20ps%20aux%20%7C%20grep%20pandora%20%7C%20wc%20-l%0dmodule_end&other_mode=url_encode_separator_~&apipass=1234&user=admin&pass=pandora

1.3.3.20 set add_SNMP_module_policy

Add a SNMP module in the policy pass as id in the parameter.

Call syntax:

  • op=set (required)
  • op2=add_snmp_module_policy (required)
  • id=<id_policy> (required) should be a policy Id.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <name_module>
  • <disabled>
  • <id_module_type>
  • <id_module_group>
  • <min_warning>
  • <max_warning>
  • <str_warning>
  • <min_critical>
  • <max_critical>
  • <str_critical>
  • <ff_threshold>
  • <history_data>
  • <module_port>
  • <snmp_version>
  • <snmp_community>
  • <snmp_oid>
  • <module_interval>
  • <post_process>
  • <min_value>
  • <max_value>
  • <custom_id>
  • <description>
  • <snmp3_priv_method [AES|DES]>
  • <snmp3_priv_pass>
  • <snmp3_sec_level [authNoPriv|authPriv|noAuthNoPriv]>
  • <snmp3_auth_method [MD5|SHA]>
  • <snmp3_auth_user>
  • <snmp3_auth_pass>
  • <enable_unknown_events> (only in version 5 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.20.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_snmp_module_policy&id=1&other=example%20SNMP%20module%20name%7C0%7C15%7C2%7C0%7C0%7C%7C0%7C0%7C%7C15%7C1%7C66%7C3%7Cpublic%7C.1.3.6.1.2.1.1.1.0%7C180%7C50.00%7C10%7C60%7C0%7CSNMP%20module%20modified%20by%20API%7CAES%7Cexample_priv_passw%7CauthNoPriv%7CMD5%7Cpepito_user%7Cexample_auth_passw&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.21 set add_agent_policy

Add a agent into a policy.

Call syntax:

  • op=set (required)
  • op2=add_agent_policy (required)
  • id=<id_policy> (required) should be a policy Id.
  • other=<serialized parameters> (required) are the agent configuration and data, serialized in the following order:
  • <id_agent>
1.3.3.21.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_agent_policy&id=1&other=167&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.22 set new_network_component

Create a new network component.

Call syntax:

  • op=set (required)
  • op2=new_network_component (required)
  • id=<network_component_name> (required) should be the network component name.
  • other=<serialized parameters> (required) are the agent configuration and data of the network component, serialized in the following order:
  • <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> (only in version 5)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.22.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_network_component&id=example_network_component_name&other=7%7Cnetwork%20component%20created%20by%20Api%7C300%7C30%7C10%7Cpublic%7C3%7C%7C1%7C10%7C20%7Cstr%7C21%7C30%7Cstr1%7C10%7C50.00%7C12&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.23 set new_plugin_component

Create a new plugin component.

Call syntax:

  • op=set (required)
  • op2=new_plugin_component (required)
  • id=<plugin_component_name> (required) should be the plugin component name.
  • other=<serialized parameters> (required) are the agent configuration and data of the plugin component, serialized in the following order:
  • <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> (only in version 5 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.23.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_plugin_component&id=example_plugin_component_name&other=2%7Cplugin%20component%20created%20by%20Api%7C300%7C30%7C10%7C66%7C3%7C2%7Cexample_user%7Cexample_pass%7C-p%20max%7C%7C1%7C10%7C20%7Cstr%7C21%7C30%7Cstr1%7C10%7C50.00%7C12&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.24 set new_snmp_component

Create a new SNMP component.

Call syntax:

  • op=set (required)
  • op2=new_snmp_component (required)
  • id=<snmp_component_name> (required) should be the snmp component name.
  • other=<serialized parameters> (required) are the configuration and data of the snmp component, serialized in the following order:
  • <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_auth_pass>
  • <snmp3_privacy_method>
  • <snmp3_privacy_pass>
  • <snmp3_auth_method>
  • <snmp3_security_level>
  • <snmp_component_group>
  • <enable_unknown_events> (only in version 5 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
1.3.3.24.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_snmp_component&id=example_snmp_component_name&other=16%7CSNMP%20component%20created%20by%20Api%7C300%7C30%7C10%7C3%7C%7C1%7C10%7C20%7Cstr%7C21%7C30%7Cstr1%7C15%7C50.00%7C3%7C.1.3.6.1.2.1.2.2.1.8.2%7Cpublic%7Cexample_auth_user%7Cexample_auth_pass%7C66%7CAES%7Cexample_priv_pass%7CMD5%7CauthNoPriv%7C12&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.25 set new_local_component

Create a new local component.

Call syntax:

  • op=set (required)
  • op2=new_local_component (required)
  • id=<local_component_name> (required) should be a local component name.
  • other=<serialized parameters> (required) are the configuration and data of the local component, serialized in the following order:
  • <description>
  • <id_os>
  • <local_component_group>
  • <configuration_data> This is the configuration block of the module.
  • <enable_unknown_events> (only in version 5 or later)
  • <ff_threshold> (only in version 5.1 or later)
  • <each_ff> (only in version 5.1 or later)
  • <ff_threshold_normal> (only in version 5.1 or later)
  • <ff_threshold_warning> (only in version 5.1 or later)
  • <ff_threshold_critical> (only in version 5.1 or later)
  • <ff_timeout> (only in version 5.1 or later)
1.3.3.25.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_local_component&id=example_local_component_name&other=local%20component%20created%20by%20Api~5~12~module_begin%0dmodule_name%20example_local_component_name%0dmodule_type%20generic_data%0dmodule_exec%20ps%20%7C%20grep%20pid%20%7C%20wc%20-l%0dmodule_interval%202%0dmodule_end&other_mode=url_encode_separator_~&apipass=1234&user=admin&pass=pandora


1.3.3.26 set create_alert_template

Create a template of alert.

Call Syntax:

  • op=set (required)
  • op2=create_alert_template (required)
  • id=<template_name> (required) will be the template name.
  • other=<serialized parameters> (required) are the template configuration and data, serialized in the following order:
  • <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>
1.3.3.26.1 Examples

Example 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=pepito&other=regex%7Ctemplate%20based%20in%20regexp%7C1%7C%7C%7C%7Cpp%7C1%7C%7C%7C%7C10%7C0%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C3&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

Example 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%7Ctemplate%20based%20in%20range%7CNULL%7C%7C%7C%7C%7C%7C10%7C5%7C%7C%7C%7C00:00:00%7C15:00:00%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C4%7C2&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.27 set update_alert_template

Update the template alert.

Call Syntax:

  • op=set (required)
  • op2=update_alert_template (required)
  • id=<id_template> (required) should be a template id.
  • other=<serialized parameters> (required) are the template configuration and data, serialized in the following order:
  • <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>
1.3.3.27.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_alert_template&id=38&other=example_template_with_changed_name%7Conchange%7Cchanging%20from%20min_max%20to%20onchange%7C%7C%7C%7C%7C%7C1%7C%7C%7C%7C5%7C1%7C%7C%7C1%7C1%7C0%7C1%7C1%7C0%7C0%7C1%7Cfield%20recovery%20example%201%7Cfield%20recovery%20example%202%7C1%7C8&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.28 set delete_alert_template

Delete a alert template and delete the alerts that are using this template.

Call Syntax:

  • op=set (required)
  • op2=delete_alert_template (required)
  • id=<id_template> (required) should be a template id.
1.3.3.28.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_alert_template&id=38&apipass=1234&user=admin&pass=pandora

1.3.3.29 set delete_module_template

Delete a module template.

Call Syntax:

  • op=set (required)
  • op2=delete_module_template (required)
  • id=<id_alert_template_module> (required) should be a alert_template_module id.
1.3.3.29.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_module_template&id=38&apipass=1234&user=admin&pass=pandora

1.3.3.30 set delete_module_template_by_names

Delete a module template.

Call Syntax:

  • op=set (required)
  • op2=delete_module_template_by_names (required)
  • id=<agent name> (required)
  • id2=<alert template name> (required)
  • other=<serialized parameter> (required), are the following in this order:
  • <module name> (required)
1.3.3.30.1 Examples
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

1.3.3.31 set stop_downtime

Stop a downtime.

Call Syntax:

  • op=set (required)
  • op2=stop_downtime (required)
  • id=<id_downtime> (required) should be a id downtime.
1.3.3.31.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=stop_downtime&id=1&apipass=1234&user=admin&pass=pandora

1.3.3.32 set new_user

Create a new user into Pandora.

Call Syntax:

  • op=set (required)
  • op2=new_user (required)
  • id=<user_name> (required) will be an user name.
  • other=<serialized parameters> (required) are the user configuration and data, serialized in the following order:
  • <fullname>
  • <firstname>
  • <lastname>
  • <middlename>
  • <password>
  • <email>
  • <phone>
  • <languages>
  • <comments>
1.3.3.32.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_user&id=md&other=miguel%7Cde%20dios%7Cmatias%7Ckkk%7Cpandora%[email protected]%7C666%7Ces%7Cdescripcion%20y%20esas%20cosas&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.33 Set update_user

Update a user selected by the id into the id parameter.

Call Syntax:

  • op=set (required)
  • op2=update_user (required)
  • id=<user_name> (required) should be an user name.
  • other=<serialized parameters> (required) are the module configuration and data, serialized in the following order:
  • <fullname>
  • <firstname>
  • <lastname>
  • <middlename>
  • <password>
  • <email>
  • <phone>
  • <languages>
  • <comments>
  • <is_admin>
  • <block_size>
  • <flash_chart>
1.3.3.33.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_user&id=example_user_name&other=example_fullname%7C%7Cexample_lastname%7C%7Cexample_new_passwd%7Cexample_email%7C%7Cexample_language%7Cexample%20comment%7C1%7C30%7C&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.34 Set delete_user

Delete a selected user.

Call syntax:

  • op=set (required)
  • op2=delete_user (required)
  • id=<nombre_usuario> (required) should be an user name.
1.3.3.34.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_user&id=md&apipass=1234&user=admin&pass=pandora

1.3.3.35 set enable_disable_user

Enable a disabled user.

Call syntax:

  • op=set (required)
  • op2=enable_disable_user (required)
  • id=<user_name> (required) should be an user name.
1.3.3.35.1 Examples

Example 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_%7C&apipass=1234&user=admin&pass=pandora

Example 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_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.36 set create_group

Create a group.

Call syntax:

  • op=set (required)
  • op2=create_group (required)
  • id=<group_name> (required) should be a group name.
  • other=<serialized_parameters> (required). Are the following in this order:
  • <icon name>
  • <parent group id> (optional)
  • <description> (optional)
  • <propagate acl> (optional)
  • <disable alerts> (optional)
  • <custom id> (optional)
  • <contact info> (optional)
  • <other info> (optional)
1.3.3.36.1 Examples

Example 1 (with parent group: Servers)

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

Example 2 (without parent group)

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

1.3.3.37 set update_group

Update a group.

Call syntax:

  • op=set (required)
  • op2=update_group (required)
  • id=<group_id> (required) should be a group id
  • other=<serialized_parameters> (required). Are the following in this order:
  • <group name>
  • <icon name>
  • <parent group id>
  • <description>
  • <propagate acl>
  • <disable alerts>
  • <custom id>
  • <contact info>
  • <other info>
1.3.3.37.1 Example
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_group&id=example_group_id&other=New%20Name%7Capplication%7C2%7Cnew%20description%7C1%7C0%7Ccustom%20id%7C%7C&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.38 set delete_group

Delete a group.

Call syntax:

  • op=set (required)
  • op2=delete_group (required)
  • id=<group_id> (required) should be a group id
1.3.3.38.1 Example
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_group&id=303&apipass=1234&user=admin&pass=pandora

1.3.3.39 Set add_user_profile

Add a profile into user.

Call syntax:

  • op=set (required)
  • op2=add_user_profile (required)
  • id=<user_name> (required) should be an user name.
  • other=<serialized parameters> (required) are the group configuration and data and the profile, serialized in the following order:
  • <group>
  • <profile>
1.3.3.39.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_user_profile&id=md&other=12%7C4&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.40 set delete_user_profile

Deattach a profile of user.

Call syntax:

  • op=set (required)
  • op2=delete_user_profile (required)
  • id=<user_name> (required) should be an user name.
  • other=<serialized parameters> (required) are the group configuration, data and profile, serialized in the following order:
  • <group>
  • <profile>
1.3.3.40.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_user_profile&id=md&other=12%7C4&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.41 set new_incident

Create a new incident.

Call syntax:

  • op=set (required)
  • op2=new_incident (required)
  • other=<serialized parameters> (required) are the incident configuration and data, serialized in the following order:
  • <title>
  • <description>
  • <origin>
  • <priority>
  • <status>
  • <group>
1.3.3.41.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_incident&other=titulo%7Cdescripcion%20texto%7CLogfiles%7C2%7C10%7C12&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.42 Set new_note_incident

Add a note into a incident.

Call syntax:

  • op=set (required)
  • op2=new_note_incident (required)
  • id=<id_incident> (required )the incident id.
  • id2=<user_name> (required) the user name.
  • other=<note> (required) is the note codified in url encode.
1.3.3.42.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_note_incident&id=5&id2=miguel&other=una%20nota%20para%20la%20incidencia&apipass=1234&user=admin&pass=pandora

1.3.3.43 set validate_all_alerts

Validate all alerts.

Call syntax:

  • op=set (required)
  • op2=validate_all_alerts (required)
1.3.3.43.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_all_alerts&apipass=1234&user=admin&pass=pandora

1.3.3.44 set validate_all_policy_alerts

Validate the alerts created from a policy.

Call syntax:

  • op=set (required)
  • op2=validate_all_policy_alerts (required)
1.3.3.44.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_all_policy_alerts&apipass=1234&user=admin&pass=pandora

1.3.3.45 set event_validate_filter

Validate all events that pass the filter pass as parameters.

This feature is in Metaconsole.


Call syntax:

  • op=set (required)
  • op2=event_validate_filter (required)
  • other_mode=url_encode_separator_|(optional)
  • other=<serialized_parameters> (optional). Are the following in this order:
  • <separator>
  • <criticity> De 0 a 4
  • <agent name>
  • <module name>
  • <alert template name>
  • <user>
  • < numeric interval minimum level> en unix timestamp
  • < numeric interval maximum level> en unix timestamp
1.3.3.45.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=event_validate_filter&other_mode=url_encode_separator_%7C&other=;%7C2&apipass=1234&user=admin&pass=pandora

1.3.3.46 set event_validate_filter_pro

It is the similar to previous call.

This feature is in Metaconsole.


Call syntax:

  • op=set (required))
  • op2=event_validate_filter_pro (required)
  • other_mode=url_encode_separator_| (optional)
  • other=<serialized parameters> (optional), are the following in this order:
  • <separator>
  • <criticity> From 0 to 4
  • <id agent>
  • <id module>
  • <id agent module alert>
  • <user>
  • <numeric interval minimum level> in unix timestamp
  • <numeric interval maximum level> in unix timestamp
1.3.3.46.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=event_validate_filter_pro&other_mode=url_encode_separator_%7C&other=;%7C2&apipass=1234&user=admin&pass=pandora

1.3.3.47 set new_alert_template

Apply a new alert from a template and module pass as id agent and name of module.

Call syntax:

  • op=set (ob)
  • op2=new_alert_template (required)
  • id=<agent name> (required)
  • id2=<alert template name> (required)
  • other_mode=url_encode_separator_| (optional)
  • other=<serialized parameter> (required), are the following in this order:
  • <module name> (required)
1.3.3.47.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_alert_template&id=miguel-portatil&id2=test&other_mode=url_encode_separator_%7C&other=memfree&apipass=1234&user=admin&pass=pandora

1.3.3.48 set alert_actions

Add actions into a alert.

Call syntax:

  • op=set (required)
  • op2=alert_actions (required)
  • id=<agent name> (required)
  • id2=<alert template name> (required)
  • other_mode=url_encode_separator_| (optional)
  • other=<serialized parameters> (required), are the following in this order:
  • <module name> (required)
  • <action name> (required)
  • <fires min > (optional)
  • <fires max > (optional)
1.3.3.48.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=alert_actions&id=miguel-portatil&id2=test&other_mode=url_encode_separator_%7C&other=memfree%7Ctest&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=alert_actions&id=miguel-portatil&id2=test&other_mode=url_encode_separator_%7C&other=memfree%7Ctest%7C1%7C3&apipass=1234&user=admin&pass=pandora

1.3.3.49 set new_module

Create a new module.

Call Syntax:

  • op=set (required)
  • op2=new_module (required)
  • id=<agent_name> (required)
  • id2=<new module name> (required)
  • other_mode=url_encode_separator_| (optional)
  • other=<serialized parameters> (required), are the following in this order:
  • <network module kind > (required)
  • <action name> (required)
  • <ip o url > (required)
  • <port > (optional)
  • <description > (optional)
  • <min > (optional)
  • <max > (optional)
  • <post process > (optional)
  • <module interval > (optional)
  • <min warning > (optional)
  • <max warning > (optional)
  • <min critical > (optional)
  • <max critical > (optional)
  • <history data > (optional)
  • <enable_unknown_events> (only in version 5)
1.3.3.49.1 Examples
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_%7C&other=remote_tcp_string%7Clocalhost%7C33%7Cdescripcion%20larga&apipass=1234&user=admin&pass=pandora

1.3.3.50 set delete_module

Delete a module.

Call syntax:

  • op=set (required)
  • op2=delete_module (required)
  • id=<agent name> (required)
  • id2=<module name> (required)
  • other=simulate (optional)
1.3.3.50.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_module&id=miguel-portatil&id2=juanito&other=simulate&apipass=1234&user=admin&pass=pandora
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_module&id=miguel-portatil&id2=juanito&apipass=1234&user=admin&pass=pandora

1.3.3.51 set enable_alert

Enable a alert of a agent.

Call syntax

  • op=set (required)
  • op2=enable_alert
  • id=<Agent name> (required)
  • id2=<Module name> (required)
  • other: Alert template name (p.e: Warning event) (required)


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

1.3.3.52 set enable_alert_alias

Enable alert of a agent by alias.

Call syntax:

  • op=set (required)
  • op2=enable_alert_alias
  • id=<Agent alias> (required)
  • id2=<Module name> (required)
  • other: Alert template name (p.e: Warning event) (required)


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

1.3.3.53 set disable_alert

Disable a alert of a agent.

Call syntax:


  • op=set (required)
  • op2=disable_alert
  • id=<Agent name> (required)
  • id2=<Module name> (required)
  • other: Alert template name (p.e: Warning event) (required)


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

1.3.3.54 set disable_alert_alias

Disable a alert of a agent.

Call syntax:


  • op=set (required)
  • op2=disable_alert_alias
  • id=<Agent alias> (required)
  • id2=<Module name> (required)
  • other: Alert template name (p.e: Warning event) (required)


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

1.3.3.55 set enable_module_alerts

Equal to the enable_alert api call.

Call syntax:

  • op=set (required)
  • op2=enable_module_alerts
  • id=<Name of the agent> (required)
  • id2=<Name of the module> (required)


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

1.3.3.56 set disable_module_alerts

Equal to the call api disable_alert.

Call syntax:

  • op=set (required)
  • op2=disable_module_alerts
  • id=<Name of the agent> (required)
  • id2=<Name of the module> (required)
1.3.3.56.1 Examples
http://localhost/pandora_console/include/api.php?op=set&op2=disable_module_alerts&id=garfio&id2=Status&apipass=1234&user=admin&pass=pandora

1.3.3.57 set enable_module

Enable the module.

Call syntax

  • op=set (required)
  • op2=enable_module
  • id=<Agent name> (required)
  • id2=<Module name> (required)
1.3.3.57.1 Examples
http://localhost/pandora_console/include/api.php?op=set&op2=enable_module&id=garfio&id2=Status&apipass=1234&user=admin&pass=pandora

1.3.3.58 set disable_module

Disable the module.

Call syntax

  • op=set (required)
  • op2=disable_module
  • id=<Agent name> (required)
  • id2=<Module name> (required)
1.3.3.58.1 Examples
http://localhost/pandora_console/include/api.php?op=set&op2=disable_module&id=garfio&id2=Status&apipass=1234&user=admin&pass=pandora

1.3.3.59 set create_network_module_from_component

Create a new network module from a component.

Call syntax:

  • op=set (required)
  • op2=create_network_module_from_component (required)
  • id=<Nombre del agente> (required)
  • id2=<Nombre del componente> (required)


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

1.3.3.60 set module_data

Add module value.

Call syntax:

  • op=set (required)
  • op2=module_data (required)
  • id=<id agente módulo> (required)
  • other: module data and timestamp serialized.
    • dato: data which must belong to any Pandora data type.
    • tiempo: could be a specified timestamp of the string "now".
1.3.3.60.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=module_data&id=14&other_mode=url_encode_separator_%7C&other=123%7Cnow&apipass=1234&user=admin&pass=pandora

1.3.3.61 set add_module_in_conf

>= 5.0 (Only Enterprise)

Add the configuration into a local module.

Call syntax:

  • op=set (required)
  • op2=add_module_in_conf (required)
  • id=<id agente> (required)
  • id2=<nombre módulo> (required)
  • other: The module data that will be placed in the conf file encoded in base64 (required) (required)
1.3.3.61.1 Examples
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

Will be returned '0' when success, '-1' when error, '-2' if already exists

1.3.3.62 set delete_module_in_conf

>= 5.0 (Only Enterprise)

Delete a configuration of local module.

Call syntax:

  • op=set (required)
  • op2=add_module_in_conf (required)
  • id=<id agente> (required)
  • id2=<module name> (required)
1.3.3.62.1 Examples
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

Will be returned '0' when success or '-1' when error

1.3.3.63 set update_module_in_conf

>= 5.0 (Only Enterprise)

Update a configuration of local module.

Call syntax:

  • op=set (required)
  • op2=update_module_in_conf (required)
  • id=<agent id> (required)
  • id2=<module name> (required)
  • other: The new module data that will be placed in the conf file encoded in base64 (required)
1.3.3.63.1 Examples
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

Will be returned '1' when no changes, '0' when success, '-1' when error, '-2' if doesn't exist

1.3.3.64 set create_event

Create a new event into Pandora.

This feature is in Metaconsole.


Call syntax:

  • op=set (required)
  • op2=create_event (required)
  • other=<serialized_parameters> (required) event's configuration data as follows:
  • <event_text> (required)(string)
  • <id_group> (required)(string)
  • <id_agent> (required)(numeric)
  • <status>(0 New, 1 Validated, 2 In process)
  • <id_user>(numeric)
  • <event_type>(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)
  • <severity> (0 Maintenance,1 Informative,2 Normal,3 Warning,4 Crit,5 Minor, 6 Major)
  • <id_agent_module>(numeric)
  • <id_alert_am>(numeric)
  • <critical_instructions>(string)
  • <warning_instructions>(string)
  • <unknown_instructions>(string)
  • <comment>(string)
  • <source>(string)
  • <tags>(string)
  • <custom_data> Custom data should be a base 64 encoded JSON document.
  • <server_id> The id of the child node (only for metaconsole).
  • <id_extra> (alphanumeric)


1.3.3.64.1 Examples

http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_event&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora&other=Event_name%7C0%7C1%7C0%7Cadmin%7Calert_fired%7C4%7C1%7C%7C%7C%7C%7Ccomment%7Cadmin%7C%7Ctags%7CeyJBbnN3ZXIgdG8gdGhlIFVsdGltYXRlIFF1ZXN0aW9uIG9mIExpZmUsIHRoZSBVbml2ZXJzZSwgYW5kIEV2ZXJ5dGhpbmciOiA0Mn0=%7C%7C12

1.3.3.65 set add_event_comment

>= 5.1

Add an event comment.

This feature is in Metaconsole.


Call syntax:

  • op=set (required)
  • op2=add_event_comment (required)
  • other=<serialized_parameters> (required) event's configuration data as follows:
  • <comment> (required)
1.3.3.65.1 Examples
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_event_comment&id=event_id&other=string&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.66 set create_netflow_filter

(>=5.0)

Create a new filter of netflow.

Call syntax:

  • op=set (required)
  • op2=create_netflow_filter (required)
  • other=<serialized parameters> (required) filter data in this order:
  • <filter_name> (required)
  • <group_id> (required)
  • <filter> (required)
  • <aggregate_by> (Possible values: dstip,dstport,none,proto,srcip,srcport) (required)
  • <output_format> (Possible values: kilobytes,kilobytespersecond,megabytes,megabytespersecond) (required)
1.3.3.66.1 Examples
http://127.0.0.1/pandora/include/api.php?op=set&op2=create_netflow_filter&apipass=1234&user=admin&pass=pandora&other=Filter%20name%7C9%7Chost%20192.168.50.3%20OR%20host%20192.168.50.4%20or%20HOST%20192.168.50.6%7Cdstport%7Ckilobytes&other_mode=url_encode_separator_%7C

1.3.3.67 set create_custom_field

>= 5.0

Create a new custom field.

Call syntax:

  • op=set (required)
  • op2=create_custom_field (required)
  • other=<serialized parameters> (required) parameters to configure the custom field
  • <name> (required)
  • <flag_display_front> (required; 0 the field will not be displayed on operation view, 1 the field will be displayed)
1.3.3.67.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_custom_field&other=mycustomfield%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.68 set create_tag

>= 5.0

Create a new tag.

Call syntax:

  • op=set (required)
  • op2=create_tag (required)
  • other=<serialized parameters> (required) parameters to configure the tag
  • <name> Tag's name (required)
  • <description> Tag's description
  • <eurl> Tag's URL
  • <email> Tag's email
1.3.3.68.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_tag&other=tag_name%7Ctag_description%7Ctag_url%7Ctag_email&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.69 set enable_disable_agent

Enable / disabled agent.

Call syntax:

  • op=set (required)
  • op2=enable_disable_agent (required)
  • id=<agent_id> (required) should be an agent id.
1.3.3.69.1 Examples

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_%7C&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_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.70 set gis_agent_only_position

>= 5.0

Add new position GIS in any agent.

Call syntax:

  • op=set (required)
  • op2=gis_agent_only_position (required)
  • id=<índice> (required) agent index
  • other=<parámetros serializados> (required) params to set position
  • <latitude> Latitude
  • <longitude> Longitude
  • <altitude> Altitude
1.3.3.70.1 Example
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_%7C&other=2%7C1%7C0

1.3.3.71 set gis_agent

>= 5.0

Add the gis data agent.

Call syntax:

  • op=set (required)
  • op2=gis_agent_only_position (required)
  • id=<índice> (compolsory) agent index.
  • other=<parámetros serializados> (required) gis data
  • <latitude>
  • <longitude>
  • <altitude>
  • <ignore_new_gis_data>
  • <manual_placement>
  • <start_timestamp>
  • <end_timestamp>
  • <number_of_packages>
  • <description_save_history>
  • <description_update_gis>
  • <description_first_insert>

1.3.3.72 set create_special_day

>= 5.1

Add new special day.

Call syntax:

  • op=set (required)
  • op2=create_special_day (required)
  • other=<serialized parameters> (required)
  • <special day> Special day
  • <same day> Same day
  • <description> Description
  • <id_group> Group ID
1.3.3.72.1 Example
http://127.0.0.1/pandora_console/include/api.php?apipass=caca&user=admin&pass=pandora&op=set&op2=create_special_day&other_mode=url_encode_separator_%7C&other=2014-05-03%7CSunday%7Cdesc%7C0

1.3.3.73 set update_special_day

>= 5.1

Update a configuration of special day already defined.

Call syntax:

  • op=set (required)
  • op2=update_special_day (required)
  • id=<special day's id> (required)
  • other=<serialized parameters> (required)
  • <special day> Special day
  • <same day> Same day
  • <description> Description
  • <id_group> Group ID
1.3.3.73.1 Example
http://127.0.0.1/pandora_console/include/api.php?apipass=caca&user=admin&pass=pandora&op=set&op2=update_special_day&id=1&other_mode=url_encode_separator_%7C&other=2014-05-03%7CSunday%7Cdesc%7C0

1.3.3.74 set delete_special_day

>= 5.1

Delete a special day.

Call syntax:

  • op=set (required)
  • op2=delete_special_day (required)
  • id=<special day's id> (required)
1.3.3.74.1 Example
http://127.0.0.1/pandora_console/include/api.php?apipass=caca&user=admin&pass=pandora&op=set&op2=delete_special_day&id=1

1.3.3.75 set pagerduty_webhook

>= 5.1

Connect PagerDuty notification with Pandora FMS alerts. This call will be set in webhooks option in PagerDuty's service to validate the alerts of Pandora FMS previously linked to Pager Duty when were validated from PagerDuty.

Call syntax:

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

1.3.3.76 set tag_user_profile

>= 6

Add a tag into a profile for a user.

Call syntax:

  • op = set (required)
  • op2 = tag_user_profile (required)
  • id = id_user (required)
  • id2 = id_tag (required)
  • other_mode = url_encode_separator_| (required)
  • other = <id_group>|<id_profile> (required)


1.3.3.76.1 Example
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_%7C&other=122%7C3

1.3.3.77 set tag

>= 6

Add a tag into your pandora.

Call syntax:

  • op = set (required)
  • op2 = tag (required)
  • id = name (required)
  • other_mode = url_encode_separator_| (required)
  • other = <description>|<url>|<email>|<phone>


1.3.3.77.1 Example
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_%7C&other="a test"|http://www.artica.es%[email protected]%7C01189998819991197253

1.3.3.78 set add_tag_module

>= 6

Add a tag into a module.

Call syntax:

  • op = set (required)
  • op2 = add_tag_module (required)
  • id = id_module (required)
  • id2 = id_tag (required)


1.3.3.78.1 Example
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

1.3.3.79 set remove_tag_module

>= 6

Remove a tag into a module.

Call syntax:

  • op = set (required)
  • op2 = add_tag_module (required)
  • id = id_module (required)
  • id2 = id_tag (required)


1.3.3.79.1 Example
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

1.3.3.80 set planned_downtimes_created

>= 5.1

Add new planned downtime.

  • 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>;
1.3.3.80.1 Examples

Once:

http://localhost/pandora_console/include/api.php?op=set&op2=planned_downtimes_created&apipass=1234&user=admin&pass=pandora&id=testing&other=testing%7C11/05/2018%7C11/16/2018%7C0%7C1%7C1%7C1%7C1%7C1%7C1%7C1%7C12:06:00%7C19:06:00%7C1%7C31%7Cquiet%7Conce%7Cweekly%7Cadmin&other_mode=url_encode_separator_%7C

Periodically:

http://localhost/pandora_console/include/api.php?op=set&op2=planned_downtimes_created&apipass=1234&user=admin&pass=pandora&id=testing&other=testing%7C11/05/2018%7C11/16/2018%7C0%7C1%7C1%7C1%7C1%7C1%7C1%7C1%7C12:06:00%7C19:06:00%7C1%7C31%7Cquiet%7Cperiodically%7Cweekly%7Cadmin&other_mode=url_encode_separator_%7C

1.3.3.81 set planned_downtimes_additem

>= 5.1 Add new items of a planned downtime.

  • 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;>
1.3.3.81.1 Example
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%7CStatus;Unkown_modules%20&other_mode=url_encode_separator_%7C

1.3.3.82 set planned_downtimes_deleted

>=5.1

Delete a planned downtime

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

1.3.3.83 set create_synthetic_module

>=5.1SP4

Add new synthetic module:

  • op=set
  • op2=create_synthetic_module
  • id=Name of agent to add module
  • other= <name_module><synthetic_type><AgentName;Operation;NameModule> OR <AgentName;NameModule> OR <Operation;Value>
    • Data of module:
 In arithmetic creations the firts without operator if you put Agent and module: AgentName;NameModule or this if you will put a value: <Operation;Value>. the rest of data <AgentName;Operation;NameModule> or <Operation;Value>
 average: <AgentName;Operation;NameModule> or <Operation;Value>
    • Operation:
 arithmetic: ADD, SUB, MUL, DIV
 average: Only AVG


1.3.3.83.1 Example
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%7Carithmetic%7CAgent%20Name;Module%20Name%7CAgent%20Name2;ADD;Module%20Name2&other_mode=url_encode_separator_%7C
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_synthetic_module&apipass=1234&user=admin&pass=pandora&id=pepito&other=prueba%7Caverage%7CAgent%20Name;AVG;Name%20Module%7CAgent%20Name2;AVG;Name%20Module2&other_mode=url_encode_separator_%7C

1.3.3.84 set create_service

>= 7

Create a new service.

  • 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>;

1.3.3.84.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_service&return_type=json&other=test1%7CDescripcion%7C12%7C1%7C0.5%7C1&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.85 set update_service

>= 7

Update a service.

  • op=set
  • op2=update_service
  • id=service id
  • 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>;

1.3.3.85.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=update_service&return_type=json&id=1&other=test2%7CDescripcion2%7C%7C%7C0.6%7C&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.86 set add_element_service

>= 7

Adds elements to service.

  • op=set
  • op2=add_element_service
  • id=service id
  • other=Json with elements in base64

The structure of the json should be as follows:

[{"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}]

In each type, the id field refers to different things:

- If it is of type agent, it is agent id

- If it is of type module, it is agent module id

- If it is service type, it is the service id that we want to add.


1.3.3.86.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=add_element_service&return_type=json&id=6&other=W3sidHlwZSI6ImFnZW50IiwiaWQiOjIsImRlc2NyaXB0aW9uIjoiamlqaWppIiwid2VpZ2h0X2NyaXRpY2FsIjowLCJ3ZWlnaHRfd2FybmluZyI6MCwid2VpZ2h0X3Vua25vd24iOjAsIndlaWdodF9vayI6MH0seyJ0eXBlIjoibW9kdWxlIiwiaWQiOjEsImRlc2NyaXB0aW9uIjoiSG9sYSBxdWUgdGFsIiwid2VpZ2h0X2NyaXRpY2FsIjowLCJ3ZWlnaHRfd2FybmluZyI6MCwid2VpZ2h0X3Vua25vd24iOjAsIndlaWdodF9vayI6MH0seyJ0eXBlIjoic2VydmljZSIsImlkIjozLCJkZXNjcmlwdGlvbiI6ImplamVqZWplIiwid2VpZ2h0X2NyaXRpY2FsIjowLCJ3ZWlnaHRfd2FybmluZyI6MCwid2VpZ2h0X3Vua25vd24iOjAsIndlaWdodF9vayI6MH1d&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.87 set metaconsole_synch

>= 7

Add license key to metaconsole and synchonize nodes.

  • op=set
  • op2=metaconsole_synch
  • id=License key
1.3.3.87.1 Example

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

1.3.3.88 set migrate_agent

>= 7.21 ONLY METACONSOLE

Adds a selected agent to the agent migration queue

  • op=set
  • op2=migrate_agent
  • id=id_agent to migrate
  • other=origin node name| destination node name | (true|false) not to migrate historical database
  • other_mode=url_encode_separator_|
  • return_type = string, json, etc
1.3.3.88.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=migrate_agent&apipass=1234&user=admin&pass=pandora&id=2&other=nova%7Cfringe%7C0&other_mode=url_encode_separator_%7C&return_type=string

1.3.3.89 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_
1.3.3.89.1 Example
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=new_cluster&other=nombre_cluster%7CAA%7Cdescripcion%7C12&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.90 set add_cluster_agent

>= 7.0

Add agent to a cluster

  • op=set
  • op2=add_cluster_agent
  • other=json with elements in base64
  • other_mode=url_encode_separator_

The json structure should be:

[{"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_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.91 set add_cluster_item (activo/activo)

>= 7.0

Adds an active/active item to a cluster

  • op=set
  • op2=add_cluster_item
  • other=json with elements in base64
  • other_mode=url_encode_separator_

The json structure should be:

[{"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=W3sibmFtZSI6IlN3YXBfVXNlZCIsImlkX2NsdXN0ZXIiOjUsInR5cGUiOiJBQSIsImNyaXRpY2FsX2xpbWl0Ijo4MCwid2FybmluZ19saW1pdCI6NjB9LAp7Im5hbWUiOiJUQ1BfQ29ubmVjdGlvbnMiLCJpZF9jbHVzdGVyIjo1LCJ0eXBlIjoiQUEiLCJjcml0aWNhbF9saW1pdCI6ODAsIndhcm5pbmdfbGltaXQiOjYwfV0=&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.92 set add_cluster_item (active/passive)

>= 7.0

Adds a passive/actve item to a cluster

  • op=set
  • op2=add_cluster_item
  • other=json with elements in base64
  • other_mode=url_encode_separator_

The json structure should be:

[{"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}]

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

1.3.3.93 set delete_cluster

>= 7.0

Deletes a cluster.

  • op=set
  • op2=delete_cluster
  • id=id of the cluster to delete
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_cluster&id=7&apipass=1234&user=admin&pass=pandora

1.3.3.94 set delete_cluster_agent

>= 7.0

Disassociates an agent from a cluster

  • op=set
  • op2=delete_cluster_agent
  • other=id_agente| id_cluster|
  • other_mode=url_encode_separator_
1.3.3.94.1 Example
 http://127.0.0.1/pandora_console/include/api.php?op=set&op2=delete_cluster_agent&other=2%7C1&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.95 set delete_cluster_item

>= 7.0

Deletes an item from a cluster

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

1.3.3.96 set create_policy

>= 7.0. 725

Create a policy. Its required the policy name, that can not be repeated and the id_group that must exist in the database.

  • op = set
  • op2 = create_policy
  • other = policy name (required) | id_del grupo (required) | description;
  • other_mode = url_encode_separator_|
  • return_type = (string, csv, json).
1.3.3.96.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=create_policy&apipass=1234&user=admin&pass=pandora&other=name%20Policy%7C11%7Cthis%20description&other_mode=url_encode_separator_%7C&return_type=json

1.3.3.97 set update_policy

>= 7.0. 725

Update a policy. The policy name can not be repeated and the id_group must exist in the database. Returns 0 (false) or the updated policy id (true).


  • op = set
  • op2 = update_policy
  • id = id política
  • other = policy name | id_del grupo | description;
  • other_mode = url_encode_separator_|
  • return_type = (string, csv, json).
1.3.3.97.1 Exmaple
http://localhost/pandora_console/include/api.php?op=set&op2=update_policy&apipass=1234&user=admin&pass=pandora&id=17&other=policy2%7C11%7Cthis%20description&other_mode=url_encode_separator_%7C&return_type=json

1.3.3.98 set delete_policy

>= 7.0. 725

Deletes a policy. Its required to introduce the policy id, which must exist in order to delete it. Returns 0 (false) or 1 (true).

  • op = set
  • op2 = delete_policy
  • id = policy id
  • return_type = (string, csv, json).
1.3.3.98.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=delete_policy&apipass=1234&user=admin&pass=pandora&id=10&return_type=json

1.3.3.99 set add_collections_policy

>= 7.0. 725

Add a collection to a policy. It is necessary to introduce the policy id and that there is such a policy, as an id, name or short name of the collection you want to add which should exist. Both fields are required. Returns 0 (false) or the id of the collection added to a policy (true).

  • op = set
  • op2 = add_collections_policy
  • id = policy id
  • id2 = id, name or short name
  • return_type = (string, csv, json).
1.3.3.99.1 Example
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

1.3.3.100 set remove_collections_policy

>= 7.0. 725

To mark a collection of a policy that is pending deletion is necessary:

  • A policy id and that such a policy exists. Required
  • An id, name or short name of the collection you want to remove which must exist. Required
  • and 0 or 1: where 1 is to mark as pending to be deleted and if it is 0 it removes the pending mark to be deleted. by default, if this field is not added, it will try to mark so that it can be deleted.

returns 0 (false) or 1 (true).

  • op = set
  • op2 = remove_collections_policy
  • id = policy id
  • id2 = id, name or short name
  • other = (bool) 0 or 1
  • return_type = (string, csv, json).
1.3.3.100.1 Example
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=caca&other=1.

1.3.3.101 set create_plugins_policy

>= 7.0. 725

To add a plugin to a policy is necessary:

  • A policy id and that such a policy exists. Required
  • The plugin string to run. Required

returns 0 (false) or the plugin id that's been added to a policy (true).

  • op = set
  • op2 = create_plugins_policy
  • id = policy id
  • id2 = text string
  • return_type = (string, csv, json).
1.3.3.101.1 Example
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%201

1.3.3.102 set delete_plugins_policy

>= 7.0. 725

To remove a plugin from a policy it is necessary:

  • A policy id and that such a policy exists. Mandatory
  • A plugin id that you want to remove. Mandatory
  • 0 or 1: being 1 mark as pending to be deleted the plugin and if it is 0 remove the pending mark to be deleted by default if not added, this field is marked as pending to be deleted.

returns 0 (false) or 1 (true).

  • op = set
  • op2 = delete_plugins_policy
  • id = policy id
  • id2 = plugin id
  • other = 0 or 1
  • return_type = (string, csv, json).
1.3.3.102.1 Example
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

1.3.3.103 set linking_policy

>= 7.0. 725

To link an unlinked module of a policy is necessary:

  • An agent id module that is unlinked.

returns 0 (false) or 1 (true).

  • op = set
  • op2 = linking_policy
  • id = module agent id
  • return_type = (string, csv, json).
1.3.3.103.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=linking_policy&apipass=1234&user=admin&pass=pandora&return_type=json&id=28

1.3.3.104 set create_alerts_policy

>= 7.0. 725

To create policy alerts is necessary:

  • A policy id that must exist (mandatory).
  • A policy module id if it is of normal type is obligatory.
  • A template id that must exist (mandatory).
  • Whether or not it is external 0 (normal), 1 (external). By default it is 0 normal
  • It is obligatory in case of being of external type (1) name of module with which to coincide.

returns 0 (false) or the id of the alert added in the policy (true).

  • op = set
  • op2 = create_alerts_policy
  • id = policy id
  • id2 = policy module id
  • other = policy module id|id template|0 or 1|module name.
  • other_mode = url_encode_separator_|
  • return_type = (string, csv, json).
1.3.3.104.1 Example
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%7C2%7C1%7Ccpu%20load&other_mode=url_encode_separator_%7C

1.3.3.105 set update_alerts_policy

>= 7.0. 725

To update policy alerts is necessary:

  • A policy id that must exist (mandatory).
  • Active 0 | Waiting 1
  • enable 0 | disable 1

returns 0 (false) or the id of the updated alert in the policy (true).

  • op = set
  • op2 = update_alerts_policy
  • id = policy id
  • other = 0 or 1 ( activate/deactivate ) | 0 or 1 (enable/disable).
  • other_mode = url_encode_separator_|
  • return_type = (string, csv, json).
1.3.3.105.1 Example
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%7C1&other_mode=url_encode_separator_%7C

1.3.3.106 set delete_alerts_policy

>= 7.0. 725

To remove an alert from a policy is necessary:

  • A policy alert id that must exist (mandatory).
  • 0 | 1 mark pending removal or not by default if you do not add this field stays at 1
  • Active 0 | Standby 1

returns 0 (false) or 1 (true).

  • op = set
  • op2 = delete_alerts_policy
  • id = policy id
  • id2 = 0 or 1.
  • return_type = (string, csv, json).
1.3.3.106.1 Example
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

1.3.3.107 set create_alerts_actions_policy

>= 7.0. 725

To add an action to a policy alert is necessary:

  • A policy alert id that must exist (mandatory).
  • A policy action id that must exist (mandatory).
  • You can add a minimum number of shots or a maximum number of shots by default: 0.

returns 0 (false) or the id of the action added to the alert of a policy (true).

  • op = set
  • op2 = create_alerts_action_policy
  • id = policy id
  • id2 = action id
  • other = min fires | max fires
  • other_mode=url_encode_separator_|
  • return_type = (string, csv, json).
1.3.3.107.1 Example
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%7C2&other_mode=url_encode_separator_%7C

1.3.3.108 set delete_alerts_actions_policy

>= 7.0. 725

To remove an action from a policy alert is necessary:

  • A policy alert id that must exist (mandatory).
  • A policy action id that must exist (mandatory).
  • op = set
  • op2 = delete_alerts_action_policy
  • id = policy id
  • id2 = action id
  • return_type = (string, csv, json).
1.3.3.108.1 Example
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

1.3.3.109 set remove_agents_policy

>= 7.0. 725

To remove an agent from a policy is necessary:

  • A policy id that must exist (mandatory).
  • An agent id that must exist (mandatory).
  • op = set
  • op2 = remove_agents_policy
  • id = policy id
  • id2 = group id
  • return_type = (string, csv, json).
1.3.3.109.1 Example
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

1.3.3.110 set add_groups_policy

>= 7.0. 725

To add a group of a policy is necessary:

  • A policy id that must exist (required).
  • A group id that must exist (required).
  • op = set
  • op2 = add_groups_policy
  • id = policy id
  • id2 = group id
  • return_type = (string, csv, json).
1.3.3.110.1 Example
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

1.3.3.111 set remove_groups_policy

>= 7.0. 725

To remove an agent from a policy is necessary:

  • A policy id that must exist (mandatory).
  • A group id that must exist (mandatory).
  • op = set
  • op2 = add_groups_policy
  • id = policy id
  • id2 = group id
  • return_type = (string, csv, json).
1.3.3.111.1 Example
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

1.3.3.112 set create_os

>= 7.0. 727

Creates a new operating system with the passed data as parameters.

Call syntax:

  • op=set (required)
  • op2=create_os (required)
  • other=<serializead parameters> (required) are the system's data, serializead in this order:
  • <name>
  • <description>
  • <icon>
1.3.3.112.1 Example
http://127.0.0.1/pandora_console/include/api.php?op=set&op2=create_os&other=os_name%7Cos_description%7Cos_icon.png&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.113 set update_os

>= 7.0. 727

Updates the operating system with the passed data as parameters.

Call syntax:

  • op=set (required)
  • op2=create_os (required)
  • other=<serializead parameters> (required) are the operating system's data, serializead in this order:
  • <name>
  • <description>
  • <icon>
1.3.3.113.1 Example
http://127.0.0.1/pandora_console/include/api.php?id=107&op=set&op2=update_os&other=os_name_to_update%7Cos_description_to_update%7Cos_icon_to_update.png&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.114 set disabled_and_standby

>= 7.0. 728

Disables an agent and, if it has remote configuration, puts it in standby mode.

Call Syntax:

  • op=set (required)
  • op2=disabled_and_standby (required)
  • id=<agent id> (required). In the metaconsole it is the id of tagente, that is to say, the id of the node.
  • id2=<id del nodo> (required in the meta console, unnecessary in the node)
  • other=<valor> (optional) Value (0 to enable and 1 to disable) of the new status. If no value is specified, it disables the agent.
1.3.3.114.1 Example
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_%7C&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_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.115 set validate_traps

>= 7.0. 728

Allows to validate traps.

  • op = set
  • op2 = validate_traps
  • id = trap id
1.3.3.115.1 Example
https://127.0.0.1/pandora_console/include/api.php?op=set&op2=validate_traps&id=1&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.116 set delete_traps

>= 7.0. 728

Allows to delete a trap:

  • op = set
  • op2 = delete_traps
  • id = trap id
1.3.3.116.1 Example
http://127.0.0.1/pandora_console/include/api.php?id=2&op=set&op2=delete_traps&id=1&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.117 set access_process

>= 7.0NG. 728

This function allows to manage the access to a third application from records in the system audit log of pandorafms. It uses different parameters to process one of these registry actions in our application and avoids concurrent access by administrator users. Optionally, it can prohibit access to non-administrator users.

Call syntax:

  • op = set
  • op2 = access_process
  • other=<required parameters>:
  • <user_id>

The id of the user trying to access the application, this data is recorded and checked in the audit to filter the access, exit, exploration or navigation of the user through the application.

  • <action> - (login,logout,exclude,browse)

login: It is used to request access to the application. It deletes the text string "free" and registers our access in the pandorafms audit or returns the text string "denied" if there is another user in the audit records who has previously accessed the system and has not yet logged out. It will also return denied if the administrator-only access parameter is enabled and the user is not.

logout: Logs a user's exit from the application so that other users are again allowed to access.

browse: It must be used on all pages of the external application, as it checks whether this user is still the last one to access or be expelled from the application.

exclude: Expels the currently registered user and registers the access of another that we have sent in the user_id parameter

  • <app ip address>

IP address of the application from which you are accessing it. It is registered and checked in the pandorafms audit to check the access status of users in the application.

  • <app name>

Name of the application you are accessing from. It is registered and checked in the pandorafms audit to check the access status of users in the application.

  • <only admin access>

Forbids the access to non-administrator users.

1.3.3.117.1 Example (requires adapted environment)
http://127.0.0.1/pandora_console/include/api.php?op=get&op2=access_process&other=1%7Clogin%7C192.168.50.25%7Cexternal_app%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.118 set create_event_response

Creates a new event response.

Call syntax:

  • op=set (required)
  • op2=create_event_response (required)
  • return_type=csv|json (required)
  • other=<serialized parameters> (all required). In this order
  • <name>
  • <description>
  • <target> If the forth parameter (<type>) is command, here it is necessary to indicate the wanted command to execute the response to the event. On the other hand, if it is url, you must indicate the URL you want to access as a response to the event.
  • <type> command or url.
  • <group id> The user must have permissions over the indicated group.
  • <modal window width> In pixels.
  • <modal window height> In pixels.
  • <new window> 1 or 0. Indicates if the URL is show on a new window (1) or on a modal window (0).
  • <parameters> Parameters that complement the execution of the command.
  • <server> Id of the server in which the command is wanted to be executed. For the local console, the value is 0.
1.3.3.118.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=create_event_response&other=response%7Cdescription%20response%7Ctouch%7Ccommand%7C0%7C650%7C400%7C0%7Cresponse%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.119 set update_event_response

Edits an existing event response. The user must have permissions on the group to which the response belongs in order to edit it.

Call syntax:

  • op=set (required)
  • op2=update_event_response (required)
  • return_type=csv|json (required)
  • id=<id of event response> (required)
  • other=<serialized parameters> (optional). In this order
  • <name>
  • <description>
  • <target> If the fourth parameter (<type>) is command, here you have to indicate the command that you want to execute the response to the event. On the other hand, if it is url, you must indicate the URL you want to access as a response to the event.
  • <type> command or url.
  • <group id> The user must have permissions on the indicated group.
  • <modal window width> In pixels.
  • <modal window height> In pixels.
  • <new window> 1 or 0. Indicates whether the URL is displayed in a new window (1) or on a modal window (0).
  • <parameters> Parameters that complement the command's execution.
  • <server> Id of the server where the command is wished to be executed. For the local console the value is 0.
1.3.3.119.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=update_event_response&id=7&other=response%7Cdescription%20response%7Ctouch%7Ccommand%7C0%7C650%7C400%7C0%7Cresponse%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.120 set delete_event_response

Deletes an event response. The user must have permissions on the group to which the response belongs in order to delete it.

Call syntax:

  • op=set (required)
  • op2=delete_event_reponse (required)
  • return_type=csv|json
  • id=<event response id> (required)
1.3.3.120.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=delete_event_response&id=7&apipass=1234&user=admin&pass=pandora

1.3.3.121 set create_user_profile_info

Creates a new user profile.

Call syntax:

  • op=set (required)
  • op2=create_user_profile_info (required)
  • return_type=csv|json (required)
  • other=<serialized parameters> In this order
  • <name> (required)
  • <access bits>: 1 if bit is to be set and 0 if not. They are not required but if no value is specified the bit will be marked as not active. In this order:

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

Info.png

To know which permissions we should activate, visit the following link.

 


1.3.3.121.1 Example

This example creates a profile that gives a read-only access to Pandora, that is, it is the same as the predefined profile Operator (read).

http://localhost/pandora_console/include/api.php?op=set&op2=create_user_profile_info&return_type=json&other=API_profile%7C1%7C0%7C0%7C1%7C0%7C0%7C0%7C0%7C0%7C0%7C1%7C0%7C0%7C1%7C0%7C0%7C1%7C0%7C0%7C1%7C0%7C0%7C0&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.122 set update_user_profile_info

Updates new existing user profile.

Call syntax:

  • op=set (required)
  • op2=update_user_profile_info (required)
  • other=<serialized parameters> (all optional) in this order
  • <name>
  • <access bits>: 1 if you want to set the bit and 0 if you want to disable it. If no value is specified, it will not change. In this order:

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

Info.png

To know which permissions we should activate, visit the following link.

 


1.3.3.122.1 Example

In this example we change the name of the profile with ID 6 to API_profile_updated and we give all the permissions (read, write and management) related to agents and we remove the permission to read events.

http://localhost/pandora_console/include/api.php?op=set&op2=update_user_profile_info&return_type=json&id=6&other=API_profile_updated%7C%7C%7C%7C1%7C1%7C1%7C%7C%7C%7C%7C0%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.3.3.123 set delete_user_profile_info

Deletes a user profile. It also deletes all assignments from that profile to any user.

Call syntax:

  • op=set (required)
  • op2=delete_user_profile_info (required)
  • return_type=csv|json
  • id=<id del perfil> (required)
1.3.3.123.1 Example
http://localhost/pandora_console/include/api.php?op=set&op2=delete_user_profile_info&return_type=json&id=8&other_mode=url_encode_separator_%7C&apipass=1234&user=admin&pass=pandora

1.4 Examples

Several examples in several languages about to call Pandora API.

1.4.1 Example

http://127.0.0.1/pandora5/include/api.php?apipass=caca&user=admin&pass=pandora&op=set&op2=gis_agent&id=582&other_mode=url_encode_separator_%7C&other=2%7C2%7C0%7C0%7C0%7C2000-01-01+01%3A01%3A01%7C0%7C666%7Caaa%7Cbbb%7Cccc

1.4.2 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>";
}
?>

1.4.3 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()


1.4.4 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");
}

1.4.5 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

1.4.6 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

1.4.7 Brainfuck

[-]>[-]<
>+++++++++[<+++++++++>-]<-.
>+++++[<+++++>-]<----.
>++++[<++++>-]<---.
>++++[<---->-]<++.
>+++[<+++>-]<++.
-.
>++++++++[<-------->-]<--.
>+++[<--->-]<---.
>++++++++[<++++++++>-]<++++.
+.
>++++++++[<-------->-]<-----.
>+++++++++[<+++++++++>-]<----.
++.
--.
>+++[<--->-]<+.
>+++[<+++>-]<.
>++[<++>-]<++.
>++[<-->-]<-.
>+++++++++[<--------->-]<++.
>+++++++++[<+++++++++>-]<---.
+.
>+++++++++[<--------->-]<++.
>+++++++++[<+++++++++>-]<+++.
>++++[<---->-]<+.
>+++[<+++>-]<.
>+++[<--->-]<++.
>+++[<+++>-]<-.
>+++++++++[<--------->-]<++.
>+++++++++[<+++++++++>-]<+++.
>+++[<--->-]<--.
----.
>+++[<+++>-]<-.
+++.
-.
>+++++++++[<--------->-]<++.
>+++++++++[<+++++++++>-]<-.
>++++[<---->-]<+.
>++++[<++++>-]<+.
>++++[<---->-]<-.
>++++++++[<-------->-]<-.
>++++++++[<++++++++>-]<++++++++.
>+++[<--->-]<++.
++.
++.
>++++[<++++>-]<---.
>++[<-->-]<--.
+++.
>++++++++[<-------->-]<---.
>+++[<--->-]<---.
>+++++++++[<+++++++++>-]<-.
>+++[<--->-]<--.
>++++[<++++>-]<---.
---.
>+++++++++[<--------->-]<++.
>+++++++++[<+++++++++>-]<+++++.
>+++++[<----->-]<++++.
>+++[<+++>-]<++.
>+++[<--->-]<++.
>++++++++[<-------->-]<-----.
>+++++++++[<+++++++++>-]<----.
>+++[<+++>-]<-.
>++++[<---->-]<--.
>++[<++>-]<+.
>+++[<+++>-]<--.
++++.
>+++++++++[<--------->-]<--.
>++++++++[<++++++++>-]<++++++.
>+++[<+++>-]<+++.
>+++[<--->-]<.
++.
--.
>+++[<+++>-]<--.
>++[<++>-]<+.
>+++[<--->-]<++.
>++[<++>-]<++.
>++[<-->-]<-.
++++.
>++++++++[<-------->-]<-----.

1.4.8 Java (Android)

Please you can see our project (Pandora Event Viewer) in Pandroid Event Viewer source code in SourceForge SVN repository but this is piece of code for get the data of events across the API.

/**
	 * 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;
		}
	}

1.5 Future of API.php

Some ideas for the future of api.php are:

  • Increase the API calls group.
  • Return and get values in xml, JSON...
  • Increase the call security for insecure environments.
  • Integrate with third tools standards.


Go back to Pandora FMS documentation index