[comment]: # ({02ea8022-02ea8022})
# usermacro.get

[comment]: # ({/02ea8022-02ea8022})

[comment]: # ({78b5ab06-28befc82})
### Descripción

`integer/array usermacro.get(object parameters)`

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

::: noteclassic
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](/manual/web_interface/frontend_sections/users/user_roles) para más información.
:::

[comment]: # ({/78b5ab06-28befc82})

[comment]: # ({665d8bba-141835f9})
### Parámetros

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

El método admite los siguientes parámetros.

|Parameter|[Type](/manual/api/reference_commentary#data-types)|Description|
|--|--|------|
|globalmacro|flag|Devuelve macros globales en lugar de macros de host.|
|globalmacroids|ID/array|Devuelve solo macros globales con los IDs dados.|
|groupids|ID/array|Devuelve solo macros de host que pertenecen a hosts o templates de los grupos de host o grupos de template dados.|
|hostids|ID/array|Devuelve solo macros que pertenecen a los hosts o templates dados.|
|hostmacroids|ID/array|Devuelve solo macros de host con los IDs dados.|
|inherited|boolean|Si se establece en `true`, devuelve solo macros de usuario de prototipo de host heredadas de un template.|
|selectHostGroups|query|Devuelve los grupos de host a los que pertenece la macro de host en la propiedad [`hostgroups`](/manual/api/reference/hostgroup/object).<br><br>Se usa solo al recuperar macros de host.|
|selectHosts|query|Devuelve los hosts a los que pertenece la macro de host en la propiedad [`hosts`](/manual/api/reference/host/object).<br><br>Se usa solo al recuperar macros de host.|
|selectTemplateGroups|query|Devuelve los grupos de template a los que pertenece la macro de template en la propiedad [`templategroups`](/manual/api/reference/templategroup/object).<br><br>Se usa solo al recuperar macros de template.|
|selectTemplates|query|Devuelve los templates a los que pertenece la macro de host en la propiedad [`templates`](/manual/api/reference/template/object).<br><br>Se usa solo al recuperar macros de host.|
|sortfield|string/array|Ordena el resultado por las propiedades dadas.<br><br>Valores posibles: `macro`.|
|countOutput|boolean|Estos parámetros se describen en el [comentario de referencia](/manual/api/reference_commentary#common-get-method-parameters).|
|editable|boolean|^|
|excludeSearch|boolean|^|
|filter|object|^|
|limit|integer|^|
|output|query|^|
|preservekeys|boolean|^|
|search|object|^|
|searchByAny|boolean|^|
|searchWildcardsEnabled|boolean|^|
|sortorder|string/array|^|
|startSearch|boolean|^|
|selectGroups<br>(deprecated)|query|Este parámetro está obsoleto; use `selectHostGroups` o `selectTemplateGroups` en su lugar.<br>Devuelve los grupos de host y grupos de template a los que pertenece la macro de host en la propiedad `groups`.<br><br>Se usa solo al recuperar macros de host.|

[comment]: # ({/665d8bba-141835f9})

[comment]: # ({7223bab1-7223bab1})
### Valores de retorno

`(integer/array)` Devuelve:

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

[comment]: # ({/7223bab1-7223bab1})

[comment]: # ({b41637d2-b41637d2})
### Ejemplos

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({4540e2f0-7089e052})
#### Recuperar macros de equipo para un equipo

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

[Solicitud](/manual/api#performing-requests):

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

Respuesta:

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

[comment]: # ({/4540e2f0-7089e052})

[comment]: # ({93c3e1f5-29b64a7a})
#### Recuperar macros globales

Recuperar todas las macros globales.

[Solicitud](/manual/api#performing-requests):

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

Respuesta:

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

[comment]: # ({/93c3e1f5-29b64a7a})

[comment]: # ({26db0ec2-26db0ec2})
### Fuente

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

[comment]: # ({/26db0ec2-26db0ec2})
