REST Resources

/api/space/device-management/device-discovery-rules

The following operations are supported on this resource:

  • GET - This API will return all available discovery rules
  • POST - This method is used to add the device discovery target with IP
  • POST - This method is used to add the device discovery targets with Host-name
  • POST - This method is used to add the device discovery targets with IP Range
  • POST - This method is used to add the device discovery targets with IP Sub-net
  • POST - This method is used to add the device discovery targets from collection of targets
  • POST - This method is used to add the device discovery targets with IP Address and Hostname
  • PATCH - Multiple adds/deletes to the devicediscoveryrules collection
GET /device-discovery-rulesVersion 6

This API will return all available discovery rules.

Sample Usage

GET /device-discovery-rules


  • Sample Output XML:
    <device-discovery-rules total="1" uri="/api/space/device-management/device-discovery-rules">
         <device-discovery-rule
               href="/api/space/device-management/device-discovery-rules/2326538">
               <id>2326538</id>
               <discovery-profile-name>Discovery_Profile</discovery-profile-name>
               <discovery-type>IMPORT_BY_CSV</discovery-type>
               <sharable>true</sharable>
               <profile-owner>super</profile-owner>
               <discovery-job-details
                   href="/api/space/job-management/jobs/950481">
                   <id>950481</id>
                   <name>Discover Network Elements-950481</name>
                   <scheduled-start-time-string>Fri, 28 Apr 2017 15:03:00 IST</scheduled-start-time-string>
                   <schedule-string>Every day<br>First occurrence: Apr 28, 2017 3:03:00 PM IST</schedule-string>
               </discovery-job-details>
               <target-details>192.168.1.100</target-details>
               <device-snmp-version>NOT_APPLICABLE</device-snmp-version>
               <device-targets>
                   <device-target>
                         <id>2788286</id>
                         <device-ssh-credentials>
                             <device-ssh-credential>
                                   <id>2788287</id>
                                   <username>root</username>
                                   <keybased>false</keybased>
                                   <credential-type>CREDENTIAL_BASED</credential-type>
                                   <pass-phrase>pass-phrase</pass-phrase>
                                   <private-key>MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o</private-key>
                             </device-ssh-credential>
                         </device-ssh-credentials>
                   </device-target>
               </device-targets>
               <domain-name>Global</domain-name>
               <domain-id>32769</domain-id>
         </device-discovery-rule>
    </device-discovery-rules>

  • Sample Output JSON:
    {
       "device-discovery-rules" : {
         "@total" : "1" ,
         "@uri" : "/api/space/device-management/device-discovery-rules" ,
         "device-discovery-rule" : {
           "@href" : "/api/space/device-management/device-discovery-rules/2326538" ,
           "id" : 2326538 ,
           "discovery-profile-name" : "Discovery_Profile" ,
           "discovery-type" : "IMPORT_BY_CSV" ,
           "discovery-job-details" : {
             "@href" : "/api/space/job-management/jobs/950481" ,
             "id" : 950481 ,
             "name" : "Discover Network Elements-950481" ,
             "scheduled-start-time-string" : "Fri, 28 Apr 2017 15:03:00 IST" ,
             "schedule-string" : "Every day<br>First occurrence: Apr 28, 2017 3:03:00 PM IS"
           } ,
           "target-details" : "192.168.1.100" ,
           "device-snmp-version" : "NOT_APPLICABLE" ,
           "device-targets" : {
             "device-target" : {
               "id" : "2788286" ,
               "device-ssh-credentials" : {
                 "device-ssh-credential" : {
                   "id" : "2788287" ,
                   "username" : "root" ,
                   "keybased" : "false" ,
                   "credential-type" : "CREDENTIAL_BASED" ,
                   "pass-phrase" : "pass-phrase" ,
                   "private-key" : "MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o"
                 }
               }
             }
           } ,
           "domain-name" : "Global" ,
           "domain-id" : 32769
         }
       }
    }

  • Access Control

    The following capabilities are required to access this API: ReadDeviceDiscoveryProfiles

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery target with IP.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-ip-request>
         <discovery-profile-name>IP_Discovery_Profile</discovery-profile-name>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>false</use-snmp>
         <device-targets>
               <device-target>
                   <ip-address>192.168.100.1</ip-address>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <username>root</username>
                             <keybased>false</keybased>
                             <credential-type>CREDENTIAL_BASED</credential-type>
                             <password>********</password>
                             <pass-phrase>test_phrase</pass-phrase>
                             <private-key>MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o</private-key>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <host-name>test</host-name>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-version>NOT_APPLICABLE</device-snmp-version>
         <discovery-action-additional-params>
               <discovery-action-additional-param>
                   <parameter>import-policy</parameter>
                   <parameter-value>false</parameter-value>
               </discovery-action-additional-param>
         </discovery-action-additional-params>
    </add-device-discovery-rule-by-ip-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081356">
      <id>1081356</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-ip-request" : {
         "discovery-profile-name" : "IP_Discovery_Profile" ,
         "use-ping" : "false" ,
         "use-nat" : "false" ,
         "use-snmp" : "false" ,
           "sharable" : "false" ,
         "device-targets" : {
           "device-target" : {
             "ip-address" : "192.168.1.100" ,
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "username" : "root" ,
                 "keybased" : "false" ,
                 "credential-type" : "CREDENTIAL_BASED" ,
                 "password" : "********",
                 "pass-phrase" : "test_phrase" ,
                 "private-key" : "MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-version" : "NOT_APPLICABLE",
         "discovery-action-additional-params": {
           "discovery-action-additional-param": {
             "parameter": "import-policy",
             "parameter-value": "false"
           }
         }
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081356",
        "id":1081356
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery targets with Host-name.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-host-name-request>
         <discovery-profile-name>HostName_Discovery_Profile</discovery-profile-name>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>true</use-snmp>
         <device-targets>
               <device-target>
                   <host-name>test</host-name>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <username>root</username>
                             <keybased>false</keybased>
                             <credential-type>CREDENTIAL_BASED</credential-type>
                             <password>********</password>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <host-name>test</host-name>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-details>
               <snmpv1v2c-community>public</snmpv1v2c-community>
         </device-snmp-details>
         <device-snmp-version>SNMPV1V2C</device-snmp-version>
         <discovery-action-additional-params>
               <discovery-action-additional-param>
                   <parameter>import-policy</parameter>
                   <parameter-value>false</parameter-value>
               </discovery-action-additional-param>
         </discovery-action-additional-params>
    </add-device-discovery-rule-by-host-name-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081358">
      <id>1081358</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-host-name-request" : {
         "discovery-profile-name" : "HostName_Discovery_Profile" ,
         "use-ping" : "false" ,
         "use-snmp" : "true" ,
         "use-nat" : "false" ,
           "sharable" : "false" ,
         "device-targets" : {
           "device-target" : {
             "host-name" : "test" ,
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "username" : "root" ,
                 "keybased" : "false" ,
                 "credential-type" : "CREDENTIAL_BASED" ,
                 "password" : "********"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-details" : {
           "snmpv1v2c-community" : "public"
         } ,
         "device-snmp-version" : "SNMPV1V2C",
         "discovery-action-additional-params": {
           "discovery-action-additional-param": {
             "parameter": "import-policy",
             "parameter-value": "false"
           }
         }
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081358",
        "id":1081358
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery targets with IP Range.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-ip-range-request>
         <discovery-profile-name>IPRange_Discovery_Profile</discovery-profile-name>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>true</use-snmp>
         <device-targets>
               <device-target>
                   <lower-ip>192.168.1.1</lower-ip>
                   <upper-ip>192.168.1.100</upper-ip>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <keybased>true</keybased>
                             <credential-type>CUSTOM_KEY_BASED</credential-type>
                             <username>root</username>
                             <pass-phrase>test_phrase</pass-phrase>
                             <private-key>MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o</private-key>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <host-name>test</host-name>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-details>
               <user-name>root</user-name>
               <snmp-auth-type>MD5</snmp-auth-type>
               <authentication-password>********</authentication-password>
               <privacy-type>AES128</privacy-type>
               <privacy-password>********</privacy-password>
         </device-snmp-details>
         <device-snmp-version>SNMPV3</device-snmp-version>
         <discovery-action-additional-params>
               <discovery-action-additional-param>
                   <parameter>import-policy</parameter>
                   <parameter-value>false</parameter-value>
               </discovery-action-additional-param>
         </discovery-action-additional-params>
    </add-device-discovery-rule-by-ip-range-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081360">
      <id>1081360</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-ip-range-request" : {
         "discovery-profile-name" : "IPRange_Discovery_Profile" ,
         "use-ping" : "false" ,
         "use-snmp" : "true" ,
         "use-nat" : "false" ,
           "sharable" : "false" ,
         "device-targets" : {
           "device-target" : {
             "lower-ip" : "192.168.1.1" ,
             "upper-ip" : "192.168.1.100" ,
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "keybased" : "true" ,
                 "credential-type" : "CUSTOM_KEY_BASED" ,
                 "username" : "root" ,
                 "pass-phrase" : "test_phrase" ,
                 "private-key" : "MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-details" : {
           "user-name" : "root" ,
           "snmp-auth-type" : "MD5" ,
           "authentication-password" : "********" ,
           "privacy-type" : "AES128" ,
           "privacy-password" : "********"
         } ,
         "device-snmp-version" : "SNMPV3" ,
         "discovery-action-additional-params": {
           "discovery-action-additional-param": {
             "parameter": "import-policy",
             "parameter-value": "false"
           }
         }
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081363",
        "id":1081363
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery targets with IP Sub-net.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-ip-subnet-request>
         <discovery-profile-name>IPSubnet_Discovery_Profile</discovery-profile-name>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>true</use-snmp>
         <device-targets>
               <device-target>
                   <base-ip>192.168.1.100</base-ip>
                   <subnet-mask>24</subnet-mask>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <keybased>true</keybased>
                             <credential-type>KEY_BASED</credential-type>
                             <username>root</username>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <host-name>test</host-name>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-details>
               <user-name>root</user-name>
               <snmp-auth-type>MD5</snmp-auth-type>
               <authentication-password>********</authentication-password>
               <privacy-type>AES128</privacy-type>
               <privacy-password>********</privacy-password>
         </device-snmp-details>
         <device-snmp-version>SNMPV3</device-snmp-version>
         <discovery-action-additional-params>
               <discovery-action-additional-param>
                   <parameter>import-policy</parameter>
                   <parameter-value>false</parameter-value>
               </discovery-action-additional-param>
         </discovery-action-additional-params>
    </add-device-discovery-rule-by-ip-subnet-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081366">
      <id>1081366</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-ip-subnet-request" : {
         "discovery-profile-name" : "IPSubnet_Discovery_Profile" ,
         "use-ping" : "false" ,
         "use-snmp" : "true" ,
         "use-nat" : "false" ,
           "sharable" : "false" ,
         "device-targets" : {
           "device-target" : {
             "base-ip" : "192.168.1.100" ,
             "subnet-mask" : "24" ,
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "keybased" : "true" ,
                 "credential-type" : "KEY_BASED" ,
                 "username" : "root"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-details" : {
           "user-name" : "root" ,
           "snmp-auth-type" : "MD5" ,
           "authentication-password" : "********" ,
           "privacy-type" : "AES128" ,
           "privacy-password" : "********",
         } ,
         "device-snmp-version" : "SNMPV3",
         "discovery-action-additional-params": {
           "discovery-action-additional-param": {
             "parameter": "import-policy",
             "parameter-value": "false"
           }
         }
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081366",
        "id":1081366
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery targets from collection of targets.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-csv-request>
         <discovery-profile-name>CSV_Discovery_Profile</discovery-profile-name>
         <target-details>DiscoverDevices.csv</target-details>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>false</use-snmp>
         <device-targets>
               <device-target>
                   <ip-address>192.168.2.100</ip-address>
                   <host-name>test</host-name>
                   <base-ip>192.168.1.100</base-ip>
                   <subnet-mask>24</subnet-mask>
                   <lower-ip>192.168.1.1</lower-ip>
                   <upper-ip>192.168.1.100</upper-ip>
                   <tags>
                         <tag>csv_tag</tag>
                   </tags>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <username>root</username>
                             <keybased>false</keybased>
                             <password>********</password>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <host-name>test</host-name>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-details>
               <user-name>root</user-name>
               <snmp-auth-type>MD5</snmp-auth-type>
               <authentication-password>********</authentication-password>
               <privacy-type>AES128</privacy-type>
               <privacy-password>********</privacy-password>
         </device-snmp-details>
         <device-snmp-version>SNMPV3</device-snmp-version>
         <discovery-action-additional-params>
               <discovery-action-additional-param>
                   <parameter>import-policy</parameter>
                   <parameter-value>false</parameter-value>
               </discovery-action-additional-param>
         </discovery-action-additional-params>
    </add-device-discovery-rule-by-csv-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081369">
      <id>1081369</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-csv-request" : {
         "discovery-profile-name" : "CSV_Discovery_Profile" ,
         "target-details" : "DiscoverDevices.csv" ,
         "use-ping" : "false" ,
         "use-snmp" : "true" ,
           "sharable" : "false" ,
         "use-nat" : "false" ,
         "device-targets" : {
           "device-target" : {
             "ip-address" : "192.168.2.100" ,
             "host-name" : "test" ,
             "base-ip" : "192.168.2.1" ,
             "subnet-mask" : "24" ,
             "lower-ip" : "192.168.1.100" ,
             "upper-ip" : "192.168.1.1" ,
               "tags" : {
                  "tag" : "csv_tag"
               },
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "username" : "root" ,
                 "keybased" : "false" ,
                 "password" : "********"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-details" : {
           "user-name" : "root" ,
           "snmp-auth-type" : "MD5" ,
           "authentication-password" : "********" ,
           "privacy-type" : "AES128" ,
           "privacy-password" : "********"
         } ,
         "device-snmp-version" : "SNMPV3" ,
         "discovery-action-additional-params": {
           "discovery-action-additional-param": {
             "parameter": "import-policy",
             "parameter-value": "false"
           }
         }
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081369",
        "id":1081369
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    POST /device-discovery-rulesVersion 6

    This method is used to add the device discovery targets with IP Address and Hostname.

    Sample Usage

    This API makes an asynchronous method call; so, you can optionally specify queue and schedule parameters:

    POST /device-discovery-rules?queue=<queue>&schedule=<schedule>


    Note: The queue URL denoted by <queue> must have been created already.


    • Parameters:
      NameTypeURI TypeDescriptionRequired
      queueQueue URLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)N
      schedulecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N
  • Sample Input XML:
    <add-device-discovery-rule-by-ip-hostname-request>
         <discovery-profile-name>IP_HostName_Discovery_Profile</discovery-profile-name>
         <use-ping>false</use-ping>
         <use-nat>false</use-nat>
         <sharable>false</sharable>
         <use-snmp>false</use-snmp>
         <device-targets>
               <device-target>
                   <ip-address>192.168.3.3</ip-address>
                   <host-name>test</host-name>
                   <base-ip>192.168.1.100</base-ip>
                   <subnet-mask>192.168.27.1/24</subnet-mask>
                   <upper-ip>192.168.1.100</upper-ip>
                   <lower-ip>192.168.1.1</lower-ip>
                   <device-ssh-credentials total="1">
                         <device-ssh-credential>
                             <username>root</username>
                             <keybased>false</keybased>
                             <credential-type>CREDENTIAL_BASED</credential-type>
                             <password>********</password>
                             <pass-phrase>test_phrase</pass-phrase>
                             <private-key>MIIEogIBAAKCAQEAxzybh9VkWiJ0gN0O4o</private-key>
                         </device-ssh-credential>
                   </device-ssh-credentials>
                   <device-fingerprints total="1">
                         <device-fingerprint>
                             <fingerprint>55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8</fingerprint>
                             <host-name>test</host-name>
                         </device-fingerprint>
                   </device-fingerprints>
               </device-target>
         </device-targets>
         <device-snmp-version>SNMPV3</device-snmp-version>
         <device-snmp-details>
               <user-name>root</user-name>
               <snmp-auth-type>MD5</snmp-auth-type>
               <authentication-password>********</authentication-password>
               <privacy-type>AES128</privacy-type>
               <privacy-password>********</privacy-password>
         </device-snmp-details>
    </add-device-discovery-rule-by-ip-hostname-request>

  • Sample Output XML:
    <task href="/api/space/job-management/jobs/1081388">
      <id>1081388</id>
    </task>

  • Sample Input JSON:
    {
       "add-device-discovery-rule-by-ip-hostname-request" : {
         "discovery-profile-name" : "IP_HostName_Discovery_Profile" ,
         "use-ping" : "false" ,
         "use-snmp" : "false" ,
         "use-nat" : "false" ,
         "sharable" : "false" ,
         "device-targets" : {
           "device-target" : {
             "ip-address" : "192.168.3.3" ,
             "host-name" : "test" ,
             "base-ip" : "192.168.1.100" ,
             "subnet-mask" : "24" ,
             "device-ssh-credentials" : {
               "@total" : "1" ,
               "device-ssh-credential" : {
                 "username" : "root" ,
                 "keybased" : "false" ,
                 "credential-type" : "CREDENTIAL_BASED" ,
                 "password" : "********"
               }
             } ,
             "device-fingerprints" : {
               "@total" : "1" ,
               "device-fingerprint" : {
                 "host-name" : "test" ,
                 "fingerprint" : "55:77:53:a6:b1:94:45:12:bc:01:9d:b8:2a:8a:0a:b8"
               }
             }
           }
         } ,
         "device-snmp-details" : {
           "user-name" : "root" ,
           "snmp-auth-type" : "MD5" ,
           "authentication-password" : "********" ,
           "privacy-type" : "AES128",
           "privacy-password" : "********"
         } ,
         "device-snmp-version" : "SNMPV3"
       }
    }

  • Sample Output JSON:
    {
      "task":{
        "@href":"/api/space/job-management/jobs/1081388",
        "id":1081388
      }
    }

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile

    PATCH /device-discovery-rulesVersion 6

    Multiple adds/deletes to the devicediscoveryrules collection.

    Sample Usage

    PATCH /device-discovery-rules


  • Sample Patch XML:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <diff>
       <!--What you see below are just samples of patch operations that may be performed on this DTO.-->
       <!--For more information about patch document format please look at http://http://www.rfc-editor.org/rfc/rfc5261.txt-->
       <add sel="device-discovery-rules">
           <device-discovery-rule>
             <discovery-profile-name>Discovery_Profile</discovery-profile-name>
             <device-targets>
                 <device-target>
                   <id>2228241</id>
                 </device-target>
             </device-targets>
           </device-discovery-rule>
       </add>
       <!-- or -->
       <remove sel="device-discovery-rules/device-discovery-rule[@some attribute='some value']"/>
       <!-- or using element selection-->
       <remove sel="device-discovery-rules/device-discovery-rule[some element='some value']"/>
    </diff>

  • Access Control

    The following capabilities are required to access this API: AddDeviceDiscoveryProfile, CloneDeviceDiscoveryProfile, ModifyDeviceDiscoveryProfile, DeleteDeviceDiscoveryProfiles