template.update
Descripción
object template.update(object/array templates)
Este método permite actualizar plantillas existentes.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método pueden ser revocados en la configuración del rol de usuario. Consulte Roles de usuario para más información.
Parámetros
(object/array) Propiedades de la template que se actualizarán.
La propiedad templateid debe estar definida para cada template, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades indicadas, todas las demás permanecerán sin cambios.
Además de las propiedades estándar de la template, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| groups | object/array | Grupos de templates para reemplazar los grupos de templates actuales a los que pertenecen las templates. Los grupos de templates sólo deben tener definida la propiedad groupid. |
| tags | object/array | Etiquetas de template para reemplazar las etiquetas de template actuales. |
| macros | object/array | Macros de usuario para reemplazar las macros de usuario actuales en las templates indicadas. |
| templates | object/array | Templates para reemplazar las templates actualmente enlazadas. Las templates que no se pasen sólo se desvinculan. Las templates sólo deben tener definida la propiedad templateid. |
| templates_clear | object/array | Templates para desvincular y limpiar de las templates indicadas. Las templates sólo deben tener definida la propiedad templateid. |
Valores de retorno
(object) Devuelve un objeto que contiene los IDs de las plantillas actualizadas bajo la propiedad templateids.
Ejemplos
Cambiando las propiedades estándar de la plantilla
Cambie el nombre técnico de la plantilla a "Linux by Zabbix agent Custom", el nombre visible a "Mi plantilla" y actualice la descripción de la plantilla.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"host": "Linux by Zabbix agent Custom",
"name": "Mi plantilla",
"description": "Esta es una plantilla personalizada de Linux."
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Actualización de grupos de plantillas
Reemplace todos los grupos de plantillas para la plantilla dada por uno diferente.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"groups": [
{
"groupid": "24"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Actualización de etiquetas de plantilla
Reemplace todas las etiquetas de la plantilla por una diferente.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"tags": [
{
"tag": "host-name",
"value": "{HOST.NAME}"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Actualización de macros de plantilla
Reemplace todas las macros de la plantilla por una diferente.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"macros": [
{
"macro": "{$MY_MACRO}",
"value": "new_value"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Actualización de templates vinculadas
Desvincula (sin eliminar) todos los templates del template dado y vincula otro diferente a él.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"templates": [
{
"templateid": "10087"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Borrado de templates vinculados del template
Desvincula y borra el template dado de un template vinculado específico.
{
"jsonrpc": "2.0",
"method": "template.update",
"params": {
"templateid": "10086",
"templates_clear": [
{
"templateid": "10087"
}
]
},
"id": 1
}
Response:
{
"jsonrpc": "2.0",
"result": {
"templateids": [
"10086"
]
},
"id": 1
}
Fuente
CTemplate::update() en ui/include/classes/api/services/CTemplate.php.