template.update

Descrizione

object template.update(object/array templates)

Questo metodo consente di aggiornare template esistenti.

Questo metodo è disponibile solo per i tipi di utente Admin e Super admin. Le autorizzazioni per chiamare il metodo possono essere revocate nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere Ruoli utente.

Parametri

(object/array) Proprietà del template da aggiornare.

La proprietà templateid deve essere definita per ogni template, tutte le altre proprietà sono facoltative. Verranno aggiornate solo le proprietà specificate, tutte le altre rimarranno invariate.

Oltre alle proprietà standard del template, il metodo accetta i seguenti parametri.

Parametro Type Descrizione
groups object/array Gruppi di template per sostituire i gruppi di template correnti a cui appartengono i template.

I gruppi di template devono avere definita solo la proprietà groupid.
tags object/array Tag del template per sostituire i tag del template correnti.
macros object/array Macro utente per sostituire le macro utente correnti nei template specificati.
templates object/array Template per sostituire i template attualmente collegati. I template non passati vengono solo scollegati.

I template devono avere definita solo la proprietà templateid.
templates_clear object/array Template da scollegare e rimuovere dai template specificati.

I template devono avere definita solo la proprietà templateid.

Valori di ritorno

(object) Restituisce un oggetto contenente gli ID dei modelli aggiornati sotto la proprietà templateids.

Esempi

Modifica delle proprietà standard del template

Modificare il nome tecnico del template in "Linux by Zabbix agent Custom", il nome visibile in "My template" e aggiornare la descrizione del template.

Richiesta:

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

Risposta:

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

Aggiornamento dei gruppi di template

Sostituisce tutti i gruppi di template del template specificato con uno diverso.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "groups": [
            {
                "groupid": "24"
            } 
        ]
    },
    "id": 1
}

Risposta:

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

Aggiornamento di più gruppi di template

Sostituisce tutti i gruppi di template per più template con altri diversi.

Richiesta:

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

Risposta:

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

Aggiornamento dei tag del template

Sostituisci tutti i tag del template con uno diverso.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "tags": [
            {
                "tag": "host-name",
                "value": "{HOST.NAME}"
            }
        ]
    },
    "id": 1
}

Risposta:

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

Aggiornamento delle macro del template

Sostituisce tutte le macro del template con un'altra.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "macros": [
            {
                "macro": "{$MY_MACRO}",
                "value": "new_value"
            }
        ]
    },
    "id": 1
}

Risposta:

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

Aggiornamento di più macro di template

Sostituisce tutte le macro utente con la macro utente specificata su più template.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": [
            {
                "templateid": "10087",
                "macros": [
                    {
                        "macro": "{$AGENT.TIMEOUT}",
                        "value": "5m",
                        "description": "Timeout dopo il quale l'agent viene considerato non disponibile. Funziona solo per gli agent raggiungibili da Zabbix server/proxy (modalità passiva)."
                    }
                ]
            },
            {
                "templateid": "10088",
                "macros": [
                    {
                        "macro": "{$AGENT.TIMEOUT}",
                        "value": "5m",
                        "description": "Timeout dopo il quale l'agent viene considerato non disponibile. Funziona solo per gli agent raggiungibili da Zabbix server/proxy (modalità passiva)."
                    }
                ]
            }
        ],
    "id": 1
}

Risposta:

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

Aggiornamento dei template collegati di un template

Scollega (senza cancellare) tutti i template dal template specificato e collegane uno diverso.

Richiesta:

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

Risposta:

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

Rimozione di più template collegati da template

Scollega e rimuovi un template collegato specifico dai template indicati.

Richiesta:

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

Risposta:

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

Fonte

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