Monitoring Customers
Once you have onboarded customers, monitoring their networks is the next step.
MSP Groups
With this API, you can get a list of customers that are mapped to a particular MSP group
API Endpoint: /msp_api/v1/groups/{group_name}/customers
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>';
Request Query Params: group_name
, offset
, limit
{
"customers": [
{
"customer_id": "<customer_id>",
"customer_name": "Hotel Demo 1",
"group": {
"id": 0,
"name": "default"
}
},
{
"customer_id": "<customer_id>",
"customer_name": "Hotel Demo 2",
"group": {
"id": 0,
"name": "default"
}
}
],
"status": "success",
"total": 2
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/msp_api/v1/groups/<group_name>/customers?offset=0&limit=20' \
--header 'Accept: application/json'\
--header 'Authorization: Bearer <ACCESS_TOKEN>'
The below API calls can be used for monitoring individual customer accounts.
Note
The request query parameters of these APIs are optional and can be used to filter the devices based on the requirements.
Access Points(AP)
API Endpoint: /monitoring/v2/aps
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'; 'TenantID': '<customer_id>
Request Query Params: group
, swarm_id
, label
, site
, status
, serial
, macaddr
, model
, cluster_id
, fields
, calculate_total
, calculate_client_count
, calculate_ssid_count
, show_resource_details
, offset
, limit
, sort
Note
You can only specify one of
group
,swarm_id
,label
, orsite
parameters. More details on this API can be found here
{
"aps": [
{
"ap_deployment_mode": "IAP",
"ap_group": null,
"cluster_id": "",
"controller_name": "",
"down_reason": "Access Point disconnected from Aruba Central",
"firmware_version": "10.3.1.0_82833",
"gateway_cluster_id": "",
"gateway_cluster_name": "",
"group_name": "Dorm-AP",
"ip_address": "172.16.30.7",
"labels": [],
"last_modified": 1652276422,
"macaddr": "e8:26:89:c3:fa:0a",
"mesh_role": "Unknown",
"model": "303",
"name": "AP303-7020-Dorm",
"notes": null,
"public_ip_address": "59.144.73.163",
"radios": [
{
"band": 1,
"index": 0,
"macaddr": "e8:26:89:bf:a0:b0",
"radio_name": "Radio 5 GHz",
"radio_type": "802.11ac",
"spatial_stream": "2x2:2",
"status": "Down"
},
{
"band": 0,
"index": 1,
"macaddr": "e8:26:89:bf:a0:a0",
"radio_name": "Radio 2.4 GHz",
"radio_type": "802.11n",
"spatial_stream": "2x2:2",
"status": "Down"
}
],
"serial": "CNJTK9T4WP",
"site": "Campus-Site-1",
"status": "Down",
"subnet_mask": "255.255.255.240",
"swarm_id": "",
"swarm_master": false,
"swarm_name": "AP303-7020-Dorm"
}
],
"count": 1
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/monitoring/v2/aps' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Switches
API Endpoint: /monitoring/v1/switches
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'; 'TenantID': '<customer_id>
Request Query Params: group
, label
, stack_id
, status
, fields
, calculate_total
, show_resource_details
, calculate_client_count
, public_ip_address
, site
, offset
, limit
, sort
Note
You can only specify one of
group
,label
orstack_id
parameters. More details on this API can be found here
{
"count": 1,
"switches": [
{
"firmware_version": "16.10.0017",
"group_id": 274,
"group_name": "CampusCluster-A",
"ip_address": "",
"label_ids": [
198
],
"labels": [
"Campus-deployment"
],
"macaddr": "90:20:c2:4c:58:e0",
"model": "Aruba2930F-8G-PoE+-2SFP+ Switch(JL258A)",
"name": "SiteA-Gateway-SW",
"public_ip_address": "",
"serial": "CN90HKZ1DM",
"site": "Campus-Site-1",
"site_id": 155,
"stack_id": "03009020-c24caaf0",
"status": "Up",
"switch_type": "AOS-S",
"uplink_ports": null,
"usage": 527128
}
]
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/monitoring/v1/switches' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Gateways
API Endpoint: /monitoring/v1/gateways
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'; 'TenantID': '<customer_id>
Request Query Params: group
, label
, site
, status
, macaddr
, model
, fields
, calculate_total
, offset
, limit
, sort
Note
You can only specify one of the
group
orlabel
parameters. More details on this API can be found here
{
"count": 1,
"mcs": [
{
"cpu_utilization": 3,
"firmware_backup_version": "8.6.0.4-2.2.0.2_77807",
"firmware_version": "10.3.1.0_83085",
"group_name": "CampusCluster-B",
"ip_address": "172.16.80.2",
"labels": [
"Campus-deployment"
],
"mac_range": "00:1a:1e:00:07:08 - 00:1a:1e:00:07:0f",
"macaddr": "00:1a:1e:00:07:08",
"mem_free": 3362521088,
"mem_total": 5291769856,
"mode": "GATEWAY",
"model": "A7210",
"name": "7210-I-Backup-7014",
"reboot_reason": "Reboot by Aruba Central",
"role": "",
"serial": "BA0000120",
"site": null,
"status": "Up",
"uptime": 537317
}
]
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/monitoring/v1/gateways' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Clients
API Endpoint: /monitoring/v2/clients
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'; 'TenantID': '<customer_id>
Request Query Params: group
, swarm_id
, label
, site
, network
, serial
, cluster_id
, band
, stack_id
, os_type
, fields
, calculate_total
, offset
, limit
, sort
, last_client_mac
, timerange
, client_type
, client_status
, show_usage
, show_manufacturer
, show_signal_db
Note
You can only specify one of
group
,swarm_id
,cluster_id
network
,site
, orlabel
parameters. More details on this API can be found here
{
"clients": [
{
"associated_device": "CNK6KD5FQ3",
"associated_device_mac": "e8:26:89:c9:c6:6c",
"authentication_type": "DOT1X",
"client_type": "WIRELESS",
"connected_device_type": "AP",
"failure_reason": "Client Timeout",
"failure_stage": "DOT1X",
"group_id": 274,
"group_name": "CampusCluster-A",
"label_id": [
198
],
"labels": [
"Campus-deployment"
],
"macaddr": "14:98:77:34:69:e6",
"manufacturer": "Apple, Inc.",
"maxspeed": 1200,
"name": "cemp9",
"network": "Campus-ent@ employee",
"os_type": "--",
"site": "Campus-Site-1",
"snr": 64,
"speed": 1134,
"usage": 2052,
"user_role": null,
"username": "cemp9"
}
],
"count": 1,
"last_client_mac": "14:98:77:34:69:e6"
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/monitoring/v2/clients' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Topology
This API helps you get the topology details of a site.
API Endpoint: topology_external_api/<site-id>
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'; 'TenantID': '<customer_id>
Request Query Params: site_id
{
"devices": [
{
"cid": "eccca1afdcd54c0895b8105e38018109",
"click_disabled": 0,
"elementType": null,
"firmwareVersion": null,
"groupID": null,
"groupName": null,
"health": "poor",
"healthReason": [],
"ipAddress": "",
"lastContacted": 1652091367,
"macAddress": "F8:60:F0:62:FB:E2",
"members": null,
"model": null,
"name": "pppoe-Aruba-Stack-3810M",
"role": "Thirdparty",
"serial": "Thirdparty_f860f062fbe2",
"status": 0,
"tags": [
192,
193,
343
],
"vsx": null
},
{
"cid": "eccca1afdcd54c0895b8105e38018109",
"click_disabled": 0,
"elementType": null,
"firmwareVersion": "10.3.1.0",
"groupID": "269",
"groupName": "SmallBranch",
"health": "poor",
"healthReason": [
"Status: Down"
],
"ipAddress": "172.17.2.1",
"lastContacted": 1652148314,
"macAddress": "20:4C:03:BC:3F:D2",
"members": null,
"model": "Aruba9004-LTE",
"name": "sol1-ss-9004",
"role": "Controller",
"serial": "CNKFKSP01Y",
"status": 0,
"tags": [
192,
193,
343
],
"vsx": null
}
],
"edges": [],
"expiring_devices": {
"count": 1
},
"is_iap_tunnels": 0,
"rootNodes": [
"CNKFKSP01Y"
],
"status_code": 200,
"tunnels": [],
"uplink_nodes": [],
"vpnc_group_ids": []
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/topology_external_api/<SITE-ID>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Alerts & Events
Alerts
HPE Aruba Networking Central MSP mode enables administrators to trigger alerts when tenant provisioning, network,
device, or user management events occur. An MSP admin can configure alerts at the MSP
level which percolate down to all tenant accounts managed by the MSP. For example, if the MSP
administrator has configured an alert to be triggered when an AP is disconnected, the MSP is notified
when an AP is disconnected in any of the tenant networks managed by the MSP. This allows for
faster reactive support and makes monitoring and troubleshooting easy across multiple tenant
accounts.
API Endpoint: /central/v1/notifications
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'
Request Query Params: customer_id
, group
, label
, serial
, site
, from_timestamp
, to_timestamp
, severity
, type
, search
, calculate_total
, ack
, fields
, offset
, limit
Note
You can only specify one of the
group
orlabel
parameters. More details on this API can be found here
{
"count": 1,
"notifications": [
{
"acknowledged": false,
"created_timestamp": 1652790719,
"customer_id": "eccca1afdcd54c0895b8105e38018109",
"description": "More than 30% of DHCP attempts made in the last 30 minutes have failed at site Campus-MB-Site",
"details": {
"__base_url": "https://app-yoda.arubathena.com",
"_rule_number": "0",
"delay": "0",
"device": "ALL",
"duration": "30",
"labels": [
"208"
],
"site": "Campus-MB-Site",
"ssid": "ALL",
"sub_message": " at site Campus-MB-Site",
"threshold": "30",
"time": "2022-05-17 12:01:59 UTC"
},
"device_id": null,
"group_name": "",
"id": "AYDSAPNVJ_Ty_F5wFbJv",
"labels": [],
"nid": 1403,
"setting_id": "eccca1afdcd54c0895b8105e38018109-1403",
"severity": "Critical",
"state": "Open",
"timestamp": 1652790719,
"type": "CLARITY_DHCP_FAILURE"
}
]
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/central/v1/notifications' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Events
The event log stores important events that occur during the life of the device. It provides a history that can later be consulted to better troubleshoot different problems. You can use this API to get events in the MSP account.
API Endpoint: /monitoring/v2/events
API Method: GET
Base URL: https://apigw-prod2.central.arubanetworks.com
(Replace the Base URL with correct API Gateway)
Request Header: 'Content-Type': 'application/json'; 'Authorization': 'Bearer <access-token>'
Request Query Params: group
, swarm_id
, label
, from_timestamp
, to_timestamp
, offset
, limit
, macaddr
, bssid
, device_mac
, hostname
, device_type
, sort
, site
, serial
, level
, event_description
, event_type
, fields
, calculate_total
{
"count": 1,
"events": [
{
"bssid": "e8:26:89:1c:66:d4",
"client_mac": "24:1b:7a:cf:b4:c2",
"description": "DHCP request from client 24:1b:7a:cf:b4:c2 timed out",
"device_mac": "e8:26:89:c9:c6:6c",
"device_serial": "CNK6KD5FQ3",
"device_type": "CLIENT",
"event_type": "Client DHCP Timeout",
"event_uuid": "c2b617d8-57cb-4563-b77a-d02d2742aeab",
"events_details": [
{
"client_hostname": "Solutions-Air"
}
],
"group_name": "CampusCluster-A",
"has_rowdetail": true,
"hostname": "AP515-2028-SITEA-2.5.5",
"labels": [
{
"id": 198,
"name": "Campus-deployment"
}
],
"level": "negative",
"number": 55,
"sites": [
{
"id": 155,
"name": "Campus-Site-1"
}
],
"timestamp": 1652792161000
}
]
}
curl --request GET 'https://<API_GATEWAY_BASE_URL>/monitoring/v2/events' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'TenantID: <CUSTOMER_ID>'
Updated 4 months ago