[comment]: # translation:outdated

[comment]: # ({16011390-16011390})
# mediatype.get

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

[comment]: # ({11b593dc-10e7fdda})
### Descripción

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

El método permite recuperar tipos de medios según los
parámetros indicados.

::: noteclassic
Este método solo está disponible para los tipos de usuario *Admin* y *Super admin*.
Los permisos para llamar al método se pueden revocar en la configuración de roles de usuario.
Consulte [Roles de usuario](/manual/web_interface/frontend_sections/users/user_roles) para obtener más información.
:::

[comment]: # ({/11b593dc-10e7fdda})

[comment]: # ({4c0f96f6-dde2e026})
### Parámetros

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

El método admite los siguientes parámetros.

::: noteclassic
Desde Zabbix 6.4.19, al solicitar información relacionada con el usuario sobre los tipos de medios, los usuarios de tipo *Admin* pueden recuperar solo datos sobre su propio usuario.
Para ver un ejemplo, consulte [Recuperación de tipos de medios como *Admin*](#retrieving-media-types-as-admin).
:::

|Parámetro|[Tipo](/manual/api/reference_commentary#data_types)|Descripción|
|--|--|------|
|mediatypeids|cadena/matriz|Devuelve solo los tipos de medios con los ID indicados.|
|mediaids|cadena/matriz|Devuelve solo los tipos de medios utilizados por el [medio](/manual/api/reference/user/object#media) indicado.|
|userids|cadena/matriz|Devuelve solo los tipos de medios utilizados por los usuarios indicados.|
|selectMessageTemplates|query|Devuelve una propiedad [message\_templates](/manual/api/reference/mediatype/object#Message_template) con una matriz de mensajes de tipo de medio.<br><br>[Comportamiento de los parámetros](/manual/api/reference_commentary#parameter-behavior):<br>- *compatible* para usuarios de tipo *Superadministrador* (desde Zabbix 6.4.19)|
|selectUsers|query|Devuelve una propiedad [users](//manual/api/reference/user/object) con los usuarios que utilizan el tipo de medio.|
|sortfield|cadena/matriz|Ordena el resultado por las propiedades indicadas.<br><br>Valores posibles: `mediatypeid`.|
|filter|object|Devuelve solo aquellos resultados que coinciden exactamente con el filtro dado.<br><br>Acepta un objeto, donde las claves son nombres de propiedades y los valores son un valor único o una matriz de valores con los que comparar.<br><br>Propiedades admitidas para usuarios de tipo *Superadministrador*: todas las propiedades de [objeto de tipo multimedia](/manual/api/reference/mediatype/object), excepto las propiedades de [tipo de datos](/manual/api/reference_commentary#data-types) `text`.<br><br>Propiedades admitidas para usuarios de tipo *Administrador* (desde Zabbix 6.4.19): `mediatypeid`, `name`, `type`, `status`, `maxattempts`.|
|output|query|Propiedades de [objeto de tipo de medio](/manual/api/reference/mediatype/object) que se devolverán.<br><br>Desde Zabbix 6.4.19, los usuarios de tipo *Admin* pueden recuperar únicamente las siguientes propiedades de [objeto de tipo de medio](/manual/api/reference/mediatype/object): `mediatypeid`, `name`, `type`, `status`, `maxattempts`. Para ver un ejemplo, consulte [Recuperación de tipos de medios como *Admin*](#retrieving-media-types-as-admin).<br><br>Valor predeterminado: `extend`.|
|search|object|Devuelve resultados que coinciden con el patrón indicado (sin distinguir entre mayúsculas y minúsculas).<br><br>Acepta un objeto, donde las claves son nombres de propiedades y los valores son cadenas para buscar. Si no se proporcionan opciones adicionales, se realizará una búsqueda `LIKE "%…%"`.<br><br>Propiedades admitidas para usuarios de tipo *Superadministrador*: todas las propiedades de [objeto de tipo de medio](/manual/api/reference/mediatype/object) de [tipo de datos](/manual/api/reference_commentary#data-types) `string` y `text`.<br><br>Propiedades admitidas para usuarios de tipo *Administrador* (desde Zabbix 6.4.19): `name`, `description`.|
|countOutput|boolean|Estos parámetros, que son comunes para todos los métodos `get`, se describen en detalle en el [comentario de referencia](/manual/api/reference_commentary#common_get_method_parameters).|
|editable|booleano|^|
|excludeSearch|booleano|^|
|limit|entero|^|
|preservekeys|booleano|^|
|searchByAny|booleano|^|
|searchWildcardsEnabled|booleano|^|
|sortorder|cadena/matriz|^|
|startSearch|booleano|^|

[comment]: # ({/4c0f96f6-dde2e026})

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

`(entero/matriz)` Devuelve:

- una matriz de objetos;
- el recuento de objetos recuperados, si el parámetro `countOutput`
    ha sido usado.

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

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

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

[comment]: # ({8af22d7d-173c5ab7})
#### Recuperando tipos de medios

Recupere todos los tipos de medios configurados. El siguiente ejemplo devuelve dos tipos de medios:

- tipo de medio de correo electrónico;
- Tipo de medio SMS.

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

```json
{
    "jsonrpc": "2.0",
    "method": "mediatype.get",
    "params": {
        "output": "extend",
        "selectMessageTemplates": "extend"
    },
    "id": 1
}
```

Respuesta:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "mediatypeid": "1",
            "type": "0",
            "name": "Email",
            "smtp_server": "mail.example.com",
            "smtp_helo": "example.com",
            "smtp_email": "zabbix@example.com",
            "exec_path": "",
            "gsm_modem": "",
            "username": "",
            "passwd": "",
            "status": "0",
            "smtp_port": "25",
            "smtp_security": "0",
            "smtp_verify_peer": "0",
            "smtp_verify_host": "0",
            "smtp_authentication": "0",
            "maxsessions": "1",
            "maxattempts": "3",
            "attempt_interval": "10s",
            "content_type": "0",
            "script": "",
            "timeout": "30s",
            "process_tags": "0",
            "show_event_menu": "1",
            "event_menu_url": "",
            "event_menu_name": "",
            "description": "",
            "message_templates": [
                {
                    "eventsource": "0",
                    "recovery": "0",
                    "subject": "Problem: {EVENT.NAME}",
                    "message": "Problem started at {EVENT.TIME} on {EVENT.DATE}\r\nProblem name: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeverity: {EVENT.SEVERITY}\r\nOperational data: {EVENT.OPDATA}\r\nOriginal problem ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                },
                {
                    "eventsource": "0",
                    "recovery": "1",
                    "subject": "Resolved: {EVENT.NAME}",
                    "message": "Problem has been resolved at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}\r\nProblem name: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeverity: {EVENT.SEVERITY}\r\n\r\nOriginal problem ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                },
                {
                    "eventsource": "0",
                    "recovery": "2",
                    "subject": "Updated problem: {EVENT.NAME}",
                    "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.\r\n{EVENT.UPDATE.MESSAGE}\r\n\r\nCurrent problem status is {EVENT.STATUS}, acknowledged: {EVENT.ACK.STATUS}."
                },
                {
                    "eventsource": "1",
                    "recovery": "0",
                    "subject": "Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}",
                    "message": "Discovery rule: {DISCOVERY.RULE.NAME}\r\n\r\nDevice IP: {DISCOVERY.DEVICE.IPADDRESS}\r\nDevice DNS: {DISCOVERY.DEVICE.DNS}\r\nDevice status: {DISCOVERY.DEVICE.STATUS}\r\nDevice uptime: {DISCOVERY.DEVICE.UPTIME}\r\n\r\nDevice service name: {DISCOVERY.SERVICE.NAME}\r\nDevice service port: {DISCOVERY.SERVICE.PORT}\r\nDevice service status: {DISCOVERY.SERVICE.STATUS}\r\nDevice service uptime: {DISCOVERY.SERVICE.UPTIME}"
                },
                {
                    "eventsource": "2",
                    "recovery": "0",
                    "subject": "Autoregistration: {HOST.HOST}",
                    "message": "Host name: {HOST.HOST}\r\nHost IP: {HOST.IP}\r\nAgent port: {HOST.PORT}"
                }
            ],
            "parameters": []
        },
        {
            "mediatypeid": "3",
            "type": "2",
            "name": "SMS",
            "smtp_server": "",
            "smtp_helo": "",
            "smtp_email": "",
            "exec_path": "",
            "gsm_modem": "/dev/ttyS0",
            "username": "",
            "passwd": "",
            "status": "0",
            "smtp_port": "25",
            "smtp_security": "0",
            "smtp_verify_peer": "0",
            "smtp_verify_host": "0",
            "smtp_authentication": "0",
            "maxsessions": "1",
            "maxattempts": "3",
            "attempt_interval": "10s",
            "content_type": "1",
            "script": "",
            "timeout": "30s",
            "process_tags": "0",
            "show_event_menu": "1",
            "event_menu_url": "",
            "event_menu_name": "",
            "description": "",
            "message_templates": [
                {
                    "eventsource": "0",
                    "recovery": "0",
                    "subject": "",
                    "message": "{EVENT.SEVERITY}: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                },
                {
                    "eventsource": "0",
                    "recovery": "1",
                    "subject": "",
                    "message": "RESOLVED: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                },
                {
                    "eventsource": "0",
                    "recovery": "2",
                    "subject": "",
                    "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}"
                },
                {
                    "eventsource": "1",
                    "recovery": "0",
                    "subject": "",
                    "message": "Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}"
                },
                {
                    "eventsource": "2",
                    "recovery": "0",
                    "subject": "",
                    "message": "Autoregistration: {HOST.HOST}\r\nHost IP: {HOST.IP}\r\nAgent port: {HOST.PORT}"
                }
            ],
            "parameters": []
        }
    ],
    "id": 1
}
```

[comment]: # ({/8af22d7d-173c5ab7})

[comment]: # ({0e41bb3d-59a804aa})
#### Recuperación de tipos de medios como *Admin*

Como usuario de tipo *Admin*, recupera todos los tipos de medios que estén habilitados, con usuarios que utilicen estos tipos de medios.
El siguiente ejemplo devuelve dos tipos de medios:

- tipo de medio de correo electrónico con un usuario (desde Zabbix 6.4.19, solo el usuario del tipo *Admin*);
- tipo de medio de SMS sin usuarios.

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

```json
{
    "jsonrpc": "2.0",
    "method": "mediatype.get",
    "params": {
        "output": "extend",
        "filter": {
            "status": 0
        },
        "selectUsers": "extend"
    },
    "id": 1
}
```

Respuesta:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "mediatypeid": "1",
            "type": "0",
            "name": "Email",
            "status": "0",
            "description": "",
            "maxattempts": "3",
            "users": [
                {
                    "userid": "3",
                    "username": "database-admin",
                    "name": "John",
                    "surname": "Doe",
                    "url": "",
                    "autologin": "0",
                    "autologout": "0",
                    "lang": "default",
                    "refresh": "30s",
                    "theme": "default",
                    "attempt_failed": "0",
                    "attempt_ip": "",
                    "attempt_clock": "0",
                    "rows_per_page": "50",
                    "timezone": "default",
                    "roleid": "2",
                    "userdirectoryid": "0",
                    "ts_provisioned": "0"
                }
            ]
        },
        {
            "mediatypeid": "3",
            "type": "2",
            "name": "SMS",
            "status": "0",
            "description": "",
            "maxattempts": "3",
            "users": []
        }
    ],
    "id": 1
}
```

[comment]: # ({/0e41bb3d-59a804aa})

[comment]: # ({fcea1a0a-621ff52f})

#### Recuperar tipos de medios de script y webhook

El siguiente ejemplo devuelve tres tipos de medios:

- tipo de medio script con parámetros;
- tipo de medio script sin parámetros;
- tipo de medio de webhook con parámetros.

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

```json
{
    "jsonrpc": "2.0",
    "method": "mediatype.get",
    "params": {
        "output": ["mediatypeid", "name", "parameters"],
        "filter": {
            "type": [1, 4]
        }
    },
    "id": 1
}
```

Respuesta:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "mediatypeid": "10",
            "name": "Script with parameters",
            "parameters": [
                {
                    "sortorder": "0",
                    "value": "{ALERT.SENDTO}"
                },
                {
                    "sortorder": "1",
                    "value": "{EVENT.NAME}"
                },
                {
                    "sortorder": "2",
                    "value": "{ALERT.MESSAGE}"
                },
                {
                    "sortorder": "3",
                    "value": "Zabbix alert"
                }
            ]
        },
        {
            "mediatypeid": "13",
            "name": "Script without parameters",
            "parameters": []
        },
        {
            "mediatypeid": "11",
            "name": "Webhook",
            "parameters": [
                {
                    "name": "alert_message",
                    "value": "{ALERT.MESSAGE}"
                },
                {
                    "name": "event_update_message",
                    "value": "{EVENT.UPDATE.MESSAGE}"
                },
                {
                    "name": "host_name",
                    "value": "{HOST.NAME}"
                },
                {
                    "name": "trigger_description",
                    "value": "{TRIGGER.DESCRIPTION}"
                },
                {
                    "name": "trigger_id",
                    "value": "{TRIGGER.ID}"
                },
                {
                    "name": "alert_source",
                    "value": "Zabbix"
                }
            ]
        }
    ],
    "id": 1
}
```

[comment]: # ({/fcea1a0a-621ff52f})

[comment]: # ({039ccba1-039ccba1})
### Ver también

- [Usuario](/manual/api/reference/user/object#user)

[comment]: # ({/039ccba1-039ccba1})

[comment]: # ({b9d01f00-b9d01f00})
### Fuente

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

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