Объект пользовательского макроса
Следующие объекты напрямую связаны с 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" |