template.update

Descripción

object template.update(object/array templates)

Este método permite actualizar las plantillas existentes.

Este método solo está disponible para los tipos de usuario Administrador y Superadministrador. Los permisos para llamar al método se pueden revocar en la configuración del rol de usuario. Ver Roles de usuario para obtener 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 vinculadas. 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

(objeto) Devuelve un objeto que contiene los ID de las plantillas actualizadas bajo la propiedad templateids.

Ejemplos

Cambiando las propiedades de la plantilla estándar

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.

Solicitud:

{
    "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
}

Actualizando grupos de plantillas

Reemplazar todos los grupos de plantillas de la plantilla dada por uno diferente.

Solicitud:

{
"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 plantilla por una nueva.

Solicitud:

{
    "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
}

Actualizando macros de plantilla

Reemplace todas las macros de plantilla por otras diferentes.

Solicitud:

{
"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 plantillas vinculadas

Desvincular (sin borrar) todas las plantillas de la plantilla dada y vincular una diferente.

Solicitud:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "templates": [
            {
                "templateid": "10087"
            }
        ]
    },
    "id": 1
}

Respuesta:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Borrando plantillas vinculadas

Desvincula y borra la plantilla dada de una plantilla vinculada específica.

Solicitud:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "templates_clear": [
            {
                "templateid": "10087"
            }
        ]
    },
    "id": 1
}

Respuesta:

{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}

Fuente

CTemplate::update() en ui/include/classes/api/services/CTemplate.php.