usermacro.get

Descripción

integer/array usermacro.get(object parameters)

El método permite recuperar macros de equipo y globales según los parámetros proporcionados.

Este método está disponible para usuarios de cualquier tipo. 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

(object) Parámetros que definen la salida deseada.

El método soporta los siguientes parámetros.

Parámetro Tipo Descripción
globalmacro flag Devolver macros globales en lugar de macros de host.
globalmacroids ID/array Devolver solo las macros globales con los IDs dados.
groupids ID/array Devolver solo las macros de host que pertenecen a hosts o templates de los grupos de host o grupos de template dados.
hostids ID/array Devolver solo las macros que pertenecen a los hosts o templates dados.
hostmacroids ID/array Devolver solo las macros de host con los IDs dados.
inherited boolean Si se establece en true, devolver solo las macros de usuario prototipo de host heredadas de un template.
selectHostGroups query Devolver los grupos de host a los que pertenece la macro de host en la propiedad hostgroups.

Se utiliza solo al recuperar macros de host.
selectHosts query Devolver los hosts a los que pertenece la macro de host en la propiedad hosts.

Se utiliza solo al recuperar macros de host.
selectTemplateGroups query Devolver los grupos de template a los que pertenece la macro de template en la propiedad templategroups.

Se utiliza solo al recuperar macros de template.
selectTemplates query Devolver los templates a los que pertenece la macro de host en la propiedad templates.

Se utiliza solo al recuperar macros de host.
sortfield string/array Ordenar el resultado por las propiedades dadas.

Valores posibles: macro.
countOutput boolean Estos parámetros se describen en el comentario de referencia.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de retorno

(integer/array) Devuelve:

  • un array de objetos;
  • el número de objetos recuperados, si se ha utilizado el parámetro countOutput.

Ejemplos

Recuperar macros de equipo para un equipo

Recuperar todas las macros de equipo definidas para el equipo "10198".

Solicitud:

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

Respuesta:

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

Recuperar macros de equipo para una plantilla

Recuperar las macros de equipo definidas para la plantilla "10265" que contienen "STATUS" en el nombre de la macro.

Solicitud:

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

Respuesta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostmacroid": "6709",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.HOST}",
            "value": "",
            "description": "El nombre de equipo o la dirección IP del equipo de la página de estado de Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "1",
                "section_name": "",
                "label": "Equipo de la página de estado de Apache",
                "description": "Nombre de equipo o dirección IP del equipo de la página de estado de Apache.",
                "required": "1",
                "regex": "",
                "options": []
            }
        },
        {
            "hostmacroid": "814",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.PATH}",
            "value": "server-status?auto",
            "description": "La ruta URL de la página de estado de Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "3",
                "section_name": "",
                "label": "Ruta de la página de estado de Apache",
                "description": "Ruta URL de la página de estado de Apache.",
                "required": "1",
                "regex": "",
                "options": []
            }
        },
        {
            "hostmacroid": "815",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.PORT}",
            "value": "80",
            "description": "El puerto de la página de estado de Apache.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "1",
                "priority": "2",
                "section_name": "",
                "label": "Puerto de la página de estado de Apache",
                "description": "En el rango de 1 a 65535 inclusive.",
                "required": "1",
                "regex": "^-?([0-9]+|(([0-9]+)\\.([0-9]+)))$",
                "options": []
            }
        },
        {
            "hostmacroid": "816",
            "hostid": "10265",
            "macro": "{$APACHE.STATUS.SCHEME}",
            "value": "http",
            "description": "El esquema de la petición, que puede ser HTTP o HTTPS.",
            "type": "0",
            "automatic": "0",
            "config": {
                "type": "2",
                "priority": "4",
                "section_name": "",
                "label": "Esquema de la petición",
                "description": "Esquema de la petición, que puede ser HTTP o HTTPS.",
                "required": "0",
                "regex": "",
                "options": [
                    {
                        "value": "http",
                        "text": "HTTP"
                    },
                    {
                        "value": "https",
                        "text": "HTTPS"
                    }
                ]
            }
        }
    ],
    "id": 1
}

Recuperar macros globales

Recuperar todas las macros globales.

Solicitud:

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

Respuesta:

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

Fuente

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