11-21-2016 03:27 AM
Hey!
I recently started writing a script to pull inventory data from a PI 3.1 and noticed that an API call to IP/webacs/api/v1/data/InventoryDetails?.full=true is not returning an udiDetail XML element for wireless controllers.
Therefore, you can't get a serial number and device model ID from that data and have to manually call IP//webacs/api/v1/data/WlanControllerDetails?name=$controllerName for each device to get the missing data.
As this is not documented and all data for the udiDetail element would be available, I consider this a bug and would ask for a fix.
Kind regards!
Solved! Go to Solution.
11-22-2016 01:34 PM
A couple points: you can make calls to the WlanControllerDetails resource to get pages of info per request rather than one controller per request (for example, /webacs/api/v1/data/WlanControllerDetails?.full=true&.maxResults=500).
We are aware of this limitation and how it's cumbersome (see CSCvb73710). The reason we don't show UDIs for WLCs in the InventoryDetails resource is due to performance and historical reasons. Serial numbers for WLCs are not stored in the same place as they are for routers and switches; historically, this is due to the fact that WLC management functionality came from Cisco Wireless Control System (WCS) and functionality for wired device management came from Cisco Network Control System (NCS). The two products modeled some information differently, and those differences still exist in parts of Prime Infrastructure. We could change the InventoryDetails resource to pull data from the two different sources, but when we've experimented with this in our large-scale test environments the response time was severely degraded.
The good news is that the team responsible for wireless device inventory is taking up work currently targeted for the next major release of Prime Infrastructure (3.2) that will unify these disparate models, and allow us to report UDIs for WLCs via the InventoryDetails resource without negatively impacting performance.
11-22-2016 01:34 PM
A couple points: you can make calls to the WlanControllerDetails resource to get pages of info per request rather than one controller per request (for example, /webacs/api/v1/data/WlanControllerDetails?.full=true&.maxResults=500).
We are aware of this limitation and how it's cumbersome (see CSCvb73710). The reason we don't show UDIs for WLCs in the InventoryDetails resource is due to performance and historical reasons. Serial numbers for WLCs are not stored in the same place as they are for routers and switches; historically, this is due to the fact that WLC management functionality came from Cisco Wireless Control System (WCS) and functionality for wired device management came from Cisco Network Control System (NCS). The two products modeled some information differently, and those differences still exist in parts of Prime Infrastructure. We could change the InventoryDetails resource to pull data from the two different sources, but when we've experimented with this in our large-scale test environments the response time was severely degraded.
The good news is that the team responsible for wireless device inventory is taking up work currently targeted for the next major release of Prime Infrastructure (3.2) that will unify these disparate models, and allow us to report UDIs for WLCs via the InventoryDetails resource without negatively impacting performance.
11-23-2016 03:51 AM
Thanks a lot for the information and the better workaround!
I changed my script, works fine and faster now, and I'm looking forward to the change in 3.2.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide