This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

usermacro.get

Description

integer/array usermacro.get(object parameters)

The method allows to retrieve host and global macros according to the given parameters.

Parameters

(object) Parameters defining the desired output.

The method supports the following parameters.

Parameter Type Description
globalmacro flag Return global macros instead of host macros.
globalmacroids string/array Return only global macros with the given IDs.
groupids string/array Return only host macros that belong to hosts or templates from the given host groups.
hostids string/array Return only host macros that belong to the given hosts.
hostmacroids string/array Return only host macros with the given IDs.
templateids string/array Return only host macros that belong to the given templates.
selectGroups query Return host groups that the host macro belongs to in the groups property.

Used only when retrieving host macros.
selectHosts query Return hosts that the host macro belongs to in the hosts property.

Used only when retrieving host macros.
selectTemplates query Return templates that the host macro belongs to in the templates property.

Used only when retrieving host macros.
sortfield string/array Sort the result by the given properties.

Possible value: macro.
countOutput flag These parameters being common for all get methods are described in detail in the reference commentary page.
editable boolean
excludeSearch flag
filter object
limit integer
output query
preservekeys flag
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch flag

Return values

(integer/array) Returns either:

  • an array of objects;
  • the count of retrieved objects, if the countOutput parameter has been used.

Examples

Retrieving host macros for a host

Retrieve all host macros defined for host "10198".

Request:

{
           "jsonrpc": "2.0",
           "method": "usermacro.get",
           "params": {
               "output": "extend",
               "hostids": "10198"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostmacroid": "9",
                   "hostid": "10198",
                   "macro": "{$INTERFACE}",
                   "value": "eth0"
               },
               {
                   "hostmacroid": "11",
                   "hostid": "10198",
                   "macro": "{$SNMP_COMMUNITY}",
                   "value": "public"
               }
           ],
           "id": 1
       }

Retrieving global macros

Retrieve all global macros.

Request:

{
           "jsonrpc": "2.0",
           "method": "usermacro.get",
           "params": {
               "output": "extend",
               "globalmacro": true
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "globalmacroid": "6",
                   "macro": "{$SNMP_COMMUNITY}",
                   "value": "public"
               }
           ],
           "id": 1
       }

Source

CUserMacro::get() in frontends/php/include/classes/api/services/CUserMacro.php.