salt.modules.zabbix module

Support for Zabbix

optdepends:
  • zabbix server
configuration:

This module is not usable until the zabbix user and zabbix password are specified either in a pillar or in the minion's config file. Zabbix url should be also specified.

zabbix.user: Admin
zabbix.password: mypassword
zabbix.url: http://127.0.0.1/zabbix/api_jsonrpc.php

Connection arguments from the minion config file can be overridden on the CLI by using arguments with _connection_ prefix.

zabbix.apiinfo_version _connection_user=Admin _connection_password=zabbix _connection_url=http://host/zabbix/
codeauthor:

Jiri Kotlin <jiri.kotlin@ultimum.io>

salt.modules.zabbix.apiinfo_version(**connection_args)

Retrieve the version of the Zabbix API.

New in version 2016.3.0.

Parameters:
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

On success string with Zabbix API version, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.apiinfo_version
salt.modules.zabbix.host_create(host, groups, interfaces, **connection_args)

Create new host. NOTE: This function accepts all standard host properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/host/object#host

New in version 2016.3.0.

Parameters:
  • host -- technical name of the host
  • groups -- groupids of host groups to add the host to
  • interfaces -- interfaces to be created for the host
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
  • visible_name -- string with visible name of the host, use 'visible_name' instead of 'name' parameter

to not mess with value supplied from Salt sls file.

return: ID of the created host.

CLI Example:

salt '*' zabbix.host_create technicalname 4
interfaces='{type: 1, main: 1, useip: 1, ip: "192.168.3.1", dns: "", port: 10050}'
visible_name='Host Visible Name'
salt.modules.zabbix.host_delete(hostids, **connection_args)

Delete hosts.

New in version 2016.3.0.

Parameters:
  • hostids -- Hosts (hostids) to delete.
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the deleted hosts.

CLI Example: .. code-block:: bash

salt '*' zabbix.host_delete 10106
salt.modules.zabbix.host_exists(host=None, hostid=None, name=None, node=None, nodeids=None, **connection_args)

Checks if at least one host that matches the given filter criteria exists.

New in version 2016.3.0.

Parameters:
  • host -- technical name of the host
  • hostids -- Hosts (hostids) to delete.
  • name -- visible name of the host
  • node -- name of the node the hosts must belong to (zabbix API < 2.4)
  • nodeids -- IDs of the node the hosts must belong to (zabbix API < 2.4)
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the deleted hosts, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.host_exists 'Zabbix server'
salt.modules.zabbix.host_get(host=None, name=None, hostids=None, **connection_args)

Retrieve hosts according to the given parameters. NOTE: This function accepts all optional host.get parameters: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/host/get

New in version 2016.3.0.

Parameters:
  • host -- technical name of the host
  • name -- visible name of the host
  • hostids -- ids of the hosts
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with convenient hosts details, False if no host found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.host_get 'Zabbix server'
salt.modules.zabbix.host_list(**connection_args)

Retrieve all hosts.

New in version 2016.3.0.

Parameters:
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with details about hosts, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.host_list
salt.modules.zabbix.host_update(hostid, **connection_args)

Update existing hosts. NOTE: This function accepts all standard host and host.update properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/host/update https://www.zabbix.com/documentation/2.4/manual/api/reference/host/object#host

New in version 2016.3.0.

Parameters:
  • hostid -- ID of the host to update
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
  • visible_name -- string with visible name of the host, use 'visible_name' instead of 'name' parameter

to not mess with value supplied from Salt sls file.

Returns:ID of the updated host.

CLI Example: .. code-block:: bash

salt '*' zabbix.host_update 10084 name='Zabbix server2'
salt.modules.zabbix.hostgroup_create(name, **connection_args)

Create a host group. NOTE: This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/hostgroup/object#host_group

New in version 2016.3.0.

Parameters:
  • name -- name of the host group
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

ID of the created host group.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_create MyNewGroup
salt.modules.zabbix.hostgroup_delete(hostgroupids, **connection_args)

Delete the host group.

New in version 2016.3.0.

Parameters:
  • hostgroupids -- IDs of the host groups to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

ID of the deleted host groups, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_delete 23
salt.modules.zabbix.hostgroup_exists(name=None, groupid=None, node=None, nodeids=None, **connection_args)

Checks if at least one host group that matches the given filter criteria exists.

New in version 2016.3.0.

Parameters:
  • name -- names of the host groups
  • groupid -- host group IDs
  • node -- name of the node the host groups must belong to (zabbix API < 2.4)
  • nodeids -- IDs of the nodes the host groups must belong to (zabbix API < 2.4)
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

True if at least one host group exists, False if not or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_exists MyNewGroup
salt.modules.zabbix.hostgroup_get(name=None, groupids=None, hostids=None, **connection_args)

Retrieve host groups according to the given parameters. NOTE: This function accepts all standard hostgroup.get properities: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.2/manual/api/reference/hostgroup/get

New in version 2016.3.0.

Parameters:
  • name -- names of the host groups
  • groupid -- host group IDs
  • node -- name of the node the host groups must belong to
  • nodeids -- IDs of the nodes the host groups must belong to
  • hostids -- return only host groups that contain the given hosts
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with host groups details, False if no convenient host group found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_get MyNewGroup
salt.modules.zabbix.hostgroup_list(**connection_args)

Retrieve all host groups.

New in version 2016.3.0.

Parameters:
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with details about host groups, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_list
salt.modules.zabbix.hostgroup_update(groupid, name=None, **connection_args)

Update existing hosts group. NOTE: This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/hostgroup/object#host_group

New in version 2016.3.0.

Parameters:
  • groupid -- ID of the host group to update
  • name -- name of the host group
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of updated host groups.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostgroup_update 24 name='Renamed Name'
salt.modules.zabbix.hostinterface_create(hostid, ip, dns='', main=1, type=1, useip=1, port=None, **connection_args)

Create new host interface NOTE: This function accepts all standard host group interface: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/3.0/manual/api/reference/hostinterface/object

New in version 2016.3.0.

Parameters:
  • hostid -- ID of the host the interface belongs to
  • ip -- IP address used by the interface
  • dns -- DNS name used by the interface
  • main -- whether the interface is used as default on the host (0 - not default, 1 - default)
  • port -- port number used by the interface
  • type -- Interface type (1 - agent; 2 - SNMP; 3 - IPMI; 4 - JMX)
  • useip -- Whether the connection should be made via IP (0 - connect using host DNS name; 1 - connect using

host IP address for this host interface) :param _connection_user: Optional - zabbix user (can also be set in opts or pillar, see module's docstring) :param _connection_password: Optional - zabbix password (can also be set in opts or pillar, see module's docstring) :param _connection_url: Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)

Returns:ID of the created host interface, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostinterface_create 10105 192.193.194.197
salt.modules.zabbix.hostinterface_delete(interfaceids, **connection_args)

Delete host interface

New in version 2016.3.0.

Parameters:
  • interfaceids -- IDs of the host interfaces to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

ID of deleted host interfaces, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostinterface_delete 50
salt.modules.zabbix.hostinterface_get(hostids, **connection_args)

Retrieve host groups according to the given parameters. NOTE: This function accepts all standard hostinterface.get properities: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/hostinterface/get

New in version 2016.3.0.

Parameters:
  • hostids -- Return only host interfaces used by the given hosts.
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with host interfaces details, False if no convenient host interfaces found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostinterface_get 101054
salt.modules.zabbix.hostinterface_update(interfaceid, **connection_args)

Update host interface NOTE: This function accepts all standard hostinterface: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/hostinterface/object#host_interface

New in version 2016.3.0.

Parameters:
  • interfaceid -- ID of the hostinterface to update
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

ID of the updated host interface, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.hostinterface_update 6 ip=0.0.0.2
salt.modules.zabbix.mediatype_create(name, mediatype, **connection_args)

Create new mediatype. NOTE: This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/3.0/manual/api/reference/mediatype/object

Parameters:
  • mediatype -- media type - 0: email, 1: script, 2: sms, 3: Jabber, 100: Ez Texting
  • exec_path -- exec path - Required for script and Ez Texting types, see Zabbix API docs
  • gsm_modem -- exec path - Required for sms type, see Zabbix API docs
  • smtp_email -- email address from which notifications will be sent, required for email type
  • smtp_helo -- SMTP HELO, required for email type
  • smtp_server -- SMTP server, required for email type
  • status -- whether the media type is enabled - 0: enabled, 1: disabled
  • username -- authentication user, required for Jabber and Ez Texting types
  • passwd -- authentication password, required for Jabber and Ez Texting types
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)

return: ID of the created mediatype.

CLI Example:

salt '*' zabbix.mediatype_create 'Email' 0 smtp_email='noreply@example.com'
smtp_server='mailserver.example.com' smtp_helo='zabbix.example.com'
salt.modules.zabbix.mediatype_delete(mediatypeids, **connection_args)

Delete mediatype

Parameters:
  • interfaceids -- IDs of the mediatypes to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

ID of deleted mediatype, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.mediatype_delete 3
salt.modules.zabbix.mediatype_get(name=None, mediatypeids=None, **connection_args)

Retrieve mediatypes according to the given parameters.

Parameters:
  • name -- Name or description of the mediatype
  • mediatypeids -- ids of the mediatypes
  • connection_args (optional) --

    _connection_user: zabbix user (can also be set in opts or pillar, see module's docstring) _connection_password: zabbix password (can also be set in opts or pillar, see module's docstring) _connection_url: url of zabbix frontend (can also be set in opts or pillar, see module's docstring)

    all optional mediatype.get parameters: keyword argument names differ depending on your zabbix version, see:

    https://www.zabbix.com/documentation/2.2/manual/api/reference/mediatype/get

Returns:

Array with mediatype details, False if no mediatype found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.mediatype_get name='Email' salt '*' zabbix.mediatype_get mediatypeids="['1', '2', '3']"
salt.modules.zabbix.mediatype_update(mediatypeid, name=False, mediatype=False, **connection_args)

Update existing mediatype. NOTE: This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/3.0/manual/api/reference/mediatype/object

Parameters:
  • mediatypeid -- ID of the mediatype to update
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the updated mediatypes, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_update 8 name="Email update"
salt.modules.zabbix.run_query(method, params, **connection_args)

Send Zabbix API call

Parameters:
  • method -- actual operation to perform via the API
  • params -- parameters required for specific method
  • connection_args (optional) --

    _connection_user: zabbix user (can also be set in opts or pillar, see module's docstring) _connection_password: zabbix password (can also be set in opts or pillar, see module's docstring) _connection_url: url of zabbix frontend (can also be set in opts or pillar, see module's docstring)

    all optional template.get parameters: keyword argument names differ depending on your zabbix version, see:

    https://www.zabbix.com/documentation/2.4/manual/api/reference/

Returns:

Response from Zabbix API

CLI Example: .. code-block:: bash

salt '*' zabbix.run_query proxy.create '{"host": "zabbixproxy.domain.com", "status": "5"}'
salt.modules.zabbix.template_get(name=None, host=None, templateids=None, **connection_args)

Retrieve templates according to the given parameters.

Parameters:
  • host -- technical name of the template
  • name -- visible name of the template
  • hostids -- ids of the templates
  • connection_args (optional) --

    _connection_user: zabbix user (can also be set in opts or pillar, see module's docstring) _connection_password: zabbix password (can also be set in opts or pillar, see module's docstring) _connection_url: url of zabbix frontend (can also be set in opts or pillar, see module's docstring)

    all optional template.get parameters: keyword argument names differ depending on your zabbix version, see:

    https://www.zabbix.com/documentation/2.4/manual/api/reference/template/get

Returns:

Array with convenient template details, False if no template found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.template_get name='Template OS Linux' salt '*' zabbix.template_get templateids="['10050', '10001']"
salt.modules.zabbix.user_addmedia(userids, active, mediatypeid, period, sendto, severity, **connection_args)

Add new media to multiple users.

New in version 2016.3.0.

Parameters:
  • userids -- ID of the user that uses the media
  • active -- Whether the media is enabled (0 enabled, 1 disabled)
  • mediatypeid -- ID of the media type used by the media
  • period -- Time when the notifications can be sent as a time period
  • sendto -- Address, user name or other identifier of the recipient
  • severity -- Trigger severities to send notifications about
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the created media.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_addmedia 4 active=0 mediatypeid=1 period='1-7,00:00-24:00' sendto='support2@example.com' severity=63
salt.modules.zabbix.user_create(alias, passwd, usrgrps, **connection_args)

Create new zabbix user. NOTE: This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.0/manual/appendix/api/user/definitions#user

New in version 2016.3.0.

Parameters:
  • alias -- user alias
  • passwd -- user's password
  • usrgrps -- user groups to add the user to
  • _connection_user -- zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- url of zabbix frontend (can also be set in opts or pillar, see module's docstring)
  • firstname -- string with firstname of the user, use 'firstname' instead of 'name' parameter to not mess with value supplied from Salt sls file.
Returns:

On success string with id of the created user.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_create james password007 '[7, 12]' firstname='James Bond'
salt.modules.zabbix.user_delete(users, **connection_args)

Delete zabbix users.

New in version 2016.3.0.

Parameters:
  • users -- array of users (userids) to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

On success array with userids of deleted users.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_delete 15
salt.modules.zabbix.user_deletemedia(mediaids, **connection_args)

Delete media by id.

New in version 2016.3.0.

Parameters:
  • mediaids -- IDs of the media to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the deleted media, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_deletemedia 27
salt.modules.zabbix.user_exists(alias, **connection_args)

Checks if user with given alias exists.

New in version 2016.3.0.

Parameters:
  • alias -- user alias
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

True if user exists, else False.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_exists james
salt.modules.zabbix.user_get(alias=None, userids=None, **connection_args)

Retrieve users according to the given parameters.

New in version 2016.3.0.

Parameters:
  • alias -- user alias
  • userids -- return only users with the given IDs
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with details of convenient users, False on failure of if no user found.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_get james
salt.modules.zabbix.user_getmedia(userids=None, **connection_args)

Retrieve media according to the given parameters NOTE: This function accepts all standard usermedia.get properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/3.2/manual/api/reference/usermedia/get

New in version 2016.3.0.

Parameters:
  • userids -- return only media that are used by the given users
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

List of retrieved media, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_getmedia
salt.modules.zabbix.user_list(**connection_args)

Retrieve all of the configured users.

New in version 2016.3.0.

Parameters:
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with user details.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_list
salt.modules.zabbix.user_update(userid, **connection_args)

Update existing users. NOTE: This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.0/manual/appendix/api/user/definitions#user

New in version 2016.3.0.

Parameters:
  • userid -- id of the user to update
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Id of the updated user on success.

CLI Example: .. code-block:: bash

salt '*' zabbix.user_update 16 visible_name='James Brown'
salt.modules.zabbix.usergroup_create(name, **connection_args)

Create new user group. NOTE: This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.0/manual/appendix/api/usergroup/definitions#user_group

New in version 2016.3.0.

Parameters:
  • name -- name of the user group
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the created user groups.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_create GroupName
salt.modules.zabbix.usergroup_delete(usergroupids, **connection_args)

New in version 2016.3.0.

Parameters:
  • usergroupids -- IDs of the user groups to delete
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the deleted user groups.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_delete 28
salt.modules.zabbix.usergroup_exists(name=None, node=None, nodeids=None, **connection_args)

Checks if at least one user group that matches the given filter criteria exists

New in version 2016.3.0.

Parameters:
  • name -- names of the user groups
  • node -- name of the node the user groups must belong to (This will override the nodeids parameter.)
  • nodeids -- IDs of the nodes the user groups must belong to
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

True if at least one user group that matches the given filter criteria exists, else False.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_exists Guests
salt.modules.zabbix.usergroup_get(name=None, usrgrpids=None, userids=None, **connection_args)

Retrieve user groups according to the given parameters. NOTE: This function accepts all usergroup_get properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/usergroup/get

New in version 2016.3.0.

Parameters:
  • name -- names of the user groups
  • usrgrpids -- return only user groups with the given IDs
  • userids -- return only user groups that contain the given users
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with convenient user groups details, False if no user group found or on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_get Guests
salt.modules.zabbix.usergroup_list(**connection_args)

Retrieve all enabled user groups.

New in version 2016.3.0.

Parameters:
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

Array with enabled user groups details, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_list
salt.modules.zabbix.usergroup_update(usrgrpid, **connection_args)

Update existing user group. NOTE: This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see: https://www.zabbix.com/documentation/2.4/manual/api/reference/usergroup/object#user_group

New in version 2016.3.0.

Parameters:
  • usrgrpid -- ID of the user group to update.
  • _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)
  • _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)
  • _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)
Returns:

IDs of the updated user group, False on failure.

CLI Example: .. code-block:: bash

salt '*' zabbix.usergroup_update 8 name=guestsRenamed