usermacro.get

Description

integer/array usermacro.get(object parameters)

Cette méthode permet de récupérer les macros d'hôte et globales selon les paramètres donnés.

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d'appeler la méthode peuvent être révoquées dans les paramètres des rôles utilisateur. Voir User roles 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.

Paramètre Type Description
globalmacro flag Renvoyer les macros globales au lieu des macros d'hôte.
globalmacroids ID/array Renvoyer uniquement les macros globales avec les ID indiqués.
groupids ID/array Renvoyer uniquement les macros d'hôte appartenant à des hôtes ou modèles issus des groupes d'hôtes ou groupes de modèles indiqués.
hostids ID/array Renvoyer uniquement les macros appartenant aux hôtes ou modèles indiqués.
hostmacroids ID/array Renvoyer uniquement les macros d'hôte avec les ID indiqués.
inherited boolean Si défini sur true, renvoyer uniquement les macros utilisateur de prototype d'hôte héritées d'un modèle.
selectHostGroups query Renvoyer les groupes d'hôtes auxquels appartient la macro d'hôte dans la propriété hostgroups.

Utilisé uniquement lors de la récupération des macros d'hôte.
selectHosts query Renvoyer les hôtes auxquels appartient la macro d'hôte dans la propriété hosts.

Utilisé uniquement lors de la récupération des macros d'hôte.
selectTemplateGroups query Renvoyer les groupes de modèles auxquels appartient la macro de modèle dans la propriété templategroups.

Utilisé uniquement lors de la récupération des macros de modèle.
selectTemplates query Renvoyer les modèles auxquels appartient la macro d'hôte dans la propriété templates.

Utilisé uniquement lors de la récupération des macros d'hôte.
sortfield string/array Trier le résultat selon les propriétés indiquées.

Valeurs possibles : macro.
countOutput boolean Ces paramètres sont décrits dans les commentaires 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

Valeurs retournées

(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 macros d’hôte pour un hôte

Récupérez toutes les macros d’hôte définies pour l’hôte « 10198 ».

Requête :

{
    "jsonrpc": "2.0",
    "method": "usermacro.get",
    "params": {
        "output": "extend",
        "hostids": "10198"
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostmacroid": "9",
            "hostid": "10198",
            "macro": "{$INTERFACE}",
            "value": "eth0",
            "description": "",
            "type": "0",
            "automatic": "0"
        },
        {
            "hostmacroid": "11",
            "hostid": "10198",
            "macro": "{$SNMP_COMMUNITY}",
            "value": "public",
            "description": "",
            "type": "0",
            "automatic": "0"
        }
    ],
    "id": 1
}

Récupération des macros d’hôte pour un modèle

Récupérez les macros d’hôte définies pour le modèle "10265" qui contiennent "STATUS" dans le nom de la macro.

Requête :

{
    "jsonrpc": "2.0",
    "method": "usermacro.get",
    "params": {
        "output": "extend",
        "hostids": "10265",
        "search": {
            "macro": "STATUS"
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostmacroid": "6709",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.HOST}",
            "value": "",
            "description": "Le nom d’hôte ou l’adresse IP de l’hôte de la page de statut Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "1",
                "section_name": "",
                "label": "Hôte de statut Apache",
                "description": "Nom d’hôte ou adresse IP de l’hôte de la page de statut Apache.",
                "required": "1",
                "regex": "",
                "options": []
            }
        },
        {
            "hostmacroid": "814",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.PATH}",
            "value": "server-status?auto",
            "description": "Le chemin URL de la page de statut Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "3",
                "section_name": "",
                "label": "Chemin de la page de statut Apache",
                "description": "Chemin URL de la page de statut Apache.",
                "required": "1",
                "regex": "",
                "options": []
            }
        },
        {
            "hostmacroid": "815",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.PORT}",
            "value": "80",
            "description": "Le port de la page de statut Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "2",
                "section_name": "",
                "label": "Port de la page de statut Apache",
                "description": "Dans la plage de 1 à 65535 inclus.",
                "required": "1",
                "regex": "^-?([0-9]+|(([0-9]+)\\.([0-9]+)))$",
                "options": []
            }
        },
        {
            "hostmacroid": "816",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.SCHEME}",
            "value": "http",
            "description": "Le schéma de requête, qui peut être HTTP ou HTTPS.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "2",
                "priority": "4",
                "section_name": "",
                "label": "Schéma de requête",
                "description": "Schéma de requête, qui peut être HTTP ou HTTPS.",
                "required": "0",
                "regex": "",
                "options": [
                    {
                        "value": "http",
                        "text": "HTTP"
                    },
                    {
                        "value": "https",
                        "text": "HTTPS"
                    }
                ]
            }
        }
    ],
    "id": 1
}

Récupération des macros globales

Récupérez toutes les macros globales.

Requête :

{
    "jsonrpc": "2.0",
    "method": "usermacro.get",
    "params": {
        "output": "extend",
        "globalmacro": true
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "globalmacroid": "6",
            "macro": "{$SNMP_COMMUNITY}",
            "value": "public",
            "description": "",
            "type": "0"
        }
    ],
    "id": 1
}

Source

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