• CloudVision Wi-Fi and APIs

 
 
Print Friendly, PDF & Email

Introduction

The article describes a few examples of how CloudVision Wi-Fi uses APIs to interface with Wireless Manager.

Prerequisites

  • Administrator or higher access to the Wireless Manager and API Keys

Solution

CloudVision Wi-Fi (CVW) does not store any Wi-Fi data or configuration. Instead, the Wireless Manager (WM) server collects all the data and stores it in its database.

CVW polls the WM database periodically and represents it on its own UI using an internal web server.

So, how does CVW fetch this data from the WM database?

API  Samples

Below are few  examples of the APIs that CVW uses to poll data from the WM server.

The WM server or service URL is https://alpha-WM.arista.com   (This is a sample URL)

CVW server or service URL is https://alpha-aware.arista.com  (This is a sample URL)

Example 1: Get SSID list from the WM server

Syntax:

GET https://alpha-WM.arista.com/new/webservice/v4/templates/SSID_PROFILE

Response Body snippet:

[

{

"type": "ssidprofile",

"templateId": 1,

"templateName": " Model-Agnostic SSID ",

"createdAtLocationId": {

"type": "locallocationid",

"id": 0

},

]

How it appears on CVW:

Example 2 : Get the list of network interfaces

Syntax:

GET https://alpha-WM.arista.com/new/webservice/V4/templates/NETWORK_INTERFACE

Response Body snippet:

{

"type": "networkinterfaceprofile",

"templateId": 1,

"templateName": " Arista-test ",

"createdAtLocationId": {

"type": "locallocationid",

"id": 0

},

"description": "",

"templateType": "NETWORK_INTERFACE",

"mncTemplateId": 0,

"tunnelType": "GRE_OVER_IPSEC",

"secondaryNetworkEnabled": false,

"primaryPriorityEnabled": true,

"primaryEthernetOverGreSettings": {

"greKey": 65535,

"remoteIpAddress": "192.168.1.100",

"localVlan": 192

},

Note: The Response Body has been trimmed, but it includes many attributes of the tunnel interface such as gre-key, AP authentication settings, remote authentication settings and so on.

How it appears on CVW:

Example 3: Modify an AP name on CVW

  • First run the API call to get the details of managed APs. We can also fetch specific details of a particular device (managed Device, AP or Client).
  • We can skip the step if we have collected the information of the device using another API call.

Syntax to get the Managed device details:

GET https://alpha-WM.arista.com/new/webservice/v5/devices/sensors

Response Body snippet :

[

{

"type": "sensor",

"boxId": 6,

"name": "Arista_20:92:FF",

"locationId": {

"type": "locallocationid",

"id": 6

},

"radios": [

{

"type": "sensorradio",

"macaddress": "88:B1:E1:20:92:FF",

"protocol": "SENSOR",

"channel": 0,

"firstDetectedTime": 1534219198131,

"upSince": 1534324326000,

"signalStrength": 0,

"quarantineStatus": "QUARANTINE_STATUS_OFF",

"captureFlag": 0,

"captureId": 0,

"apOpMode": 1,

"upgradeStatus": 0,

"configurationFlags": "NOT_CONFIGURED",

"modelAgnosticCloudVision Wi-Fi": true,

"active": false

}

]

 

If you are running this for other vendor APs:

Syntax to get the AP details:

GET https://alpha-WM.arista.com/new/webservice/v5/devices/aps

boxId is a critical piece of information to identify the device, which can be used by the next API calls to update the device properties. In the response body, we found that the boxId was 6 for the device with MAC address 88:B1:E1:20:92:FF.

 

Syntax to Modify AP name:

PUT https://alpha-WM.arista.com/new/webservice/v5/devices/aps

Reference: https://apidocs.wifi.arista.com/aps/

Similar calls can be executed to get the boxId for other AP BSSIDs.

 

Complete API Reference: https://apidocs.wifi.arista.com/

Tools used: Postman, SoapUI (You are free to use any other tool or programming language)

 

Follow

Get every new post on this blog delivered to your Inbox.

Join other followers: