Is there an API call for Wireless -> Access Points -> Connection Log data?

LearningIsFun
Getting noticed

Is there an API call for Wireless -> Access Points -> Connection Log data?

Is there an API call for Wireless -> Access Points -> Connection Log data?

The Failure stage and Failure Reasons under Connection Log, are not the same messages that are logged to the event log.

Is there an API call to obtain this data?

 

Timeline data would be useful as well.

Thanks!

8 Replies 8
RaphaelL
Kind of a big deal
Kind of a big deal

Hi ,


Haven't tested all of them , but if you look at the API index there are a few that might help : 

 

https://developer.cisco.com/meraki/api-v1/api-index/

getNetworkWirelessDevicesConnectionStats

getNetworkWirelessFailedConnections

getNetworkWirelessClientConnectionStats

LearningIsFun
Getting noticed

Yea, so far none of these provide the data the dashboard does.

alemabrahao
Kind of a big deal
Kind of a big deal

Have you tried this one?

 

Get Network Wireless Client Connectivity Events - Meraki Dashboard API v1 - Cisco Meraki Developer H...

I am not a Cisco Meraki employee. My suggestions are based on documentation of Meraki best practices and day-to-day experience.

Please, if this post was useful, leave your kudos and mark it as solved.
LearningIsFun
Getting noticed

Yes, just tried that one, it doesn't provide the same data elements, like Failure stage and Failure Reason.

sungod
Kind of a big deal
Kind of a big deal

No single endpoint will give all the details on the Connection Log page, like many things in the user interface, it is built from multiple datasets.

 

This one mentioned by @RaphaelL is the closest...

https://developer.cisco.com/meraki/api-v1/get-network-wireless-failed-connections/

 

Given this, you can use other endpoints to recreate the details seen in the UI.

 

I.e. if you then want to know the client device name, you can relate the clientMac value to the list of clients on the network, which you can get from https://developer.cisco.com/meraki/api-v1/get-network-clients/

 

Same with the SSID name, you'll need to relate ssidNumber to the list of SSIDs for the network, which you get from another endpoint.

 

If you want to know which AP, you can do this by iterating over APs using the serial keyword argument rather than the default of all APs on the network. Of course you'll need first to get the list of AP serials for that network using another endpoint.

 

 

 

 

LearningIsFun
Getting noticed

None of the API calls I have attempted so far provide the data/text within Connection Log data -> Failure Reason.

sungod
Kind of a big deal
Kind of a big deal

The endpoint tells you the stage that failure occurred at and the type of failure. i.e. the failureStep and type elements. It's enough to know where things go wrong, for detail I'd look at the UI.

 

 

[
    {
        "ssidNumber": 1,
        "vlan": 100,
        "clientMac": "22:33:44:55:66:77",
        "serial": "Q234-ABCD-5678",
        "failureStep": "dns",
        "type": "802.1X auth fail",
        "ts": "2018-02-11T00:00:00.090210Z"
    }
]

 

 

Looks like the Connection Log is also pulling data from network events... https://developer.cisco.com/meraki/api-v1/get-network-events/ 

 

If you want that info, you'll need to get the events and correlate the two, and maybe data from other endpoints as well.

 

The UI/API are two different views of underlying datasets, trying to replicate the UI view from the API can be complex or impossible, especially as neither the datasets nor the UI's algorithms and parameters are public.

LearningIsFun
Getting noticed

Thank you. I understand what you are saying but the elements needed to track a bug we are hitting in the MR code is only easily seen/noted in the Connection Log data -> Failure Reason text.  We can correlate it to some event logs but when doing that we get a ton of false positives.   The actual data/text from Connection Log data -> Failure Reason so far is the only place where the data is available.   Same with the "Failure stage" = Association.  Basing on just this information doesn't fulfill the need and we get a ton of false positives again.

Example date:

Failure stage: Association

Failure Reason: auth_mode='wpa2-psk' 11k='0' 11v='0' ft='1' reason='invalid_pmkid' radio='0' vap='5' channel='11' rssi='51'

Get notified when there are additional replies to this discussion.