HomeGuidesAPI Reference
GuidesAPI ReferenceGitHubAirheads Developer CommunityLog In

Monitoring Tasks

How to access trail-info on a particular MAC?

Step: Use showcommand API and use CLI command: show ap trail-info
API: GET /object/show ap trail-info
URL: https://1.1.1.10:4343/v1/configuration/showcommand?command=show+ap+client+trail-info+&UIDARUBA=xxxx

JSON input: No input required

Expected Response:
JSON formatted data having the following as lists:

  1. Alerts
  2. Client Trail Info
  3. Deauth Reason
  4. Mobility Trail

How to use configuration on a node to parse and check controller config deviation from best practice?

Step: Get the full configuration of a node and then parse relevant information.
URL: https://1.1.1.10:4343/v1/configuration/object/config?config_path=&type=&UIDARUBA=xxxx

JSON input: No input required

= type of configuration needed

Values for are as follows:
pending
committed
local
committed, local

How to track if Config push happened to all controllers after POST API in Mobility Conductor at a certain config path

Answer: 200 Success HTTP code returned by the POST API request doesn’t mean the config is pushed to all the controllers in mentioned config path. Use showcommand API (/v1/configuration/showcommand) to execute CLI based “show switches” command. Based on Config ID and Configuration State, we can know if the config is in sync with all/required controllers after POST. Config ID for all controllers will increase regardless of change to a specific controller.

Step: Use showcommand API
API: GET /v1/configuration/showcommand
URL: https://1.1.1.10:4343/v1/configuration/showcommand?UIDARUBA=xxxx&command=show+switches

None
{ 
  "All Switches": [ 
    { 
      "Config ID": "214", 
      "Config Sync Time (sec)": "0", 
      "Configuration State": "UPDATE SUCCESSFUL", 
      "IP Address": "1.1.124.1", 
      "IPv6 Address": "None", 
      "Location": "Building1.floor1", 
      "Model": "ArubaMM-VA", 
      "Name": "ARUBA-MM", 
      "Status": "up", 
      "Type": "master", 
      "Version": "8.5.0.0_70258" 
    }, 
    { 
      "Config ID": "201", 
      "Config Sync Time (sec)": "0", 
      "Configuration State": "NO MM LICENSE", 
      "IP Address": "1.1.124.2", 
      "IPv6 Address": "None", 
      "Location": "Building1.floor1", 
      "Model": "ArubaMC-VA", 
      "Name": "ArubaMC-VA", 
      "Status": "down", 
      "Type": "MD", 
      "Version": "8.5.0.0_70258" 
    } 
  ], 
  "_data": [ 
    "2" 
  ], 
  "_meta": [ 
    "IP Address", 
    "IPv6 Address", 
    "Name", 
    "Location", 
    "Type", 
    "Model", 
    "Version", 
    "Status", 
    "Configuration State", 
    "Config Sync Time (sec)", 
    "Config ID" 
  ] 
}

What’s Next

To find out more on how to use APIs in playbooks using Ansible as your automation tool: