Se encuentra viendo la documentación de la versión en desarrollo, puede estar incompleta.
Esta página incluye contenido traducido automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

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

(objeto/array) Propiedades de la plantilla que se actualizarán.

La propiedad templateid debe definirse para cada plantilla, todas las demás propiedades son opcionales. Solo se actualizarán las propiedades indicadas, todas las demás permanecerán sin cambios.

Además de las propiedades estándar de la plantilla, el método acepta los siguientes parámetros.

Parámetro Tipo Descripción
groups objeto/array Grupos de plantillas para reemplazar los grupos de plantillas actuales a los que pertenecen las plantillas.

Los grupos de plantillas deben tener definida únicamente la propiedad groupid.
tags objeto/array Etiquetas de plantilla para reemplazar las etiquetas de plantilla actuales.
macros objeto/array Macros de usuario para reemplazar las macros de usuario actuales en las plantillas indicadas.
templates objeto/array Plantillas para reemplazar las plantillas actualmente vinculadas. Las plantillas que no se pasen solo se desvinculan.

Las plantillas deben tener definida únicamente la propiedad templateid.
templates_clear objeto/array Plantillas para desvincular y limpiar de las plantillas indicadas.

Las plantillas deben tener definida únicamente 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 varios grupos de templates

Reemplazar todos los grupos de templates para varios templates con diferentes grupos.

Solicitud:

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

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "templateids": [
                   "10086",
                   "10087",
                   "10088"
               ]
           },
           "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 múltiples macros de template

Reemplazar todas las macros de usuario con la macro de usuario dada en múltiples templates.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "template.update",
           "params": [
                   {
                       "templateid": "10087",
                       "macros": [
                           {
                               "macro": "{$AGENT.TIMEOUT}",
                               "value": "5m",
                               "description": "Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode)."
                           }
                       ]
                   },
                   {
                       "templateid": "10088",
                       "macros": [
                           {
                               "macro": "{$AGENT.TIMEOUT}",
                               "value": "5m",
                               "description": "Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode)."
                           }
                       ]
                   }
               ],
           "id": 1
       }

Respuesta:

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

Actualizar las plantillas enlazadas a la template

Desvincula (sin limpiar) todas las templates de la template dada y enlaza una diferente a ella.

Solicitud:

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

Respuesta:

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

Eliminando varias plantillas vinculadas a plantillas

Desvincula y elimina una plantilla vinculada específica de las plantillas indicadas.

Request:

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

Respuesta:

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

Fuente

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