template.get

Description

integer/array template.get(object parameters)

Cette méthode permet de récupérer des modèles selon les paramètres fournis.

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d'appel de la méthode peuvent être révoquées dans les paramètres des rôles utilisateur. Voir Rôles utilisateur pour plus d'informations.

Paramètres

(object) Paramètres définissant la sortie souhaitée.

La méthode prend en charge les paramètres suivants.

Parameter Type Description
templateids ID/array Retourne uniquement les modèles avec les ID de modèle donnés.
groupids ID/array Retourne uniquement les modèles qui appartiennent aux groupes de modèles donnés.
parentTemplateids ID/array Retourne uniquement les modèles auxquels le modèle donné est lié.
hostids ID/array Retourne uniquement les modèles qui sont liés aux hôtes/modèles donnés.
graphids ID/array Retourne uniquement les modèles qui contiennent les graphiques donnés.
itemids ID/array Retourne uniquement les modèles qui contiennent les éléments donnés.
triggerids ID/array Retourne uniquement les modèles qui contiennent les déclencheurs donnés.
with_items flag Retourne uniquement les modèles qui ont des éléments.
with_triggers flag Retourne uniquement les modèles qui ont des déclencheurs.
with_graphs flag Retourne uniquement les modèles qui ont des graphiques.
with_httptests flag Retourne uniquement les modèles qui ont des scénarios web.
evaltype integer Méthode d'évaluation des balises.

Valeurs possibles :
0 - (par défaut) Et/Ou;
2 - Ou.
tags object/array Retourne uniquement les modèles avec les balises données.
Format : [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un tableau vide retourne tous les modèles.

Valeurs possibles de operator :
0 - (par défaut) Contient;
1 - Égal à;
2 - Ne contient pas;
3 - Différent de;
4 - Existe;
5 - N'existe pas.
selectTags query Retourne les balises du modèle dans la propriété tags.
selectHosts query Retourne les hôtes liés au modèle dans la propriété hosts.

Prend en charge count.
selectTemplateGroups query Retourne les groupes de modèles auxquels le modèle appartient dans la propriété templategroups.
selectTemplates query Retourne les modèles auxquels le modèle donné est lié dans la propriété templates.

Prend en charge count.
selectParentTemplates query Retourne les modèles liés au modèle donné dans la propriété parentTemplates.

Prend en charge count.
selectHttpTests query Retourne les scénarios web du modèle dans la propriété httpTests.

Prend en charge count.
selectItems query Retourne les éléments du modèle dans la propriété items.

Prend en charge count.
selectDiscoveries query Retourne les découvertes de bas niveau du modèle dans la propriété discoveries.

Prend en charge count.
selectTriggers query Retourne les déclencheurs du modèle dans la propriété triggers.

Prend en charge count.
selectGraphs query Retourne les graphiques du modèle dans la propriété graphs.

Prend en charge count.
selectMacros query Retourne les macros du modèle dans la propriété macros.
selectDashboards query Retourne les tableaux de bord du modèle dans la propriété dashboards.

Prend en charge count.
selectValueMaps query Retourne une propriété valuemaps avec les mappages de valeurs du modèle.
limitSelects integer Limite le nombre d'enregistrements renvoyés par les sous-sélections.

S'applique aux sous-sélections suivantes :
selectTemplates - les résultats seront triés par name;
selectHosts - triés par host;
selectParentTemplates - triés par host;
selectItems - triés par name;
selectDiscoveries - triés par name;
selectTriggers - triés par description;
selectGraphs - triés par name;
selectDashboards - triés par name.
sortfield string/array Trie le résultat selon les propriétés données.

Valeurs possibles : hostid, host, name, status.
countOutput boolean Ces paramètres sont décrits dans le commentaire de référence.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectGroups
(deprecated)
query Ce paramètre est obsolète, veuillez utiliser selectTemplateGroups à la place.
Retourne les groupes de modèles auxquels le modèle appartient dans la propriété groups.

Valeurs de retour

(integer/array) Renvoie soit :

  • un tableau d'objets ;
  • le nombre d'objets récupérés, si le paramètre countOutput a été utilisé.

Exemples

Récupération des modèles par nom

Récupérez toutes les données de deux modèles nommés "Linux" et "Windows".

Requête :

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": "extend",
        "filter": {
            "host": [
                "Linux",
                "Windows"
            ]
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "proxyid": "0",
            "host": "Linux",
            "status": "3",
            "disable_until": "0",
            "error": "",
            "available": "0",
            "errors_from": "0",
            "lastaccess": "0",
            "ipmi_authtype": "0",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "ipmi_disable_until": "0",
            "ipmi_available": "0",
            "snmp_disable_until": "0",
            "snmp_available": "0",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "ipmi_errors_from": "0",
            "snmp_errors_from": "0",
            "ipmi_error": "",
            "snmp_error": "",
            "jmx_disable_until": "0",
            "jmx_available": "0",
            "jmx_errors_from": "0",
            "jmx_error": "",
            "name": "Linux",
            "flags": "0",
            "templateid": "10001",
            "description": "",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "tls_psk_identity": "",
            "tls_psk": "",
            "uuid": "282ffe33afc74cccaf1524d9aa9dc502"
        },
        {
            "proxyid": "0",
            "host": "Windows",
            "status": "3",
            "disable_until": "0",
            "error": "",
            "available": "0",
            "errors_from": "0",
            "lastaccess": "0",
            "ipmi_authtype": "0",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "ipmi_disable_until": "0",
            "ipmi_available": "0",
            "snmp_disable_until": "0",
            "snmp_available": "0",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "ipmi_errors_from": "0",
            "snmp_errors_from": "0",
            "ipmi_error": "",
            "snmp_error": "",
            "jmx_disable_until": "0",
            "jmx_available": "0",
            "jmx_errors_from": "0",
            "jmx_error": "",
            "name": "Windows",
            "flags": "0",
            "templateid": "10081",
            "description": "",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "tls_psk_identity": "",
            "tls_psk": "",
            "uuid": "522d17e1834049be879287b7c0518e5d"
        }
    ],
    "id": 1
}

Récupération des groupes de modèles

Récupérez les groupes de modèles dont le modèle « Linux by Zabbix agent » est membre.

Requête :

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": ["hostid"],
        "selectTemplateGroups": "extend",
        "filter": {
            "host": [
                "Linux by Zabbix agent"
            ]
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10001",
            "templategroups": [
                {
                    "groupid": "10",
                    "name": "Templates/Operating systems",
                    "uuid": "846977d1dfed4968bc5f8bdb363285bc"
                }
            ]
        }
    ],
    "id": 1
}

Récupération des hôtes par modèle

Récupérez les hôtes auxquels le modèle « 10001 » (Linux by Zabbix agent) est lié.

Requête :

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": "templateid",
        "templateids": "10001",
        "selectHosts": ["hostid", "name"]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10001",
            "hosts": [
                {
                    "hostid": "10084",
                    "name": "Zabbix server"
                },
                {
                    "hostid": "10603",
                    "name": "Host 1"
                },
                {
                    "hostid": "10604",
                    "name": "Host 2"
                }
            ]
        }
    ],
    "id": 1
}

Recherche par tags de modèle

Récupérer les modèles qui ont le tag "host-name" égal à "{HOST.NAME}".

Requête :

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": ["hostid"],
        "selectTags": "extend",
        "evaltype": 0,
        "tags": [
            {
                "tag": "host-name",
                "value": "{HOST.NAME}",
                "operator": 1
            }
        ]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10402",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "{HOST.NAME}"
                }
            ]
        }
    ],
    "id": 1
}

Voir aussi

Source

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