# manageiq_alerts – Configuration of alerts in ManageIQ

New in version 2.5.

- Synopsis
- Requirements
- Parameters
- Examples
- Status

## Synopsis

- The manageiq_alerts module supports adding, updating and deleting alerts in ManageIQ.

## Requirements

The below requirements are needed on the host that executes this module.

- manageiq-client https://github.com/ManageIQ/manageiq-api-client-python/

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
description - |  | The unique alert description in ManageIQ. Required when state is "absent" or "present".

enabled
boolean

Choices:
- no
- yes

Enable or disable the alert. Required if state is "present".

expression - |  | The alert expression for ManageIQ. Can either be in the "Miq Expression" format or the "Hash Expression format". Required if state is "present".

expression_type
-

Choices:
- hash ←
- miq

Expression type.

manageiq_connection dictionary / required |  | ManageIQ connection configuration information.
| ca_cert path |  | The path to a CA bundle file or directory with certificates. defaults to None. aliases: ca_bundle_path
| password string |  | ManageIQ password. `MIQ_PASSWORD` env var if set. otherwise, required if no token is passed in.
| token string |  | ManageIQ token. `MIQ_TOKEN` env var if set. otherwise, required if no username or password is passed in.
| url string / required |  | ManageIQ environment url. `MIQ_URL` env var if set. otherwise, it is required to pass it.
| username string |  | ManageIQ username. `MIQ_USERNAME` env var if set. otherwise, required if no token is passed in.

validate_certs
boolean

Choices:
- no
- yes ←

Whether SSL certificates should be verified for HTTPS requests. defaults to True.
aliases: verify_ssl

options - |  | Additional alert options, such as notification type and frequency

resource_type
-

Choices:
- Vm
- ContainerNode
- MiqServer
- Host
- Storage
- EmsCluster
- ExtManagementSystem
- MiddlewareServer

The entity type for the alert in ManageIQ. Required when state is "present".

state
-

Choices:
- absent
- present ←

absent - alert should not exist,
present - alert should exist,

## Examples

    - name: Add an alert with a "hash expression" to ManageIQ
      manageiq_alerts:
        state: present
        description: Test Alert 01
        options:
          notifications:
            email:
              to: ["example@example.com"]
              from: "example@example.com"
        resource_type: ContainerNode
        expression:
            eval_method: hostd_log_threshold
            mode: internal
            options: {}
        enabled: true
        manageiq_connection:
          url: 'http://127.0.0.1:3000'
          username: 'admin'
          password: 'smartvm'
          validate_certs: False

    - name: Add an alert with a "miq expression" to ManageIQ
      manageiq_alerts:
        state: present
        description: Test Alert 02
        options:
          notifications:
            email:
              to: ["example@example.com"]
              from: "example@example.com"
        resource_type: Vm
        expression_type: miq
        expression:
            and:
              - CONTAINS:
                  tag: Vm.managed-environment
                  value: prod
              - not:
                CONTAINS:
                  tag: Vm.host.managed-environment
                  value: prod
        enabled: true
        manageiq_connection:
          url: 'http://127.0.0.1:3000'
          username: 'admin'
          password: 'smartvm'
          validate_certs: False

    - name: Delete an alert from ManageIQ
      manageiq_alerts:
        state: absent
        description: Test Alert 01
        manageiq_connection:
          url: 'http://127.0.0.1:3000'
          username: 'admin'
          password: 'smartvm'
          validate_certs: False

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Elad Alfassa (@elad661) <ealfassa@redhat.com

Hint

If you notice any issues in this documentation, you can edit this document to improve it.