Location

Zone Count Poll API

GET: Active Clients Count for all Registered Zones

Description

This API expects that registration of zones has been done using the Zone Count Register API (Configuration service /api/config/v1/zoneCountParams/1)

HTTP Method

GET

Resource URI

/api/location/v1/clients/count/byzone

Requires Basic Auth

N

Parameters

None.

Content Type

application/json

API History

Table 1. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

GET: Zone Count with Mac Addresses

Description

This API returns zone count along with macaddresses.

This expects the debug flag turned on in the Zone Count Register API under configuration service /api/config/v1/zoneCountParams/1

HTTP Method

GET

Resource URI

/api/location/v1/clients/count/byzone/detail

Requires Basic Auth

N

Parameters

Table 2. Parameter Details

Name

Required

Default

Type

Location

Description

zoneId

Y

String

query

zoneId

Content Type

application/json

API History

Table 3. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

Active Clients V3 API

GET: Active Clients Count

Description

This API returns active clients count.

This API supports searching by a variety of parameters. If no parameters are given then all active clients are returned.

The API Username is set using the cmxos apiserver user command. This will change the username and password just for the Active V3 Clients API.

Here are some examples to illustrate the queries.

Search by IPv4/IPv6: api/location/v3/clients/count?ipAddress=x.x.x.x

Search by Mac Address: api/location/v3/clients/count?macAddress=x:x:x:x

Search by SSID: api/location/v3/clients/count?ssid=someSSID

Search by User Name: api/location/v3/clients/count?username=someUser

Search by Manufacturer: api/location/v3/clients/count?manufacturer=someManufacturer

Search for Only Associated Clients: api/location/v3/clients/count?associatedOnly=true

Search for Only Probing Clients: api/location/v3/clients/count?probingOnly=true

Search by Map Hierarchy: api/location/v3/clients/count?mapHierarchy=someFloorNameMap

Hierarchy string can be partial string matches but any string used must be an exact match.

HTTP Method

GET

Resource URI

/api/location/v3/clients/count

Requires Basic Auth

N

Parameters

Table 4. Parameter Details

Name

Required

Default

Type

Location

Description

ipAddress

N

String

query

Client IP address

macAddress

N

String

query

Client MAC address

mapHierarchy

N

String

query

Clients with MAP hierarchy string

floorId

N

String

query

Clients on floor ID

ssid

N

String

query

Clients associated on SSID

username

N

String

query

Clients with user name

manufacturer

N

String

query

Clients with manufacturer

macAddressSearch

N

String

query

Clients MAC address search

associatedOnly

N

String

query

Associated only clients

probingOnly

N

String

query

Probing only clients

Content Type

application/json

Sample Output (JSON)

http://<cmx-ip-address>/api/location/v3/clients/count

{
    "totalCount": 29,
    "associatedCount": 0,
    "probingCount": 29
}

API History

Table 5. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

GET: Active Clients

Description

This API supports searching by a variety of parameters. If no parameters are given then all active clients are returned.

The API Username is set using the cmxos apiserver user command. This will change the username and password just for the Active V3 Clients API.

Here are some examples to illustrate the queries.

Search by IPv4/IPv6: api/location/v3/clients?ipAddress=x.x.x.x

Search by Mac Address: api/location/v3/clients?macAddress=x:x:x:x

Search by SSID: api/location/v3/clients?ssid=someSSID

Search by User Name: api/location/v3/clients?username=someUser

Search by Manufacturer: api/location/v3/clients?manufacturer=someManufacturer

Search for Only Associated Clients: api/location/v3/clients?associatedOnly=true

Search for Only Probing Clients: api/location/v3/clients?probingOnly=true

Search by Map Hierarchy: api/location/v3/clients?mapHierarchy=someFloorNameMap

HTTP Method

GET

Resource URI

/api/location/v3/clients

Requires OAuth

N

Parameters

Table 6. Parameter Details

Name

Required

Default

Type

Location

Description

ipAddress

N

String

query

Client IP address

macAddress

N

String

query

Client MAC address

mapHierarchy

N

String

query

Clients with MAP hierarchy string

ssid

N

String

query

Clients associated on SSID

username

N

String

query

Clients with user name

manufacturer

N

String

query

Clients with manufacturer

macAddressSearch

N

String

query

Clients MAC address search

associatedOnly

N

String

query

Associated only clients

probingOnly

N

String

query

Probing only clients

Content Type

application/json

10.22.243.125/api/location/v3/clients?macAddress=b8%3A38%3A61%3Ab1%3Ac8%3Ad0
10.22.243.125/api/location/v3/clients?mapHierarchy=Nortech%20Campus%3ENortech-1%3E1st%20Floor%3ECMX%20Clinic
10.22.243.125/api/location/v3/clients?ssid=cmx
10.22.243.125/api/location/v3/clients?ipAddress=10.22.243.243
10.22.243.125/api/location/v3/clients

Sample Output (JSON)

http://<cmx-ip-address>/api/location/v3/clients

{
      "notificationType":"locationupdate",
      "subscriptionName":"CMX_Api_Server_Notification_1",
      "eventId":7746773,
      "locationMapHierarchy":"System Campus>WLC-244-43>WLC-244-43-F1",
      "locationCoordinate":{
         "x":53.100426,
         "y":81.25328,
         "z":0,
         "unit":"FEET"
      },
      "geoCoordinate":{
         "latitude":-999,
         "longitude":-999,
         "unit":"DEGREES"
      },
      "confidenceFactor":32,
      "apMacAddress":"NOT APPLICABLE",
      "associated":false,
      "username":"NOT APPLICABLE",
      "ipAddress":[
         "NOT APPLICABLE"
      ],
      "ssid":"NOT APPLICABLE",
      "band":"NOT APPLICABLE",
      "floorId":"727001524986708012",
      "entity":"WIRELESS_CLIENTS",
      "deviceId":"e0:2a:82:e4:bb:ff",
      "lastSeen":"2021-05-19T02:21:17.164-0700",
      "rawLocation":{
         "rawX":-999,
         "rawY":-999,
         "unit":"FEET"
      },
      "tagVendorData":null,
      "bleTagInfo":null,
      "locComputeType":"RSSI",
      "manufacturer":"Universal Global Scientific Industrial Co., Ltd.",
      "maxDetectedRssi":{
         "apMacAddress":"00:ee:ab:18:f0:40",
         "band":"IEEE_802_11_B",
         "slot":0,
         "rssi":-42,
         "antennaIndex":0,
         "lastHeardInSeconds":3
      },
      "hierarchyDetails":{
         "campusParents":null,
         "campus":{
            "id":"1617954166291",
            "name":"System Campus"
         },
         "building":{
            "id":"727001524986708011",
            "name":"WLC-244-43"
         },
         "floor":{
            "id":"727001524986708012",
            "name":"WLC-244-43-F1"
         },
         "zones":null
      },
      "rssiEntries":[
         {
            "apMacAddress":"00:ee:ab:18:f0:40",
            "band":"IEEE_802_11_B",
            "slot":0,
            "antennaIndex":0,
            "rssi":-42,
            "lastHeardSecs":3
         }, …….
      ],
      "timestamp":1621416077164,
      "sourceNotification":"127.0.0.1",
      "sourceNotificationKey":"127.0.0.1,1",
      "notificationTime":"1621416077201",
      "macAddress":"e0:2a:82:e4:bb:ff"
   }

Sample Output - Associated Client (JSON)

http://<cmx-ip-address>/api/location/v3/clients

[
    {
        "notificationType": "locationupdate",
        "eventId": 234,
        "locationMapHierarchy": "System Campus>TMT>7F",
        "locationCoordinate": {
            "x": 129.02692,
            "y": 48.54135,
            "z": 0,
            "unit": "FEET"
        },
        "geoCoordinate": {
            "latitude": -999,
            "longitude": -999,
            "unit": "DEGREES"
        },
        "confidenceFactor": 24,
        "apMacAddress": "04:eb:40:9f:52:40",
        "associated": true,
        "username": null,
        "ipAddress": [
            "172.22.178.159",
            "fe80:0000:0000:0000:6d34:a845:6748:9c46"
        ],
        "ssid": "kapi-psk",
        "band": "IEEE_802_11_A",
        "floorId": -6046640703759450000,
        "entity": "WIRELESS_CLIENTS",
        "deviceId": "3c:9c:0f:ed:a3:b9",
        "lastSeen": "2025-09-08T17:05:12.647+09",
        "rawLocation": {
            "rawX": -999,
            "rawY": -999,
            "unit": "FEET"
        },
        "locComputeType": "RSSI",
        "manufacturer": "Intel Corporate",
        "maxDetectedRssi": {
            "apMacAddress": "04:eb:40:9f:52:40",
            "band": "IEEE_802_11_A",
            "slot": 1,
            "rssi": -40,
            "antennaIndex": 0,
            "lastHeardInSeconds": 5
        },
        "hierarchyDetails": {
            "campus": {
                "id": 1755646244365,
                "name": "System Campus"
            },
            "building": {
                "id": -6046640703759450000,
                "name": "TMT"
            },
            "floor": {
                "id": -6046640703759450000,
                "name": "7F"
            }
        },
        "timestamp": 1757318712647,
        "macAddress": "3c:9c:0f:ed:a3:b9"
    }
]

API History

Table 7. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

Northbound notification types and attributes API

GET: Supported Northbound Notifications

Description

This API returns all supported notification types and applicable attributes for the notification rules.

HTTP Method

GET

Resource URI

/api/location/v1/attributes

Requires Basic Auth

N

Content Type

application/json

Sample Output

{
   "notifications":[
      {
         "notificationType":"locationupdate",
         "subscriptionName":"asdasdasd",
         "eventId":1259951,
         "locationMapHierarchy":"Simulator-1212-Campus0>Building1>Floor8>Zone4",
         "locationCoordinate":{
            "x":65.32642,
            "y":302.04172,
            "z":0.0,
            "unit":"FEET"
         },
         "geoCoordinate":{
            "latitude":-999.0,
            "longitude":-999.0,
            "unit":"DEGREES"
         },
         "confidenceFactor":64.0,
         "apMacAddress":"NOT APPLICABLE",
         "associated":false,
         "username":"NOT APPLICABLE",
         "ipAddress":[
            "NOT APPLICABLE"
         ],
         "ssid":"NOT APPLICABLE",
         "band":"NOT APPLICABLE",
          "floorId":"1721918422",
         "entity":"WIRELESS_CLIENTS",
         "deviceId":"10:00:00:00:0f:5e",
         "lastSeen":"2017-06-06T13:42:51.798-0700",
         "rawLocation":{
            "rawX":-999.0,
            "rawY":-999.0,
            "unit":"FEET"
         },
         "areaGlobalidList":[
            6343,
            2759,
            2758,
            2757,
            6399,
            6400,
            6289,
            6342
         ],
         "tagVendorData":null,
         "manufacturer":"Private",
         "timestamp":1496781771798
      }
   ]
}
 

Output Field Descriptions

Table 8. Output Field Descriptions

Field

Description

Notification Type

What type of notification this output describes (For example, locationupdate)

Subscription Name

The name of the notification created in CMX (user provided)

Event ID

Unique for notification identification per event

Location Map Hierarchy

The Hierarchy string that shows campus, building, floor, and zone (if applicable)

Location Coordinate

XY location for the device

Geo Coordinate

GPS location for device, if GPS markers are set

Confidence Factor

Represents a square box of where the client should be, lower means better location accuracy

AP Mac Address

The AP that the client is connected to

Associated

is this device Associated or not

Username

The username of this Associated client if using 802.11x

IP address

If this client is associated, what IP address(es) are assigned to it, can include IPv4 and IPv6 addresses

SSID

The SSID of the client is Associated

Band

802.11 band the device is it connected to

Floor Id

Long value representing hieracrchy, would not use

Entity

What type of device is it, Client (normal devices), RFID Tag (these are devices that send a chirp on an interval), Interferers (Devices that are connected to APs or are APs that aren’t on the network controlled by a controller on this CMX)

Device Id

MAC address of device

Last Seen

Timestamp of packet last received from controller for this device

Raw Location

-

Area Global Id List

-

Tag Vendor Data

For RFID tags, information that was encoded in packets we received like battery life or something like that.

Manufacturer

Based on the first half of the MAC address of this device

Timestamp

When the notification generated

status

Refers to what the status of the device is - IDLE(0), AAA_PENDING(1), AUTHENTICATED(2),

ASSOCIATED(3), POWERSAVE(4), DISASSOCIATED(5), TO_BE_DELETED(6), PROBING(7),

WAIT_ASSOCIATED(257);

Table 9. API History

Release

Modification

Cisco CMX Release 10.3

Output field descriptor Floor Ref Id was introduced.

Clients History API

GET: Compact History of Client by MAC Address

Description

This API returns the history of an active client by its MAC address.

HTTP Method

GET

Resource URI

/api/location/v1/history/clients/:macaddress

Requires OAuth

N

Parameters

Table 10. Parameter Details

Name

Required

Default

Type

Location

Description

macaddress

Y

String

pathReplace

Client Macaddress.

date

Y

String

query

Date in format of yyyy/mm/dd.

Content Type

application/json

Sample Output (JSON)

[
    {
        "macAddress": "98:01:a7:de:cd:35",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor>CMX Clinic",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": "CMX Clinic"
            }
        },
        "mapCoordinate": {
            "x": 26.908728,
            "y": 14.038175,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 16,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:41:49.631-0800",
            "firstLocatedTime": "2017-12-06T12:19:31.509-0800",
            "lastLocatedTime": "2017-12-06T22:41:48.696-0800"
        },
        "historyLogReason": "DISTANCE_CHANGE",
        "geoCoordinate": {
            "latitude": 37.422419537914266,
            "longitude": -121.9597144965198,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512628908696,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512628908696",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Apple, Inc.",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    },
    {
        "macAddress": "98:01:a7:de:cd:35",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": ""
            }
        },
        "mapCoordinate": {
            "x": 25.287996,
            "y": 25.027487,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 24,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:41:49.632-0800",
            "firstLocatedTime": "2017-12-06T12:19:31.509-0800",
            "lastLocatedTime": "2017-12-06T22:41:46.346-0800"
        },
        "historyLogReason": "DISTANCE_CHANGE",
        "geoCoordinate": {
            "latitude": 37.42245012473281,
            "longitude": -121.9597087015209,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512628906346,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512628906346",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Apple, Inc.",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    },
    {
        "macAddress": "98:01:a7:de:cd:35",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor>CMX Clinic",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": "CMX Clinic"
            }
        },
        "mapCoordinate": {
            "x": 26.385386,
            "y": 18.708204,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 16,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:41:49.632-0800",
            "firstLocatedTime": "2017-12-06T12:19:31.509-0800",
            "lastLocatedTime": "2017-12-06T22:40:44.342-0800"
        },
        "historyLogReason": "DISTANCE_CHANGE",
        "geoCoordinate": {
            "latitude": 37.42243253617424,
            "longitude": -121.95971262854559,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512628844342,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512628844342",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Apple, Inc.",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    },
    {
        "macAddress": "98:01:a7:de:cd:35",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor>CMX Bar",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": "CMX Bar"
            }
        },
        "mapCoordinate": {
            "x": 28.39643,
            "y": 35.002888,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 24,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:41:49.633-0800",
            "firstLocatedTime": "2017-12-06T12:19:31.509-0800",
            "lastLocatedTime": "2017-12-06T22:40:41.877-0800"
        },
        "historyLogReason": "DISTANCE_CHANGE",
        "geoCoordinate": {
            "latitude": 37.4224778909874,
            "longitude": -121.95971990610984,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512628841877,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512628841877",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Apple, Inc.",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    }
]

GET: Unique MAC Address Seen on a Given Day on a Floor or Zone

Description

This API returns the unique MAC address seen on a given date on a floor or zone. It expects parameters, date and hierarchy. Hierarchy can be up to floor level or zone level. For example, floor level would include: campus-name, building-name, and floor-name. Zone level would be campus-name, building-name, floor-name, and zone-name. If you know the floor ID or the zone ID, then hierarchy is optional and you can specify date and floor ID or date and zone ID parameters.

When the date parameter is not specified, the API would use current date as default. Specifying either of the parameters like hierarchy or floor ID or zone ID is mandatory. This API also supports filter by time and filter by distance criteria. For filtering by time, use fromHour and toHour (both in 24 hr format) parameters. For filtering by distance queries, using filtering by time is mandatory and only a difference of one hour is allowed between toHour and fromHour is one hour.

For example:

By hierarchy: /api/location/v1/history/uniqueclientsbyhierarchy?hierarchy=System%20Campus/Floor-19/1st%20Floor. Floor ID:/api/location/v1/history/uniqueclientsbyhierarchy?floorid=730297895206534073.

By zoneid and date:/api/location/v1/history/uniqueclientsbyhierarchy?zoneid=23 and date=2016/02/29. By hierarchy and filter by time: /api/location/v1/history/uniqueclientsbyhierarchy?hierarchy=System%20Campus/BGLD-19/1st%20Floor and fromHour=13 and toHour=14.

By hierarchy, filter by time and filter by distance: /api/location/v1/history/uniqueclientsbyhierarchy?hierarchy=System%20Campus/BGLD-19/1st%20Floor and fromHour=13 and toHour=14 and x=30 and y=50 and distance=10.

HTTP Method

GET

Resource URI

/api/location/v1/history/uniqueclientsbyhierarchy

Requires Basic Auth

N

Parameters

Table 11. Parameter Details

Name

Required

Default

Type

Location

Description

hierarchy

Y

String

query

Hierarchy in format campus-name/building-name/floor-name.

date

N

String

query

Date in format of yyyy/mm/dd.

floorid

N

String

query

Floor ID.

zoneid

N

String

query

Zone ID.

fromHour

N

String

query

FromHour, HH in 24 hour format.

toHour

N

String

query

ToHour, HH in 24 hour format

x

N

String

query

x

y

N

String

query

y

distance

N

String

query

Distance in feet

Content Type

application/json

GET: Compact History of Client By Date and IPv4 Address

Description

This API returns compact history of client by date and IPv4 address.

HTTP Method

GET

Resource URI

/api/location/v1/historylite/byipaddress/:ipv4address

Requires Basic Auth

N

Parameters

Table 12. Parameter Details

Name

Required

Default

Type

Location

Description

date

Y

String

query

Date in format of yyyy/mm/dd.

ipv4address

Y

String

pathReplace

IPv4 Address.

Content Type

application/json

Sample Output

http://10.68.40.131/api/location/v1/historylite/byipaddress/10.68.41.186

{
    "Macaddress": null,
    "Ipv4address": "10.22.243.125",
    "Data": [],
    "Count": 0,
    "Date": "2018/07/13"
}

GET: Compact History of Client by Date, Username

Description

This API returns compact history of client like number of logins and MAC address of device. The parameters given are date and username.

If the same username was used to login at multiple devices, the MAC address of only one of the devices is returned. To return all MAC addresses, set allMacs parameter to true.

HTTP Method

GET

Resource URI

/api/location/v1/historylite/byusername/:username

Requires Basic Auth

N

Parameters

Table 13. Parameter Details

Name

Required

Default

Type

Location

Description

date

Y

String

query

Date in format of yyyy/mm/dd

username

Y

String

pathReplace

User name.

allMacs

N

String

query

Return all macaddresses associated with this Username for given date

Allowed values/formats:

true

false

allResults

N

String

query

Return all results

Allowed values/formats:

true

false

Content Type

application/json

Sample Output

http://<ip-address>/api/location/v1/historylite/byusername/sharangp?date=2020/11/17

{
"Macaddress":"",
"Username":"sharang",
"Data":[
],
"Count":0,
"Date":"2020/11/17"
}

http://<ip-address>/api/location/v1/historylite/byusername/sharangp?date=2017/06/12&allMacs=true

{
Count: 2,
Date: "2017/06/12",
Username: "sharangp",
Macaddress: [
"3c:a9:f4:6c:4c:7c",
"3c:a9:f4:6c:ee:44"
]
}

GET: Compact History of Client by Date and MAC Address

Description

This API returns the compact history of an active client by date and its MAC address.

HTTP Method

GET

Resource URI

/api/location/v1/history/clients/:macaddress

Requires OAuth

N

Parameters

Table 14. Parameter Details

Name

Required

Default

Type

Location

Description

macaddress

Y

String

pathReplace

Client Macaddress.

date

Y

String

query

Date in format of yyyy/mm/dd.

Content Type

application/json

Sample Output (JSON)


URL :	https://172.19.28.206/api/location/v1/history/clients/00:d7:8f:cd:d1:fc?date=2020/11/15

{
   "Macaddress":"00:d7:8f:cd:d1:fc",
   "Count":0,
   "Records":[
      
   ],
   "Date":"2020/11/15"
}

################################################################################################


URL:	https://172.19.28.206/api/location/v1/history/clients/00:d7:8f:cd:d1:fc?date=2020/11/16

{
   "Macaddress":"00:d7:8f:cd:d1:fc",
   "Count":2,
   "Records":[
      {
         "macAddress":"00:d7:8f:cd:d1:fc",
         "mapInfo":{
            "mapHierarchyString":"System Campus>WLC-244-43>WLC-244-43-F1",
            "mapHierarchyDetails":{
               "campus":"System Campus",
               "building":"WLC-244-43",
               "floor":"WLC-244-43-F1",
               "floorAesUid":727001524986708012,
               "zones":""
            }
         },
         "mapCoordinate":{
            "x":81.67868,
            "y":45.230167,
            "z":0.0,
            "unit":"FEET"
         },
         "currentlyTracked":true,
         "confidenceFactor":40.0,
         "locComputeType":"RSSI",
         "statistics":{
            "currentServerTime":"2020-11-17T10:39:37.632-0800",
            "firstLocatedTime":"2020-11-17T10:26:22.148-0800",
            "lastLocatedTime":"2020-11-17T10:39:35.507-0800"
         },
         "historyLogReason":"DISTANCE_CHANGE",
         "geoCoordinate":null,
         "rawLocation":null,
         "networkStatus":"ACTIVE",
         "changedOn":1605638375507,
         "ipAddress":[
            
         ],
         "userName":"",
         "ssId":"",
         "sourceTimestamp":"1605638375507",
         "band":"UNKNOWN",
         "apMacAddress":"",
         "dot11Status":"UNKNOWN",
         "manufacturer":"Cisco Systems, Inc",
         "areaGlobalIdList":null,
         "detectingControllers":"10.22.244.43",
         "bytesSent":0,
         "bytesReceived":0,
         "guestUser":false
      },
      {
         "macAddress":"00:d7:8f:cd:d1:fc",
         "mapInfo":{
            "mapHierarchyString":"System Campus>WLC-244-43>WLC-244-43-F1",
            "mapHierarchyDetails":{
               "campus":"System Campus",
               "building":"WLC-244-43",
               "floor":"WLC-244-43-F1",
               "floorAesUid":727001524986708012,
               "zones":""
            }
         },
         "mapCoordinate":{
            "x":84.41555,
            "y":37.575104,
            "z":0.0,
            "unit":"FEET"
         },
         "currentlyTracked":true,
         "confidenceFactor":40.0,
         "locComputeType":"RSSI",
         "statistics":{
            "currentServerTime":"2020-11-17T10:39:37.632-0800",
            "firstLocatedTime":"2020-11-17T10:26:22.148-0800",
            "lastLocatedTime":"2020-11-17T10:39:33.506-0800"
         },
         "historyLogReason":"DISTANCE_CHANGE",
         "geoCoordinate":null,
         "rawLocation":null,
         "networkStatus":"ACTIVE",
         "changedOn":1605638373506,
         "ipAddress":[
            
         ],
         "userName":"",
         "ssId":"",
         "sourceTimestamp":"1605638373506",
         "band":"UNKNOWN",
         "apMacAddress":"",
         "dot11Status":"UNKNOWN",
         "manufacturer":"Cisco Systems, Inc",
         "areaGlobalIdList":null,
         "detectingControllers":"10.22.244.43",
         "bytesSent":0,
         "bytesReceived":0,
         "guestUser":false
      }
   ],
   "Date":"2020/11/17"
}

GET: All Client History

Description

This API returns the history of all active clients. This does not include sleeping static devices that do not send probes. It does not support pagination, but you can extract small chunks of data by specifying parameters locatedAfterTime and locatedBeforeTime (in milliseconds).

This API would use the current date as date range from midnight to current time: /api/location/v1/history/clients. This would use the passed date as date range from passed date + fromHour to passed date + toHour: /api/location/v1/history/clients?date=2016/03/02 and fromHour=14 and toHour=15. This would use the date range as mentioned by parameters: locatedAfterTime (1456894800000) milliseconds equivalent to YYYY/MM/DD HH:MM:SS 2016/03/01 21:00:00. locatedBeforeTime (1456896600000) milliseconds equivalent to YYYY/MM/DD HH:MM:SS 2016/03/01 21:30:00: /api/location/v1/history/clients?locatedAfterTime=1456894800000 and locatedBeforeTime=1456896600000.

With CSCuz69078, when locatedAfterTime and locatedBeforeTime specified in API is more than a day and less than an hour, the API returns the following error.

ERROR - Cassandra timeout during read query at consistency ONE (1 responses were required but only 0 replica responded)

For example, https://<ip-address</api/location/v1/history/clients?locatedAfterTime=1459468800000&locatedBeforeTime=1459636800000 returns the ERROR.

This API response returns a maximum of 5000 records without pagination and is sorted based by the MAC address. Therefore, without using the parameters such as locatedAfterTime and locatedBeforeTime to limit the number of records of a specific MAC Address, the API response for client history will return only one MAC Address. The sort order should be by date/time of occurrence.


Note


  • This API can only support queries when the number of clients is less than 5000 per minute.

  • Do not use this API if there are more than 2000 records. For larger datasets, it is recommended to use Northbound Notifications.


HTTP Method

GET

Resource URI

/api/location/v1/history/clients

Requires OAuth

N

Parameters

None.

Content Type

application/json

Sample Output (JSON)

[
    {
        "macAddress": "ac:cf:85:29:53:5f",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": ""
            }
        },
        "mapCoordinate": {
            "x": 78.017624,
            "y": 38.217056,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 160,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:31:17.730-0800",
            "firstLocatedTime": "2017-12-06T12:57:13.469-0800",
            "lastLocatedTime": "2017-12-06T12:57:13.469-0800"
        },
        "historyLogReason": "FLOOR_CHANGE",
        "geoCoordinate": {
            "latitude": 37.42248685324713,
            "longitude": -121.95989831612766,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512593833469,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512593833469",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "HUAWEI TECHNOLOGIES CO.,LTD",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    },
    {
        "macAddress": "08:cc:68:b4:1c:1f",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor>CMX Clinic",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": "CMX Clinic"
            }
        },
        "mapCoordinate": {
            "x": 22.515627,
            "y": 15.5579815,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": true,
        "confidenceFactor": 32,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:31:17.731-0800",
            "firstLocatedTime": "2017-12-06T19:09:30.430-0800",
            "lastLocatedTime": "2017-12-06T19:09:30.430-0800"
        },
        "historyLogReason": "NETWORK_STATUS_CHANGE",
        "geoCoordinate": {
            "latitude": 37.42242376668243,
            "longitude": -121.95969870663463,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "ACTIVE",
        "changedOn": 1512616170430,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512616170430",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Cisco Systems, Inc",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    },
    {
        "macAddress": "08:cc:68:b4:1c:1f",
        "mapInfo": {
            "mapHierarchyString": "Nortech Campus>Nortech-1>1st Floor>CMX Clinic",
            "mapHierarchyDetails": {
                "campus": "Nortech Campus",
                "building": "Nortech-1",
                "floor": "1st Floor",
                "floorAesUid": 727035700041482200,
                "zones": "CMX Clinic"
            }
        },
        "mapCoordinate": {
            "x": 21.428608,
            "y": 16.509167,
            "z": 0,
            "unit": "FEET"
        },
        "currentlyTracked": false,
        "confidenceFactor": 48,
        "locComputeType": "RSSI",
        "statistics": {
            "currentServerTime": "2017-12-06T22:31:17.731-0800",
            "firstLocatedTime": "2017-12-06T19:09:03.079-0800",
            "lastLocatedTime": "2017-12-06T19:09:05.082-0800"
        },
        "historyLogReason": "NETWORK_STATUS_CHANGE",
        "geoCoordinate": {
            "latitude": 37.422426413833385,
            "longitude": -121.95969480129244,
            "unit": "DEGREES"
        },
        "rawLocation": null,
        "networkStatus": "INACTIVE",
        "changedOn": 1512616145082,
        "ipAddress": [],
        "userName": "",
        "ssId": "",
        "sourceTimestamp": "1512616145082",
        "band": "UNKNOWN",
        "apMacAddress": "",
        "dot11Status": "UNKNOWN",
        "manufacturer": "Cisco Systems, Inc",
        "areaGlobalIdList": null,
        "detectingControllers": "10.22.243.211",
        "bytesSent": 0,
        "bytesReceived": 0,
        "guestUser": false
    }
]

Active Rogue Clients V3 API

GET: Active Rogue Clients Count

Description

This API returns active rogue clients count.

HTTP Method

GET

Resource URI

/api/location/v3/rogueclients/count

Requires Basic Auth

N

Parameters

None.

Content Type

application/json

Sample Output

{
    "totalCount": 9,
    "associatedCount": 0,
    "probingCount": 0
}

API History

Table 15. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

Cisco CMX Release 10.6.3

This API was modified to support V3.

GET: All Rogue Clients

Description

This API returns all rogue clients

HTTP Method

GET

Resource URI

/api/location/v3/rogueclients

Requires Basic Auth

N

Parameters

None.

Content Type

application/json

Sample Output (JSON)

{
      "notificationType":"locationupdate",
      "subscriptionName":"CMX_Api_Server_Notification_1",
      "eventId":7779817,
      "locationMapHierarchy":"System Campus>WLC-244-43>WLC-244-43-F1",
      "locationCoordinate":{
         "x":49.0378,
         "y":26.800388,
         "z":0,
         "unit":"FEET"
      },
      "geoCoordinate":{
         "latitude":-999,
         "longitude":-999,
         "unit":"DEGREES"
      },
      "confidenceFactor":48,
      "apMacAddress":"NOT APPLICABLE",
      "associated":false,
      "username":"NOT APPLICABLE",
      "ipAddress":[
         "NOT APPLICABLE"
      ],
      "ssid":"NOT APPLICABLE",
      "band":"NOT APPLICABLE",
      "floorId":"727001524986708012",
      "entity":"ROGUE_CLIENTS",
      "deviceId":"50:32:37:e9:23:84",
      "lastSeen":"2021-05-19T02:57:21.159-0700",
      "rawLocation":{
         "rawX":-999,
         "rawY":-999,
         "unit":"FEET"
      },
      "tagVendorData":null,
      "bleTagInfo":null,
      "locComputeType":"RSSI",
      "manufacturer":"Apple, Inc.",
      "maxDetectedRssi":{
         "apMacAddress":"b0:8b:cf:54:5c:80",
         "band":"IEEE_802_11_A",
         "slot":0,
         "rssi":-37,
         "antennaIndex":0,
         "lastHeardInSeconds":2
      },
      "hierarchyDetails":{
         "campusParents":null,
         "campus":{
            "id":"1617954166291",
            "name":"System Campus"
         },
         "building":{
            "id":"727001524986708011",
            "name":"WLC-244-43"
         },
         "floor":{
            "id":"727001524986708012",
            "name":"WLC-244-43-F1"
         },
         "zones":null
      },
      "rssiEntries":[
         {
            "apMacAddress":"b0:8b:cf:54:5c:80",
            "band":"IEEE_802_11_A",
            "slot":0,
            "antennaIndex":0,
            "rssi":-37,
            "lastHeardSecs":2
         }, ………….
      ],
      "timestamp":1621418241159,
      "sourceNotification":"127.0.0.1",
      "sourceNotificationKey":"127.0.0.1,3",
      "notificationTime":"1621418241169",
      "macAddress":"50:32:37:e9:23:84"
   }

API History

Table 16. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

Cisco CMX Release 10.6.3

This API was modified to support V3.

Active Interferers V3 API

GET: Get all interferers

Description

This API returns all interferers and also supports searching by floor. .

HTTP Method

GET

Resource URI

/api/location/v3/interferers

Requires OAuth

N

Parameters

None.

Content Type

application/json

Content Type

application/json

Usage Guidelines

Search by Floor:
http://<cmx-ip-address>/api/location/v3/interferers/floorId=<floorId>
For Example:
http://10.0.0.1/api/location/v3/interferers/floorId=1
Search by Page and Page Number: (As long as there is data you can keep paginating by incrementing the page and the pageSize numbers)
http://<cmx-ip-address>/api/location/v3/interferers?page=<pagenumber>&pageSize=<pagesize>
For Example:
http://10.0.0.1/api/location/v3/interferers/page=1&pageSize=2

Sample Output

http://<cmx-ip-address>/api/location/v3/interferers

[
    {
        "notificationType": "locationupdate",
        "subscriptionName": "CMX_Api_Server_Notification_1",
        "eventId": 6831579,
        "locationMapHierarchy": "System Campus>WLC-244-43>WLC-244-43-F1",
        "locationCoordinate": {
            "x": 47.40406,
            "y": 16.334118,
            "z": 0,
            "unit": "FEET"
        },
        "geoCoordinate": {
            "latitude": -999,
            "longitude": -999,
            "unit": "DEGREES"
        },
        "confidenceFactor": 208,
        "apMacAddress": "NOT APPLICABLE",
        "associated": false,
        "username": "NOT APPLICABLE",
        "ipAddress": [
            "NOT APPLICABLE"
        ],
        "ssid": "NOT APPLICABLE",
        "band": "NOT APPLICABLE",
        "floorId": "727001524986708012",
        "entity": "INTERFERERS",
        "deviceId": "a3:4f:c0:00:00:96",
        "lastSeen": "2020-11-20T07:36:12.233-0800",
        "tagTelemetryList": null,
        "tagBatteryInfo": null,
        "tagVendorData": null,
        "bleTagInfo": null,
        "locComputeType": "RSSI",
        "tagLastBeaconTime": null,
        "tagLastBeaconSequenceNumber": 0,
        "tagManufacturer": "Unknown",
        "rawLocation": {
            "rawX": -999,
            "rawY": -999,
            "unit": "FEET"
        },
        "maxDetectedRssi": {
            "apMacAddress": "b0:8b:cf:54:5c:80",
            "band": "IEEE_802_11_A",
            "slot": 0,
            "rssi": -67,
            "antennaIndex": 1,
            "lastHeardInSeconds": 0
        },
        "hierarchyDetails": {
            "campusParents": null,
            "campus": {
                "id": "1601308104289",
                "name": "System Campus"
            },
            "building": {
                "id": "727001524986708011",
                "name": "WLC-244-43"
            },
            "floor": {
                "id": "727001524986708012",
                "name": "WLC-244-43-F1"
            },
            "zones": null
        },
        "rssiEntries": [
            {
                "apMacAddress": "b0:8b:cf:54:5c:80",
                "band": "IEEE_802_11_A",
                "slot": 0,
                "antennaIndex": 1,
                "rssi": -67,
                "lastHeardSecs": 0
            }
        ],
        "timestamp": 1605886572233,
        "sourceNotification": "127.0.0.1",
        "sourceNotificationKey": "127.0.0.1,1",
        "notificationTime": "1605886572236",
        "macAddress": "a3:4f:c0:00:00:96"
    }
]

GET: Get total number of interferers

Description

This API returns number of interferers

HTTP Method

GET

Resource URI

/api/location/v3/interferers/count

Requires OAuth

N

Parameters

None.

Content Type

application/json

Sample Output

http://<cmx-ip-address>/api/location/v3/interferers/count

{
    "totalCount": 1
}

Active Rogue APs V3 API

GET: Active Rogue AP count

Description

This API returns the count of active rogue APs.

HTTP Method

GET

Resource URI

/api/location/v3/rogueaps/count

Requires OAuth

N

Parameters

None.

Content Type

application/json

Sample Output (JSON)

{
    "totalCount": 280
}

API History

Table 17. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

GET: All Active Rogue APs

Description

This API returns all active rogue APs.

HTTP Method

GET

Resource URI

/api/location/v3/rogueaps

Requires Basic Auth

N

Parameters

None.

Content Type

application/json

Sample Output

{
      "notificationType":"locationupdate",
      "subscriptionName":"CMX_Api_Server_Notification_1",
      "eventId":7791838,
      "locationMapHierarchy":"System Campus>WLC-244-43>WLC-244-43-F1",
      "locationCoordinate":{
         "x":57.154472,
         "y":38.875927,
         "z":0,
         "unit":"FEET"
      },
      "geoCoordinate":{
         "latitude":-999,
         "longitude":-999,
         "unit":"DEGREES"
      },
      "confidenceFactor":48,
      "apMacAddress":"NOT APPLICABLE",
      "associated":false,
      "username":"NOT APPLICABLE",
      "ipAddress":[
         "NOT APPLICABLE"
      ],
      "ssid":"NOT APPLICABLE",
      "band":"NOT APPLICABLE",
      "floorId":"727001524986708012",
      "entity":"ROGUE_APS",
      "deviceId":"2c:57:41:89:99:cf",
      "lastSeen":"2021-05-19T03:10:05.160-0700",
      "rawLocation":{
         "rawX":-999,
         "rawY":-999,
         "unit":"FEET"
      },
      "tagVendorData":null,
      "bleTagInfo":null,
      "locComputeType":"RSSI",
      "manufacturer":"Cisco Systems, Inc",
      "maxDetectedRssi":{
         "apMacAddress":"b0:8b:cf:54:5c:80",
         "band":"IEEE_802_11_A",
         "slot":1,
         "rssi":-64,
         "antennaIndex":0,
         "lastHeardInSeconds":106
      },
      "hierarchyDetails":{
         "campusParents":null,
         "campus":{
            "id":"1617954166291",
            "name":"System Campus"
         },
         "building":{
            "id":"727001524986708011",
            "name":"WLC-244-43"
         },
         "floor":{
            "id":"727001524986708012",
            "name":"WLC-244-43-F1"
         },
         "zones":null
      },
      "rssiEntries":[
         {
            "apMacAddress":"b0:8b:cf:54:5c:80",
            "band":"IEEE_802_11_A",
            "slot":1,
            "antennaIndex":0,
            "rssi":-64,
            "lastHeardSecs":106
         }, ………….
      ],
      "timestamp":1621419005160,
      "sourceNotification":"127.0.0.1",
      "sourceNotificationKey":"127.0.0.1,3",
      "notificationTime":"1621419005175",
      "macAddress":"2c:57:41:89:99:cf"
   }

API History

Table 18. API History

Release

Modification

Cisco CMX Release 10.4

This API is introduced.

Cisco CMX Release 10.6.3

This command was modified to support V3.

Active Tags V3 API

GET: All Tags

Description

This API returns all tags.

HTTP Method

GET

Resource URI

/api/location/v3/tags

Requires OAuth

N

Parameters

None.

Content Type

application/json

Sample Output (JSON)

{
      "notificationType":"locationupdate",
      "subscriptionName":"CMX_Api_Server_Notification_1",
      "eventId":7767626,
      "locationMapHierarchy":"System Campus>WLC-244-43>WLC-244-43-F1",
      "locationCoordinate":{
         "x":52.245846,
         "y":80.56613,
         "z":0,
         "unit":"FEET"
      },
      "geoCoordinate":{
         "latitude":-999,
         "longitude":-999,
         "unit":"DEGREES"
      },
      "confidenceFactor":32,
      "apMacAddress":"NOT APPLICABLE",
      "associated":false,
      "username":"NOT APPLICABLE",
      "ipAddress":[
         "NOT APPLICABLE"
      ],
      "ssid":"NOT APPLICABLE",
      "band":"NOT APPLICABLE",
      "floorId":"727001524986708012",
      "entity":"TAGS",
      "deviceId":"00:0c:cc:0b:bd:e9",
      "lastSeen":"2021-05-19T02:44:19.153-0700",
      "rawLocation":{
         "rawX":-999,
         "rawY":-999,
         "unit":"FEET"
      },
      "tagVendorData":{
         "vendorId":3276,
         "elementId":0,
         "data":"AAATAA==",
         "lastReceivedTime":"2021-05-19T02:44:17.046-0700",
         "lastReceivedSeqNum":3999
      },
      "bleTagInfo":null,
      "locComputeType":"RSSI",
      "manufacturer":"Aeroscout Ltd.",
      "maxDetectedRssi":{
         "apMacAddress":"00:ee:ab:18:f0:40",
         "band":"IEEE_802_11_B",
         "slot":0,
         "rssi":-33,
         "antennaIndex":0,
         "lastHeardInSeconds":4
      },
      "hierarchyDetails":{
         "campusParents":null,
         "campus":{
            "id":"1617954166291",
            "name":"System Campus"
         },
         "building":{
            "id":"727001524986708011",
            "name":"WLC-244-43"
         },
         "floor":{
            "id":"727001524986708012",
            "name":"WLC-244-43-F1"
         },
         "zones":null
      },
      "rssiEntries":[
         {
            "apMacAddress":"00:ee:ab:18:f0:40",
            "band":"IEEE_802_11_B",
            "slot":0,
            "antennaIndex":0,
            "rssi":-33,
            "lastHeardSecs":4
         }, ………..
      ],
      "timestamp":1621417459153,
      "sourceNotification":"127.0.0.1",
      "sourceNotificationKey":"127.0.0.1,1",
      "notificationTime":"1621417459158",
      "macAddress":"00:0c:cc:0b:bd:e9"
   }

GET: Active RFID Tags Count

Description

This API returns active RFID tags count.

HTTP Method

GET

Resource URI

/api/location/v3/tags/count

Requires OAuth

N

Parameters

None.

Content Type

application/json

Sample Output

{
    "totalCount": 6
}