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

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

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

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

Property Type Description
globalmacroid ID ID глобального макроса.

Property behavior:
- read-only
- required for update operations
description string Описание макроса.
macro string Строка макроса.

Property behavior:
- required for create operations
type integer Тип макроса.

Possible values:
0 - (default) Текстовый макрос;
1 - Секретный макрос;
2 - Секрет хранилища.
value string Значение макроса.

Property behavior:
- write-only if type is set to "Secret macro"
- required for create operations

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

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

Property Type Description
hostmacroid ID ID макроса.

Property behavior:
- read-only
- required for update operations
automatic integer Определяет, управляется ли макрос правилом обнаружения.

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

User is not allowed to create automatic macro.
To update automatic macro, it must be converted to manual.
config object/array Конфигурация макроса, отвечающая за то, как макрос отображается в Мастере узлов сети.
description string Описание макроса.
hostid ID ID узла сети, прототипа узла сети или шаблона, которому принадлежит макрос.

Property behavior:
- constant
- required for create operations
macro string Строка макроса.

Property behavior:
- required for create operations
type integer Тип макроса.

Possible values:
0 - (default) Текстовый макрос;
1 - Секретный макрос;
2 - Секрет из хранилища.
value string Значение макроса.

Property behavior:
- write-only if type is set to "Secret macro"
- required for create operations

Конфигурация макроса

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

Property Type Description
type integer Тип поля ввода макроса.

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

Property behavior:
- required
label string Метка для поля ввода макроса.

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

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

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

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

Property behavior:
- 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}

Property behavior:
- required если type установлено в "List" или "Checkbox"