Skip to content

Switch Services (0.4.0)

Overview

The Switch Service REST API facilitates the management and configuration of RUCKUS ICX switches via the RUCKUS One platform. This API allows for programmatic control of switch operations, network configurations, security policies, and monitoring across various environments.

What This API Does

  • Manage ICX switch devices and their configurations
  • Configure network settings including VLANs, ports, LAGs, and virtual ethernet interfaces
  • Control security policies with AAA servers, ACLs, and trusted port settings
  • Create and apply switch profiles and templates for consistent configurations
  • Handle firmware upgrades and configuration backups
  • Configure DHCP servers and static routing
  • Import and onboard new switches to the platform
  • Manage CLI templates and web authentication pages

Authentication

All API calls require valid authentication via JWT (JSON Web Token) in Authorization header.

Regional Endpoints

Select the appropriate API endpoint based on your region:

  • North America: https://api.ruckus.cloud
  • Europe: https://api.eu.ruckus.cloud
  • Asia: https://api.asia.ruckus.cloud

Error Handling

The API uses standard HTTP status codes with detailed error messages in the response body.

Common Error Responses

All endpoints may return these common error responses:

  • 400 Bad Request: Invalid input data or validation errors
  • 401 Unauthorized: Missing or invalid authentication
  • 403 Forbidden: Insufficient permissions
  • 404 Not Found: Requested resource doesn't exist
  • 422 Unprocessable Entity: Business rule violations
  • 500 Internal Server Error: Unexpected server errors.
Download OpenAPI description
Languages
Servers
RUCKUS One API host for North American region.
https://api.ruckus.cloud
RUCKUS One API host for European region.
https://api.eu.ruckus.cloud
RUCKUS One API host for Asian region.
https://api.asia.ruckus.cloud

AAA Server

Manage AAA (authentication, authorization, and accounting) servers.

Operations

AAA Setting

Manage AAA (authentication, authorization, and accounting) settings.

Operations

Command Line Interface Template

Manage command line interface templates.

Operations

Configuration History

Retrieve switch configuration history records.

Operations

DHCP Server

Manage ICX DHCP servers.

Operations

ICX Switch

Manage ICX switch settings.

Operations

Import Switch

Import and register new switches.

Operations

LAG

Manage LAGs (link aggregation groups).

Operations

Profile

Manage switch profiles and profile configurations.

Operations

Profile Template

Manage switch profile templates.

Operations

Profile VLAN

Manage VLANs (virtual local area networks) of switch profile.

Operations

Switch Access Control List

Manage ACLs (access control lists).

Operations

Switch Configuration Backup

Manage switch configuration backups and restore operations.

Operations

Switch Firmware Upgrade

Manage switch firmware upgrade and scheduling operations.

Operations

Switch Ports

Manage switch port configurations.

Operations

Switch Static Routes

Manage static route configurations.

Operations

Switch VLAN

Manage VLANs (virtual local area networks).

Operations

Get Switch VLAN

Request

Get the specified switch level VLAN by id.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
vlanIdstringrequired
No request payload

Responses

OK

Body
idstring
vlanIdinteger(int32)

The VLAN identifier, ranging from 1 to 4095, uniquely identifying this VLAN on the switch.

vlanNamestring

The descriptive name assigned to this VLAN for identification purposes.

ipv4DhcpSnoopingboolean

The flag indicating whether IPv4 DHCP snooping is enabled for this VLAN to prevent rogue DHCP servers.

arpInspectionboolean

The flag indicating whether ARP inspection is enabled for this VLAN to prevent ARP spoofing attacks.

igmpSnoopingstring

The IGMP snooping mode for this VLAN to optimize multicast traffic delivery.

Enum"active""passive""none"
multicastVersioninteger(int32)

The IGMP version number used for multicast group management in this VLAN.

spanningTreeProtocolstring

The STP (Spanning Tree Protocol) variant enabled for this VLAN.

Enum"rstp""stp""none"
taggedPortsstring

The comma separated list of port identifiers configured as tagged (trunk) ports for this VLAN.

untaggedPortsstring

The comma separated list of port identifiers configured as untagged (access) ports for this VLAN.

switchVlanPortModelsArray of objects(SwitchVlanPortModel_V1_1)unique

The set of port model configurations specific to this VLAN on different switch models in a stack.

enableAsDefaultVlanboolean

The flag indicating whether this VLAN is configured as the default VLAN for the switch.

usedByVePortboolean

The flag indicating whether this VLAN is associated with a VE (Virtual Ethernet) interface for layer 3 routing.

isAuthDefaultVlanboolean

The flag indicating whether this VLAN is configured as the authentication default VLAN for 802.1X.

isAuthVlanboolean

The flag indicating whether this VLAN is used for authentication purposes such as guest, restricted, or critical VLANs.

Response
{ "id": "string", "vlanId": 0, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 0, "spanningTreeProtocol": "rstp", "taggedPorts": "string", "untaggedPorts": "string", "switchVlanPortModels": [ { … } ], "enableAsDefaultVlan": true, "usedByVePort": true, "isAuthDefaultVlan": true, "isAuthVlan": true }

Update Switch VLAN

Request

Update a VLAN of the switch.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
vlanIdstringrequired
Bodyrequired
idstring
vlanIdinteger(int32)[ 1 .. 4095 ]

The VLAN identifier, ranging from 1 to 4095, uniquely identifying this VLAN on the switch.

vlanNamestring

The descriptive name assigned to this VLAN, limited to 32 characters.

ipv4DhcpSnoopingboolean

The flag indicating whether IPv4 DHCP snooping is enabled for this VLAN to prevent rogue DHCP servers.

arpInspectionboolean

The flag indicating whether ARP inspection is enabled for this VLAN to prevent ARP spoofing attacks.

igmpSnoopingstring

The IGMP snooping mode for this VLAN to optimize multicast traffic delivery.

Enum"active""passive""none"
multicastVersioninteger(int32)[ 0 .. 3 ]

The IGMP version number used for multicast group management in this VLAN.

spanningTreeProtocolstring

STP (Spanning Tree Protocol) variant enabled for this VLAN.

Enum"rstp""stp""none"
switchVlanPortModelsArray of objects(SwitchVlanPortModel_V1_1)unique

The set of port model configurations specific to this VLAN on different switch models in a stack.

enableAsDefaultVlanboolean

The flag indicating whether this VLAN should be configured as the default VLAN for the switch.

{ "id": "string", "vlanId": 1, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 3, "spanningTreeProtocol": "rstp", "switchVlanPortModels": [ { … } ], "enableAsDefaultVlan": true }

Responses

OK

Body
requestIdstring

The unique identifier for tracking this API operation request.

responseobject(SwitchVlanView_V1_1)

The response data containing the result of the operation.

Response
{ "requestId": "string", "response": { "id": "string", "vlanId": 0, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 0, "spanningTreeProtocol": "rstp", "taggedPorts": "string", "untaggedPorts": "string", "switchVlanPortModels": [ … ], "enableAsDefaultVlan": true, "usedByVePort": true, "isAuthDefaultVlan": true, "isAuthVlan": true } }

Delete Switch VLAN

Request

Delete a VLAN of the switch.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
vlanIdstringrequired
No request payload

Responses

OK

Body
requestIdstring

The unique identifier for tracking this API operation request.

responseobject(EmptyView)

The response data containing the result of the operation.

Response
{ "requestId": "string", "response": { "id": "string" } }

Add Switch VLANs

Request

Create multiple VLANs under the specified switches.

Security
jwtAuth
Path
venueIdstringrequired
BodyrequiredArray [
idstring
vlanIdinteger(int32)[ 1 .. 4095 ]

The VLAN identifier (1-4095).

vlanNamestring

VLAN name for identification and management purposes.

ipv4DhcpSnoopingboolean

Enable IPv4 DHCP snooping to prevent rogue DHCP servers (default: false).

arpInspectionboolean

Enable ARP inspection to prevent ARP spoofing attacks (default: false).

igmpSnoopingstring

IGMP snooping mode for multicast traffic optimization.

Enum"active""passive""none"
multicastVersioninteger(int32)[ 0 .. 3 ]

IGMP multicast version (0-3).

spanningTreeProtocolstring

STP (Spanning Tree Protocol) mode for loop prevention.

Enum"rstp""stp""none"
switchVlanPortModelsArray of objects(SwitchVlanPortModel_V1_1)unique

Set of port model configurations defining which ports are assigned to this VLAN.

enableAsDefaultVlanboolean

Flag to enable this VLAN as the default VLAN for the switch.

switchIdstringrequired

Switch identifier (serial number) where this VLAN will be configured.

]
[ { "id": "string", "vlanId": 1, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 3, "spanningTreeProtocol": "rstp", "switchVlanPortModels": [ … ], "enableAsDefaultVlan": true, "switchId": "string" } ]

Responses

Created

Body
requestIdstring

The unique identifier for tracking this API operation request.

responseobject(EmptyView)

The response data containing the result of the operation.

Response
{ "requestId": "string", "response": { "id": "string" } }

Retrieve Switch VLANs

Request

Retrieve all usable VLANs under the specified switches.

Security
jwtAuth
Path
venueIdstringrequired
BodyrequiredArray [
string
]
[ "string" ]

Responses

OK

BodyArray [
switchIdstring

The unique identifier of the switch for which this VLAN overview is provided.

defaultVlanIdinteger(int32)

The default VLAN ID configured on the switch, typically used as the native VLAN for untagged traffic.

vlanListArray of objects(SwitchVlanView_V1_1)

The list of all VLANs configured on the switch, including VLAN ID, name, and port assignments.

]
Response
[ { "switchId": "string", "defaultVlanId": 0, "vlanList": [ … ] } ]

Get VLAN VE Ports

Request

List all usable VLANs that are available for the VE setting.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
No request payload

Responses

OK

Body
idstring

The identifier

vlanIdstring

The VLAN identifier, uniquely identifying this VLAN.

vlanNamestring

The descriptive name assigned to this VLAN for identification purposes.

usedByVePortboolean

The flag indicating whether this VLAN is associated with a VE (virtual Ethernet) interface for layer 3 routing.

Response
{ "id": "string", "vlanId": "string", "vlanName": "string", "usedByVePort": true }

Add Switch VLAN

Request

Create a VLAN of the switch.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
Bodyrequired
idstring
vlanIdinteger(int32)[ 1 .. 4095 ]

The VLAN identifier, ranging from 1 to 4095, uniquely identifying this VLAN on the switch.

vlanNamestring

The descriptive name assigned to this VLAN, limited to 32 characters.

ipv4DhcpSnoopingboolean

The flag indicating whether IPv4 DHCP snooping is enabled for this VLAN to prevent rogue DHCP servers.

arpInspectionboolean

The flag indicating whether ARP inspection is enabled for this VLAN to prevent ARP spoofing attacks.

igmpSnoopingstring

The IGMP snooping mode for this VLAN to optimize multicast traffic delivery.

Enum"active""passive""none"
multicastVersioninteger(int32)[ 0 .. 3 ]

The IGMP version number used for multicast group management in this VLAN.

spanningTreeProtocolstring

STP (Spanning Tree Protocol) variant enabled for this VLAN.

Enum"rstp""stp""none"
switchVlanPortModelsArray of objects(SwitchVlanPortModel_V1_1)unique

The set of port model configurations specific to this VLAN on different switch models in a stack.

enableAsDefaultVlanboolean

The flag indicating whether this VLAN should be configured as the default VLAN for the switch.

{ "id": "string", "vlanId": 1, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 3, "spanningTreeProtocol": "rstp", "switchVlanPortModels": [ { … } ], "enableAsDefaultVlan": true }

Responses

Created

Body
requestIdstring

The unique identifier for tracking this API operation request.

responseobject(SwitchVlanView_V1_1)

The response data containing the result of the operation.

Response
{ "requestId": "string", "response": { "id": "string", "vlanId": 0, "vlanName": "string", "ipv4DhcpSnooping": true, "arpInspection": true, "igmpSnooping": "active", "multicastVersion": 0, "spanningTreeProtocol": "rstp", "taggedPorts": "string", "untaggedPorts": "string", "switchVlanPortModels": [ … ], "enableAsDefaultVlan": true, "usedByVePort": true, "isAuthDefaultVlan": true, "isAuthVlan": true } }

Delete Switch VLANs

Request

Delete multiple VLANs of the switch.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
BodyrequiredArray [
string
]
[ "string" ]

Responses

OK

Body
requestIdstring

The unique identifier for tracking this API operation request.

responseobject(EmptyView)

The response data containing the result of the operation.

Response
{ "requestId": "string", "response": { "id": "string" } }

Query Switch VLANs

Request

Query the switch's switch level VLANs.

Security
jwtAuth
Path
venueIdstringrequired
switchIdstringrequired
Bodyrequired
fieldsArray of strings

The list of field names to include in the query response, allowing clients to request only specific fields.

pageinteger(int32)

The page number for pagination, starting from 1, defaulting to 1.

pageSizeinteger(int32)

The number of records to return per page, defaulting to 25.

sortFieldstring

The field name to use for sorting the query results.

sortOrderstring

The sort order direction for the query results, either ascending or descending, defaulting to ascending.

Enum"ASC""DESC"
filtersobject

The dynamic filter map where keys are field names and values are lists of filter criteria to apply for each field.

searchStringstring

The search string for full text search across the specified target fields.

searchTargetFieldsArray of strings

The list of field names to search within when applying the search string.

filterTypestringDeprecated

The dynamic filter type (deprecated, use filters instead).

{ "fields": [ "string" ], "page": 0, "pageSize": 0, "sortField": "string", "sortOrder": "ASC", "filterType": "string", "filters": { "property1": [ … ], "property2": [ … ] }, "searchString": "string", "searchTargetFields": [ "string" ] }

Responses

OK

Body
idstring
dataArray of any

The list of data records returned by the query, with each item representing a result object.

fieldsArray of strings

The list of field names included in the query response data.

pageinteger(int32)

The current page number of the paginated results.

totalCountinteger(int64)

The total number of records matching the query criteria across all pages.

totalPagesinteger(int32)

The total number of pages available based on the page size and total record count.

Response
{ "id": "string", "data": [ null ], "fields": [ "string" ], "page": 0, "totalCount": 0, "totalPages": 0 }

Get VLANs

Request

List all usable VLANs under this venue.

Security
jwtAuth
Path
venueIdstringrequired
No request payload

Responses

OK

Body
idstring

The identifier

vlanIdinteger(int32)[ 1 .. 4095 ]

The VLAN identifier (1-4095).

vlanConfigNamestring[ 0 .. 32 ] characters

VLAN configuration name (maximum 32 characters).

Response
{ "id": "string", "vlanId": 1, "vlanConfigName": "string" }

Switch Virtual Ethernet

Manage VE (virtual ethernet) port settings.

Operations

Venue Switch Setting

Manage a switch's venue level settings.

Operations

Venue Template AAA Server

Manage venue template AAA (authentication, authorization, and accounting) servers.

Operations

Venue Template AAA Setting

Manage venue template AAA (authentication, authorization, and accounting) settings.

Operations

Venue Template Switch Setting

Manage switch settings of venue template.

Operations

Web Authentication Page Template

Manage web authentication page template.

Operations