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.

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
}

Actualización de grupos de plantillas

Reemplace todos los grupos de plantillas para 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 la plantilla por una diferente.

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
}

Actualización de macros de plantilla

Reemplace todas las macros de la plantilla por una diferente.

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 templates vinculadas

Desvincula (sin eliminar) todos los templates del template dado y vincula otro diferente a él.

Solicitud:

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

Request:

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