Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

usermacro.get

Описание

integer/array usermacro.get(параметры объекта)

Метод позволяет получить хостовые и глобальные макросы в соответствии с заданными параметрами.

Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.

Параметры

(объект) Параметры задают желаемый вывод.

Этот метод поддерживает следующие параметры.

Параметр Тип Тип
globalmacro флаг Возврат глобальных макросов вместо макросов узла сети.
globalmacroids строка/массив Возврат глобальных макросов только с заданными ID.
groupids строка/массив Возврат только тех макросов узла сети, которые принадлежат узлам сети или шаблонам из заданных групп узлов сети.
hostids строка/массив Возврат только тех макросов, которые принадлежат заданным узлам сети или шаблонам.
hostmacroids строка/массив Возврат макросов узла сети только с заданными ID.
selectGroups запрос Возврат групп узлов сети, которым принадлежат макросы узла сети, в свойстве groups.

Используется только при получении макросов узла сети.
selectHosts запрос Возврат узлов сети, которым принадлежат макросы узла сети, в свойстве hosts.

Используется только при получении макросов узла сети.
selectTemplates запрос Возврат шаблонов, которым принадлежат макросы узла сети, в свойстве templates.

Используется только при получении макросов узла сети.
sortfield строка/массив Сортировка результата в соответствии с заданными свойствами.

Возможные значения: macro.
countOutput логический Эти параметры являются общими для всех методов get и они описаны в справочных комментариях.
editable логический
excludeSearch логический
filter объект
limit целое число
output запрос
preservekeys логический
search объект
searchByAny логический
searchWildcardsEnabled логический
sortorder строка/массив
startSearch логический

Возвращаемые значения

(целое число/массив) Возвращает либо:

  • · массив объектов;
  • · количество извлеченных объектов, если использовался параметр countOutput.

Примеры

Получение макросов узла сети с узла сети

Получение всех добавленных макросов узла сети с узла сети "10198".

Запрос:

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

Ответ:

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

Получение глобальных макросов

Получение всех глобальных макросов.

Запрос:

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

Ответ:

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

Источник

CUserMacro::get() в ui/include/classes/api/services/CUserMacro.php.