Объект пользовательского макроса

Следующие объекты напрямую связаны с API usermacro.

Глобальный макрос

Объект глобального макроса имеет следующие свойства.

Свойство Type Описание
globalmacroid ID ID глобального макроса.

Поведение свойства:
- только для чтения
- обязательно для операций обновления
description string Описание макроса.
macro string Строка макроса.

Поведение свойства:
- обязательно для операций создания
type integer Тип макроса.

Возможные значения:
0 - (по умолчанию) текстовый макрос;
1 - секретный макрос;
2 - секрет Vault.
value string Значение макроса.

Поведение свойства:
- только для записи, если type установлен в "Secret macro"
- обязательно для операций создания

Макрос узла сети

Объект макроса узла сети определяет макрос, доступный на узле сети, прототипе узла сети или шаблоне. Он имеет следующие свойства.

Свойство Тип Описание
hostmacroid ID ID макроса.

Поведение свойства:
- только для чтения
- обязательно для операций обновления
automatic integer Определяет, управляется ли макрос правилом обнаружения.

Возможные значения:
0 - (по умолчанию) Макрос управляется пользователем;
1 - Макрос управляется правилом обнаружения.

Пользователю не разрешено создавать автоматический макрос.
Чтобы обновить автоматический макрос, его необходимо преобразовать в ручной.
config object/array Конфигурация макроса, отвечающая за то, как макрос отображается в мастере узла сети.
description string Описание макроса.
hostid ID ID узла сети, прототипа узла сети или шаблона, которому принадлежит макрос.

Поведение свойства:
- постоянное
- обязательно для операций создания
macro string Строка макроса.

Поведение свойства:
- обязательно для операций создания
type integer Тип макроса.

Возможные значения:
0 - (по умолчанию) Текстовый макрос;
1 - Секретный макрос;
2 - Секрет из Vault.
value string Значение макроса.

Поведение свойства:
- только для записи, если type установлен в "Secret macro"
- обязательно для операций создания

Настройка макроса

Объект настройки макроса определяет, как макрос отображается в мастере узла сети.

Свойство Type Описание
type integer Тип поля ввода макроса.

Возможные значения:
0 - Макрос не используется в мастере узла сети;
1 - Текстовое поле;
2 - Список;
3 - Флажок.

Поведение свойства:
- required
label string Метка для поля ввода макроса.

Поведение свойства:
- required, если type задан как "Textbox", "List" или "Checkbox"
description text Справочный текст, отображаемый рядом с полем ввода макроса. Поддерживается форматирование Markdown.
priority integer Позиция поля ввода макроса в списке макросов.

Если priority не задан, макрос добавляется в конец списка несгруппированных макросов.
required integer Отмечает макрос как обязательный.

Возможные значения:
0 - Необязательный;
1 - Обязательный.

Поведение свойства:
- supported, если type задан как "Textbox" или "List"
regex string Регулярное выражение для проверки пользовательского ввода в текстовом поле.

Поведение свойства:
- supported, если type задан как "Textbox"
section_name string Метка сворачиваемого раздела, в котором сгруппирован макрос.

Если section_name не задан, макрос не группируется. Несгруппированные макросы отображаются первыми; сгруппированные макросы отображаются ниже, упорядоченные по их priority в пределах каждого сворачиваемого раздела.
options text Строка JSON, определяющая элементы списка или значения флажка.

Для списков: массив объектов со свойствами value и text.
Пример: [{"value": "http", "text": "HTTP"}, {"value": "https", "text": "HTTPS"}]

Для флажков: объект со свойствами checked и unchecked.
Пример: {"checked": true, "unchecked": false}

Поведение свойства:
- required, если type задан как "List" или "Checkbox"