cisco.dnac.discovery module – Resource module for Discovery
Note
This module is part of the cisco.dnac collection (version 6.2.1).
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.
To use it in a playbook, specify: cisco.dnac.discovery.
New in version 3.1.0: of cisco.dnac
Synopsis
- Manage operations create, update and delete of the resource Discovery. 
- Initiates discovery with the given parameters. 
- Stops all the discoveries and removes them. 
- Stops the discovery for the given Discovery ID and removes it. Discovery ID can be obtained using the “Get Discoveries by range” API. 
- Stops or starts an existing discovery. 
Note
This module has a corresponding action plugin.
Requirements
The below requirements are needed on the host that executes this module.
- dnacentersdk >= 2.4.8 
- python >= 3.5 
Parameters
| Parameter | Comments | 
|---|---|
| Discovery’s attributeInfo. | |
| Discovery’s cdpLevel. | |
| Discovery’s deviceIds. | |
| Discovery’s discoveryCondition. | |
| Discovery’s discoveryStatus. | |
| Discovery’s discoveryType. | |
| Flag for Cisco DNA Center SDK to enable debugging. Choices: 
 | |
| The Cisco DNA Center hostname. | |
| The Cisco DNA Center password to authenticate. | |
| The Cisco DNA Center port. Default: 443 | |
| The Cisco DNA Center username to authenticate. Default: “admin” | |
| Flag to enable or disable SSL certificate verification. Choices: 
 | |
| Informs the SDK which version of Cisco DNA Center to use. Default: “2.2.3.3” | |
| Discovery’s enablePasswordList. | |
| Discovery’s globalCredentialIdList. | |
| Discovery’s httpReadCredential. | |
| Discovery’s comments. | |
| Discovery’s credentialType. | |
| Discovery’s description. | |
| Discovery’s id. | |
| Discovery’s instanceTenantId. | |
| Discovery’s instanceUuid. | |
| Discovery’s password. | |
| Discovery’s port. | |
| Secure flag. Choices: 
 | |
| Discovery’s username. | |
| Discovery’s httpWriteCredential. | |
| Discovery’s comments. | |
| Discovery’s credentialType. | |
| Discovery’s description. | |
| Discovery’s id. | |
| Discovery’s instanceTenantId. | |
| Discovery’s instanceUuid. | |
| Discovery’s password. | |
| Discovery’s port. | |
| Secure flag. Choices: 
 | |
| Discovery’s username. | |
| Discovery’s id. | |
| Discovery’s ipAddressList. | |
| Discovery’s ipFilterList. | |
| IsAutoCdp flag. Choices: 
 | |
| Discovery’s lldpLevel. | |
| Discovery’s name. | |
| Discovery’s netconfPort. | |
| Discovery’s numDevices. | |
| Discovery’s parentDiscoveryId. | |
| Discovery’s passwordList. | |
| Discovery’s preferredMgmtIPMethod. | |
| Discovery’s protocolOrder. | |
| Number of times to try establishing connection to device. | |
| Discovery’s retryCount. | |
| Discovery’s snmpAuthPassphrase. | |
| Discovery’s snmpAuthProtocol. | |
| Discovery’s snmpMode. | |
| Discovery’s snmpPrivPassphrase. | |
| Discovery’s snmpPrivProtocol. | |
| Snmp RO community of the devices to be discovered. | |
| Discovery’s snmpRoCommunity. | |
| Description for Snmp RO community. | |
| Discovery’s snmpRoCommunityDesc. | |
| Snmp RW community of the devices to be discovered. | |
| Discovery’s snmpRwCommunity. | |
| Description for Snmp RW community. | |
| Discovery’s snmpRwCommunityDesc. | |
| Discovery’s snmpUserName. | |
| Version of SNMP. V2 or v3. | |
| Discovery’s timeOut. | |
| Time to wait for device response in seconds. | |
| UpdateMgmtIp flag. Choices: 
 | |
| Discovery’s userNameList. | |
| Flag for Cisco DNA Center SDK to enable the validation of request bodies against a JSON schema. Choices: 
 | 
Notes
Note
- SDK Method used are discovery.Discovery.delete_discovery_by_id, discovery.Discovery.start_discovery, discovery.Discovery.updates_discovery_by_id, 
- Paths used are post /dna/intent/api/v1/discovery, delete /dna/intent/api/v1/discovery, delete /dna/intent/api/v1/discovery/{id}, put /dna/intent/api/v1/discovery, 
- Does not support - check_mode
- The plugin runs on the control node and does not use any ansible connection plugins, but instead the embedded connection manager from Cisco DNAC SDK 
- The parameters starting with dnac_ are used by the Cisco DNAC Python SDK to establish the connection 
Examples
- name: Delete all
  cisco.dnac.discovery:
    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}}"
    state: absent
- name: Update all
  cisco.dnac.discovery:
    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}}"
    state: present
    attributeInfo: {}
    cdpLevel: 0
    deviceIds: string
    discoveryCondition: string
    discoveryStatus: string
    discoveryType: string
    enablePasswordList: string
    globalCredentialIdList:
    - string
    httpReadCredential:
      comments: string
      credentialType: string
      description: string
      id: string
      instanceTenantId: string
      instanceUuid: string
      password: string
      port: 0
      secure: true
      username: string
    httpWriteCredential:
      comments: string
      credentialType: string
      description: string
      id: string
      instanceTenantId: string
      instanceUuid: string
      password: string
      port: 0
      secure: true
      username: string
    id: string
    ipAddressList: string
    ipFilterList: string
    isAutoCdp: true
    lldpLevel: 0
    name: string
    netconfPort: string
    numDevices: 0
    parentDiscoveryId: string
    passwordList: string
    preferredMgmtIPMethod: string
    protocolOrder: string
    retryCount: 0
    snmpAuthPassphrase: string
    snmpAuthProtocol: string
    snmpMode: string
    snmpPrivPassphrase: string
    snmpPrivProtocol: string
    snmpRoCommunity: string
    snmpRoCommunityDesc: string
    snmpRwCommunity: string
    snmpRwCommunityDesc: string
    snmpUserName: string
    timeOut: 0
    updateMgmtIp: true
    userNameList: string
- name: Create
  cisco.dnac.discovery:
    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}}"
    state: present
    cdpLevel: 0
    discoveryType: string
    enablePasswordList:
    - string
    globalCredentialIdList:
    - string
    httpReadCredential:
      password: string
      port: 0
      secure: true
      username: string
    httpWriteCredential:
      password: string
      port: 0
      secure: true
      username: string
    ipAddressList: string
    ipFilterList:
    - string
    lldpLevel: 0
    name: string
    netconfPort: string
    passwordList:
    - string
    preferredMgmtIPMethod: string
    protocolOrder: string
    retry: 0
    snmpAuthPassphrase: string
    snmpAuthProtocol: string
    snmpMode: string
    snmpPrivPassphrase: string
    snmpPrivProtocol: string
    snmpROCommunity: string
    snmpROCommunityDesc: string
    snmpRWCommunity: string
    snmpRWCommunityDesc: string
    snmpUserName: string
    snmpVersion: string
    timeout: 0
    userNameList:
    - string
- name: Delete by id
  cisco.dnac.discovery:
    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}}"
    state: absent
    id: string
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Description | 
|---|---|
| A dictionary or list with the response returned by the Cisco DNAC Python SDK Returned: always Sample: “{\n \”response\”: {\n \”taskId\”: \”string\”,\n \”url\”: \”string\”\n },\n \”version\”: \”string\”\n}\n” |