template.update

Description

object template.update(object/array templates)

Cette méthode permet de mettre à jour des modèles existants.

Cette méthode est disponible uniquement pour les types d’utilisateurs Admin et Super admin. Les autorisations d’appel de la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir User roles pour plus d’informations.

Paramètres

(object/array) Propriétés du modèle à mettre à jour.

La propriété templateid doit être définie pour chaque modèle, toutes les autres propriétés sont facultatives. Seules les propriétés indiquées seront mises à jour, toutes les autres resteront inchangées.

En plus des propriétés de modèle standard, la méthode accepte les paramètres suivants.

Paramètre Type Description
groups object/array Groupes de modèles pour remplacer les groupes de modèles actuels auxquels les modèles appartiennent.

Les groupes de modèles doivent avoir uniquement la propriété groupid définie.
tags object/array Balises de modèle pour remplacer les balises de modèle actuelles.
macros object/array Macros utilisateur pour remplacer les macros utilisateur actuelles sur les modèles donnés.
templates object/array Modèles pour remplacer les modèles actuellement liés. Les modèles qui ne sont pas transmis seront uniquement dissociés.

Les modèles doivent avoir uniquement la propriété templateid définie.
templates_clear object/array Modèles à dissocier et supprimer des modèles donnés.

Les modèles doivent avoir uniquement la propriété templateid définie.

Valeurs retournées

(object) Retourne un objet contenant les identifiants des modèles mis à jour sous la propriété templateids.

Exemples

Modification des propriétés standard du modèle

Modifiez le nom technique du modèle en "Linux by Zabbix agent Custom", le nom visible en "My template", et mettez à jour la description du modèle.

Requête :

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

Réponse :

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

Mise à jour des groupes de modèles

Remplace tous les groupes de modèles du modèle donné par un autre.

Requête:

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

Réponse :

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

Mise à jour des tags de modèle

Remplacez tous les tags du modèle par un autre.

Requête:

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

Réponse :

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

Mise à jour des macros de modèle

Remplacez toutes les macros du modèle par une autre.

Requête:

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

Réponse :

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

Mise à jour des modèles liés

Dissocie (sans effacer) tous les modèles du modèle donné et lui en associe un autre.

Requête :

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

Réponse :

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

Suppression des modèles liés du modèle

Dissocie et supprime le modèle donné d'un modèle lié spécifique.

Requête :

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

Réponse :

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

Source

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