APs

Access points provide detailed monitoring information of an AP. The information may consist of name, IP address, the status of the AP etc. You can perform various actions by right-clicking on any AP like updating the firmware, capture packet trace, reboot, rename, delete and many such events.

JSON Table

Attribute Data Type Description
type String Category or type of the device whose details are being modified. The
applicable value is ap.
boxId long System-generated ID of the AP.
name String Name of the device.
radios application/json A JSON object with attributes related to the access point radio.
locationId application/json ID of the location where the AP is deployed. The value is of the type Location
ID
JSON.
deviceNote String Device tag providing more information about the device location.
ipAddress String IP address of the device.
activeStatus boolean A true or false value indicating whether the managed device is active
or inactive.
deviceCapability int Operation mode capabilities of the device. Refer the AP
Capabilities
for applicable values.
manuallyTagged boolean A true or false value indicating whether the device location is changed
manually.
group String The device category. The applicable values are:

  • ROUGE
  • EXTERNAL
  • UNCATEGORIZED
placed boolean A true or false value indicating whether the device is placed on the
location map or not.
wiredPortBlocked boolean Whether the wired port is blocked or not.
ownSensorBoxId int A read-only field for internal use.
apTemplateId String ID of the device template
apTemplateName String Name of the device template.
vendorName String Name of the device vendor.
signalSource boolean A true or false value indicating whether the access point is reporting
signal strength for other devices.
manuallyClassified boolean A true or false value indicating whether the device category is changed
manually.
searchIndex int A read-only field for internal use.
sortColumnIndex int A read-only field for internal use.
updateFlags long A read-only field for internal use.
primaryRadio application/json A JSON object with attributes related to the access point radio.
banned boolean A true or false value indicating whether the primary device is banned.
This is a read-only field
guest boolean A true or false value indicating whether the primary device is guest.
This is a read-only field
misconfigured boolean A true or false value indicating whether the primary device is misconfigured.
This is a read-only field
SSIDs String A list of string values specifying the SSIDs applied on the device radios.
mergedAP boolean A true or false value indicating whether the primary device is a merged
access point. This is a read-only field
active boolean A true or false value indicating whether the primary device is active.
This is a read-only field.
bestSignalStrength int The best signal strength indicated amongst all the radios.

AP Radio JSON

The following table provides details of the attributes of the access point radio JSON.

Attribute Data Type Description
type String Type of a radio. The expected value is apradio.
macaddress String MAC address of the device
protocol String Protocol of the device. The applicable values are:

  • UNKNOWN
  • A
  • B
  • BG
channel int Channel on which the radio is operating.
firstDetectedTime long The time when the radio was first detected.
upSince long For active devices this is the time since the device is active. For
inactive devices, this is the time since the device is inactive.
signalStrength int Signal strength of the device radio in dBm.
quarantineStatus String The quarantine or Denial of Service (DoS) quarantine status of the radio.
The quarantine or DoS quarantine status can be:

  • QUARANTINE_STATUS_OFF
  • QUARANTINE_STATUS_STOPPED
  • QUARANTINE_STATUS_PENDING
  • QUARANTINE_STATUS_ON
  • DOS_QUARANTINE_STATUS_PENDING
  • DOS_QUARANTINE_STATUS_ON
captureFlag int The capture flag of the access point radio the details of which are
being fetched.
captureId long A read-only field for internal use.
ssid String Network name or the SSID of the radio.
prevReason long A read-only field for internal use.
prevPendingReason long A read-only field for internal use.
opprotocol String The 802.11 protocol version associated with the radio. The applicable
values are:

  • A
  • B
  • BG
  • UNKNOWN
meshFlag int A read-only field for internal use.
dot11NCapability int A read-only field for internal use.
dot11ACCapability int A read-only field for internal use.
dualBand boolean A read-only field for internal use.
numAssocClients int Number of clients associated with this radio.
underDosAttack boolean A true or false value indicating whether a DoS attack is being mounted
against the device. True indicates that a DOS attack is mounted against
the device. False indicates otherwise.
quarantiningSensorMac String A read-only field for internal use.
security int Categories of the associated WiFi security protocol. The applicable
values are:

  • 12 for 802.11i,WPA
  • 8 for 802.11i
  • 4 for WPA
  • 2 for WEP
  • 1 for open
  • 0 for (–)
  • 9 for 802.11i Open
  • 10 for 802.11i, WEP
  • 11 for 802.11i WEP, Open
  • 13 for 802..11i, WPA, Open
  • 14 for 802.11i, WPA, WEP
  • 15 for 802.11i, WPA,WEP, Open
  • 3 for WEP, Open
  • 5 for WPA, Open
  • 6 for WPA,WEP
  • 7 for WPA,WEP,Open.
secAuth int Categories of security authentication. The applicable values are:

  • 128 for vendor specific
  • 2 for 802.1x
  • 1 for PSK
  • 0 for (–)
  • 130 for 802.1x
  • 3 for 802.1x PSK
  • 129 for PSK vendor specific
  • 131 for 802.1x PSK vendor specific.
secGCS int A read-only field for internal use.
secPWCS int A read-only field for internal use.
networkTag String Network tag associated with the radio.
networkedStatus String The network status of the radio. The applicable values are:

  • NETWORKED
  • NOT_NETWORKED
  • INTERMEDIATE
  • INTERNAL.
wiredMAC String A read-only field for internal use.
misconfigured boolean True or False value indicating whether the radio is misconfigured.
capability int Capability or 802.11 compliance of the radio. Refer the AP
Capabilities
for applicable values.
securitySettingFailure long A read-only field for internal use.
mcsSet11ac long A read-only field for internal use.
supportedRates int A read-only field for internal use.
beaconInterval int Associated beacon interval in milliseconds.
channelOffset int The channel offset values. The applicable values are:

  • 1 for upper 20 MHz
  • -1 for lower 20 MHz
  • 2 and 3 for 802.11ac.
  • 0 indicates channel offset is not applicable.
mcsSet11n long A read-only field for internal use.
extendedAttr long A read-only field for internal use.
channelWidth int Used for deriving the channel width. The applicable values are:

  • 0 for WIDTH_20MHz
  • 1 for WIDTH_40MHz
  • 2 for WIDTH_80MHZ
  • 3 for WIDTH_160MHz
  • 4 for WIDTH_80_80MHz
  • -1 for invalid width.
centerFrequencyOne int A read-only field for internal use.
centerFrequencyZero int A read-only field for internal use.
potentialClassification String The potential category of the associated device. The applicable values
are:

  • AUTHORIZED
  • ROUGE
  • EXTERNAL
  • INTERMEDIATE.
maxDataRateFor11n float Data rate in Mbps, associated with the 802.11n protocol used.
primary boolean True or False value indicating whether the device radio is a primary
radio.
guest boolean True or False value indicating whether the device radio is a guest radio.
autopreventionEnabled boolean True or False value indicating whether auto quarantine is enabled for
the device.
manualPreventionEnabled boolean True or False value indicating whether the manual prevention is enabled
for the device.
active boolean True or False value indicating whether the radio is active.

Copy Sample JSON
Sample JSON
[
    {
        "type": "ap",
        "boxId": 2561,
        "name": "Mojo_F2:2B:61",
        "radios": [
            {
                "type": "apradio",
                "macaddress": "00:11:74:F2:2B:61",
                "protocol": "A",
                "channel": 161,
                "firstDetectedTime": 1519649685000,
                "upSince": 1519650189000,
                "signalStrength": -36,
                "quarantineStatus": "QUARANTINE_STATUS_OFF",
                "captureFlag": 0,
                "captureId": 0,
                "ssid": "777_2",
                "prevReason": 0,
                "prevPendingReason": 0,
                "opprotocol": "A",
                "meshFlag": 0,
                "dot11NCapability": 3065,
                "dot11ACCapability": 3705,
                "dualBand": false,
                "numAssocClients": 0,
                "underDosAttack": false,
                "quarantiningSensorMac": null,
                "security": 12,
                "secAuth": 1,
                "secGCS": 4,
                "secPWCS": 12,
                "networkTag": " --",
                "networkedStatus": "NOT_NETWORKED",
                "wiredMAC": null,
                "misconfigured": false,
                "capability": 33,
                "securitySettingFailure": 0,
                "mcsSet11ac": -5570646,
                "supportedRates": -2143646205,
                "beaconInterval": 100,
                "channelOffset": -1,
                "mcsSet11n": "ffffffff000000000000000001000000",
                "extendedAttr": 1,
                "channelWidth": 0,
                "centerFrequencyOne": 0,
                "centerFrequencyZero": 0,
                "potentialClassification": "EXTERNAL",
                "maxDataRateFor11n": -999,
                "primary": false,
                "guest": false,
                "manualPreventionEnabled": false,
                "autopreventionEnabled": true,
                "active": true
            }
        ],
        "locationId": {
            "type": "locallocationid",
            "id": -1
        },
        "deviceNote": null,
        "ipAddress": null,
        "activeStatus": null,
        "deviceCapability": null,
        "manuallyTagged": false,
        "group": "EXTERNAL",
        "placed": false,
        "wiredPortBlocked": false,
        "ownSensorBoxId": -1,
        "apTemplateId": 0,
        "apTemplateName": null,
        "vendorName": "Mojo",
        "suspicious": false,
        "signalSource": false,
        "manuallyClassified": false,
        "searchIndex": -100,
        "sortColumnIndex": 8192,
        "updateFlags": -100,
        "numAssocClients": 0,
        "primaryRadio": {
            "type": "apradio",
            "macaddress": "00:11:74:F2:2B:61",
            "protocol": "A",
            "channel": 161,
            "firstDetectedTime": 1519649685000,
            "upSince": 1519650189000,
            "signalStrength": -36,
            "quarantineStatus": "QUARANTINE_STATUS_OFF",
            "captureFlag": 0,
            "captureId": 0,
            "ssid": "777_2",
            "prevReason": 0,
            "prevPendingReason": 0,
            "opprotocol": "A",
            "meshFlag": 0,
            "dot11NCapability": 3065,
            "dot11ACCapability": 3705,
            "dualBand": false,
            "numAssocClients": 0,
            "underDosAttack": false,
            "quarantiningSensorMac": null,
            "security": 12,
            "secAuth": 1,
            "secGCS": 4,
            "secPWCS": 12,
            "networkTag": " --",
            "networkedStatus": "NOT_NETWORKED",
            "wiredMAC": null,
            "misconfigured": false,
            "capability": 33,
            "securitySettingFailure": 0,
            "mcsSet11ac": -5570646,
            "supportedRates": -2143646205,
            "beaconInterval": 100,
            "channelOffset": -1,
            "mcsSet11n": "ffffffff000000000000000001000000",
            "extendedAttr": 1,
            "channelWidth": 0,
            "centerFrequencyOne": 0,
            "centerFrequencyZero": 0,
            "potentialClassification": "EXTERNAL",
            "maxDataRateFor11n": -999,
            "primary": false,
            "guest": false,
            "manualPreventionEnabled": false,
            "autopreventionEnabled": true,
            "active": true
        },
        "banned": false,
        "guest": false,
        "misconfigured": false,
        "ssids": [
            "777_2"
        ],
        "mergedAP": false,
        "bestSignalStrength": -36,
        "active": true
    },
	. . . 
	. . .
	. . .
	{
        "type": "ap",
        "boxId": 2314,
        "name": "Mojo_F2:36:B0",
        "radios": [
            {
                "type": "apradio",
                "macaddress": "00:11:74:F2:36:B0",
                "protocol": "BG",
                "channel": 11,
                "firstDetectedTime": 1519634512000,
                "upSince": 1519650189000,
                "signalStrength": -61,
                "quarantineStatus": "QUARANTINE_STATUS_OFF",
                "captureFlag": 0,
                "captureId": 0,
                "ssid": "portal_no_ip",
                "prevReason": 0,
                "prevPendingReason": 0,
                "opprotocol": "BG",
                "meshFlag": 0,
                "dot11NCapability": 5097,
                "dot11ACCapability": 0,
                "dualBand": false,
                "numAssocClients": 0,
                "underDosAttack": false,
                "quarantiningSensorMac": null,
                "security": 8,
                "secAuth": 1,
                "secGCS": 8,
                "secPWCS": 8,
                "networkTag": " --",
                "networkedStatus": "NOT_NETWORKED",
                "wiredMAC": null,
                "misconfigured": false,
                "capability": 1,
                "securitySettingFailure": 0,
                "mcsSet11ac": 0,
                "supportedRates": -2144683266,
                "beaconInterval": 100,
                "channelOffset": 0,
                "mcsSet11n": "ffffffff000000000000000001000000",
                "extendedAttr": 1,
                "channelWidth": 0,
                "centerFrequencyOne": 0,
                "centerFrequencyZero": 0,
                "potentialClassification": "EXTERNAL",
                "maxDataRateFor11n": -999,
                "primary": false,
                "guest": false,
                "manualPreventionEnabled": false,
                "autopreventionEnabled": true,
                "active": true
            }
        ],
        "locationId": {
            "type": "locallocationid",
            "id": -1
        },
        "deviceNote": null,
        "ipAddress": null,
        "activeStatus": null,
        "deviceCapability": null,
        "manuallyTagged": false,
        "group": "EXTERNAL",
        "placed": false,
        "wiredPortBlocked": false,
        "ownSensorBoxId": -1,
        "apTemplateId": 0,
        "apTemplateName": null,
        "vendorName": "Mojo",
        "suspicious": false,
        "signalSource": false,
        "manuallyClassified": false,
        "searchIndex": -100,
        "sortColumnIndex": 8192,
        "updateFlags": -100,
        "numAssocClients": 0,
        "primaryRadio": {
            "type": "apradio",
            "macaddress": "00:11:74:F2:36:B0",
            "protocol": "BG",
            "channel": 11,
            "firstDetectedTime": 1519634512000,
            "upSince": 1519650189000,
            "signalStrength": -61,
            "quarantineStatus": "QUARANTINE_STATUS_OFF",
            "captureFlag": 0,
            "captureId": 0,
            "ssid": "portal_no_ip",
            "prevReason": 0,
            "prevPendingReason": 0,
            "opprotocol": "BG",
            "meshFlag": 0,
            "dot11NCapability": 5097,
            "dot11ACCapability": 0,
            "dualBand": false,
            "numAssocClients": 0,
            "underDosAttack": false,
            "quarantiningSensorMac": null,
            "security": 8,
            "secAuth": 1,
            "secGCS": 8,
            "secPWCS": 8,
            "networkTag": " --",
            "networkedStatus": "NOT_NETWORKED",
            "wiredMAC": null,
            "misconfigured": false,
            "capability": 1,
            "securitySettingFailure": 0,
            "mcsSet11ac": 0,
            "supportedRates": -2144683266,
            "beaconInterval": 100,
            "channelOffset": 0,
            "mcsSet11n": "ffffffff000000000000000001000000",
            "extendedAttr": 1,
            "channelWidth": 0,
            "centerFrequencyOne": 0,
            "centerFrequencyZero": 0,
            "potentialClassification": "EXTERNAL",
            "maxDataRateFor11n": -999,
            "primary": false,
            "guest": false,
            "manualPreventionEnabled": false,
            "autopreventionEnabled": true,
            "active": true
        },
        "banned": false,
        "guest": false,
        "misconfigured": false,
        "ssids": [
            "portal_no_ip"
        ],
        "mergedAP": false,
        "bestSignalStrength": -61,
        "active": true
    }
]
API Calls

/V5/devices/aps

/V5/devices/aps/{startIndex}/{pageSize}

/V5/associations/infrastructure/clients/{macaddress}

/V6/devices/manageddevices/{macaddress}/visibleaps

/V5/devices/aps/statistics/groupby

/V5/devices/aps/{boxid}/observingdevices

/V5/devices/aps

/V5/devices/aps/actions/CHANGE_BANNED_TYPE

/V5/devices/aps/actions/CHANGE_CATEGORY

/V5/devices/aps/actions/CHANGE_LOCATION

/V5/devices/aps/actions/CHANGE_QUARANTINE_STATUS

/V5/devices/aps/actions/DELETE_DEVICES

/V5/devices/aps/actions/ENABLE_DISABLE_AUTO_QUARANTINE

/V5/devices/aps/actions/MARK_AS_KNOWN_UNKNOWN

/V5/devices/aps/actions/MERGE_DEVICE

/V5/devices/aps/actions/SPLIT_DEVICE

<Base_URL>/V2/analytics/associationdata/{startdate}/{enddate}

Get APs

Description This API is used to fetch all the APs from the allowed locations for the
logged-in user. This API is not supported in a server cluster environment.
Note:For fetching larger number of devices, consider using the
Get Filtered List of APs API.
Users with the roles can call this API: superuser, administrator, operator, and viewer.
Syntax
GET <Base_URL>/devices/aps
Sample code
GET https://training.mojonetworks.com/new/webservice/V5/devices/aps
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains the details of the APs that match the filter criteria. The response is
in the application/json format.

GET APs Visible To Sensor

Description This API is used to fetch the list of all APs (including managed and non managed devices) visible to given sensor.
Syntax
GET <Base_URL>/devices/manageddevices/{macaddress}/visibleaps?<locationid>&<nodeid>

Here,

  • macaddress

    It is used to specify macaddress of the managed device for which visible APs has to be displayed.

  • locationid

    Is used to specify Location on which list of visible APs has to be fetched. It takes an integer value.
    Location identifier for the client. To retrieve the value for location Id refer Location call.

  • nodeid

    Is used to specify child node id if the location belongs to the child server. It takes an integer value.

Sample code
GET https://training.mojonetworks.com/new/webservice/v6/devices/manageddevices/
00:11:74:9C:BC:9F/visibleaps?locationid=0&nodeid=0
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains the list of visible APs fetched for the specified device.
The response is in the application/json format.

Get Filterd List of APs

Description This API is used to fetch a filtered list of APs.
Users with the roles can call this API: superuser, administrator, operator, and viewer.
Syntax
GET <Base_URL>/devices/aps/{startIndex}/{pageSize}?sortcolumn=<value>
&sortascending=<value>&filter=<value>

Here,

  • startIndex

    An integer value indicating the starting index for the list
    of APs to be fetched.

  • pageSize

    An integer value indicating the ending index for the list of APs
    to be fetched. Maximum page size is 1000.

  • sortcolumn

    Is used to specify Sort column. It takes string value.
    Default value is boxId.

  • sortascending

    Is used to specify Sort direction. It takes boolean value.
    Default value is true.

  • filter

    Is used to filter the results. Click Filter to view details of how filters need to be specified
    in the URL. For possible names of property attribute, data types, applicable values, and whether the
    results can be sorted based on the parameter click AP Filter Parameters.

Sample code
Get https://training.mojonetworks.com/new/webservice/v5/devices/aps/0/25?sortcolumn
=type&sortascending=false&filter=%7B%0A%09%22property%22%3A%20%22macaddress
%22%2C%0A%09%22value%22%3A%20%5B%2200%3A11%3A74%3AF3%3AF2%3A11%22%5D%2C%0A%09%22
operator%22%3A%20%22contains%22%0A%7D%20
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains the details of a list of APs along with the corresponding
pagination information. The response is in the application/json format. In addition,
the JSON also contains the following fields:

  • previousLink

    Link to access previous group of clients from the list of paged AP.
    It takes a string value. Sample value, /aps/0/25.

  • nextLink

    Link to access next group of clients from the list of paged AP.
    It takes String value.

  • totalCount

    Total number of paged AP. It takes an integer value.

Get Infrastructure Association for a Client

Description This API is used to fetch the AP with which the specified client is associated,
from Mojo Server or Arista Cloud Services.
Users with the roles can call this API: superuser, administrator, operator, and viewer.
Syntax
GET <Base_URL>/associations/infrastructure/clients/{macaddress}
  • macaddress

    Is a string value representing the MAC address of the client radio. For example, 28:47:AA:5B:54:08.

Sample code
Get https://training.mojonetworks.com/new/webservice/V5/associations
/infrastructure/clients/40:33:1A:59:F4:40
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains the AP association details. The response is in the application/json format.

Get Access Point Details Grouped By Specified Field

Description Fetches AP details, grouped by the specified field.
Who Can Execute? Superuser, Administrator, Operator, and Viewer.
Syntax
GET <Base_URL>/devices/aps/statistics/groupby?groupby=<value>&filter=<value>&operator=<value>
  • groupby

    A field applicable for the group by operation. It takes String value.
    Possible values are capability, opprotocol, ssid, channel, security, dosattackstatus, signalstrength, isguest, channeloffset, firstdetectedtime, upsince, quarantinestatus, captureflag, captureid, preventionflags, preventionpendingreason, preventionreason, meshflag, dotncapability, dotaccapability, dualband, misconfigured, securitysettingsfailure, supportedrates, beaconinterval, mcsset11n, mcsset11ac, potentialclassification, isactive, isplaced, boxid, name, devicenote, group, locationid, ipaddress, manuallytagged, vendor, banned, signalsource, manuallyclassified, ownsensorboxid, numberofassociations, and suspiciousvalue.

  • filter

    Is used to filter the results. Click Filter to view details of how filters need to be specified
    in the URL. For possible names of property attribute, data types, applicable values, and whether the
    results can be sorted based on the parameter click AP Filter Parameters.

  • operator

    is used to specify the logical operator on which filtering is to be done. Possible values are AND and OR.

Sample code
GET  https://training.mojonetworks.com/new/webservice/V5/devices/aps/statistics/groupby?groupby=vendor
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains AP details based on the group by field. The response is in the application/json format.A sample response JSON is as follows:

{
    "samples": [
        {
            "group": {
                "vendor": "Arista"
            },
            "count": 43
        }
    ],
    "totalCount": 43
}

Get Observing Devices for an AP

Description Fetches a list along with details of all the devices observing the specified AP.
Who Can Execute? Superuser, Administrator, Operator, and Viewer.
Syntax
GET <Base_URL>/devices/aps/{boxid}/observingdevices?mac=<value>&protocol=<value>
  • mac

    Is a string value representing the MAC address of the AP. For example, 28:47:AA:5B:54:08.

  • protocol

    The 802.11 protocol version associated with the device. The applicable values are UNKNOWN, A, B, BG.

  • boxid

    System-generated ID of the AP. It takes an integer value.

Sample code
GET https://training.mojonetworks.com/new/webservice/V5/devices/aps/1450338568
/observingdevices?mac=88:B1:E1:82:D9:90&protocol=A
Request Body This API call does not require any request body parameters.
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains a list of devices observing the specified AP. The response is in the application/json format.

Modify an AP

Description This API is used to modify the details of an AP.
Users with the roles can call this API: superuser, administrator, operator, and viewer.
Who Can Execute? Operator
Syntax
PUT <Base_URL>/devices/aps?unplacedeviceforlocationchange=<value>
  • unplacedeviceforlocationchange

    A boolean value indicates that before changing the location,
    the device is to be unplaced or not.

Sample code
PUT https://training.mojonetworks.com/new/webservice/v5/devices/aps?
unplacedeviceforlocationchange=true
Request Body This API call requires the details of the AP to be modified, which are
passed as parameters in the request body. The parameters are passed in
the application/json format. You must provide appropriate values
for the following attributes.

  • boxIds

    The system-generated ID of the AP. It takes an integer value. Sample value, 74.

  • active

    It takes a boolean value. Sample value, false.

  • name

    It takes a string value. sample value, Mojo_90:05:21.

  • type

    Category or type of the device whose details are being modified. It takes a string value.
    Sample value, ap.

A sample request will have a structure as follows:

 {
        "type": "ap",
        "boxId": 74,
        "name": "Mojo_90:05:21",
        "active": false
 }
Response Body If the API call is successful, the HTTP response status is 200.
The response body contains the details of the AP that was modified. The response is in the
application/json format.

Add To/Remove from Banned List

Description This API is used to add or remove APs from the banned list. The
Aps once detected in banned list cannot be classified as rogue devices.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/CHANGE_BANNED_TYPE
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices
/aps/actions/CHANGE_BANNED_TYPE
Request Body This API call requires the list of boxIds of APs, that are to be added to
or removed from the banned list. BoxId is passed as parameter in the request
body. The parameters are passed in the application/json format.
You must provide appropriate values for the following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 109.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, boolean.

  • booleanAction

    If boolean action is set to true than the list of mentioned APs
    is added to the banned list. Else is removed from the banned list. It takes a boolean value.
    Sample value, true.

Sample request body is as follows:

{
   "boxIds":[
      1604
   ],
   "argument":{
      "type": "boolean",
      "booleanAction": true
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Modify AP Categorization

Description This API is used to change AP from one category to another. The Category
can be one of the following authorized, misconfigured, rogue, external or uncategorized.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/CHANGE_CATEGORY
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/
aps/actions/CHANGE_CATEGORY
Request Body This API call requires the list of boxIds of APs, for those category is to
be changed. BoxId is passed as parameter in the request body. The parameters
are passed in the application/json format.
You must provide appropriate values for the following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 45.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, apgroupchangeaction.

  • group

    The device category. It takes a string value. The applicable values are:

    • AUTHORIZED
    • MISCONFIGURED
    • ROGUE
    • EXTERNAL
    • UNCATEGORIZED

Sample request body is as follows:

{
   "boxIds":[74, 1691],
   "argument":
   {
      "type": "apgroupchangeaction",
      "group": "EXTERNAL"
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Move APs

Description This API is used to move APs from their existing location to new location.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/CHANGE_LOCATION

Here,

  • retaintemplate

    A boolean value represents whether to retain the current device template when change location action
    is performed. If set to true the current device template is retained else a location specific new
    device template is applied.

  • unplacedeviceforlocationchange

    A boolean value indicates that before changing the location, the device is to be unplaced or not.

Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps/actions
/CHANGE_LOCATION?retaintemplate=true&unplacedeviceforlocationchange=true
Request Body This API call requires the list of boxIds of APs, for whom the location is
to be moved from existing to new one. The parameters are passed in the
application/json format. You must provide appropriate values for the
following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 45.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, location.

  • locationId

    Location identifier for the client.

Sample request body is as follows:

{
   "boxIds": [1691],
   "argument":{
      "type": "location",
      "locationId":{
         "type": "locallocationid",
         "id": "0"
      }
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Change Quarantine Status of an AP

Description This API is used to change quarantine status of an AP. Quarantined AP is
isolated and no other device can connect to it.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/CHANGE_QUARANTINE_STATUS
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps
/actions/CHANGE_QUARANTINE_STATUS
Request Body This API call requires the boxId of an AP, that is to be quarantined.
The parameters are passed in the application/json format.
You must provide appropriate values for the following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 109.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, quarantinestatusarguments.

  • addPrevention
  • preventionType

    Possible values are:

    • PREV_TYPE_DoS = 3
    • PREV_TYPE_PORT_BLOCK = 6
    • PREV_TYPE_AP = 1<
    • PREV_TYPE_CLIENT = 2

    It takes an integer value. Sample value, 6.

  • radio

    A JSON object with attributes related to the access
    point radio.

  • radio/type

    Type of a radio. The expected value is apradio. It takes a string value.
    Sample value, apradio.

  • radio/macaddress

    MAC address of the device. It takes a string value.
    Sample value, 00:11:74:90:64:10.

  • radio/protocol

    Protocol of the device. The applicable values are:

    • UNKNOWN
    • A
    • B
    • BG

    It takes a string value. Sample value, BG.

Sample request body is as follows:

{
   "boxIds":[1691],
   "argument":{
      "type": "quarantinestatusarguments",
      "addPrevention": true,
      "preventionType": 0,
      "radio":{
         "type": "apradio",
         "macaddress": "00:11:74:A0:14:82",
         "protocol": "BG"
      }
    }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Delete APs

Description This API is used to Delete APs.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/DELETE_DEVICES
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps
/actions/DELETE_DEVICES
Request Body This API call requires the list of boxIds of APs, that are to be deleted.
BoxId is passed as parameter in the request body. The parameters are passed
in the application/json format.
Sample request body is as follows:

{
   "boxIds":[1737]
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Enable Disable Auto Quarantine

Description This API is used to Enable or Disable Auto Quarantine Status of APs.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/ENABLE_DISABLE_AUTO_QUARANTINE
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps
/actions/ENABLE_DISABLE_AUTO_QUARANTINE
Request Body This API call requires the list of boxIds of those APs, for whom the auto
quarantine status is to be enabled or disabled. The parameters are passed in
the application/json format. You must provide appropriate values for the
following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 252.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, boolean.

  • booleanAction

    If boolean action is set to true than the auto quarantine status for mentioned APs is enabled.
    Else it is disabled. It takes a boolean value. Sample value, true.

Sample request body is as follows:

{
   "boxIds":[74, 1691],
   "argument":
   {
      "type": "boolean",
      "booleanAction": false
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Mark APs as Known or Unknown

Description This API is used to mark external APs as Known or Unknown.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/MARK_AS_KNOWN_UNKNOWN
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps
/actions/MARK_AS_KNOWN_UNKNOWN
Request Body This API call requires the list of boxIds of those APs, that are to be marked
as known or unknown. BoxId is passed as parameter in the request body. The
parameters are passed in the application/json format. You must provide
appropriate values for the following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value.
    Sample value, 1318.

  • type

    Category or type of the device whose details are being modified.
    It takes a string value. Sample value, boolean.

  • booleanAction

    If boolean action is set to true than the auto quarantine status for mentioned APs is enabled.
    Else it is disabled. It takes a boolean value. Sample value, false.

Sample request body is as follows:

{
   "boxIds":[74, 1691],
   "argument":{
      "type": "boolean",
      "booleanAction": true
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Merge APs

Description This API is used to merge multiple APs. Merging of devices group multiple BSSIDs
belonging to same device.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/MERGE_DEVICE
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps/
actions/MERGE_DEVICE
Request Body This API call requires the list of boxIds of those APs, that are to be marked
as known or unknown. BoxId is passed as parameter in the request body. The
parameters are passed in the application/json format.
You must provide appropriate values for the following attributes.

  • boxIds

    System-generated ID of the AP. It takes an integer value. Sample value, 155.

  • argument/type

    Category or type of the device whose details are being modified. It takes a string value.
    Sample value, boolean.

  • argument/primaryAP
  • argument/primaryAP/type

    Category or type of the primary device. It takes a string value. Sample value, ap.

  • argument/primaryAP/boxId

    System-generated ID of the AP. It takes an integer value. Sample value, 155.

  • argument/primaryAP/ownSensorBoxId

    A read-only field for internal use. It takes an integer value. Sample value, -1.

  • argument/primaryAP/radios

    A JSON object with attributes related to the access point radio.

  • argument/primaryAP/radios/type

    Type of a radio. The expected value is apradio. It takes a string value. Sample value, apradio.

  • argument/primaryAP/radios/macaddress

    MAC address of the device. It takes a string value. Sample value, 00:11:74:90:00:20.

  • argument/primaryAP/radios/protocol

    Protocol of the device. It takes a string value. The applicable values are:

    • UNKNOWN
    • A
    • B
    • BG
  • argument/primaryAP/locationId

    Location identifier for the client. It takes an integer value.

Sample request body is as follows:

{
   "boxIds":[1732,2154],
   "argument":{
      "type": "mergeapaction",
      "primaryAP":{
         "type": "ap",
         "boxId": 2101,
         "ownSensorBoxId": -1,
         "radios":[{
            "type": "apradio",
            "macaddress": "00:11:74:9C:BC:9F",
            "protocol": "A"
         }],
         "locationId":{
            "type": "locallocationid",
            "id": -1
         }
      }
   }
}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.

Split Merged APs

Description This API is used to split existing merged APs.
Users with the roles can call this API:superuser, administrator, operator, and viewer.
Syntax
PUT <Base_URL>/devices/aps/actions/SPLIT_DEVICE
Sample code
PUT https://training.mojonetworks.com/new/webservice/V5/devices/aps/actions/SPLIT_DEVICE
Request Body This API call requires the boxId of primary AP. BoxId is passed as parameter
in the request body. The parameters are passed in the application/json format.Sample request body is as follows:

{
   "boxIds":
   [
      2101
   ]

}
Response Body If the API call is successful, the HTTP response status is 204.
The response body does not contain any other information.