template.update
Описание
object template.update(объект/массив templates)
Этот метод позволяет обновлять существующие шаблоны.
Этот метод доступен только пользователям с типом доступа Администратор и Супер-администратор. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.
Параметры
(object/array) Свойства шаблона, которые необходимо обновить.
Свойство templateid должно быть определено для каждого шаблона, все остальные
свойства являются необязательными. Будут обновлены только указанные свойства, все
остальные останутся без изменений.
В дополнение к стандартным свойствам шаблона, метод принимает следующие параметры.
| Параметр | Тип | Описание |
|---|---|---|
| groups | object/array | Группы шаблонов, которые заменят текущие группы шаблонов, к которым принадлежат шаблоны. Для групп шаблонов должно быть определено только свойство groupid. |
| tags | object/array | Теги шаблона, которые заменят текущие теги шаблона. |
| macros | object/array | Пользовательские макросы, которые заменят текущие пользовательские макросы в указанных шаблонах. |
| templates | object/array | Шаблоны, которые заменят связанные в данный момент шаблоны. Шаблоны, которые не переданы, будут только отвязаны. Для шаблонов должно быть определено только свойство templateid. |
| templates_clear | object/array | Шаблоны, которые необходимо отвязать и очистить от указанных шаблонов. Для шаблонов должно быть определено только свойство templateid. |
Возвращаемые значения
(объект) Возвращает объект, который содержит ID обновленных шаблонов,
указанных в свойстве templateids.
Примеры
Изменение стандартных свойств шаблона
Измените техническое имя шаблона на "Linux by Zabbix agent Custom", видимое имя на "My template" и обновите описание шаблона.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"host": "Linux by Zabbix agent Custom",
"name": "My template",
"description": "This is a custom Linux template."
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Обновление групп шаблона
Замените все группы шаблона для указанного шаблона на другую.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"groups": [
{
"groupid": "24"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Обновление нескольких групп шаблонов
Замените все группы шаблонов для нескольких шаблонов на другие.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": [
{
"templateid": "10086",
"groups": [
{
"groupid": "24"
}
]
},
{
"templateid": "10087",
"groups": [
{
"groupid": "1"
},
{
"groupid": "12"
}
]
},
{
"templateid": "10088",
"groups": [
{
"groupid": "1"
},
{
"groupid": "12"
}
]
}
],
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086",
"10087",
"10088"
]
},
"id": 1
}
Обновление тегов шаблона
Замените все теги шаблона на другой.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"tags": [
{
"tag": "host-name",
"value": "{HOST.NAME}"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Обновление макросов шаблона
Замените все макросы шаблона на другие.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"macros": [
{
"macro": "{$MY_MACRO}",
"value": "new_value"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Обновление нескольких макросов шаблона
Замените все пользовательские макросы указанным пользовательским макросом в нескольких шаблонах.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": [
{
"templateid": "10087",
"macros": [
{
"macro": "{$AGENT.TIMEOUT}",
"value": "5m",
"description": "Тайм-аут, по истечении которого агент считается недоступным. Работает только для агентов, доступных с сервера/прокси Zabbix (пассивный режим)."
}
]
},
{
"templateid": "10088",
"macros": [
{
"macro": "{$AGENT.TIMEOUT}",
"value": "5m",
"description": "Тайм-аут, по истечении которого агент считается недоступным. Работает только для агентов, доступных с сервера/прокси Zabbix (пассивный режим)."
}
]
}
],
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10087",
"10088"
]
},
"id": 1
}
Обновление связанных шаблонов шаблона
Отвяжите (без очистки) все шаблоны от указанного шаблона и свяжите с ним другой.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"templates": [
{
"templateid": "10001"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Очистка нескольких связанных шаблонов шаблона
Отсоедините и очистите указанный связанный шаблон из заданных шаблонов.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": [
{
"templateid": "10087",
"templates_clear": [
{
"templateid": "10001"
}
]
},
{
"templateid": "10088",
"templates_clear": [
{
"templateid": "10001"
}
]
}
],
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10087",
"10088"
]
},
"id": 1
}
Источник
CTemplate::update() в ui/include/classes/api/services/CTemplate.php.