Skip to content

DeviceRouter

getUserCommands(uid) Get a list of user commands for a device uid.

@type uid: string
@param uid: Device to use to get user commands
@rtype: [dictionary]
@return: List of objects representing user commands
asyncGetTree(**additionalKeys, **id)
getGroups() Get a list of all groups.

@rtype: DirectResponse
@return: B{Properties}:
- systems: ([dictionary]) List of groups
- totalCount: (integer) Total number of groups
addFileSystem(uid, newId, **userCreated) Adds an Ip Interface
getForm(uid) Given an object identifier, this returns all of the editable fields
on that object as well as their ExtJs xtype that one would
use on a client side form.

@type uid: string
@param uid: Unique identifier of an object
@rtype: DirectResponse
@return: B{Properties}
- form: (dictionary) form fields for the object
getTree(id) Returns the tree structure of an organizer hierarchy where
the root node is the organizer identified by the id parameter.

@type id: string
@param id: Id of the root node of the tree to be returned
@rtype: [dictionary]
@return: Object representing the tree
getOverridableTemplates(query, uid) Get a list of available templates on a device that can be overridden.

@type query: string
@param query: not used
@type uid: string
@param uid: Device to query for overridable templates
@rtype: DirectResponse
@return: B{Properties}:
- data: ([dictionary]) List of objects representing templates
getHardwareProductNames(**manufacturer) Get a list of all hardware product names from a manufacturer.

@type manufacturer: string
@param manufacturer: Manufacturer name
@rtype: DirectResponse
@return: B{Properties}:
- productNames: ([dictionary]) List of hardware product names
- totalCount: (integer) Total number of hardware product names
deleteNode() Deletes a node from the tree.

B{NOTE}: You can not delete a root node of a tree

@type uid: string
@param uid: Unique identifier of the node we wish to delete
@rtype: DirectResponse
@return: B{Properties}:
- msg: (string) Status message
getAllCredentialsProps() Get a list of available credentials props

@rtype: DirectResponse
@return: List of credentials props
getProductionStates() Get a list of available production states.

@rtype: [dictionary]
@return: List of name/value pairs of available production states
resetBoundTemplates(uid) Remove all bound templates from a device.

@type uid: string
@param uid: Device uid to remove bound templates from
@rtype: DirectResponse
@return: Success message
getComponents(**sort, **uid, **keys, **start, **meta_type, **limit, **page, **dir, **name) Retrieves all of the components at a given UID. This method
allows for pagination.

@type uid: string
@param uid: Unique identifier of the device whose components are
being retrieved
@type meta_type: string
@param meta_type: (optional) The meta type of the components to be
retrieved (default: None)
@type keys: list
@param keys: (optional) List of keys to include in the returned
dictionary. If None then all keys will be returned
(default: None)
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: 50)
@type sort: string
@param sort: (optional) Key on which to sort the return results;
(default: 'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: regex
@param name: (optional) Used to filter the results (default: None)
@rtype: DirectResponse
@return: B{Properties}:
- data: (dictionary) The components returned
- totalCount: (integer) Number of items returned
- hash: (string) Hashcheck of the current component state (to check
whether components have changed since last query)
setProductionState(uids, prodState, hashcheck, **ranges, **sort, **params, **uid, **dir) Set the production state of device(s).

@type uids: [string]
@param uids: List of device uids to set
@type prodState: integer
@param prodState: Production state to set device(s) to.
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success or failure message
getOverriddenZprops(uid, **all, **pfilt) returns a list of zProperty values for the overridden objects
getDeviceUuidsByName(**query, **page, **limit, **uuid, **start) Retrieves a list of device uuids. For use in combos.
If uuid is set, ensures that it is included in the returned list.
getTemplates(id) Get a list of available templates for a device.

@type id: string
@param id: Device uid to query for templates
@rtype: DirectResponse
@return: B{Properties}:
- data: ([dictionary]) List of objects representing templates
getDevTypes(uid, **filter) Returns a list of devtypes for the wizard
getComponentTree(**uid, **id)
findComponentIndex(componentUid, **sort, **meta_type, **uid, **dir, **name) Given a component uid and the component search criteria, this retrieves
the position of the component in the results.

@type componentUid: string
@param componentUid: Unique identifier of the component whose index
to return
@type uid: string
@param uid: Unique identifier of the device queried for components
@type meta_type: string
@param meta_type: (optional) The meta type of the components to retrieve
(default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return results (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: regex
@param name: (optional) Used to filter the results (default: None)
@rtype: DirectResponse
@return: B{Properties}:
- index: (integer) Index of the component
remodel(deviceUid, **collectPlugins, **background) Submit a job to have a device remodeled.

@type deviceUid: string
@param deviceUid: Device uid to have local template
@type collectPlugins: string
@param collectPlugins: (optional) Modeler plugins to use.
Takes a regular expression (default: '')
@type background: boolean
@param background: (optional) False to not schedule a job
(default: True)
@rtype: DirectResponse
@return: B{Properties}:
- status: (string) ID of the add device job or command exit status
resetIp(uids, hashcheck, **sort, **uid, **ip, **ranges, **params, **dir) Reset IP address(es) of device(s) to the results of a DNS lookup or
a manually set address

@type uids: [string]
@param uids: List of device uids with IP's to reset
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type ip: string
@param ip: (optional) IP to set device to. Empty string causes DNS
lookup (default: '')
@rtype: DirectResponse
@return: Success or failure message
renameDevice(uid, newId, **retainGraphData) Set the device specified by the uid,"uid" to have the
the id "newId"
This will raise an exception if it fails.

@type uid: string
@param uid: The unique id of the device we are renaming
@type newId: string
@param newId: string of the new id
gzip_b64(string) gzip an arbitrary string, base64 encode it, and return it
getCredentialsProps(deviceClass) Get a dictionary of the creds props and default values for this device class

@rtype: DirectResponse
@return: List of credentials props
lockDevices(uids, hashcheck, **sort, **uid, **sendEvent, **ranges, **params, **updates, **deletion, **dir) Lock device(s) from changes.

@type uids: [string]
@param uids: List of device uids to lock
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type updates: boolean
@param updates: (optional) True to lock device from updates (default: False)
@type deletion: boolean
@param deletion: (optional) True to lock device from deletion
(default: False)
@type sendEvent: boolean
@param sendEvent: (optional) True to send an event when an action is
blocked by locking (default: False)
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success or failure message
getComponentGraphs(uid, meta_type, graphId, **allOnSame) Returns the graph denoted by graphId for every component in
device (uid) with the meta_type meta_type
getOverriddenObjectsList(uid, propname, relName) returns a list of Overridden Objects and properties for this context
addIpRouteEntry(uid, **dest, **nexthopid, **userCreated, **routemask, **interface, **routeproto, **routetype) Adds an Ip Route Entry to this device
addLocationNode() Adds a new location organizer specified by the parameter id to
the parent organizer specified by contextUid.

contextUid must be a path to a Location.

@type type: string
@param type: Node type (always 'organizer' in this case)
@type contextUid: string
@param contextUid: Path to the location organizer that will
be the new node's parent (ex. /zport/dmd/Devices/Locations)
@type id: string
@param id: The identifier of the new node
@type description: string
@param description: (optional) Describes the new location
@type address: string
@param address: (optional) Physical address of the new location
@rtype: dictionary
@return: B{Properties}:
- success: (bool) Success of node creation
- nodeConfig: (dictionary) The new location's properties
addLocalTemplate(deviceUid, templateId) Adds a local template on a device.

@type deviceUid: string
@param deviceUid: Device uid to have local template
@type templateId: string
@param templateId: Name of the new template
@rtype: DirectResponse
@return: Success message
getPriorities() Get a list of available device priorities.

@rtype: [dictionary]
@return: List of name/value pairs of available device priorities
setComponentsMonitored(uids, hashcheck, **sort, **monitor, **keys, **name, **ranges, **start, **meta_type, **limit, **dir, **uid) Set the monitoring flag for component(s)

@type uids: [string]
@param uids: List of component uids to set
@type hashcheck: string
@param hashcheck: Hashcheck for the components (from getComponents())
@type monitor: boolean
@param monitor: (optional) True to monitor component (default: False)
@type uid: string
@param uid: (optional) Device to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type meta_type: string
@param meta_type: (optional) The meta type of the components to retrieve
(default: None)
@type keys: [string]
@param keys: not used
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: 50)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: string
@param name: (optional) Component name to search for when loading ranges
(default: None)
@rtype: DirectResponse
@return: Success or failure message
setBoundTemplates(uid, templateIds) Set a list of templates as bound to a device.

@type uid: string
@param uid: Device uid to bind templates to
@type templateIds: [string]
@param templateIds: List of template uids to bind to device
@rtype: DirectResponse
@return: Success message
getConnectionInfo(uid) Returns the zproperty information about those zproperties which comprise
the credentials
@rtype: List of Dictionaries
@return: B{Properties}:
- path: (string) where the property is defined
- type: (string) type of zproperty it is
- options: (Array) available options for the zproperty
- value (Array) value of the zproperty
- valueAsString (string)
getDeviceUids(uid) Return a list of device uids underneath an organizer. This includes
all the devices belonging to an child organizers.

@type uid: string
@param uid: Unique identifier of the organizer to get devices from
@rtype: DirectResponse
@return: B{Properties}:
- devices: (list) device uids
getUnboundTemplates(uid) Get a list of unbound templates for a device.

@type uid: string
@param uid: Device uid to query for templates
@rtype: DirectResponse
@return: B{Properties}:
- data: ([dictionary]) List of objects representing templates
setProductInfo(uid) Sets the ProductInfo on a device. This method has the following valid
keyword arguments:

@type uid: string
@keyword uid: Unique identifier of a device
@type hwManufacturer: string
@keyword hwManufacturer: Hardware manufacturer
@type hwProductName: string
@keyword hwProductName: Hardware product name
@type osManufacturer: string
@keyword osManufacturer: Operating system manufacturer
@type osProductName: string
@keyword osProductName: Operating system product name
@rtype: DirectResponse
gunzip_b64(string) Base 64 decode a string, then gunzip it and return the result as JSON.
The input to this method should be gzipped, base 64 encoded JSON. Base
64 encoded strings are allowed to have up to 2 '='s of padding. The zenoss
Ext router eats these, so there is some logic to try padding them back into
the string should initial decoding fail.
removeDevices(uids, hashcheck, **sort, **uid, **deletePerf, **ranges, **params, **deleteEvents, **action, **dir) Remove/delete device(s).

@type uids: [string]
@param uids: List of device uids to remove
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type action: string
@param action: Action to take. 'remove' to remove devices from organizer
uid, and 'delete' to delete the device from Zenoss.
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids and/or to remove device (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type deleteEvents: bool
@param deleteEvents: will remove all the events for the devices as well
@type deletePerf: bool
@param deletePerf: will remove all the perf data for the devices
@rtype: DirectResponse
@return: B{Properties}:
- devtree: ([dictionary]) Object representing the new device tree
- grptree: ([dictionary]) Object representing the new group tree
- systree: ([dictionary]) Object representing the new system tree
- loctree: ([dictionary]) Object representing the new location tree
getDeviceClasses() Get a list of all device classes.

@rtype: DirectResponse
@return: B{Properties}:
- deviceClasses: ([dictionary]) List of device classes
- totalCount: (integer) Total number of device classes
loadComponentRanges(ranges, hashcheck, **sort, **uid, **start, **meta_type, **limit, **dir, **types, **name) Get a range of component uids.

@type ranges: [integer]
@param ranges: List of two integers that are the min/max values of a
range of uids
@type hashcheck: string
@param hashcheck: not used
@type uid: string
@param uid: (optional) Device to use to get uids (default: None)
@type types: [string]
@param types: (optional) The types of components to retrieve (default: None)
@type meta_type: string
@param meta_type: (optional) The meta type of the components to retrieve
(default: None)
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: string
@param name: (optional) Component name to search for when loading ranges
(default: None)
@rtype: [string]
@return: A list of component uids
setInfo() Set attributes on a device or device organizer.
This method accepts any keyword argument for the property that you wish
to set. The only required property is "uid".

@type uid: string
@keyword uid: Unique identifier of an object
@rtype: DirectResponse
getOSProductNames(**manufacturer) Get a list of all OS product names from a manufacturer.

@type manufacturer: string
@param manufacturer: Manufacturer name
@rtype: DirectResponse
@return: B{Properties}:
- productNames: ([dictionary]) List of OS product names
- totalCount: (integer) Total number of OS product names
addNode() Add a node to the existing tree underneath the node specified
by the context UID

@type type: string
@param type: Either 'class' or 'organizer'
@type contextUid: string
@param contextUid: Path to the node that will
be the new node's parent (ex. /zport/dmd/Devices)
@type id: string
@param id: Identifier of the new node, must be unique in the
parent context
@type description: string
@param description: (optional) Describes this new node (default: None)
@rtype: dictionary
@return: Marshaled form of the created node
objectExists(uid) @rtype: DirectResponse
@return:
- Properties:
- B{exists} - Returns true if we can find the object specified by the uid
getSoftware(uid, **keys)
addDevice(deviceName, deviceClass, **serialNumber, **zWinPassword, **osProductName, **zWinUser, **tag, **rackSlot, **hwManufacturer, **hwProductName, **collector, **zCommandPassword, **title, **manageIp, **comments, **priority, **snmpCommunity, **zCommandUsername, **groupPaths, **snmpPort, **cProperties, **zProperties, **productionState, **systemPaths, **osManufacturer, **model, **locationPath) Add a device.

@type deviceName: string
@param deviceName: Name or IP of the new device
@type deviceClass: string
@param deviceClass: The device class to add new device to
@type title: string
@param title: (optional) The title of the new device (default: '')
@type snmpCommunity: string
@param snmpCommunity: (optional) A specific community string to use for
this device. (default: '')
@type snmpPort: integer
@param snmpPort: (optional) SNMP port on new device (default: 161)
@type manageIp: string
@param manageIp: (optional) Management IP address on new device (default:
empty/derive from DNS)
@type locationPath: string
@param locationPath: (optional) Organizer path of the location for this device
@type systemPaths: List (strings)
@param systemPaths: (optional) List of organizer paths for the device
@type groupPaths: List (strings)
@param groupPaths: (optional) List of organizer paths for the device
@type model: boolean
@param model: (optional) True to model device at add time (default: False)
@type collector: string
@param collector: (optional) Collector to use for new device (default:
localhost)
@type rackSlot: string
@param rackSlot: (optional) Rack slot description (default: '')
@type productionState: integer
@param productionState: (optional) Production state of the new device
(default: 1000)
@type comments: string
@param comments: (optional) Comments on this device (default: '')
@type hwManufacturer: string
@param hwManufacturer: (optional) Hardware manufacturer name (default: '')
@type hwProductName: string
@param hwProductName: (optional) Hardware product name (default: '')
@type osManufacturer: string
@param osManufacturer: (optional) OS manufacturer name (default: '')
@type osProductName: string
@param osProductName: (optional) OS product name (default: '')
@type priority: integer
@param priority: (optional) Priority of this device (default: 3)
@type tag: string
@param tag: (optional) Tag number of this device (default: '')
@type serialNumber: string
@param serialNumber: (optional) Serial number of this device (default: '')
@type zCommandUsername: string
@param zWinUser: (optional) Username for WMI (default: '')
@type zCommandPassword: string
@param zWinPassword: (optional) Password for WMI (default: '')
@rtype: DirectResponse
@return: B{Properties}:
- jobId: (string) ID of the add device job
getLocalTemplates(query, uid) Get a list of locally defined templates on a device.

@type query: string
@param query: not used
@type uid: string
@param uid: Device uid to query for templates
@rtype: DirectResponse
@return: B{Properties}:
- data: ([dictionary]) List of objects representing local templates
bindOrUnbindTemplate(uid, templateUid) Bind an unbound template or unbind a bound template from a device.

@type uid: string
@param uid: Device uid to bind/unbind template
@type templateUid: string
@param templateUid: Template uid to bind/unbind
@rtype: DirectResponse
@return: Success message
lockComponents(uids, hashcheck, **sort, **uid, **sendEvent, **keys, **ranges, **start, **meta_type, **limit, **updates, **deletion, **dir, **name) Lock component(s) from changes.

@type uids: [string]
@param uids: List of component uids to lock
@type hashcheck: string
@param hashcheck: Hashcheck for the components (from getComponents())
@type uid: string
@param uid: (optional) Device to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type updates: boolean
@param updates: (optional) True to lock component from updates (default: False)
@type deletion: boolean
@param deletion: (optional) True to lock component from deletion
(default: False)
@type sendEvent: boolean
@param sendEvent: (optional) True to send an event when an action is
blocked by locking (default: False)
@type meta_type: string
@param meta_type: (optional) The meta type of the components to retrieve
(default: None)
@type keys: [string]
@param keys: not used
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: 50)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: string
@param name: (optional) Component name to search for when loading ranges
(default: None)
@rtype: DirectResponse
@return: Success or failure message
addDeviceClassNode() Adds a new device class organizer specified by the parameter id to
the parent organizer specified by contextUid.

contextUid must be a path to a DeviceClass.

@type type: string
@param type: Node type (always 'organizer' in this case)
@type contextUid: string
@param contextUid: Path to the location organizer that will
be the new node's parent (ex. /zport/dmd/Devices/)
@type id: string
@param id: The identifier of the new node
@type description: string
@param description: (optional) Describes the new device class
@type connectionInfo: list
@param connectionInfo: (optional) List of zproperties that constitute credentials for this device classs
@rtype: dictionary
@return: B{Properties}:
- success: (bool) Success of node creation
- nodeConfig: (dictionary) The new device class's properties
moveDevices(uids, target, **sort, **uid, **ranges, **hashcheck, **asynchronous, **params, **dir) Moves the devices specified by uids to the organizer specified by 'target'.

@type uids: [string]
@param uids: List of device uids to move
@type target: string
@param target: Uid of the organizer to move the devices to
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: B{Properties}:
- tree: ([dictionary]) Object representing the new device tree
- exports: (integer) Number of devices moved
deleteComponents(uids, hashcheck, **sort, **uid, **keys, **ranges, **start, **meta_type, **limit, **dir, **name) Delete device component(s).

@type uids: [string]
@param uids: List of component uids to delete
@type hashcheck: string
@param hashcheck: Hashcheck for the components (from getComponents())
@type uid: string
@param uid: (optional) Device to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type meta_type: string
@param meta_type: (optional) The meta type of the components to retrieve
(default: None)
@type keys: [string]
@param keys: not used
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: 50)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@type name: string
@param name: (optional) Component name to search for when loading ranges
(default: None)
@rtype: DirectResponse
@return: Success or failure message
addIpService(uid, newClassName, protocol, **userCreated) Adds an Ip Service
removeLocalTemplate(deviceUid, templateUid) Removes a locally defined template on a device.

@type deviceUid: string
@param deviceUid: Device uid that has local template
@type templateUid: string
@param templateUid: Name of the template to remove
@rtype: DirectResponse
@return: Success message
getModelerPluginDocStrings(uid) Given a uid returns the documentation for all the modeler plugins.
doesMoveRequireRemodel(uid, target) Determine if the device will need to be remodeled if it is moved.

@type uid: string
@param uid: Uid of device in current location
@type target: string
@param target: Uid of the organizer to move the device to
getSystems() Get a list of all systems.

@rtype: DirectResponse
@return: B{Properties}:
- systems: ([dictionary]) List of systems
- totalCount: (integer) Total number of systems
moveCollectorDevices(srcCollectors, dstCollector, hashcheck, **sort, **uid, **moveData, **ranges, **asynchronous, **params, **dir) Move all devices under one or more collectors to another collector

The signature is exactly the same as setCollector(), except that the
'uids' parameter is replaced with 'srcCollectors'

@type srcCollectors: list of strings
@param srcCollectors: The collectors to move all devices from
getDeviceClassesToAdd() Get a list of device classes that don't require special case add jobs

@rtype: DirectResponse
@return: B{Properties}:
- deviceClasses: ([dictionary]) List of device classes
- totalCount: (integer) Total number of device classes
addOSProcess(uid, newClassName, example, **userCreated) Adds an os processes
getBoundTemplates(uid) Get a list of bound templates for a device.

@type uid: string
@param uid: Device uid to query for templates
@rtype: DirectResponse
@return: B{Properties}:
- data: ([dictionary]) List of objects representing templates
resetCommunity(uids, hashcheck, **ranges, **sort, **params, **uid, **dir) Reset SNMP community string(s) on device(s)

@type uids: [string]
@param uids: List of device uids to reset
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success or failure message
getInfo(uid, **keys) Get the properties of a device or device organizer

@type uid: string
@param uid: Unique identifier of an object
@type keys: list
@param keys: (optional) List of keys to include in the returned
dictionary. If None then all keys will be returned
(default: None)
@rtype: DirectResponse
@return: B{Properties}
- data: (dictionary) Object properties
- disabled: (bool) If current user doesn't have permission to use setInfo
getManufacturerNames() Get a list of all manufacturer names.

@rtype: DirectResponse
@return: B{Properties}:
- manufacturers: ([dictionary]) List of manufacturer names
- totalCount: (integer) Total number of manufacturer names
resumeCollection(id)
pushChanges(uids, hashcheck, **ranges, **sort, **params, **uid, **dir) Push changes on device(s) configuration to collectors.

@type uids: [string]
@param uids: List of device uids to push changes
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success message
getCollectors() Get a list of available collectors.

@rtype: [string]
@return: List of collectors
getOverriddenObjectsParent(uid, **propname) returns the base of the Overridden Objects
addWinService(uid, newClassName, **userCreated) Adds an Ip Service
clearGeocodeCache() Clear the Google Maps geocode cache.

@rtype: DirectResponse
@return: Success message
setPriority(uids, priority, hashcheck, **ranges, **sort, **params, **uid, **dir) Set device(s) priority.

@type uids: [string]
@param uids: List of device uids to set
@type priority: integer
@param priority: Priority to set device(s) to.
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success or failure message
loadRanges(ranges, hashcheck, **sort, **params, **uid, **dir) Get a range of device uids.

@type ranges: [integer]
@param ranges: List of two integers that are the min/max values of a
range of uids
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use to get uids (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: [string]
@return: A list of device uids
getLocations() Get a list of all locations.

@rtype: DirectResponse
@return: B{Properties}:
- systems: ([dictionary]) List of locations
- totalCount: (integer) Total number of locations
getDevices(**sort, **uid, **keys, **start, **limit, **params, **page, **dir) Retrieves a list of devices. This method supports pagination.

@type uid: string
@param uid: Unique identifier of the organizer to get devices from
@type start: integer
@param start: (optional) Offset to return the results from; used in
pagination (default: 0)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type limit: integer
@param limit: (optional) Number of items to return; used in pagination
(default: 50)
@type sort: string
@param sort: (optional) Key on which to sort the return results (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: B{Properties}:
- devices: (list) Dictionaries of device properties
- totalCount: (integer) Number of devices returned
- hash: (string) Hashcheck of the current device state (to check
whether devices have changed since last query)
setCollector(uids, collector, hashcheck, **sort, **uid, **moveData, **ranges, **asynchronous, **params, **dir) Set device(s) collector.

@type uids: [string]
@param uids: List of device uids to set
@type collector: string
@param collector: Collector to set devices to
@type hashcheck: string
@param hashcheck: Hashcheck for the devices (from getDevices())
@type uid: string
@param uid: (optional) Organizer to use when using ranges to get
additional uids (default: None)
@type ranges: [integer]
@param ranges: (optional) List of two integers that are the min/max
values of a range of uids to include (default: None)
@type params: dictionary
@param params: (optional) Key-value pair of filters for this search.
Can be one of the following: name, ipAddress,
deviceClass, or productionState (default: None)
@type sort: string
@param sort: (optional) Key on which to sort the return result (default:
'name')
@type dir: string
@param dir: (optional) Sort order; can be either 'ASC' or 'DESC'
(default: 'ASC')
@rtype: DirectResponse
@return: Success or failure message
moveOrganizer(targetUid, organizerUid) Move the organizer uid to be underneath the organizer
specified by the targetUid.

@type targetUid: string
@param targetUid: New parent of the organizer
@type organizerUid: string
@param organizerUid: The organizer to move
@rtype: DirectResponse
@return: B{Properties}:
- data: (dictionary) Moved organizer
getGraphDefintionsForComponents(uid)
getGraphDefs(uid, **drange) Returns the url and title for each graph
for the object passed in.
@type uid: string
@param uid: unique identifier of an object
addIpInterface(uid, newId, **userCreated) Adds an Ip Interface