Documentation

Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

usermacro.update

This functionality is deprecated and will be removed in upcoming versions.

Description

object usermacro.update(object/array hostMacros)

This method allows to update existing host macros.

This method is only available to Admin and Super admin user types. Permissions to call the method can be revoked in user role settings. See User roles for more information.

Parameters

(object/array) Host macro properties to be updated.

The hostmacroid property must be defined for each host macro, all other properties are optional. Only the passed properties will be updated, all others will remain unchanged.

Return values

(object) Returns an object containing the IDs of the updated host macros under the hostmacroids property.

Examples

Changing the value of a host macro

Change the value of a host macro to "public".

Request:

{
           "jsonrpc": "2.0",
           "method": "usermacro.update",
           "params": {
               "hostmacroid": "1",
               "value": "public"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostmacroids": [
                   "1"
               ]
           },
           "id": 1
       }

Change macro value that was created by discovery rule

Convert discovery rule created "automatic" macro to "manual" and change its value to "new-value".

Request:

{
           "jsonrpc": "2.0",
           "method": "usermacro.update",
           "params": {
               "hostmacroid": "1",
               "value": "new-value",
               "automatic": "0"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostmacroids": [
                   "1"
               ]
           },
           "id": 1
       }

Source

CUserMacro::update() in ui/include/classes/api/services/CUserMacro.php.