cisco.dnac.events_and_notifications_workflow_manager module – Configure various types of destinations to deliver event notifications from Cisco Catalyst Center Platform.

Note

This module is part of the cisco.dnac collection (version 6.25.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install cisco.dnac. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: cisco.dnac.events_and_notifications_workflow_manager.

New in cisco.dnac 6.14.0

Synopsis

  • Configure various types of destinations to deliver event notifications from Cisco Catalyst Center Platform.

  • Configuring/Updating the Webhook destination details in Cisco Catalyst Center.

  • Configuring/Updating the Email destination details in Cisco Catalyst Center.

  • Configuring/Updating the Syslog destination details in Cisco Catalyst Center.

  • Configuring/Updating the SNMP destination details in Cisco Catalyst Center.

  • Configuring/Updating the ITSM Integration Settings in Cisco Catalyst Center.

  • Deletes the ITSM Integration Settings from Cisco Catalyst Center.

  • Create/Update Notification using the above destination in Cisco Catalyst Center.

Requirements

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

  • dnacentersdk >= 2.7.2

  • python >= 3.5

Parameters

Parameter

Comments

config

list / elements=dictionary / required

List containing the subscription configuration for events, notification on site through one or more channels.

email_destination

dictionary

Configure settings to send out emails from Cisco Catalyst Center. Also we can create or configure email destination in Cisco Catalyst Center only once then later we can just modify it. This one is just used to configure the Primary and Secondary SMTP server while configuring the email destination. It’s not related to email event subscription notification.

primary_smtp_config

dictionary

Add the primary configuration for smtp while creating/updating email destination.

password

string

Password for Authenticating Primary SMTP Server.

port

string

Port number used for configuring Primary SMTP Server. Also there is a mapping of smtype and port if snmp_type is DEFAULT then port is 25 and for smtp_type TLS or SSL we can choose either 465 or 587 as port number.

server_address

string / required

Hostname or IP address of the primary SMTP server. Supports both IPv4 and IPv6.

smtp_type

string / required

The type of connection used for the SMTP server, with options being DEFAULT, TLS, or SSL. By default, it is set to DEFAULT. DEFAULT - Chooses a standard SMTP connection without encryption. If it’s selected then port will be 25 only. TLS - Initiates an unencrypted SMTP connection and upgrades to TLS encryption when available. If it’s selected then port will be either 465 or 587. SSL - Begins with an encrypted SMTP connection using SSL from the start. If it’s selected then port will be either 465 or 587.

username

string

Username for Authenticating Primary SMTP Server.

recipient_email

string / required

Recipient’s email address that will receive emails when an email destination is created or updated.

secondary_smtp_config

dictionary

Include an optional secondary SMTP configuration when creating or updating an email destination.

password

string

Password for Authenticating Secondary SMTP Server.

port

string

Port number used for configuring Secondary SMTP Server. Also there is a mapping of smtype and port if snmp_type is DEFAULT then port is 25 and for smtp_type TLS or SSL we can choose either 465 or 587 as port number.

server_address

string

Hostname or IP address of the secondary SMTP server. Supports both IPv4 and IPv6.

smtp_type

string

The type of connection used for the SMTP server, with options being DEFAULT, TLS, or SSL. By default, it is set to DEFAULT. DEFAULT - Chooses a standard SMTP connection without encryption. If it’s selected then port will be 25 only. TLS - Initiates an unencrypted SMTP connection and upgrades to TLS encryption when available. If it’s selected then port will be either 465 or 587. SSL - Begins with an encrypted SMTP connection using SSL from the start. If it’s selected then port will be either 465 or 587.

username

string

Username for Authenticating Secondary SMTP Server.

sender_email

string / required

Sender’s email address used when setting up or modifying an email destination.

subject

string / required

Subject line of the email to be used when sending emails from the specified email destination.

email_event_notification

dictionary

Configuration for setting up or modifying an Email Event Subscription in Cisco Catalyst Center. This includes parameters for the email notification itself as well as details for the associated email instance.

description

string / required

A brief explanation detailing the purpose of the Email events subscription notification.

domain

string

The main category or domain under which events fall (e.g., Know Your Network, Connectivity, etc.).

event_categories

list / elements=string

List of event categories to be included in the subscription for notifications (e.g., WARN, INFO, ERROR, ALERT, TASK_COMPLETE, TASK_FAILURE).

event_severities

list / elements=string

List of event severities to be included in the subscription for notifications (e.g., [“1”, “2”, “3”]).

event_sources

list / elements=string

List of event sources to be included in the subscription for notifications.

event_types

list / elements=string

Types of events that trigger the notifications, defining the nature of the event (e.g., [“APP”, “NETWORK”]).

events

list / elements=string / required

List of event names to be subscribed to for notification configurations (e.g., [“AP Flap”, “AP Reboot Crash”]).

instance

string / required

Name assigned to the specific email instance used for sending the notification.

instance_description

string / required

Detailed explanation of the email instance’s purpose and how it relates to the notifications.

name

string / required

Name of the Email event subscription notification.

recipient_emails

list / elements=string / required

Recipient email addresses that will receive the notifications.

sender_email

string / required

Originating email address for sending out the notifications.

sites

list / elements=string

List of site names where events are included in the notification subscription(e.g., [“Global/India”, “Global/USA”]).

subdomains

list / elements=string

More specific categories within the main domain to further classify events (e.g., [“Wireless”, “Applications”]).

subject

string / required

The Subject line for the email notification, briefly indicating the notification content.

version

string

Version label for the event subscription, helping track updates or changes.

itsm_setting

dictionary

Dictionary containing the configuration details to configure the ServiceNow/BMCRemedy settings to automatically create incidents/problems/RFC’s from Cisco Catalyst Center.

connection_settings

dictionary

A dictionary of settings required to establish a connection with the ITSM system.

password

string / required

The password associated with the username for API authentication. It is recommended to handle this data securely.

url

string / required

The URL of the ITSM system API endpoint. This is the base URL used for ITSM service requests.

username

string / required

The username used for authentication with the ITSM system. This is required for accessing the API.

description

string

A brief description of the ITSM settings, outlining its purpose or usage within the organization.

instance_name

string / required

The name of the ITSM configuration. This helps in identifying the integration within the system. Also while deleting the ITSM Intergration setting from Cisco Catalyst Center.

snmp_destination

dictionary

Dictionary containing the details for configuring/updating the SNMP Trap Server to receive Audit logs and Events from Cisco Catalyst Center.

auth_password

string

Password used for SNMP authentication.

auth_type

string

Type of SNMP authentication protocol to use, such as MD5 or SHA. SHA - Stands for Secure Hash Algorithm, a suite of cryptographic hash functions developed by the National Security Agency (NSA) offering enhanced security. MD5 - Refers to Message Digest Algorithm 5, a well-established cryptographic hash function generating a 128-bit hash value, employed in SNMPv3 for message authenticity and integrity verification.

community

string

SNMP community string used for authentication, necessary only when the snmp_version is set to V2C.

description

string / required

Description of the SNMP destination.

mode

string

The security mode for SNMP communication (options - AUTH_PRIVACY, AUTH_NO_PRIVACY, NO_AUTH_NO_PRIVACY). Mandatory for snmp_version V3 and must not be set to NONE. AUTH_PRIVACY - The most secure mode, providing both verification of the message source through authentication and protection of message contents with encryption. If this option is selected, must need to provide auth_type, auth_password, privacy_type, privacy_password parameter in the playbook. AUTH_NO_PRIVACY - This mode ensures the authenticity of SNMP messages via a community string for validation but does not encrypt the data, leaving it vulnerable to interception. If this option is selected, must need to provide auth_type, auth_password parameter in the playbook. NO_AUTH_NO_PRIVACY - In this mode, SNMP messages are neither authenticated nor encrypted, making it the least secure as it requires no credentials or data protection. If this option is selected, not need to provide auth_type, auth_password, privacy_type, privacy_password parameter in the playbook.

name

string / required

Name of the SNMP destination.

port

string / required

Port number on which the SNMP server is listening.

privacy_password

string

Password used for encryption in SNMP privacy.

privacy_type

string

Encryption algorithm used for SNMP privacy, such as AES128.

server_address

string / required

IP address of the SNMP server.

snmp_version

string

The SNMP protocol version used for network management and monitoring, selectable between SNMPv2c and SNMPv3. V2C - Utilizes community strings for the authentication between the SNMP manager (like Cisco Catalyst) and managed network devices (routers, switches, access points), without encryption, as strings are sent in plain text. V3 - Offers enhanced security features over V2C, including authentication, integrity, and encryption, using usernames, passwords, and encryption keys for secure communications.

username

string

Username required for SNMP authentication, applicable exclusively when the snmp_version is configured to V3.

syslog_destination

dictionary

Dictionary containing the details for configuring/updating the Syslog Server to collect Audit logs and Events from the Cisco Catalyst Center.

description

string / required

A brief explanation detailing the purpose of the syslog destination.

name

string / required

Name of the syslog destination.

port

integer / required

Port number on which the syslog server is listening. It must be in the range of 1-65535. If not given any port then we will use 514 as default port.

protocol

string / required

Protocol used for sending syslog messages (e.g., UDP, TCP). Transmission Control Protocol (TCP) - It is a connection-oriented protocol used for reliable and ordered communication between devices on a network. It provides error-checking, retransmission of lost packets, and ensures that data is delivered in the correct order. User Datagram Protocol (UDP) - It is a connectionless protocol used for sending datagrams between devices on a network. It provides a lightweight, best-effort delivery mechanism without guaranteeing delivery or ordering of packets. UDP is commonly used for real-time applications such as streaming media, online gaming, and VoIP.

server_address

string / required

Hostname or IP address of the Syslog server.

syslog_event_notification

dictionary

Configuration for establishing or revising a Syslog Event Subscription in the Cisco Catalyst Center. This allows for the specification of Syslog event notification parameters and destination settings.

description

string / required

A brief explanation detailing the purpose of the syslog events subscription notification.

destination

string / required

The name of the destination for sending event notifications via syslog.

domain

string

The main category or domain under which events fall (e.g., Know Your Network, Connectivity, etc.).

event_categories

list / elements=string

List of event categories to be included in the subscription for notifications (e.g., WARN, INFO, ERROR, ALERT, TASK_COMPLETE, TASK_FAILURE).

event_severities

list / elements=string

List of event severities to be included in the subscription for notifications (e.g., [“1”, “2”, “3”]).

event_sources

list / elements=string

List of event sources to be included in the subscription for notifications.

event_types

list / elements=string

Types of events that trigger the notifications, defining the nature of the event (e.g., [“APP”, “NETWORK”]).

events

list / elements=string / required

List of event names to be subscribed to for notification configurations (e.g., [“AP Flap”, “AP Reboot Crash”]).

name

string / required

Name of the Syslog event subscription notification.

sites

list / elements=string

List of site names where events are included in the notification subscription(e.g., [“Global/India”, “Global/USA”]).

subdomains

list / elements=string

More specific categories within the main domain to further classify events (e.g., [“Wireless”, “Applications”]).

version

string

Version label for the event subscription, helping track updates or changes.

webhook_destination

dictionary

Dictionary containing the details for configuring/updating the REST Endpoint to receive Audit logs and Events from Cisco Catalyst Center Platform.

description

string

A brief explanation of what the webhook destination is used for.

headers

list / elements=dictionary

A list of HTTP headers to be included in the webhook request. Each header is represented as a dictionary. While giving the headers details we can categorize them into - “Basic, Token and No Auth”. Basic Authentication - It is used to ensure that the receiving server can validate the identity of the requesting server by checking the credentials against its store. This method is straightforward but less secure compared to others since credentials are sent encoded but not encrypted. Token Authentication - It involves security tokens which are typically generated by the server. A client must send this token in the HTTP header to access resources. It is more secure than Basic Authentication as it allows the server to issue tokens that can have a limited lifetime, be revoked, and carry specific permissions without exposing user credentials. No Auth - It implies that no authentication method is required to access the webhook destination. This setting can be used in environments where security is either handled by other means (such as network isolation) or where the data being transmitted is not sensitive.

default_value

string

Default value for the HTTP header that can be used if no specific value is provided.

encrypt

boolean

Indicates whether the value of the header should be encrypted. Useful for sensitive data.

Choices:

  • false

  • true

name

string

Name of the HTTP header.

value

string

Value assigned to the HTTP header.

is_proxy_route

boolean

A boolean value indicating if the request should use a proxy server. It will set to true for proxy routing, and false for direct connection. By default, it is set to True.

Choices:

  • false

  • true

method

string

The HTTP method used by the webhook when sending requests (e.g., POST, PUT). POST - It is typically used to create a new webhook destination. When you set up a new webhook in Cisco Catalyst Center, you would use the POST method to send the necessary configuration details (like URL, headers, payload format, etc.) to the server. PUT - It is used to update an existing webhook destination. If a webhook destination is already configured and you need to change any of its settings—such as modifying the URL, adjusting headers, or changing the payload format.

name

string / required

Name of the webhook destination. A unique identifier for the webhook destination within the system.

trust_cert

boolean

A boolean that indicates whether to verify the SSL/TLS certificate of the URL, setting this to true will bypass certificate verification. By default, it is set to false.

Choices:

  • false

  • true

url

string / required

Fully qualified URL to which the webhook will send requests (e.g., “https://ciscocatalyst.com”).

webhook_event_notification

dictionary

Dictionary containing the details for creating/updating the Webhook Event subscription notification in Cisco Catalyst Center.

description

string / required

A brief explanation detailing the purpose of the email events subscription notification.

destination

string / required

The name of the destination for sending event notifications via webhook.

domain

string

The main category or domain under which events fall (e.g., Know Your Network, Connectivity, etc.).

event_categories

list / elements=string

List of event categories to be included in the subscription for notifications (e.g., WARN, INFO, ERROR, ALERT, TASK_COMPLETE, TASK_FAILURE).

event_severities

list / elements=string

List of event severities to be included in the subscription for notifications (e.g., [“1”, “2”, “3”]).

event_sources

list / elements=string

List of event sources to be included in the subscription for notifications.

event_types

list / elements=string

Types of events that trigger the notifications, defining the nature of the event (e.g., [“APP”, “NETWORK”]).

events

list / elements=string / required

List of event names to be subscribed to for notification configurations (e.g., [“AP Flap”, “AP Reboot Crash”]).

name

string / required

Name of the Webhook event subscription notification.

sites

list / elements=string

List of site names where events are included in the notification subscription(e.g., [“Global/India”, “Global/USA”]).

subdomains

list / elements=string

More specific categories within the main domain to further classify events (e.g., [“Wireless”, “Applications”]).

version

string

Version label for the event subscription, helping track updates or changes.

config_verify

boolean

Set to True to verify the Cisco Catalyst Center config after applying the playbook config.

Choices:

  • false ← (default)

  • true

dnac_api_task_timeout

integer

Defines the timeout in seconds for API calls to retrieve task details. If the task details are not received within this period, the process will end, and a timeout notification will be logged.

Default: 1200

dnac_debug

boolean

Indicates whether debugging is enabled in the Cisco Catalyst Center SDK.

Choices:

  • false ← (default)

  • true

dnac_host

string / required

The hostname of the Cisco Catalyst Center.

dnac_log

boolean

Flag to enable/disable playbook execution logging.

When true and dnac_log_file_path is provided, - Create the log file at the execution location with the specified name.

When true and dnac_log_file_path is not provided, - Create the log file at the execution location with the name ‘dnac.log’.

When false, - Logging is disabled.

If the log file doesn’t exist, - It is created in append or write mode based on the “dnac_log_append” flag.

If the log file exists, - It is overwritten or appended based on the “dnac_log_append” flag.

Choices:

  • false ← (default)

  • true

dnac_log_append

boolean

Determines the mode of the file. Set to True for ‘append’ mode. Set to False for ‘write’ mode.

Choices:

  • false

  • true ← (default)

dnac_log_file_path

string

Governs logging. Logs are recorded if dnac_log is True.

If path is not specified, - When ‘dnac_log_append’ is True, ‘dnac.log’ is generated in the current Ansible directory; logs are appended. - When ‘dnac_log_append’ is False, ‘dnac.log’ is generated; logs are overwritten.

If path is specified, - When ‘dnac_log_append’ is True, the file opens in append mode. - When ‘dnac_log_append’ is False, the file opens in write (w) mode. - In shared file scenarios, without append mode, content is overwritten after each module execution. - For a shared log file, set append to False for the 1st module (to overwrite); for subsequent modules, set append to True.

Default: "dnac.log"

dnac_log_level

string

Sets the threshold for log level. Messages with a level equal to or higher than this will be logged. Levels are listed in order of severity [CRITICAL, ERROR, WARNING, INFO, DEBUG].

CRITICAL indicates serious errors halting the program. Displays only CRITICAL messages.

ERROR indicates problems preventing a function. Displays ERROR and CRITICAL messages.

WARNING indicates potential future issues. Displays WARNING, ERROR, CRITICAL messages.

INFO tracks normal operation. Displays INFO, WARNING, ERROR, CRITICAL messages.

DEBUG provides detailed diagnostic info. Displays all log messages.

Default: "WARNING"

dnac_password

string

The password for authentication at the Cisco Catalyst Center.

dnac_port

string

Specifies the port number associated with the Cisco Catalyst Center.

Default: "443"

dnac_task_poll_interval

integer

Specifies the interval in seconds between successive calls to the API to retrieve task details.

Default: 2

dnac_username

aliases: user

string

The username for authentication at the Cisco Catalyst Center.

Default: "admin"

dnac_verify

boolean

Flag to enable or disable SSL certificate verification.

Choices:

  • false

  • true ← (default)

dnac_version

string

Specifies the version of the Cisco Catalyst Center that the SDK should use.

Default: "2.2.3.3"

state

string

The state of Cisco Catalyst Center after module completion.

Choices:

  • "merged" ← (default)

  • "deleted"

validate_response_schema

boolean

Flag for Cisco Catalyst Center SDK to enable the validation of request bodies against a JSON schema.

Choices:

  • false

  • true ← (default)

Notes

Note

  • To ensure the module operates correctly with scaled sets—such as creating or updating multiple destinations and handling event subscription notifications—please ensure that valid input is provided in the playbook. If any failure occurs, the module will halt execution and will not proceed to subsequent operations.

  • Configuring the webhook destination with headers now supports starting from dnacentersdk version 2.9.1 onwards. This enhancement is in alignment with Catalyst Center Release 2.3.7.5.

  • Configuring the SNMP destination now supports starting from dnacentersdk version 2.9.1 onwards. This enhancement is in alignment with Catalyst Center Release 2.3.7.5.

  • SDK Method used are events.Events.get_syslog_destination, events.Events.create_syslog_destination, events.Events.update_syslog_destination, events.Events.get_snmp_destination, events.Events.create_snmp_destination, events.Events.update_snmp_destination, events.Events.get_webhook_destination, events.Events.create_webhook_destination, events.Events.update_webhook_destination, events.Events.get_email_destination, events.Events.create_email_destination, events.Events.get_status_api_for_events, events.Events.get_all_itsm_integration_settings, events.Events.get_itsm_integration_setting_by_id, events.Events.create_itsm_integration_setting, events.Events.update_itsm_integration_setting, events.Events.delete_itsm_integration_setting, events.Events.get_eventartifacts, events.Events.get_site, events.Events.get_syslog_event_subscriptions, events.Events.get_syslog_subscription_details, events.Events.create_syslog_event_subscription, events.Events.update_syslog_event_subscription, events.Events.get_rest_webhook_event_subscriptions, events.Events.get_rest_webhook_subscription_details, events.Events.create_rest_webhook_event_subscription, events.Events.update_rest_webhook_event_subscription, events.Events.get_email_event_subscriptions, events.Events.get_email_subscription_details, events.Events.create_email_event_subscription, events.Events.update_email_event_subscription, events.Events.delete_event_subscriptions

  • Does not support check_mode

  • The plugin runs on the control node and does not use any ansible connection plugins instead embedded connection manager from Cisco Catalyst Center SDK

  • The parameters starting with dnac_ are used by the Cisco Catalyst Center Python SDK to establish the connection

Examples

- name: Create Rest Webhook destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - webhook_destination:
          name: "webhook test"
          description: "creating webhook for testing"
          url: "https://10.195.227.14/dna"
          method: "POST"
          trust_cert: False

- name: Updating Rest Webhook destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - webhook_destination:
          name: "webhook test"
          description: "updating webhook for testing"


- name: Configuring the email destination in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - email_destination:
          sender_email: "[email protected]"
          recipient_email: "[email protected]"
          subject: "Ansible testing"
          primary_smtp_config:
            server_address: "outbound.cisco.com"
            port: "25"
            smtp_type: "DEFAULT"

- name: Updating the email destination in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - email_destination:
          sender_email: "[email protected]"
          recipient_email: "[email protected]"
          subject: "Ansible updated email config testing"

- name: Create Syslog destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - syslog_destination:
          name: Syslog test
          description: "Adding syslog destination"
          server_address: "10.30.0.90"
          protocol: "TCP"
          port: 6553

- name: Update Syslog destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - syslog_destination:
          name: Syslog test
          description: "Updating syslog destination."

- name: Create SNMP destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - snmp_destination:
          name: Snmp test
          description: "Adding snmp destination for testing."
          server_address: "10.30.0.90"
          port: "25"
          snmp_version: "V3"
          username: cisco
          mode: AUTH_PRIVACY
          auth_type: SHA
          auth_password: authpass123
          privacy_type: AES128
          privacy_password: privacy123

- name: Update SNMP destination with given name.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - snmp_destination:
          name: Snmp test
          description: "Updating snmp destination with snmp version v2."
          server_address: "10.30.0.23"
          port: "25"
          snmp_version: "V2C"
          community: "public123"

- name: Create ITSM Integration Setting with given name in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - itsm_setting:
          instance_name: "ITSM test"
          description: "ITSM description for testing"
          connection_settings:
            url: "http/catalystcenter.com"
            username: "catalyst"
            password: "catalyst@123"

- name: Updating ITSM Integration Setting with given name in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - itsm_setting:
          instance_name: "ITSM test"
          connection_settings:
            url: "http/catalystcenterupdate.com"
            password: "catalyst@123"

- name: Creating Webhook Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - webhook_event_notification:
          name: "Webhook Notification."
          description: "Notification for webhook events subscription"
          sites: ["Global/India", "Global/USA"]
          events: ["AP Flap", "AP Reboot Crash", "Device Updation"]
          destination: "Webhook Demo"

- name: Updating Webhook Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - webhook_event_notification:
          name: "Webhook Notification."
          description: "Updated notification for webhook events subscription"
          sites: ["Global/India", "Global/USA", "Global/China"]
          destination: "Webhook Demo"

- name: Creating Email Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - email_event_notification:
          name: "Email Notification"
          description: "Notification description for email subscription creation"
          sites: ["Global/India", "Global/USA"]
          events: ["AP Flap", "AP Reboot Crash"]
          sender_email: "[email protected]"
          recipient_emails: ["[email protected]", "[email protected]"]
          subject: "Mail test"
          instance: Email Instance test

- name: Updating Email Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - email_event_notification:
          name: "Email Notification"
          description: "Notification description for email subscription updation"
          sites: ["Global/India", "Global/USA"]
          events: ["AP Flap", "AP Reboot Crash"]
          sender_email: "[email protected]"
          recipient_emails: ["[email protected]", "[email protected]", "[email protected]"]
          subject: "Mail test for updation"
          instance: Email Instance test

- name: Creating Syslog Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - syslog_event_notification:
          name: "Syslog Notification."
          description: "Notification for syslog events subscription"
          sites: ["Global/India", "Global/USA"]
          events: ["AP Flap", "AP Reboot Crash"]
          destination: "Syslog Demo"

- name: Updating Syslog Notification with the list of names of subscribed events in the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: merged
    config:
      - syslog_event_notification:
          name: "Syslog Notification."
          description: "Updated notification for syslog events subscription"
          sites: ["Global/India", "Global/USA", "Global/China"]
          events: ["AP Flap", "AP Reboot Crash"]

- name: Deleting ITSM Integration Setting with given name from the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: deleted
    config:
      - itsm_setting:
          instance_name: "ITSM test"

- name: Deleting Webhook Events Subscription Notification with given name from the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: deleted
    config:
      - webhook_event_notification:
          name: "Webhook Notification"

- name: Deleting Email Events Subscription Notification with given name from the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: deleted
    config:
      - email_event_notification:
          name: "Email Notification"

- name: Deleting Syslog Events Subscription Notification with given name from the system.
  cisco.dnac.events_and_notifications_workflow_manager:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log_level: "{{dnac_log_level}}"
    dnac_log: False
    state: deleted
    config:
      - syslog_event_notification:
          name: "Syslog Notification"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

dnac_response

dictionary

A dictionary or list with the response returned by the Cisco Catalyst Center Python SDK

Returned: always

Sample: {"response": {"taskId": "string", "url": "string"}, "version": "string"}

Authors

  • Abhishek Maheshwari (@abmahesh) Madhan Sankaranarayanan (@madhansansel)