DiscoveryAPI - Scoped

  • Release version: Zurich
  • Updated July 31, 2025
  • 2 minutes to read
  • The DiscoveryAPI class provides methods that launch a quick discovery of a single IPv4 address and return summaries of previously launched discovery statuses for a single configuration item (CI) or for all scanned CIs.

    This class runs is in the sn_discovery namespace.

    DiscoveryAPI - discoverIpAddress(String ipAddress, String application, String source)

    Discovers a specified IPv4 address.

    A MID Server is selected automatically, based on the IP address provided or the application specified.

    Table 1. Parameters
    Name Type Description
    application String Optional. Application configured for the MID Server.

    To define a source parameter but not an application parameter, use "NULL" as the place holder.

    Default: Discovery

    ipAddress String IP address to discover.
    source String Optional. Source of the Discovery. This same value appears in the optional Source field in the Discovery Status record, which indicates how the Discovery was triggered.

    Default: Discovery_API

    Table 2. Returns
    Type Description
    String Discovery status record sys_id.
    The following exceptions can be thrown during MID Server selection:
    • NoSuitableMidServerFoundException: No appropriate MID Server available for this Discovery
    • BadArgumentException: Invalid argument detected during MID Server selection
    var sysid = sn_discovery.DiscoveryAPI.discoverIpAddress("11.23.125.39");

    DiscoveryAPI - reportCiIpAddressStatus(Object ipAddress, Object discoveryStatusSysId)

    Used to return a summary of a configuration item's Discovery status given the specific status sys_id and IPv4 address.

    The following exceptions can be thrown:
    • DiscoveryStatusNotFoundException: Displays this message: Discovery Status with sys id '<invalid value>' does not exist
    • DiscoveryDeviceHistoryNotFoundException: Device History with Discovery Status sys id '<invalid value>' and ipAddress '<invalid value>' does not exist
    • IllegalArgumentException (invalid input arguments): This argument exception prevents input values from being null.
      • Discovery Status sys id can not be null
      • ipAddress can not be null
    • IllegalArgumentException (values stored in database): This argument exception prevents erroneous data from being returned to the caller in the case of bad attribute values.
      • Discovery Status 'state' property can not be null
      • Device history 'source' property can not be null
      • Device history 'issues' property is not an integer: <invalid value>
      • Device history 'issues' property can not be less than 0: <invalid value>
    Table 3. Parameters
    Name Type Description
    ipAddress string The IPv4 address that was scanned.
    discoveryStatusSysId string The sys_id of the Discovery status record for the IP address that was scanned.
    Table 4. Returns
    Type Description
    array JavaScript array of immutable ReportCiStatusOutputJS objects.
    var ipResultObj = sn_discovery.DiscoveryAPI.reportCiIpAddressStatus(ipAddress, discoveryStatus);
    

    DiscoveryAPI - reportCiStatus(Object discoveryStatusSysId)

    Used to return a summary of a CI Discovery status given a specific Discovery Status sys_id.

    The following exceptions can be thrown:
    • DiscoveryStatusNotFoundException: Discovery Status with sys id '<invalid value>' does not exist
    • DiscoveryDeviceHistoryNotFoundException: Device History with Discovery Status sys id '<invalid value>' and ipAddress '<invalid value>' does not exist
    • IllegalArgumentException (invalid input arguments): This argument exception prevents input values from being null.
      • Discovery Status sys id can not be null
      • ipAddress can not be null
    • IllegalArgumentException (values stored in database): This argument exception imposes post conditions on database access values.
      • Discovery Status 'state' property can not be null
      • Device history 'source' property can not be null
      • Device history 'issues' property is not an integer: <invalid value>
      • Device history 'issues' property can not be less than 0: <invalid value>
    Table 5. Parameters
    Name Type Description
    sys_id string The sys_id of a Discovery status record.
    Table 6. Returns
    Type Description
    array JavaScript array of immutable ReportCiStatusOutputJS objects.
    var ipResultObjArray = sn_discovery.DiscoveryAPI.reportCiStatus(discoveryStatus);
    for(var idx=0; idx < ipResultObjArray.length; idx++) {    
    var ipResultObj = ipResultObjArray[idx];