RUCKUS Cloud - Wi-Fi APIs and Model Documentation (v21.06.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.

RUCKUS Cloud API Documents

This document, Wi-Fi APIs and Model Documentation, is one of four documents describing the RUCKUS Cloud public API. Different API endpoints are described in each of the four documents, which are arranged according to the resources managed. Corresponding to each of the 4 HTML documents is an Open API v3 JSON document, which can be used to generate code for API clients.

Document NameResources Managed
wifi-ns-210611.htmlWi-Fi related resources. This document describes API endpoints related to managing your access points (APs) and wireless networks.
msp-ns-210611.htmlMSP & VAR related resources. This document describes API endpoints related to managing your customers and their networks.
platform-ns-210611.htmlPlatform related resources. This document describes API endpoints related to your account including administrators and their notification preferences, venues and your entitlements/licenses.
switch-ns-210611.htmlICX switch related resources. This document describes API endpoints related to managing your switches and wired networks.

Cloud Hosts

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

Deprecated API Endpoints


API clients may continue to use deprecated API endpoints for up to 6 months after the release was made generally available (GA). After that, official support for these deprecated endpoints concludes and they may be removed by RUCKUS at any time thereafter without further notice.

Release v21.06.11


The following endpoints were deprecated in release v21.06.11. The new (replacement) URL should be used instead.

Deprecated URLReplacement URL
/api/tenant/{tenantId}/wifi/ap/{serialNumber}/dhcp/api/tenant/{tenantId}/wifi/ap/{serialNumber}/dhcp/usage

Non-Backward Compatible Changes to Wi-Fi APIs

One of the new features in RUCKUS cloud version 21.04.12 is improved integration of Cloudpath services. As of v21.04.12, it’s possible to use Cloudpath AAA services for 802.1X, DPSK, Guest and Open (MAC address authentication) WLANs. Support for client-device onboarding using Cloudpath enrollment services was retained.

However, in making these changes, support for the API schema objects “CloudpathNetwork”, “CloudpathNetworkDeep”, “CloudpathPortal” and “HotspotWlan” was removed. As of v21.04.12, API clients using these objects will no longer work. Management of Cloudpath services is provided by the “Cloudpath” API group. Refer to this group’s description below for further information.

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.

Authentication

Token

API clients use an API-KEY to access REST endpoints. In order to obtain an API-KEY, an administrator uses the endpoints in the "API Client Authentication" group, available on all cloud hosts. The API-KEY issued will have the same access privileges (aka role) as the administrator who obtained the key. Please see document platform-ns-210611.html for details.

Security Scheme Type API Key
Header parameter name: Cookie

New Endpoints in Release

New API Endpoints in Existing Groups

API GroupNew SummaryNew Description
ViewGet GuestsGet guests.
ViewGet Cloudpath ServersGet a list of Cloudpath server information.

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.
PositionSet/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 by AP-Group

Get the APs in the AP-group.

Authorizations:
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
[
  • {
    }
]

Get APs

Get the AP list.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 APs DHCP Configurations

Get a list of AP DHCP configurations by AP serial number.

Authorizations:
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 Radio

Get AP radio details.

Authorizations:
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.

Authorizations:
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.4GHz.

object (ApRadioParams50G)

AP radio customization for 5GHz.

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.

Authorizations:
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.

Authorizations:
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,
  • "lanPorts": [
    ],
  • "useVenueSettings": false
}

Update AP LAN-Ports

Update LAN-ports of an AP.

Authorizations:
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
Array of objects (ApLanPort)
useVenueSettings
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "poeOut": false,
  • "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.

Authorizations:
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.

Authorizations:
path Parameters
serialNumber
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

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

Update AP Customization

Update the customization of an AP.

Authorizations:
path Parameters
serialNumber
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
object (ExternalAntenna)

External antenna settings

poeOut
boolean
Default: false
Array of objects (ApLanPort)
useVenueSettings
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "externalAntenna": {
    },
  • "poeOut": false,
  • "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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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

Command requesting this AP ping a host on the network.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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

Get DHCP pool usage.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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

Get packet capture state.

Authorizations:
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

Start packet capture.

Authorizations:
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

Stop packet capture.

Authorizations:
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.

Authorizations:
path Parameters
serialNumber
required
string

AP serialNumberVenueDhcpServiceSetting

tenantId
required
string

Tenant ID

Responses

Response samples

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

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.

Authorizations:
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 the update AP endpoint.

Authorizations:
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.

Authorizations:
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

Get the AP-group list.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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-Groups by Venue

Get the AP-group list by venue.

Authorizations:
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.

Authorizations:
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"
}

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 Venues

Get the venue list of Wi-Fi details.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

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

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Venue

Get the venue Wi-Fi details.

Authorizations:
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": {
    },
  • "denialOfServiceProtection": {
    },
  • "syslog": {
    },
  • "dhcpServiceSetting": {
    },
  • "lteBandLockChannels": [
    ],
  • "rogueAp": {
    },
  • "id": "string"
}

Update Mesh

Enable/disable the venue mesh.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
object (RadioParams24G)

Radio customization for 2.4GHz.

object (RadioParams50G)

Radio customization for 5GHz.

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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Get Venue DoS Protection

Get this venue's DoS protection.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "enabled": false,
  • "blockingPeriod": 60,
  • "failThreshold": 5,
  • "checkPeriod": 30
}

Update Venue DoS Protection

Update this venue's DoS protection.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
enabled
boolean
Default: false
blockingPeriod
integer <int32> [ 30 .. 600 ]
Default: 60
failThreshold
integer <int32> [ 2 .. 25 ]
Default: 5
checkPeriod
integer <int32> [ 30 .. 600 ]
Default: 30

Responses

Request samples

Content type
application/json
{
  • "enabled": false,
  • "blockingPeriod": 60,
  • "failThreshold": 5,
  • "checkPeriod": 30
}

Response samples

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

Get Venue vSPoT

Get the vSPoT details of a venue.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 LTE band lock channels of the venue.

Authorizations:
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 LTE band lock channels of the venue.

Authorizations:
path Parameters
venueId
required
string
tenantId
required
string

Tenant ID

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

SIM setting object.

object (SimSettings)

SIM setting 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 DHCP Service

Get a list of this venue’s DHCP service settings.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "enabled": false,
  • "mode": "DhcpModeEnum.EnableOnEachAPs",
  • "wanPortSelectionMode": "DhcpWanPortSelectionModeEnum.Dynamic",
  • "dhcpServiceProfileIds": [
    ],
  • "dhcpServiceAps": [
    ]
}

Update Venue DHCP Service

Update this venue’s DHCP service settings.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Request Body schema: application/json
enabled
boolean
Default: false
mode
string
Default: "DhcpModeEnum.EnableOnEachAPs"
Enum: "EnableOnEachAPs" "EnableOnMultipleAPs" "EnableOnHierarchicalAPs"
wanPortSelectionMode
string
Default: "DhcpWanPortSelectionModeEnum.Dynamic"
Enum: "Dynamic" "Manual"
dhcpServiceProfileIds
Array of strings
Array of objects (DhcpServiceAp)

Responses

Request samples

Content type
application/json
{
  • "enabled": false,
  • "mode": "DhcpModeEnum.EnableOnEachAPs",
  • "wanPortSelectionMode": "DhcpWanPortSelectionModeEnum.Dynamic",
  • "dhcpServiceProfileIds": [
    ],
  • "dhcpServiceAps": [
    ]
}

Response samples

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

Get Venue DHCP Pools

Get a list of the venue’s DHCP pools’ usage.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Venue DHCP Leases

Get a list of the venue’s DHCP leases.

Authorizations:
path Parameters
venueId
required
string

Venue ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Available LTE Bands

Get available LTE bands for each region.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

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. API endpoints in the “DPSK Passphrases” group are used to create and manage passphrases.
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.

Authorizations:
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",
  • "cloudpathServerId": "string",
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Update Network

Update this network, including nested details.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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",
  • "cloudpathServerId": "string",
  • "name": "string",
  • "description": "string",
  • "id": "string"
}

Create Network

Create a new network.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
networkId
required
string

Network ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Update Network (Deep)

Update a network and manage network-venue activations.

Authorizations:
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

object (Radius)

Primary and secondary radius servers.

object (Radius)

Primary and secondary radius servers.

Responses

Request samples

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

Response samples

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

Get External WISPr Providers

Get the list of external WISPr providers for a captive portal network. Note: these providers have integrated their service with the RUCKUS cloud.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

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

Get DPSK Passphrase Formats

Get the DPSK passphrase format list.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Network (Deep)

Create a new network (deep).

Authorizations:
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

object (Radius)

Primary and secondary radius servers.

object (Radius)

Primary and secondary radius servers.

Responses

Request samples

Content type
application/json
Example
{
  • "description": "string",
  • "id": "string",
  • "venues": [
    ],
  • "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.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

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

X509 certificate

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.

Authorizations:
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 this network-venue activation.

Authorizations:
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.

Authorizations:
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

Get a network-venue activation by network and venue.

Authorizations:
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.

Authorizations:
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 activation.

Authorizations:
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 Activation

Get network-venue activation list.

Authorizations:
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 Activation

Get venue-network activation list.

Authorizations:
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
[
  • {
    }
]

Cloudpath

API endpoints in this group provide the capability to create and manage Cloudpath service. Note that in order to use Cloudpath service, customers must have a Cloudpath account (different than the account used to access the RUCKUS cloud).

Cloudpath service can be configured on the WLAN types described in the table below.

WLAN TypeNetwork Schema ObjectsDescription
802.1X AAANetworkCloudpath provides 802.1X authentication and authorization policy services. Authentication is based on EAP methods and credentials configured using your Cloudpath account. End-user accounts, which are containers of authorization policy, are also configured in your Cloudpath account.
DPSKDpskNetworkCloudpath provides DPSK authentication and authorization policy services. DPSK passphrases and end-user accounts (for authorization policy) are configured in your Cloudpath account.
GuestGuestNetworkCloudpath provides MAC address authentication and authorization policy services. If MAC addresses are registered (configured) in Cloudpath service and “bypassCPUsingMacAddressAuthentication” in the “GuestWlan” object is set to true, then the captive portal will be bypassed when a client device having a registered MAC address joins the WLAN. In addition, end-user accounts (containers for authorization policy) can be configured in Cloudpath service. Lastly, if desired, a Cloudpath guest portal can also be configured.
OpenOpenNetworkCloudpath provides MAC address authentication and authorization policy services. MAC addresses to authenticate along with their corresponding end-user accounts for authorization policy are configured in Cloudpath account.

Get Cloudpath Servers

Get a list of Cloudpath servers.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

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

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Cloudpath Server

Add a new Cloudpath server.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
deployedInVenueId
string
deployedInVenueName
string
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
deploymentType
string
Default: "CloudpathDeploymentTypeEnum.OnPremise"
Enum: "OnPremise" "Cloud"
required
object (Radius)

Primary and secondary radius servers.

object (Radius)

Primary and secondary radius servers.

object (ApPosition)

AP position object

Responses

Request samples

Content type
application/json
{
  • "deployedInVenueId": "string",
  • "deployedInVenueName": "string",
  • "name": "string",
  • "deploymentType": "CloudpathDeploymentTypeEnum.OnPremise",
  • "authRadius": {
    },
  • "accountingRadius": {
    },
  • "position": {
    }
}

Response samples

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

Delete Cloudpath Servers

Delete a list of Cloudpath servers.

Authorizations:
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 Cloudpath Server

Get details for this Cloudpath server.

Authorizations:
path Parameters
cloudpathServerId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "deployedInVenueId": "string",
  • "deployedInVenueName": "string",
  • "name": "string",
  • "deploymentType": "CloudpathDeploymentTypeEnum.OnPremise",
  • "authRadius": {
    },
  • "accountingRadius": {
    },
  • "position": {
    },
  • "id": "string"
}

Update Cloudpath Server

Update the configuration of this Cloudpath server.

Authorizations:
path Parameters
cloudpathServerId
required
string
tenantId
required
string

Tenant ID

Request Body schema: application/json
deployedInVenueId
string
deployedInVenueName
string
name
required
string(?=^((?!(`|\$\()).){2,32}$)^(\S.*\S)$
deploymentType
string
Default: "CloudpathDeploymentTypeEnum.OnPremise"
Enum: "OnPremise" "Cloud"
required
object (Radius)

Primary and secondary radius servers.

object (Radius)

Primary and secondary radius servers.

object (ApPosition)

AP position object

Responses

Request samples

Content type
application/json
{
  • "deployedInVenueId": "string",
  • "deployedInVenueName": "string",
  • "name": "string",
  • "deploymentType": "CloudpathDeploymentTypeEnum.OnPremise",
  • "authRadius": {
    },
  • "accountingRadius": {
    },
  • "position": {
    }
}

Response samples

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

Delete Cloudpath Server

Delete this Cloudpath server.

Authorizations:
path Parameters
cloudpathServerId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

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

Test Cloudpath Server Connection

Test the connection to this Cloudpath server. Note: for on-premise deployments, the network using the Cloudpath server must be activated on the venue for this command to work properly.

Authorizations:
path Parameters
cloudpathServerId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "failureReason": "string"
}

Update Cloudpath Server Position

Update Cloudpath server floor-plan position.

Authorizations:
path Parameters
cloudpathServerId
required
string

Cloudpath Server Id

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": {
    }
}

DPSK Passphrases

Manage DPSK passphrases.

Get DPSK Passphrases

Get the list of DPSK passphrases.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

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

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create DPSK Passphrases

Create one or more DPSK passphrases.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
numberOfPassphrases
integer <int32> [ 1 .. 5000 ]
Default: 1
override
boolean
Default: false
passphrase
string [ 8 .. 63 ] characters ^[ -~]{8,63}$
vlanId
integer <int32> [ 1 .. 4094 ]
numberOfDevicesType
string
Default: "DpskNumberOfDevicesEnum.LIMITED"
Enum: "LIMITED" "UNLIMITED"
numberOfDevices
integer <int32> [ 1 .. 50 ]
Default: 1
username
string [ 0 .. 190 ] characters
mac
string^([0-9A-Fa-f]{2}[.:-]){5}([0-9A-Fa-f]{2})$|^(...

Responses

Request samples

Content type
application/json
{
  • "numberOfPassphrases": 1,
  • "override": false,
  • "passphrase": "stringst",
  • "vlanId": 1,
  • "numberOfDevicesType": "DpskNumberOfDevicesEnum.LIMITED",
  • "numberOfDevices": 1,
  • "username": "string",
  • "mac": "string"
}

Response samples

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

Delete DPSK Passphrases

Delete a list of DPSK passphrases.

Authorizations:
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 DPSK Passphrase

Get this DPSK passphrase.

Authorizations:
path Parameters
dpskPassphraseId
required
string

DPSK passphrase ID

tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
{
  • "networkId": "string",
  • "networkSsid": "string",
  • "username": "string",
  • "numberOfDevices": 1,
  • "mac": "string",
  • "passphrase": "stringst",
  • "vlanId": 1,
  • "numberOfDevicesType": "DpskNumberOfDevicesEnum.LIMITED",
  • "expirationDate": "2019-08-24T14:15:22Z",
  • "id": "string",
  • "createdDate": "2019-08-24T14:15:22Z"
}

Delete DPSK Passphrase

Delete this DPSK passphrase.

Authorizations:
path Parameters
dpskPassphraseId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

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

Query DPSK Passphrases

Query for a list of DPSK passphrases.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json
object (DpskPassphraseFilters)

Filters used to query DPSK passphrase.

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
{
  • "filters": {
    },
  • "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
}

Count DPSK Passphrases

Get a count of DPSK passphrases in the database.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

query Parameters
active
boolean
Default: true

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Export DPSK Passphrases

Export all the unexpired DPSK passphrases in the database in a CSV-formatted file.

Authorizations:
path Parameters
tenantId
required
string
query Parameters
timezone
string
Default: "UTC"
date-format
string
Default: "dd/MM/yyyy HH:mm"
Request Body schema: application/json
object (DpskPassphraseFilters)

Filters used to query DPSK passphrase.

sortField
string
sortOrder
string
Enum: "ASC" "DESC"
searchTargetFields
Array of strings
searchString
string

Responses

Request samples

Content type
application/json
{
  • "filters": {
    },
  • "sortField": "string",
  • "sortOrder": "ASC",
  • "searchTargetFields": [
    ],
  • "searchString": "string"
}

Response samples

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

L2ACL Policy

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 Profiles

Get layer-2 ACL profile collection.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Layer-2 ACL

Add layer-2 ACL by profile.

Authorizations:
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 Layer-2 ACL Profiles

Delete layer-2 ACL profiles.

Authorizations:
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": { }
}

Query Layer-2 ACL

Query layer-2 ACL profile.

Authorizations:
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

Get layer-2 ACL by profile id.

Authorizations:
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

Update layer-2 ACL by profile id.

Authorizations:
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

Delete layer-2 ACL by profile id.

Authorizations:
path Parameters
l2AclPolicyId
required
string

L2Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

L3ACL Policy

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 Layer-3 ACL Profiles

Get layer-3 ACL profile collection.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add Layer-3 ACL

Add layer-3 ACL by profile.

Authorizations:
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 Layer-3 ACL Profiles

Delete layer-3 ACL profiles.

Authorizations:
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

Get layer-3 ACL by profile id.

Authorizations:
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

Update layer-3 ACL by profile id.

Authorizations:
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

Delete layer-3 ACL by profile id.

Authorizations:
path Parameters
l3AclPolicyId
required
string

L3Acl Policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Query Layer-3 ACL

Query layer-3 ACL profile.

Authorizations:
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 All Device Policies

Get the device-policy collection.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Device-Policy

Create a new device-policy.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
devicePolicyId
required
string

Device-policy ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Get Device-Policies

Get the device-policy list.

Authorizations:
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
}

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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
applicationPolicyId
required
string
tenantId
required
string

Tenant ID

Responses

Response samples

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

Query Application Policy

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

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 Profiles

Get a venue's DHCP service profiles.

Authorizations:
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.

Authorizations:
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 Venue Bindings

Get the list of venues using a DHCP service profile.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 Pools

Use this API command to get the VLAN pool list.

Authorizations:
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.

Authorizations:
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": {
    }
}

Query VLAN Pools

Use this API command to delete a VLAN pool list.

Authorizations:
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

Use this API command to get the VLAN pool details.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
vlanPoolId
required
string

VLAN Pool ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Query VLAN Pool

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

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 Wi-Fi Calling Profiles

Delete a list of Wi-Fi calling profiles.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 vSPoT

Get the vSPoT server details.

Authorizations:
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.

Authorizations:
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.

Authorizations:
path Parameters
vspotId
required
string

vSPoT ID

tenantId
required
string

Tenant ID

Responses

Response samples

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

Get vSPoTs

Get the vSPoT server list.

Authorizations:
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.

Authorizations:
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": {
    }
}

Client Disconnect

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

Disconnect Clients

Disconnect a list of clients.

Authorizations:
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

Get user details for the list of provisioned guest users.

Authorizations:
path Parameters
tenantId
required
string

tenantId

query Parameters
page
string
Default: "1"

Page index

size
string
Default: "50"

The size of the page to be returned

Responses

Response samples

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

Add Guest-users

Provision one or more guest users as defined in the payload.

Authorizations:
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 delivery method.

disabled
boolean

If true, this guest user will not be permitted to join the guest network.

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

Maximum number of devices the guest user can simultaneously connect to the guest network. If set to minus one, no limit is enforced.

mobilePhoneNumber
required
string

The mobile phone number associated to the guest user.

name
required
string

The name assigned to the guest user.

networkId
required
string

Network ID of the guest network.

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

Delete one or more guest users per their IDs as defined in the payload.

Authorizations:
path Parameters
tenantId
required
string

tenantId

Request Body schema: */*

ids

Array ()
string

Responses

Response samples

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

Import Guest-users

Import one or more guest pass users from the payload's CSV file.

Authorizations:
path Parameters
tenantId
required
string

tenantId

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

At least one delivery method.

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

When activation type is set to creation, the guest pass is valid when it's created until the specified expiration duration, even if it's not being used; when set to login, the guest pass is valid starting from when the user first logs on until the specified expiration duration.

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

expiration.duration

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

expiration.unit

maxDevices
integer <int32>

Maximum number of devices the guest user can simultaneously connect to the guest network. If set to -1, no limit is enforced.

networkId
string

Network ID of the guest network to which the guest user will connect.

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

Get a guest user.

Authorizations:
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

Delete a guest user.

Authorizations:
path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

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

Disable Guest-user by ID

Disable an enabled guest user.

Authorizations:
path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

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

Enable Guest-user by ID

Enable a previously disabled guest user.

Authorizations:
path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Responses

Response samples

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

Regenerate Guest-user Credential

Create new password for the guest user. Note: only password hash is saved (not the actual password), so the original password cannot be retrieved.

Authorizations:
path Parameters
guestUserId
required
string

guestUserId

tenantId
required
string

tenantId

Request Body schema: application/json

At least one delivery method.

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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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.

Authorizations:
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 Guests

Get guests.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

exists
string
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
{
  • "exists": "string",
  • "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 Venue AP Models

Get the AP models deployed in this venue.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

venueId
required
string

Venue ID

Responses

Response samples

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

Get Rogue APs

Get the rogue APs detected in this venue.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

venueId
required
string

Venue ID

Request Body schema: application/json

payload

exists
string
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
{
  • "exists": "string",
  • "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 APs

Get parameters and operational data for a list of APs.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

exists
string
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
{
  • "exists": "string",
  • "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.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

exists
string
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
{
  • "exists": "string",
  • "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 Cloudpath Servers

Get a list of Cloudpath server information.

Authorizations:
path Parameters
tenantId
required
string

Tenant ID

Request Body schema: application/json

payload

exists
string
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
{
  • "exists": "string",
  • "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
}