RUCKUS Cloud - Wi-Fi APIs and Model Documentation (v21.03.11)

APIs published in this document are subject to strict change control by RUCKUS. As far as possible, when new versions of the Public API are published, all documented API endpoints will maintain backward compatibility. When not possible, an API endpoint will be deprecated and a replacement API or some other workaround will be provided. Support for deprecated API endpoints will continue for at least six months prior to removal in order to provide API client developers sufficient time to adopt the replacement. This document will indicate when API endpoints are deprecated along with the schedule for their removal. API client developers may discover other experimental API endpoints provided by the RUCKUS cloud, not included in this API document. RUCKUS reserves the right to change these experimental APIs without notice to API client developers.

Cloud Hosts

RegionDomain
Asiahttps://asia.ruckus.cloud
Europehttps://eu.ruckus.cloud
North Americahttps://ruckus.cloud

Introduction to Wi-Fi Workflows

As an introduction to the Wi-Fi API endpoints, a basic workflow to install and configure a Wi-Fi network is described. The order of steps described below is merely an example. The description below is not meant to be comprehensive; rather, it’s meant to be a guide to get you started with API client development.
  1. Create a venue for your APs. The API group for creating venues is described in the Platform API document, in the “Venue” API group. You can create as many venues as you like. Typically, one venue is created for each building in which you install APs. Or you can also use just one “venue” for all the buildings on a campus; alternatively, a “venue” might be just a single floor in a multi-story building or an outdoor park.
  2. Provision your APs. To provision an AP, add the AP using the “Add APs“ endpoint in the AP API group. Once your APs are provisioned, physically install them. They will automatically contact and join the RUCKUS cloud. You can physically install your APs prior to provisioning, but they won’t join the cloud until provisioned. In order to install an AP, your account must possess activated licenses. Purchased licenses are activated on the RUCKUS support website. Use endpoints in the entitlement API group (cf. Platform API documentation) to manage your entitlements (aka licenses). If you don’t have any activated entitlements, the “Add APs“ endpoint will return an error response.
  3. Verify your APs have connected to the cloud. To check an AP’s connection, use the “Get APs“ endpoint in the AP API group. The API response provides the AP’s connection status. If your APs are having trouble connecting, you can locally log into your AP and use its troubleshooting utilities to diagnose the problem.
  4. Create a WLAN. Use the endpoints in the “Network” API group to create a WLAN. Note that WLANs are global resources that can be activated in as many venues as you like. Simply creating a WLAN does not deploy it to APs. To deploy the WLAN, it must be “activated” on a venue. Use the endpoints in the “Network-Venue” API group for managing WLAN deployments.
  5. Customize the configuration of your APs. AP configuration can be customized on three different levels.
    • All the APs in a venue can be collectively customized using endpoints in the “AP-Venue” API group. On a per-venue basis, you can customize the radio or LAN-port settings of your APs as well as enable and manage mesh networking.
    • APs can be grouped together using endpoints in the “AP Group” API group. Each venue can have one or more AP groups; if you don’t explicitly configure AP groups, all APs in a venue are members of the “default” group. Grouping APs is typically done to restrict the deployment of certain WLANs to the APs in a group rather than all the APs in a venue. You might want to do this, for example, to only enable your guest WLAN in the lobby of your venue. Also, using AP groups, WLANs can be enabled on either the 2.4-GHz or 5-GHz band instead of both bands (which is the default). Use the endpoints in the “Network-Venue” API group for managing WLAN (network) assignments to AP Groups.
    • APs can be individually customized using endpoints in the “AP” API group. On a per-AP basis, you can customize an AP’s radio or LAN-port settings. Individual AP configuration override group-level and venue-level configuration.
  6. Protect your network. Enable rogue AP detection, configure rogue AP classification policies and view reports on detected rogue APs. Use the endpoints in the “AP-Venue” API group for this purpose. Note: once an administrator is informed of the presence of a rogue AP, he/she can take steps to manually remove it.
  7. Add sophistication to your WLAN. Use the endpoints in the “L2AclPolicy”, “L3AclPolicy”, “Device Policy”, and “Application Policy” API groups to create and manage WLAN policies that manage your wireless clients (end-user devices) and their connections to online services more effectively.
  8. Add new services to your wireless network. Services such as Wi-Fi calling, location (aka vSPoT) are available; they can be configured and managed using the endpoints in their respective API groups. APs can provide DHCP service with sufficient scale for small offices or branch offices - use the endpoints in “DHCP Service Profile” API group to configure the service and endpoints in “DHCP Service Profile Venue” to activate them on your venues.
  9. Manage your network’s client devices. If you have a guest WLAN which uses guest passes, you can create and manage guest users with endpoints in the “Guest User“ API group. If you find client devices which should not be on your network, you can disconnect them using an endpoint in the “Client Disconnect“ API group.

New Endpoints in Release

New API Endpoints in Existing Groups

API GroupNew SummaryNew Description
NetworkValidate X509 CertificatesValidate the X509 certificate chain issued by a trusted CA.

AP

API endpoints in this group provide the functions outlined in the table below.

CategoryFunctions Provided by AP Group Endpoints
AP ResourceCreate, read, update and delete AP resources (i.e., the APs themselves), one at a time or per a list.
CustomizeConfigure radio and LAN port parameters. For some AP models, configure external antenna parameters and PoE power sourcing. Note that customizations done on individual APs (i.e., by endpoints in this API group) override customizations done at the venue, by endpoints in the “AP-Venue” API group.
LocationSet/update the AP’s position on a floorplan.
RegulatoryGet a list of radio channels permitted for operation by the regulatory domain in which the AP is physically located.
ServicesConfigure Bonjour gateway services.
TroubleshootingReboot, factory reset, ping, traceroute, packet capture and blink LEDs. Note: blinking an AP’s LEDs can be helpful in identifying a specific AP for positioning on a floorplan.

Get APs

Get the AP list.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
operational
boolean
Default: true
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add APs

Add a list of new APs.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema:
Array ()
serialNumber
required
string^[1-9][0-9]{11}$
apGroupId
string
venueId
required
string
name
required
string(?=^((?!`|\$\()[ -_a-~]){2,32}$)^(\S.*\S)$
description
string [ 0 .. 180 ] characters
tags
Array of strings [ 0 .. 24 ] items
model
string [ 0 .. 64 ] characters
Default: "null"
object (ApPosition)

Ap Position object

Responses

Request samples

Content type
[
  • {
    }
]

Response samples

Content type
application/json
Example
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk APs

Delete a list of APs.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get AP

Get the AP operational and configuration data.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

query Parameters
operational
boolean
Default: true

Responses

Response samples

Content type
application/json
{
  • "serialNumber": "string",
  • "apGroupId": "string",
  • "venueId": "string",
  • "lanPorts": {
    },
  • "bonjourGateway": {
    },
  • "radio": {
    },
  • "clientCount": 0,
  • "lastContacted": "null",
  • "lastUpdated": "null",
  • "indoorModel": false,
  • "firmware": "null",
  • "state": "null",
  • "subState": "null",
  • "mac": "null",
  • "ip": "null",
  • "externalIp": "null",
  • "meshRole": "null",
  • "uptime_seconds": 0,
  • "name": "string",
  • "description": "string",
  • "tags": [
    ],
  • "softDeleted": false,
  • "softDeletedDate": "2019-08-24T14:15:22Z",
  • "model": "null",
  • "position": {
    },
  • "updatedDate": "2019-08-24T14:15:22Z"
}

Update AP

Update an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
serialNumber
required
string^[1-9][0-9]{11}$
apGroupId
string
venueId
required
string
name
required
string(?=^((?!`|\$\()[ -_a-~]){2,32}$)^(\S.*\S)$
description
string [ 0 .. 180 ] characters
tags
Array of strings [ 0 .. 24 ] items
model
string [ 0 .. 64 ] characters
Default: "null"
object (ApPosition)

Ap Position object

Responses

Request samples

Content type
application/json
{
  • "serialNumber": "string",
  • "apGroupId": "string",
  • "venueId": "string",
  • "name": "string",
  • "description": "string",
  • "tags": [
    ],
  • "model": "null",
  • "position": {
    }
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete AP

Delete an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get AP (Deep)

Get the AP operational and configuration data, including nested details.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "serialNumber": "string",
  • "apGroupId": "string",
  • "venueId": "string",
  • "lanPorts": {
    },
  • "bonjourGateway": {
    },
  • "radio": {
    },
  • "clientCount": 0,
  • "lastContacted": "null",
  • "lastUpdated": "null",
  • "indoorModel": false,
  • "firmware": "null",
  • "state": "null",
  • "subState": "null",
  • "mac": "null",
  • "ip": "null",
  • "externalIp": "null",
  • "meshRole": "null",
  • "uptime_seconds": 0,
  • "name": "string",
  • "description": "string",
  • "tags": [
    ],
  • "softDeleted": false,
  • "softDeletedDate": "2019-08-24T14:15:22Z",
  • "model": "null",
  • "position": {
    },
  • "updatedDate": "2019-08-24T14:15:22Z"
}

Get AP Radio

Get AP radio details.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "apRadioParams24G": {
    },
  • "apRadioParams50G": {
    },
  • "useVenueSettings": true,
  • "enable24G": false,
  • "enable50G": false
}

Update AP Radio

Update an AP radio settings.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
object (ApRadioParams24G)

AP radio customization for 2.4 Ghz

object (ApRadioParams50G)

AP radio customization for 5 Ghz

useVenueSettings
boolean
Default: true
enable24G
boolean
Default: false
enable50G
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "apRadioParams24G": {
    },
  • "apRadioParams50G": {
    },
  • "useVenueSettings": true,
  • "enable24G": false,
  • "enable50G": false
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset AP Radio Customization

Reset AP radio to default settings.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get AP LAN-Ports

Get AP LAN-ports details.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "poeOut": false,
  • "poeMode": "Auto",
  • "lanPorts": [
    ],
  • "useVenueSettings": false
}

Update AP LAN-Ports

Update LAN-ports of an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
poeOut
boolean
Default: false
poeMode
string
Enum: "Auto" "802.3af" "802.3at" "802.3bt-Class_5" "802.3bt-Class_6" "802.3bt-Class_7" "802.3bt-Class_8"
Array of objects (ApLanPort)
useVenueSettings
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "poeOut": false,
  • "poeMode": "Auto",
  • "lanPorts": [
    ],
  • "useVenueSettings": false
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset AP LAN-Ports

Reset the LAN-ports of an AP to the default values.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Ap Customization

Get AP customization details.

path Parameters
serialNumber
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "externalAntenna": {
    },
  • "poeOut": false,
  • "poeMode": "Auto",
  • "lanPorts": [
    ],
  • "useVenueSettings": false,
  • "id": "string"
}

Update Ap Customization

Update the customization of an AP.

path Parameters
serialNumber
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
object (ExternalAntenna)

External antenna settings

poeOut
boolean
Default: false
poeMode
string
Enum: "Auto" "802.3af" "802.3at" "802.3bt-Class_5" "802.3bt-Class_6" "802.3bt-Class_7" "802.3bt-Class_8"
Array of objects (ApLanPort)
useVenueSettings
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "externalAntenna": {
    },
  • "poeOut": false,
  • "poeMode": "Auto",
  • "lanPorts": [
    ],
  • "useVenueSettings": false
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset Ap Customization

Reset the customization of an AP to the default values.

path Parameters
serialNumber
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Reboot AP

Reboot an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Factory Reset AP

Perform a factory reset on an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Update AP Position

Update an AP floor-plan position.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
floorplanId
string
xPercent
number <float> [ 0 .. 100 ]
Default: 0
yPercent
number <float> [ 0 .. 100 ]
Default: 0

Responses

Request samples

Content type
application/json
{
  • "floorplanId": "string",
  • "xPercent": 0,
  • "yPercent": 0
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get AP Bonjour Gateway

Get the AP bonjour gateway details.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "rules": [
    ]
}

Update AP Bonjour Gateway

Update the AP bonjour gateway.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
required
Array of objects (BonjourGatewayRule) [ 1 .. 2147483647 ] items

Responses

Request samples

Content type
application/json
{
  • "rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset AP Bonjour Gateway

Reset the AP bonjour gateway.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Ping AP

Perform a ping to the AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
targetHost
required
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...

Responses

Request samples

Content type
application/json
{
  • "targetHost": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Trace-Route AP

Perform a trace-route on an AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Request Body schema: application/json
targetHost
required
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...

Responses

Request samples

Content type
application/json
{
  • "targetHost": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Download AP Log

Download the AP log file.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "fileURL": "string"
}

Get DHCP Pool Usages

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get DHCP Leases

Get the IP address leases issued by the DHCP server instance running on this AP.

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Blink LED AP

Blink an AP's LED lights

path Parameters
serialNumber
required
string

The serial number of the AP.

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Packet Capture State

path Parameters
tenantId
required
string

Tenant ID

serialNumber
required
string

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "errors": [
    ],
  • "downloadUrl": "string"
}

Start Packet Capture

path Parameters
tenantId
required
string

Tenant ID

serialNumber
required
string
Request Body schema: application/json
captureInterface
required
string^RADIO(24|50)$|^ETH[0-7]$
macAddressFilter
string^$|^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$|...
frameTypeFilter
Array of strings
Items Enum: "MANAGEMENT" "CONTROL" "DATA"

Responses

Request samples

Content type
application/json
{
  • "captureInterface": "string",
  • "macAddressFilter": "string",
  • "frameTypeFilter": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "errors": [
    ],
  • "downloadUrl": "string"
}

Stop Packet Capture

path Parameters
tenantId
required
string

Tenant ID

serialNumber
required
string

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "errors": [
    ],
  • "downloadUrl": "string"
}

Get AP Regulatory Channels

Get this AP's regulatory channels. Note: these channel numbers are specific to the country in which the AP is deployed.

path Parameters
serialNumber
required
string

AP serialNumber

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "2.4GChannels": {
    },
  • "5GChannels": {
    }
}

Get APs by AP-Group

Get the APs in the AP-group.

path Parameters
apGroupId
required
string

AP-group ID

tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

AP-Group

Manage AP groups.

Grouping APs is typically done to restrict the deployment of certain WLANs to only the APs in a group rather than all the APs in a venue. Using AP groups, WLANs can be enabled on either the 2.4-GHz or 5-GHz band instead of both bands (which is the default). Use the endpoints in the “Network-Venue” API group for managing WLAN (network) assignments to AP Groups.

Get AP-Group

Get the AP-group details.

path Parameters
apGroupId
required
string

AP-group ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venueId": "string",
  • "aps": [
    ],
  • "isDefault": false,
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Update AP-Group

Update an AP-group.
Note: AP-Groups cannot be moved between Venues, but a single AP can be moved between Venues using UpdateAP

path Parameters
apGroupId
required
string

AP-group ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
venueId
required
string
Array of objects (ApSerialNumber)
name
required
string [ 2 .. 64 ] characters
description
string [ 2 .. 180 ] characters

Responses

Request samples

Content type
application/json
{
  • "venueId": "string",
  • "apSerialNumbers": [
    ],
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete AP-Group

Delete an AP-group.

path Parameters
apGroupId
required
string

AP-group ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get AP-Groups by Venue

Get the AP-group list by venue.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Venue Default AP-Group

Get venue default AP-group details.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venueId": "string",
  • "aps": [
    ],
  • "isDefault": false,
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Get AP-Groups

Get the AP-group list.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create AP-Group

Create a new AP-group.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
venueId
required
string
Array of objects (ApSerialNumber)
name
required
string [ 2 .. 64 ] characters
description
string [ 2 .. 180 ] characters

Responses

Request samples

Content type
application/json
{
  • "venueId": "string",
  • "apSerialNumbers": [
    ],
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk AP-Groups

Delete a list of AP-groups.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

AP-Venue

API endpoints in this group provide the functions outlined in the table below. All the APs in the venue will share a common configuration which is managed using these endpoints. Note that customization done on individual APs (i.e., by endpoints in the “AP” API group) override customization done at the venue level, by endpoints in this group.

CategoryFunctions Provided by AP-Venue Group Endpoints
CustomizeConfigure the APs’ radio and LAN port parameters.
Configure APs to turn off/on their LEDs.
Configure external antenna parameters used by all AP models having external antenna capability.
Configure cellular radio parameters used by al AP models having cellular backhaul capability.
Mesh NetworkingEnable or disable mesh networking in a venue.
Network ProtectionConfigure rogue AP detection and classification policies; view reports on detected rogue APs.
RegulatoryGet a list of LTE radio bands available for operation.
ServicesConfigure vSPoT services.
Configure APs to use a syslog server which is external to the RUCKUS cloud.

Get Available LTE Bands

Get available LTE bands for each regions

path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Venues

Get the venue list of Wi-Fi details.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Mesh

Enable/disable the venue mesh.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
enabled
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "enabled": false
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Venue LAN-Ports

List venue LAN-port settings. The settings are defined per AP model.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Venue LAN-Ports

Update a venue LAN-port settings. The settings are defined per AP model.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
Array of objects (VenueLanPort)
model
string [ 0 .. 64 ] characters
poeOut
boolean
Default: false
poeMode
string
Enum: "Auto" "802.3af" "802.3at" "802.3bt-Class_5" "802.3bt-Class_6" "802.3bt-Class_7" "802.3bt-Class_8"

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": [
    ]
}

Get Venue LED

Get venue LED settings. The settings are defined per AP model.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Venue LED

Update venue LED settings. The settings are defined per AP model.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
ledEnabled
boolean
Default: false
model
string [ 0 .. 64 ] characters

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": [
    ]
}

Get Venue External Antenna

List venue external antenna settings. The settings are defined per AP model.

path Parameters
venueId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Venue External Antenna

Update a venue external antenna settings. The settings are defined per AP model.

path Parameters
venueId
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
enable24G
boolean
Default: false
enable50G
boolean
Default: false
gain24G
integer <int32> [ 0 .. 60 ]
gain50G
integer <int32> [ 0 .. 60 ]
model
string [ 0 .. 64 ] characters

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": [
    ]
}

Get Venue Radio

Get the venue radio.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "radioParams24G": {
    },
  • "radioParams50G": {
    }
}

Update venue radio

Update the venue radio.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
object (RadioParams24G)

Radio customization for 2.4 Ghz

object (RadioParams50G)

Radio customization for 5 Ghz

Responses

Request samples

Content type
application/json
{
  • "radioParams24G": {
    },
  • "radioParams50G": {
    }
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset Venue Radio

Reset venue radio to default values.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Default Radio

Get the venue radio default values.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "radioParams24G": {
    },
  • "radioParams50G": {
    }
}

Get Venue Default Regulatory-Channels

Get venue default regulatory channels.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "2.4GChannels": {
    },
  • "5GChannels": {
    }
}

Get Rogue-AP Settings

Get this venue's rogue-AP configuration settings.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "enabled": false,
  • "reportThreshold": 0
}

Update Rogue-AP Settings

Update this venue's rogue-AP configuration settings.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
enabled
boolean
Default: false
reportThreshold
integer <int32> [ 0 .. 100 ]
Default: 0

Responses

Request samples

Content type
application/json
{
  • "enabled": false,
  • "reportThreshold": 0
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Venue Syslog

Get the venue syslog settings.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "enabled": false,
  • "server": "string",
  • "port": 514,
  • "facility": "FacilityEnum.KEEP_ORIGINAL",
  • "priority": "PriorityEnum.INFO",
  • "protocol": "ProtocolEnum.UDP",
  • "flowLevel": "FlowLevelEnum.CLIENT_FLOW",
  • "secondaryServer": "string",
  • "secondaryPort": 514,
  • "secondaryProtocol": "ProtocolEnum.TCP"
}

Update Venue Syslog

Update the venue syslog settings.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
enabled
boolean
Default: false
server
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...
port
integer <int32> [ 1 .. 65535 ]
Default: 514
facility
string
Default: "FacilityEnum.KEEP_ORIGINAL"
Enum: "KEEP_ORIGINAL" "LOCAL0" "LOCAL1" "LOCAL2" "LOCAL3" "LOCAL4" "LOCAL5" "LOCAL6" "LOCAL7"
priority
string
Default: "PriorityEnum.INFO"
Enum: "EMERGENCY" "ALERT" "CRITICAL" "ERROR" "WARNING" "NOTICE" "INFO" "ALL"
protocol
string
Default: "ProtocolEnum.UDP"
Enum: "TCP" "UDP"
flowLevel
string
Default: "FlowLevelEnum.CLIENT_FLOW"
Enum: "GENERAL_LOGS" "CLIENT_FLOW" "ALL"
secondaryServer
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...
secondaryPort
integer <int32> [ 1 .. 65535 ]
Default: 514
secondaryProtocol
string
Default: "ProtocolEnum.TCP"
Enum: "TCP" "UDP"

Responses

Request samples

Content type
application/json
{
  • "enabled": false,
  • "server": "string",
  • "port": 514,
  • "facility": "FacilityEnum.KEEP_ORIGINAL",
  • "priority": "PriorityEnum.INFO",
  • "protocol": "ProtocolEnum.UDP",
  • "flowLevel": "FlowLevelEnum.CLIENT_FLOW",
  • "secondaryServer": "string",
  • "secondaryPort": 514,
  • "secondaryProtocol": "ProtocolEnum.TCP"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Reset Venue Syslog

Reset venue syslog settings to default values.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Venue vSPoT

Get the vSPoT details of a venue.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venues": [
    ],
  • "serverName": "string",
  • "vspotGlobalId": "string",
  • "serverAddress": "string",
  • "port": 8883,
  • "password": "stringst",
  • "id": "string"
}

Unbind Venue vSPoT

Unbind a venue from the vSPoT server.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Bind Venue vSPoT

Bind a venue to the vSPoT server.

path Parameters
venueId
required
string

Venue ID

vspotId
required
string

vSPoT ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Venue Ap Model Cellular

Get AP model cellular settings and LteBandLockChannels of the venue

path Parameters
venueId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "model": "string",
  • "primarySim": {
    },
  • "secondarySim": {
    },
  • "wanConnection": "ETH_WITH_CELLULAR_FAILOVER",
  • "primaryWanRecoveryTimer": 10
}

Update Venue Ap Model Cellular

Update AP model cellular settings and LteBandLockChannels of the venue

path Parameters
venueId
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
model
string [ 0 .. 64 ] characters
object (SimSettings)

Sim Setting Embeddable Domain Object

object (SimSettings)

Sim Setting Embeddable Domain Object

wanConnection
required
string
Enum: "ETH_WITH_CELLULAR_FAILOVER" "CELLULAR_WITH_ETH_FAILOVER" "ETH" "CELLULAR"
primaryWanRecoveryTimer
required
integer <int32> [ 10 .. 300 ]

Responses

Request samples

Content type
application/json
{
  • "model": "string",
  • "primarySim": {
    },
  • "secondarySim": {
    },
  • "wanConnection": "ETH_WITH_CELLULAR_FAILOVER",
  • "primaryWanRecoveryTimer": 10
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Venue

Get the venue Wi-Fi details.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "tenantId": "string",
  • "countryCode": "string",
  • "apPassword": "string",
  • "mesh": {
    },
  • "bandBalancing": {
    },
  • "radioCustomization": {
    },
  • "syslog": {
    },
  • "dhcpServiceSetting": {
    },
  • "lteBandLockChannels": [
    ],
  • "rogueAp": {
    },
  • "id": "string"
}

Get Rogue APs

Get the rogue APs detected in this venue.

path Parameters
tenantId
required
string

Tenant ID

venueId
required
string

Venue ID

Request Body schema: application/json

payload

fields
Array of strings
object
Array of objects (MatchFieldDto)
multiSortFields
Array of strings
Array of objects (MustNotMatchFieldDto)
page
integer <int32>
object (EntryOfstringAndstring)
pageSize
integer <int32>
object (RangeFilterDto)
searchString
string
searchTargetFields
Array of strings
sortField
string
sortOrder
string
object (TermFieldDto)

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "filters": {
    },
  • "matchFields": [
    ],
  • "multiSortFields": [
    ],
  • "mustNotMatchField": [
    ],
  • "page": 0,
  • "pageByDate": {
    },
  • "pageSize": 0,
  • "rangeFilter": {
    },
  • "searchString": "string",
  • "searchTargetFields": [
    ],
  • "sortField": "string",
  • "sortOrder": "string",
  • "termField": {
    }
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "errorMessage": "string",
  • "fields": [
    ],
  • "objectId": "string",
  • "page": 0,
  • "subsequentQueries": [
    ],
  • "totalCount": 0
}

Network

API endpoints in this group provide the capability to create and manage the network types outlined in the table below.

WLAN TypeNetwork Schema ObjectDescription
PSKPskNetworkWireless network in which clients use a PSK to join the WLAN. In addition to PSK authentication, MAC address authentication can be configured. When MAC address authentication is used, an authentication server (aka AAA server) and optionally an accounting server must be configured. The object “PskWlan” object is used to configure the security method (e.g., WPA2, WPA3), whether management frame protection (802.11w) is enabled and a static VLAN ID with which client frames egressing the AP are tagged (used when the authentication server does not provide a VLAN assignment). For advanced customization of a PSK WLAN, the “PskWlanAdvancedCustomization” schema object can optionally be included; advanced customization features are described below.
DPSKDpskNetworkWireless network in which clients use DPSK authentication to join the WLAN. Configuring DPSK authentication involves the use of three other schema objects, “DpskWlan”, “DpskWlanAdvancedCustomization” and “DpskPassphraseGeneration”. DpskWlan is used to configure the SSID, a static VLAN ID (used when the authentication service does not provide a VLAN assignment) and DpskWlanAdvancedCustomization is optionally used for advanced customizations (see below). Note that configuring a AAA server is not required for a DPSK network because it’s provided by the RUCKUS cloud. DpskPassphraseGeneration is used to configure the syntax for the DPSKs (i.e., the pre-shared key values) supplied to your end users.
CloudpathCloudpathNetworkA Cloudpath “network” is comprised of two distinct WLANs. The first is an onboarding network in which clients are enrolled/onboarded, obtaining a security credential in the process. The second is a secure network which authenticates end users with their newly-issued credential. The onboarding network uses captive portal authentication and the secure network uses 802.1X-based authentication. Note that in order to use this type of network, customers must have a Cloudpath account (different than the account used to access the RUCKUS cloud). Some of the fields needed to configure a Cloudpath network must be copy/pasted from your Cloudpath server account. The schema objects used to configure a Cloudpath network are “AAAWlan” and “AAAWlanAdvancedCustomization” (for the secure WLAN, see below for more details), “HotspotWlan” (for the onboarding network) and “CloudpathPortal” for the captive portal configuration. Note that advanced customization of the HotspotWlan object is not supported.
Enterprise AAA
(802.1X)
AAANetworkWireless network in which clients are authenticated using 802.1X and an EAP method. Thus, an authentication server (aka AAA server) and optionally an accounting server are needed and are configured using the AAANetwork schema object. Configuring an enterprise AAA network involves the use of two other schema objects, “AAAWlan” and “AAAWlanAdvancedCustomization”. AAAWlan is used to configure the SSID and a static VLAN ID (used when the authentication service does not provide a VLAN assignment). “AAAWlanAdvancedCustomization” is used for advanced customizations (see below).
Captive PortalGuestNetwork

Wireless network in which clients are authenticated using a captive portal; over-the-air communication between the AP and clients can be open (no encryption) or secured by a passphrase.

Configuring a guest network involves the use of 4 main schema objects, “GuestWlan”, “GuestPage”, “GuestPortal” and “GuestWlanAdvancedCustomization”. You can configure an external portal provider or use the portal provided by the RUCKUS cloud. If you choose the latter, GuestPage configures the branding and text for the portal page. GuestWlan is used to configure the SSID, a static VLAN ID, WLAN security and whether MAC address authentication is used in addition to the captive portal. If used and the client’s MAC address is known to the authentication server (aka AAA server), captive portal authentication can be bypassed depending on the value of the property, “bypassCPUsingMacAddressAuthentication”. If WLAN security is other than “None”, management frame protection (802.11w) can be configured.

RUCKUS cloud supports WiFi4EU, applicable to public networks deployed in Europe. This option is configured using the GuestPage schema object.

The object, GuestPortal, determines the type of captive portal to be used for the WLAN. The options are:

  • Click-through — end users just need to accept the terms and conditions in order to access the network. The schema object, “GuestPage”, is used to provision the terms and conditions.
  • Self sign-in — end users can sign in with their social media credential or register their details in the portal to obtain a password via SMS. Use of social media credentials is chosen by including a “SocialIdentities” object in GuestPortal. If included, an OAUTH login flow with one or more of the following organizations can be used: Facebook, Google, LinkedIn or Twitter. For each organization, you can choose to use the RUCKUS’ application or your own. One reason to use your own is if you would like to apply your organization’s branding to the login page. If you use your own, you’ll need to configure your application ID and secret. Note that social media companies might refer to them as client ID and secret.
  • Host approval — end users register their details in the portal, including the person’s email address that’s hosting their visit. The host needs to approve their request in order for them to access the guest network (the email the host receives includes “clickable” links to approve the request). If this type of captive portal is chosen, then a “HostGuestConfig” schema object should be included in GuestPortal. It’s recommended to put your organization’s email domain in as a “hostDomain” property — if present, RUCKUS cloud ensures the request-for-approval email is sent to someone in your organization.
  • Guest pass — end users sign in with personal password which they get in advance from this network’s administrators. See the “Guest User” API group.
  • 3rd party (WISPr) — end users sign in using a 3rd-party captive portal, authenticated by a AAA server. This option is experimental in this release.

“GuestWlanAdvancedCustomization” is used for advanced customizations (see below).

OpenOpenNetworkWireless network in which clients just join without any authentication or over-the-air security. Note: this type of network is considered insecure and is not recommended. Configuring an open network involves the use of two other schema objects, “OpenWlan” and “OpenWlanAdvancedCustomization”. OpenWlan is used to configure the SSID and a static VLAN ID. “OpenWlanAdvancedCustomization” is used for advanced customizations (see below).
All WLAN types except “HotspotWlan” provide advanced customization, which support the following features. Note that this is list of salient features, but is not comprehensive. Please refer to the detailed documentation for “Create Network” to see all the features (be sure to click on the gray “>” symbols).
  • Client device management by configuring and applying policies: layer-2 and layer-3 ACL policies, device policies, application policies and client isolation.
  • Applying a Wi-Fi calling profile, VLAN pool and/or syslog server profile to the WLAN.
  • Configuring dynamic VLANs on the WLAN. When configured, an attribute in an RADIUS authentication response assigns the client device to a specific VLAN.
  • WLAN-based radio optimizations consisting of fast roaming (802.11r), neighbor reporting (802.11k), band balancing (balances clients between the 2.4- and 5-GHz bands), load balancing (balances clients between different APs sharing an SSID) and optimized connectivity experience (OCE).
  • Application of downstream and upstream rate limiting for the aggregate of client devices and/or per client device associated to the WLAN.
  • Applying DoS mitigation features such as ARP and DHCP request rate limiting to the WLAN.

Get Network

Get the network details.

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
Example
{
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadiusId": "string",
  • "accountingRadiusId": "string",
  • "tenantId": "string",
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Update Network

Update a network, including nested details.

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
type
required
string
required
object (AAAWlan)

WLAN

authRadiusId
string
accountingRadiusId
string
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
description
string [ 0 .. 255 ] characters

Responses

Request samples

Content type
application/json
Example
{
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadiusId": "string",
  • "accountingRadiusId": "string",
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Network

Delete a network.

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Networks

Get the network list.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
Example
{
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadiusId": "string",
  • "accountingRadiusId": "string",
  • "tenantId": "string",
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Create Network

Create a new network.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
type
required
string
required
object (AAAWlan)

WLAN

authRadiusId
string
accountingRadiusId
string
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
description
string [ 0 .. 255 ] characters

Responses

Request samples

Content type
application/json
Example
{
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadiusId": "string",
  • "accountingRadiusId": "string",
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Networks

Delete a list of networks.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Network (Deep)

Get network details, including nested details.

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
Example
{
  • "description": "string",
  • "venues": [
    ],
  • "id": "string",
  • "tenantId": "string",
  • "name": "string",
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadius": {
    },
  • "accountingRadius": {
    }
}

Update Network (Deep)

Update a network

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
description
string [ 0 .. 255 ] characters
Array of objects (NetworkVenue)
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
type
required
string
required
object (AAAWlan)

WLAN

required
object (Radius)

Primary and secondary RADIUS servers

object (Radius)

Primary and secondary RADIUS servers

Responses

Request samples

Content type
application/json
Example
{
  • "description": "string",
  • "venues": [
    ],
  • "id": "string",
  • "tenantId": "string",
  • "name": "string",
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadius": {
    },
  • "accountingRadius": {
    }
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Create Network (Deep)

Create a new network (deep).

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
description
string [ 0 .. 255 ] characters
Array of objects (NetworkVenue)
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
type
required
string
required
object (AAAWlan)

WLAN

required
object (Radius)

Primary and secondary RADIUS servers

object (Radius)

Primary and secondary RADIUS servers

Responses

Request samples

Content type
application/json
Example
{
  • "description": "string",
  • "venues": [
    ],
  • "id": "string",
  • "tenantId": "string",
  • "name": "string",
  • "type": "aaa",
  • "wlan": {
    },
  • "authRadius": {
    },
  • "accountingRadius": {
    }
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Validate X509 Certificates

Validate the X509 certificate chain issued by a trusted CA.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
required
object (X509Certificate)

X509 certifcate

Array of objects (X509Certificate)
info
string

Responses

Request samples

Content type
application/json
{
  • "rootCert": {
    },
  • "interCerts": [
    ],
  • "info": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "errors": [
    ],
  • "downloadUrl": "string"
}

Network-Venue

Manage network activation in venues.

Note that simply creating a WLAN (network) does not deploy it to a venue's APs. To deploy a WLAN, it must be “activated” on a venue. When a network is activated, it can be activated for all the APs in the venue or just on certain AP groups (cf. “Create Network-Venue" description). Also, the network can be activated on a schedule so that it will enabled only during specified times of a day and days of a week — i.e., it will automatically be turned on and off per the schedule.

Get Network-Venue activation

Get the network-venue activation details.

path Parameters
networkVenueId
required
string

Network-Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venueId": "string",
  • "networkId": "string",
  • "apGroups": [
    ],
  • "scheduler": {
    },
  • "isAllApGroups": true,
  • "allApGroupsVlanId": 1,
  • "vlanPoolId": "string",
  • "allApGroupsRadio": "RadioEnum.Both",
  • "id": "string"
}

Update Network-Venue

Update a network-venue activation.

path Parameters
networkVenueId
required
string

Network-Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
venueId
string
networkId
string
Array of objects (NetworkApGroup)
object (NetworkVenueScheduler)

Network-Venue Scheduler

isAllApGroups
boolean
Default: true
allApGroupsVlanId
integer <int32> [ 1 .. 4094 ]
vlanPoolId
string
allApGroupsRadio
string
Default: "RadioEnum.Both"
Enum: "Both" "2.4-GHz" "5-GHz"

Responses

Request samples

Content type
application/json
{
  • "venueId": "string",
  • "networkId": "string",
  • "apGroups": [
    ],
  • "scheduler": {
    },
  • "isAllApGroups": true,
  • "allApGroupsVlanId": 1,
  • "vlanPoolId": "string",
  • "allApGroupsRadio": "RadioEnum.Both"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Network-Venue

Delete a network-venue activation.

path Parameters
networkVenueId
required
string

Network-Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Network-Venue activation by Network and Venue

Get a network-venue activation by network and venue.

path Parameters
networkId
required
string

Network ID

venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venueId": "string",
  • "networkId": "string",
  • "apGroups": [
    ],
  • "scheduler": {
    },
  • "isAllApGroups": true,
  • "allApGroupsVlanId": 1,
  • "vlanPoolId": "string",
  • "allApGroupsRadio": "RadioEnum.Both",
  • "id": "string"
}

Create Network-Venue

Create a new network-venue activation.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
venueId
string
networkId
string
Array of objects (NetworkApGroup)
object (NetworkVenueScheduler)

Network-Venue Scheduler

isAllApGroups
boolean
Default: true
allApGroupsVlanId
integer <int32> [ 1 .. 4094 ]
vlanPoolId
string
allApGroupsRadio
string
Default: "RadioEnum.Both"
Enum: "Both" "2.4-GHz" "5-GHz"

Responses

Request samples

Content type
application/json
{
  • "venueId": "string",
  • "networkId": "string",
  • "apGroups": [
    ],
  • "scheduler": {
    },
  • "isAllApGroups": true,
  • "allApGroupsVlanId": 1,
  • "vlanPoolId": "string",
  • "allApGroupsRadio": "RadioEnum.Both"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Network-Venues

Delete a list of network-venue activations.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Network-Venues activations

Get network-venue activation list.

path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Venue-Network Activations

Get venue-network activation list

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

L2AclPolicy

Manage layer-2 ACL (access control list) policies. A layer-2 ACL policy is configured on a wireless network by including its ID in the advanced customization schema object used to create the network.

Layer-2 ACL policies allow an administrator control over the client devices permitted on a WLAN. A layer-2 policy includes a list of MAC addresses. The policy can be set up as a whitelist or a blacklist.

  • Whitelist: all devices on the list are allowed; all others are blocked. If this style is desired, in the request object, “L2AclPolicy”, set the “access” property to block.
  • Blacklist: all devices on the list are blocked; all others are allowed. If this style is desired, set the “access” property to allow.
Note that some client devices (e.g., smartphones) randomize their MAC address when discovering and joining WLANs, thus limiting the effectiveness of layer-2 ACL policies.

Get Layer-2 ACL Policy By Query

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
fields
Array of strings
page
integer <int32>
Default: 1
pageSize
integer <int32>
Default: 25
sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "page": 1,
  • "pageSize": 25,
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "fields": [
    ],
  • "totalCount": 0,
  • "totalPages": 0,
  • "page": 0
}

Get Layer-2 ACL Policy

path Parameters
l2AclPolicyId
required
string

L2Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "access": "AccessEnum.BLOCK",
  • "macAddresses": [
    ],
  • "id": "string"
}

Update Layer-2 ACL Policy

path Parameters
l2AclPolicyId
required
string

L2Acl Policy ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string
access
string
Default: "AccessEnum.BLOCK"
Enum: "ALLOW" "BLOCK"
macAddresses
Array of strings [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "access": "AccessEnum.BLOCK",
  • "macAddresses": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Layer-2 ACL Policy

path Parameters
l2AclPolicyId
required
string

L2Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get All Layer-2 ACL Policies

path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Layer-2 ACL Policy

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string
access
string
Default: "AccessEnum.BLOCK"
Enum: "ALLOW" "BLOCK"
macAddresses
Array of strings [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "access": "AccessEnum.BLOCK",
  • "macAddresses": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Layer-2 ACL Policies

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

L3AclPolicy

Manage layer-3 ACL (access control list) policies. A layer-3 ACL policy is configured on a wireless network by including its ID in the advanced customization schema object used to create the network.

Layer-3 ACL policies allow an administrator control over the traffic sent and received by a client device. Layer-3 ACL policies are an ordered set of rules applied to all client devices associated to a wireless network. Each rule yields an allow/block decision and is applied to the packet (IP datagram) if it matches the rule’s 5-tuple. If the outcome is allow, the packet is forwarded; if the outcome is block, the packet is filtered (dropped). The rules are processed in order until an allow or block decision is reached. If the 5-tuple in the first rule does not match the packet, the next rule is evaluated and so on. The last rule in the set is either “allow all” or “block all” so that if none of the rules match, an unambiguous outcome is still reached. All layer-3 ACLs are applied to packets upon ingress to an AP. The 5-tuple is comprised of the following fields taken from the packet’s IP header:

  • Protocol.
  • IPv4 source address, comprised of an IPv4 address and mask.
  • IPv4 destination address, comprised of an IPv4 address and mask.
  • Source port; this can be a single port or a range of ports. Source port is not used when the protocol does not contain one.
  • Destination port; this can be a single port or a range of ports. Destination port is not used when the protocol does not contain one.
Notes:
  • As described above, the last rule (aka default rule) in the ordered set should be “allow all” or “block all”. The default rule is configured using the “defaultAccess” property in the “L3AclPolicy” schema object.
  • If the packet is for a tunneled (or other) protocol which contains more than one IP header, the 5-tuple is taken from the outermost IP header.
  • If a packet undergoes IP fragmentation prior to arriving at an AP, its source and destination ports might not be in the datagram. In this case, rules which include source and destination ports won’t match these fragmented packets.

Get All Layer-3 ACL Policies

path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Layer-3 ACL Policy

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string
defaultAccess
string
Default: "AccessEnum.ALLOW"
Enum: "ALLOW" "BLOCK"
Array of objects (L3Rule) [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "l3Rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Layer-3 ACL Policies

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Layer-3 ACL Policy

path Parameters
l3AclPolicyId
required
string

L3Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "l3Rules": [
    ],
  • "id": "string"
}

Update Layer-3 ACL Policy

path Parameters
l3AclPolicyId
required
string

L3Acl Policy ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string
defaultAccess
string
Default: "AccessEnum.ALLOW"
Enum: "ALLOW" "BLOCK"
Array of objects (L3Rule) [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "l3Rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Layer-3 ACL Policy

path Parameters
l3AclPolicyId
required
string

L3Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Layer-3 ACL Policy By Query

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
fields
Array of strings
page
integer <int32>
Default: 1
pageSize
integer <int32>
Default: 25
sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "page": 1,
  • "pageSize": 25,
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "fields": [
    ],
  • "totalCount": 0,
  • "totalPages": 0,
  • "page": 0
}

Device Policy

Manage device policies. A device policy policy is configured on a wireless network by including its ID in the advanced customization schema object used to create the network.

Device policies allow an administrator control over the manner in which devices, having certain operating systems, use your wireless network. After a device joins the WLAN, the RUCKUS cloud determines the brand of OS installed on the device. Based on that brand, device policy can allow continued access or deny access. In the latter case, the device is disconnected from the network. Additionally, downstream and/or upstream rate limiting can be applied as well as assignment of the device to a specific VLAN.

Get Device-Policies

Get the device-policy list.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
fields
Array of strings
page
integer <int32>
Default: 1
pageSize
integer <int32>
Default: 25
sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "page": 1,
  • "pageSize": 25,
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "fields": [
    ],
  • "totalCount": 0,
  • "totalPages": 0,
  • "page": 0
}

Get All Device Policies

path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Device-Policy

Create a new device-policy.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string [ 2 .. 180 ] characters
defaultAccess
string
Default: "AccessEnum.ALLOW"
Enum: "ALLOW" "BLOCK"
Array of objects (DevicePolicyRule) [ 1 .. 32 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Device-Policies

Delete a list of device-policies.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Device-Policy

Get the device-policy details.

path Parameters
devicePolicyId
required
string

Device-policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "tenantId": "string",
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "rules": [
    ],
  • "id": "string"
}

Update Device-Policy

Update a device-policy.

path Parameters
devicePolicyId
required
string

Device-policy ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string [ 2 .. 180 ] characters
defaultAccess
string
Default: "AccessEnum.ALLOW"
Enum: "ALLOW" "BLOCK"
Array of objects (DevicePolicyRule) [ 1 .. 32 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "defaultAccess": "AccessEnum.ALLOW",
  • "rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Device-Policy

Delete a device-policy.

path Parameters
devicePolicyId
required
string

Device-policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Application Policy

Manage application policies. An application policy is configured on a wireless network by including its ID in the advanced customization schema object used to create the network.

Application policies allow an administrator control over the applications client devices are permitted to access via a WLAN. Administrators can block access to particular services, allow rate-limited access or modify the QoS policy used for access. For example, an administrator could use an application policy rule to block access to a social media website.

Get Application Policies

Use this API command to get the application policy list.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Application Policy

Use this API command to create a new application policy

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string [ 0 .. 64 ] characters
Array of objects (ApplicationPolicyRule) [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Application Policies

Use this API command to delete an application policy list

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Application Policy

Use this API command to get the application policy details.

path Parameters
applicationPolicyId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "tenantId": "string",
  • "name": "string",
  • "description": "string",
  • "rules": [
    ],
  • "id": "string"
}

Update Application Policy

Use this API command to update application policy

path Parameters
applicationPolicyId
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 2 .. 32 ] characters
description
string [ 0 .. 64 ] characters
Array of objects (ApplicationPolicyRule) [ 1 .. 128 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "rules": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Application Policy

Use this API command to delete application policy

path Parameters
applicationPolicyId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Application Policy By Query

Use this API command to get the application policy list by query

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
fields
Array of strings
page
integer <int32>
Default: 1
pageSize
integer <int32>
Default: 25
sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "page": 1,
  • "pageSize": 25,
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "fields": [
    ],
  • "totalCount": 0,
  • "totalPages": 0,
  • "page": 0
}

DHCP Service

Manage DHCP service profiles.

Get DHCP Service-Profiles

Get list of DHCP service-profiles.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
excludeDefault
boolean
Default: false

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create DHCP Service-Profile

Create a new DHCP service-profile.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array of objects (IdAndName)
name
required
string [ 2 .. 32 ] characters ^[!-~]([ -~])*[!-~]$
vlanId
required
integer <int32> [ 1 .. 4094 ]
subnetAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
subnetMask
required
string^(?:(?:(?:255\.){3}(?:252|248|240|224|192|128...
startIpAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
endIpAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
primaryDnsIp
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
secondaryDnsIp
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
leaseTimeHours
required
integer <int32> [ 0 .. 24 ]
leaseTimeMinutes
required
integer <int32> [ 0 .. 59 ]

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "name": "string",
  • "vlanId": 1,
  • "subnetAddress": "string",
  • "subnetMask": "string",
  • "startIpAddress": "string",
  • "endIpAddress": "string",
  • "primaryDnsIp": "string",
  • "secondaryDnsIp": "string",
  • "leaseTimeHours": 0,
  • "leaseTimeMinutes": 0
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk DHCP Service-Profiles

Delete a list of DHCP service-profiles.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get DHCP Service-Profile

Get the DHCP service-profile details.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venues": [
    ],
  • "name": "string",
  • "vlanId": 1,
  • "subnetAddress": "string",
  • "subnetMask": "string",
  • "startIpAddress": "string",
  • "endIpAddress": "string",
  • "primaryDnsIp": "string",
  • "secondaryDnsIp": "string",
  • "leaseTimeHours": 0,
  • "leaseTimeMinutes": 0,
  • "id": "string"
}

Update DHCP Service Profile

Update a DHCP service-profile.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array of objects (IdAndName)
name
required
string [ 2 .. 32 ] characters ^[!-~]([ -~])*[!-~]$
vlanId
required
integer <int32> [ 1 .. 4094 ]
subnetAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
subnetMask
required
string^(?:(?:(?:255\.){3}(?:252|248|240|224|192|128...
startIpAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
endIpAddress
required
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
primaryDnsIp
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
secondaryDnsIp
string^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\...
leaseTimeHours
required
integer <int32> [ 0 .. 24 ]
leaseTimeMinutes
required
integer <int32> [ 0 .. 59 ]

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "name": "string",
  • "vlanId": 1,
  • "subnetAddress": "string",
  • "subnetMask": "string",
  • "startIpAddress": "string",
  • "endIpAddress": "string",
  • "primaryDnsIp": "string",
  • "secondaryDnsIp": "string",
  • "leaseTimeHours": 0,
  • "leaseTimeMinutes": 0
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete DHCP Service-Profile

Delete a DHCP service-profile.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Venue DHCP Service Profiles

Get a venue's DHCP service profiles.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

DHCP Service-Venue

Manage DHCP service-profile assignments to venues. Note that simply creating a DHCP service profile does not deploy it to a venue's AP(s). To deploy a DHCP service profile, it must be “bound” to a venue.

Notes:

  • When DHCP service is deployed in a venue, a DHCP server instance is deployed on each and every AP in the venue. The APs cooperate to ensure that IP address assignments are not duplicated.
  • When DHCP service profiles are deployed in a venue, they’re matched with and deployed to the WLAN having the same VLAN ID as the profile. Thus, if the venue has multiple wireless networks activated, multiple DHCP server profiles can be correctly matched to them.
  • Use endpoints in the “AP” API group to retrieve operational data on DHCP leases and profile usage.

Update DHCP Service-Profile Venue Bindings

Update the DHCP service profiles bound to a venue.

path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": [
    ]
}

Get DHCP Service-Profile Venue Bindings

Get the list of venues using a DHCP service profile.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Bind DHCP Service-Profile Venues

Bind a DHCP service profile to a list of venues.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": [
    ]
}

Unbind DHCP Service-Profile Venues

Unbind a DHCP service profile from a list of venues.

path Parameters
dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Bind Venue DHCP Service-Profile

Bind a DHCP service profile to a venue.

path Parameters
venueId
required
string

Venue ID

dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Unbind Venue DHCP Service-Profile

Unbind a DHCP service profile from a venue.

path Parameters
venueId
required
string

Venue ID

dhcpServiceProfileId
required
string

DHCP Service-Profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

VLAN Pool

Manage VLAN pools. A VLAN pool is configured on a wireless network by including its ID in the advanced customization schema object used to create the network or the schema object used to create a network-venue.

When Wi-Fi is deployed in a high density environment such as a stadium or a university campus, the number of IP addresses required for client devices can easily run into the thousands. Placing thousands of clients into a single large subnet or VLAN can result in degraded performance due to factors like broadcast and multicast traffic. VLAN pooling can address this problem. VLAN pooling allows administrators to a deploy pool of multiple VLANs to which clients are assigned, thereby automatically segmenting large groups of clients into multiple smaller subgroups, even when connected to the same SSID. As a client device joins the WLAN, its VLAN is assigned to one of the VLANs in the pool based on a hash of the client’s MAC address.

Get Vlan Pool

Use this API command to get the VLAN pool details.

path Parameters
vlanPoolId
required
string

VLAN Pool ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "tenantId": "string",
  • "name": "string",
  • "description": "string",
  • "vlanMembers": [
    ],
  • "id": "string"
}

Update Vlan Pool

Use this API command to update a VLAN pool

path Parameters
vlanPoolId
required
string

VLAN Pool ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 1 .. 32 ] characters
description
string [ 0 .. 64 ] characters
vlanMembers
required
Array of strings [ 0 .. 16 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "vlanMembers": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Vlan Pool

Use this API command to delete a VLAN pool

path Parameters
vlanPoolId
required
string

VLAN Pool ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Vlan Pools

Use this API command to get the VLAN pool list.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Vlan Pool

Use this API command to create a new VLAN pool

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
name
required
string [ 1 .. 32 ] characters
description
string [ 0 .. 64 ] characters
vlanMembers
required
Array of strings [ 0 .. 16 ] items

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "vlanMembers": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Vlan Pools

Use this API command to delete a VLAN pool list

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Vlan Pool By Query

Use this API command to get the VLAN pool list by query

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
fields
Array of strings
page
integer <int32>
Default: 1
pageSize
integer <int32>
Default: 25
sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "page": 1,
  • "pageSize": 25,
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "fields": [
    ],
  • "totalCount": 0,
  • "totalPages": 0,
  • "page": 0
}

Wi-Fi Calling

Manage Wi-Fi calling profiles. A Wi-Fi calling profile is configured on a wireless network by including its ID in the advanced customization schema object used to create the network.

Get Wi-Fi Calling Profiles

Get the Wi-Fi Calling profiles.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Wi-Fi Calling Profile

Create a new Wi-Fi Calling profile.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
profileName
required
string [ 2 .. 32 ] characters (?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
description
string [ 2 .. 180 ] characters
qosPriority
string
Default: "QosPriorityEnum.WIFICALLING_PRI_VOICE"
Enum: "WIFICALLING_PRI_VOICE" "WIFICALLING_PRI_VIDEO" "WIFICALLING_PRI_BE" "WIFICALLING_PRI_BG"
required
Array of objects (Epdg) [ 1 .. 5 ] items

Responses

Request samples

Content type
application/json
{
  • "profileName": "string",
  • "description": "string",
  • "qosPriority": "QosPriorityEnum.WIFICALLING_PRI_VOICE",
  • "ePDGs": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Bulk Wi-Fi Calling Profiles

Delete a list of Wi-Fi Calling profiles.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Get Wi-Fi Calling Profile

Get the Wi-Fi Calling profile details.

path Parameters
wifiCallingProfileId
required
string

Wi-Fi calling profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "profileName": "string",
  • "description": "string",
  • "qosPriority": "QosPriorityEnum.WIFICALLING_PRI_VOICE",
  • "id": "string",
  • "ePDGs": [
    ]
}

Update Wi-Fi Calling Profile

Update a Wi-Fi Calling profile.

path Parameters
wifiCallingProfileId
required
string

Wi-Fi calling profile ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
profileName
required
string [ 2 .. 32 ] characters (?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
description
string [ 2 .. 180 ] characters
qosPriority
string
Default: "QosPriorityEnum.WIFICALLING_PRI_VOICE"
Enum: "WIFICALLING_PRI_VOICE" "WIFICALLING_PRI_VIDEO" "WIFICALLING_PRI_BE" "WIFICALLING_PRI_BG"
required
Array of objects (Epdg) [ 1 .. 5 ] items

Responses

Request samples

Content type
application/json
{
  • "profileName": "string",
  • "description": "string",
  • "qosPriority": "QosPriorityEnum.WIFICALLING_PRI_VOICE",
  • "ePDGs": [
    ]
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete Wi-Fi Calling Profile

Delete a Wi-Fi Calling profile.

path Parameters
wifiCallingProfileId
required
string

Wi-Fi calling profile ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

vSPoT

Manage vSPoT (virtualized smart positioning technology) servers. A vSPoT server is configured on a venue by using endpoints in the “AP-Venue” API group.

Note that vSPoT servers are configured on venues (as opposed to wireless networks). vSPoT servers estimate the location of all client devices in a venue regardless of the wireless network with which they’re connected.

Get Vspots

Get the vSPoT server details.

path Parameters
tenantId
required
string

Tenant ID

query Parameters
page
integer <int32>
size
integer <int32>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create vSPoT

Create a new vSPoT server.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array of objects (IdAndName)
serverName
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
vspotGlobalId
string
serverAddress
required
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...
port
integer <int32> [ 1 .. 65535 ]
Default: 8883
password
required
string [ 8 .. 63 ] characters ^(?!(`|\$))[!-~]{8,63}$

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "serverName": "string",
  • "vspotGlobalId": "string",
  • "serverAddress": "string",
  • "port": 8883,
  • "password": "stringst"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get vSPoTs

Get the vSPoT server list.

path Parameters
vspotId
required
string

vSPoT ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "venues": [
    ],
  • "serverName": "string",
  • "vspotGlobalId": "string",
  • "serverAddress": "string",
  • "port": 8883,
  • "password": "stringst",
  • "id": "string"
}

Update vSPoT

Update a vSPoT server.

path Parameters
vspotId
required
string

vSPoT ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
Array of objects (IdAndName)
serverName
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
vspotGlobalId
string
serverAddress
required
string(^((22[0-3]|2[0-1][0-9]|1[0-9][0-9]|[1-9][0-9...
port
integer <int32> [ 1 .. 65535 ]
Default: 8883
password
required
string [ 8 .. 63 ] characters ^(?!(`|\$))[!-~]{8,63}$

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "serverName": "string",
  • "vspotGlobalId": "string",
  • "serverAddress": "string",
  • "port": 8883,
  • "password": "stringst"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Delete vSPoT

Delete a vSPoT server.

path Parameters
vspotId
required
string

vSPoT ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": { }
}

Client Disconnect

Disconnect clients (i.e., end-user devices).

Disconnect Clients

Disconnect a list of clients.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
Array ()
clientMac
required
string
apMac
required
string

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "errors": [
    ],
  • "downloadUrl": "string"
}

Guest User

Manage guest passes for guest users.

Get Guest-user List

path Parameters
tenantId
required
string

tenantId

query Parameters
page
string
Default: "1"

page

size
string
Default: "50"

size

Responses

Response samples

Content type
application/json
{
  • "content": [
    ],
  • "totalElements": 0
}

Add Guest-users

path Parameters
tenantId
required
string

tenantId

Request Body schema: application/json

guestsPayload

Array ()
deliveryMethods
required
Array of strings
Items Enum: "MAIL" "SMS" "STUB" "PRINT"

At least one

disabled
boolean
email
string
required
object (GuestUserExpiration)
maxDevices
required
integer <int32>

Maximum number of devices on which the guest pass can be used simultaneously. Set to -1 for unlimited number of devices.

mobilePhoneNumber
required
string
name
required
string
networkId
required
string

The network that the guest can connected to

notes
string [ 0 .. 180 ] characters

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": "string"
}

Delete Guest-users

path Parameters
tenantId
required
string

tenantId

Request Body schema: */*

ids

Array ()
string

Responses

Response samples

Content type
application/json
{
  • "requestId": "string"
}

Import Guest-users

path Parameters
tenantId
required
string

tenantId

query Parameters
deliveryMethods
Array of strings
Items Enum: "MAIL" "SMS" "STUB" "PRINT"

deliveryMethods

expiration.activationType
required
string
Enum: "Creation" "Login"

expiration.activationType

expiration.duration
required
integer <int32> [ 1 .. 8760 ]

expiration.duration

expiration.unit
required
string
Enum: "Minute" "Hour" "Day" "Week" "Month" "Year" "Never"

expiration.unit

maxDevices
required
integer <int32>

maxDevices

networkId
required
string

networkId

Request Body schema: multipart/form-data
file
required
string <binary>

file

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Get Guest-user by ID

path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

Content type
application/json
{
  • "createdDate": 0,
  • "deliveryMethods": [
    ],
  • "disabled": false,
  • "email": "string",
  • "expiration": {
    },
  • "expirationDate": 0,
  • "guestUserType": "GuestPass",
  • "id": "string",
  • "lastModified": 0,
  • "macAddresses": [
    ],
  • "maxDevices": 3,
  • "mobilePhoneNumber": "string",
  • "name": "string",
  • "networkId": "string",
  • "notes": "string",
  • "password": "string",
  • "ssid": "string"
}

Delete Guest-user by ID

path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

Content type
application/json
{
  • "requestId": "string"
}

Disable Guest-user

path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

Content type
application/json
{
  • "requestId": "string"
}

Enable Guest-user

path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

Content type
application/json
{
  • "requestId": "string"
}

Regenerate Guest-user Credential

path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Request Body schema: application/json

deliveryMethods

Array ()
string
Enum: "MAIL" "SMS" "STUB" "PRINT"

Responses

Request samples

Content type
application/json
[
  • "MAIL"
]

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

Recovery

Manage the recovery PSK.

Get Recovery PSK

Get the PSK for the recovery network.

path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "psk": "string",
  • "tenantId": "string",
  • "obsolete": false
}

Update Recovery PSK

Update the PSK for the recovery network.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
psk
string^([0-9]{4}){4}$
obsolete
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "psk": "string",
  • "obsolete": false
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "response": {
    }
}

View

View Wi-Fi information. Note: this group of endpoints is used to view operational data. They don't provide the means to manage configuration.

Get Clients

Get client (i.e., end-user devices) parameters and operational data.

path Parameters
tenantId
required
string

tenantId

query Parameters
apSerialNumber
string

apSerialNumber

page
string

page

size
string

size

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Client by MAC

Get extended set of parameters and operational data for the client having this MAC address.

path Parameters
mac
required
string

mac

tenantId
required
string

tenantId

Responses

Response samples

Content type
application/json
{
  • "apMac": "string",
  • "apName": "string",
  • "apSerialNumber": "string",
  • "bssid": "string",
  • "connectedSince": "string",
  • "hostname": "string",
  • "ip": "string",
  • "mac": "string",
  • "networkId": "string",
  • "noiseFloor_dBm": 0,
  • "osType": "string",
  • "radioChannel": 0,
  • "receiveSignalStrength_dBm": 0,
  • "rxBytes": 0,
  • "rxPackets": 0,
  • "snr_dB": 0,
  • "ssid": "string",
  • "switchMac": "string",
  • "switchName": "string",
  • "switchSerialNumber": "string",
  • "txBytes": 0,
  • "txDropDataPacket": 0,
  • "txPackets": 0,
  • "username": "string",
  • "venueId": "string",
  • "venueName": "string",
  • "vlan": 0
}

Get Venue AP Models

Get the AP models deployed in this venue.

path Parameters
tenant_id
required
string

Tenant ID

venue_id
required
string

Venue ID

Responses

Response samples

Content type
application/json
{
  • "models": [
    ]
}

Get APs

Get parameters and operational data for a list of APs.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

fields
Array of strings
object
Array of objects (MatchFieldDto)
multiSortFields
Array of strings
Array of objects (MustNotMatchFieldDto)
page
integer <int32>
object (EntryOfstringAndstring)
pageSize
integer <int32>
object (RangeFilterDto)
searchString
string
searchTargetFields
Array of strings
sortField
string
sortOrder
string
object (TermFieldDto)

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "filters": {
    },
  • "matchFields": [
    ],
  • "multiSortFields": [
    ],
  • "mustNotMatchField": [
    ],
  • "page": 0,
  • "pageByDate": {
    },
  • "pageSize": 0,
  • "rangeFilter": {
    },
  • "searchString": "string",
  • "searchTargetFields": [
    ],
  • "sortField": "string",
  • "sortOrder": "string",
  • "termField": {
    }
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "errorMessage": "string",
  • "fields": [
    ],
  • "objectId": "string",
  • "page": 0,
  • "subsequentQueries": [
    ],
  • "totalCount": 0
}

Get Mesh APs

Get parameters and operational data for a list of mesh APs.

path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

fields
Array of strings
object
Array of objects (MatchFieldDto)
multiSortFields
Array of strings
Array of objects (MustNotMatchFieldDto)
page
integer <int32>
object (EntryOfstringAndstring)
pageSize
integer <int32>
object (RangeFilterDto)
searchString
string
searchTargetFields
Array of strings
sortField
string
sortOrder
string
object (TermFieldDto)

Responses

Request samples

Content type
application/json
{
  • "fields": [
    ],
  • "filters": {
    },
  • "matchFields": [
    ],
  • "multiSortFields": [
    ],
  • "mustNotMatchField": [
    ],
  • "page": 0,
  • "pageByDate": {
    },
  • "pageSize": 0,
  • "rangeFilter": {
    },
  • "searchString": "string",
  • "searchTargetFields": [
    ],
  • "sortField": "string",
  • "sortOrder": "string",
  • "termField": {
    }
}

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "errorMessage": "string",
  • "fields": [
    ],
  • "objectId": "string",
  • "page": 0,
  • "subsequentQueries": [
    ],
  • "totalCount": 0
}