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 ACL

Manage ACL (access control list) of switch profile.

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

Switch Virtual Ethernet

Manage VE (virtual ethernet) port settings.

Operations

Get Virtual Ethernet SettingDeprecated

Request

Get a specified virtual ethernet port. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts/{vePortId} can be used for this content.

Security
jwtAuth
Path
vePortIdstringrequired
No request payload

Responses

OK

Body
idstring

Unique identifier for the VE port.

veIdinteger(int32)

VE port identifier number (1-4096).

vlanIdinteger(int32)

VLAN ID associated with this VE port (1-4095).

defaultVlanboolean

Flag indicating whether this VE port is associated with the default VLAN (default: false).

namestring

Name of the VE port for identification.

ospfAreastring

OSPF area ID for routing configuration (e.g., '0.0.0.0' for backbone area).

dhcpRelayAgentstring

DHCP relay agent IP address for forwarding DHCP requests.

ipAddressTypestring

IP address type for the VE interface (static or dynamic).

Enum"static""dynamic"
ipv6AddressTypestring

IPv6 address type for the VE interface (static or dynamic).

Enum"__NULL""static""dynamic"
ipAddressstring

IPv4 address assigned to the VE interface (e.g., '192.168.1.1').

ipv6Addressstring

IPv6 address assigned to the VE interface (e.g., '2001:b030:2516:101:1:1:1:242').

ipv6Prefixstring

IPv6 address prefix to the VE interface (e.g., '64').

ipSubnetMaskstring

IP subnet mask for the VE interface (e.g., '255.255.255.0').

ingressAclstring

Ingress ACL name or ID applied to incoming traffic on this VE port.

egressAclstring

Egress ACL name or ID applied to outgoing traffic on this VE port.

vsixIngressAclstring

IPv6 ingress ACL configuration.

vsixEgressAclstring

IPv6 egress ACL configuration.

ipv6OspfAreastring

Enables OSPFv3 on a VE interface.

ipv6DhcpRelayAgentstring

Enable the DHCPv6 relay agent function and specify the relay destination (the DHCP server) address on a VE interface.

ipRouterIdstring

The router ID for the switch.

switchIdstring

Switch identifier where this VE port is configured.

Response
{ "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipv6AddressType": "__NULL", "ipAddress": "string", "ipv6Address": "string", "ipv6Prefix": "string", "ipSubnetMask": "string", "ingressAcl": "string", "egressAcl": "string", "vsixIngressAcl": "string", "vsixEgressAcl": "string", "ipv6OspfArea": "string", "ipv6DhcpRelayAgent": "string", "ipRouterId": "string", "switchId": "string" }

Update Virtual Ethernet SettingDeprecated

Request

Update virtual ethernet port. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts/{vePortId} can be used for this content.

Security
jwtAuth
Path
vePortIdstringrequired
Bodyrequired
idstring

Unique identifier for the VE port.

veIdinteger(int32)

VE port identifier number (1-4096).

vlanIdinteger(int32)

VLAN ID associated with this VE port (1-4095).

defaultVlanboolean

Flag indicating whether this VE port is associated with the default VLAN (default: false).

namestring

Name of the VE port for identification.

ospfAreastring

OSPF area ID for routing configuration (e.g., '0.0.0.0' for backbone area).

dhcpRelayAgentstring

DHCP relay agent IP address for forwarding DHCP requests.

ipAddressTypestring

IP address type for the VE interface (static or dynamic).

Enum"static""dynamic"
ipv6AddressTypestring

IPv6 address type for the VE interface (static or dynamic).

Enum"__NULL""static""dynamic"
ipAddressstring

IPv4 address assigned to the VE interface (e.g., '192.168.1.1').

ipv6Addressstring

IPv6 address assigned to the VE interface (e.g., '2001:b030:2516:101:1:1:1:242').

ipv6Prefixstring

IPv6 address prefix to the VE interface (e.g., '64').

ipSubnetMaskstring

IP subnet mask for the VE interface (e.g., '255.255.255.0').

ingressAclstring

Ingress ACL name or ID applied to incoming traffic on this VE port.

egressAclstring

Egress ACL name or ID applied to outgoing traffic on this VE port.

vsixIngressAclstring

IPv6 ingress ACL configuration.

vsixEgressAclstring

IPv6 egress ACL configuration.

ipv6OspfAreastring

Enables OSPFv3 on a VE interface.

ipv6DhcpRelayAgentstring

Enable the DHCPv6 relay agent function and specify the relay destination (the DHCP server) address on a VE interface.

ipRouterIdstring

The router ID for the switch.

switchIdstring

Switch identifier where this VE port is configured.

{ "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipv6AddressType": "__NULL", "ipAddress": "string", "ipv6Address": "string", "ipv6Prefix": "string", "ipSubnetMask": "string", "ingressAcl": "string", "egressAcl": "string", "vsixIngressAcl": "string", "vsixEgressAcl": "string", "ipv6OspfArea": "string", "ipv6DhcpRelayAgent": "string", "ipRouterId": "string", "switchId": "string" }

Responses

OK

Body
idstring

The identifier

veIdinteger(int32)

The virtual ethernet interface identifier, used as the VE interface number.

vlanIdinteger(int32)

The VLAN ID associated with this virtual ethernet interface for layer 3 routing.

defaultVlanboolean

The flag indicating whether this is the default VLAN for the switch (deprecated, use connectedVe instead).

namestring^(?:(?!").){1,64}$

The descriptive name assigned to the virtual ethernet interface.

ospfAreastring

The OSPF area identifier for routing protocol configuration on this VE interface.

dhcpRelayAgentstring

The IP address of the DHCP relay agent for forwarding DHCP requests across subnets.

ipAddressTypestring

The IP address assignment method for this VE interface: static or dynamic.

Enum"static""dynamic"
ipAddressstring

The IPv4 address assigned to this virtual ethernet interface.

ipSubnetMaskstring

The subnet mask for the IP address of this virtual ethernet interface.

ingressAclNamestring

The name of the Access Control List applied to ingress (incoming) traffic on this VE interface.

egressAclNamestring

The name of the Access Control List applied to egress (outgoing) traffic on this VE interface.

vsixIngressAclNamestring

The name of the VSIX ACL applied to ingress traffic for virtual switch integration.

vsixEgressAclNamestring

The name of the VSIX ACL applied to egress traffic for virtual switch integration.

switchIdstring

The identifier of the switch where this VE interface is configured.

tenantIdstring

The unique identifier of the tenant.

switchNamestring

The name of the switch where this VE interface is configured.

deviceStatusstring

The operational status of the device associated with this VE interface.

stackboolean

The flag indicating whether the switch is configured in a stack.

syncedSwitchConfigboolean

The flag indicating whether the VE interface configuration has been synchronized with the switch.

portTypestring

The type of port associated with this VE interface.

Enum"NONE""IP""VE""UNRECOGNIZED"
connectedVeboolean

The flag indicating whether this VE interface is connected and operational.

vePortViewListArray of objects(VePort_V1)

The list of VE port configurations for batch operations or nested VE management.

Response
{ "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipAddress": "string", "ipSubnetMask": "string", "ingressAclName": "string", "egressAclName": "string", "vsixIngressAclName": "string", "vsixEgressAclName": "string", "switchId": "string", "tenantId": "string", "switchName": "string", "deviceStatus": "string", "stack": true, "syncedSwitchConfig": true, "portType": "NONE", "connectedVe": true, "vePortViewList": [ {} ] }

Delete Virtual Ethernet SettingDeprecated

Request

Delete virtual ethernet port. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts/{vePortId} can be used for this content.

Security
jwtAuth
Path
vePortIdstringrequired
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" } }

Retrieve Virtual Ethernet SettingsDeprecated

Request

Retrieve virtual ethernet ports of the specified switch. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts can be used for this content.

Security
jwtAuth
Path
switchIdstringrequired
No request payload

Responses

OK

Body
idstring

The identifier

veIdinteger(int32)

The virtual ethernet interface identifier, used as the VE interface number.

vlanIdinteger(int32)

The VLAN ID associated with this virtual ethernet interface for layer 3 routing.

defaultVlanboolean

The flag indicating whether this is the default VLAN for the switch (deprecated, use connectedVe instead).

namestring^(?:(?!").){1,64}$

The descriptive name assigned to the virtual ethernet interface.

ospfAreastring

The OSPF area identifier for routing protocol configuration on this VE interface.

dhcpRelayAgentstring

The IP address of the DHCP relay agent for forwarding DHCP requests across subnets.

ipAddressTypestring

The IP address assignment method for this VE interface: static or dynamic.

Enum"static""dynamic"
ipAddressstring

The IPv4 address assigned to this virtual ethernet interface.

ipSubnetMaskstring

The subnet mask for the IP address of this virtual ethernet interface.

ingressAclNamestring

The name of the Access Control List applied to ingress (incoming) traffic on this VE interface.

egressAclNamestring

The name of the Access Control List applied to egress (outgoing) traffic on this VE interface.

vsixIngressAclNamestring

The name of the VSIX ACL applied to ingress traffic for virtual switch integration.

vsixEgressAclNamestring

The name of the VSIX ACL applied to egress traffic for virtual switch integration.

switchIdstring

The identifier of the switch where this VE interface is configured.

tenantIdstring

The unique identifier of the tenant.

switchNamestring

The name of the switch where this VE interface is configured.

deviceStatusstring

The operational status of the device associated with this VE interface.

stackboolean

The flag indicating whether the switch is configured in a stack.

syncedSwitchConfigboolean

The flag indicating whether the VE interface configuration has been synchronized with the switch.

portTypestring

The type of port associated with this VE interface.

Enum"NONE""IP""VE""UNRECOGNIZED"
connectedVeboolean

The flag indicating whether this VE interface is connected and operational.

vePortViewListArray of objects(VePort_V1)

The list of VE port configurations for batch operations or nested VE management.

Response
{ "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipAddress": "string", "ipSubnetMask": "string", "ingressAclName": "string", "egressAclName": "string", "vsixIngressAclName": "string", "vsixEgressAclName": "string", "switchId": "string", "tenantId": "string", "switchName": "string", "deviceStatus": "string", "stack": true, "syncedSwitchConfig": true, "portType": "NONE", "connectedVe": true, "vePortViewList": [ {} ] }

Add Virtual Ethernet SettingsDeprecated

Request

Add virtual ethernet ports of the switch. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts can be used for this content.

Security
jwtAuth
Path
switchIdstringrequired
BodyrequiredArray [
idstring

Unique identifier for the VE port.

veIdinteger(int32)

VE port identifier number (1-4096).

vlanIdinteger(int32)

VLAN ID associated with this VE port (1-4095).

defaultVlanboolean

Flag indicating whether this VE port is associated with the default VLAN (default: false).

namestring

Name of the VE port for identification.

ospfAreastring

OSPF area ID for routing configuration (e.g., '0.0.0.0' for backbone area).

dhcpRelayAgentstring

DHCP relay agent IP address for forwarding DHCP requests.

ipAddressTypestring

IP address type for the VE interface (static or dynamic).

Enum"static""dynamic"
ipv6AddressTypestring

IPv6 address type for the VE interface (static or dynamic).

Enum"__NULL""static""dynamic"
ipAddressstring

IPv4 address assigned to the VE interface (e.g., '192.168.1.1').

ipv6Addressstring

IPv6 address assigned to the VE interface (e.g., '2001:b030:2516:101:1:1:1:242').

ipv6Prefixstring

IPv6 address prefix to the VE interface (e.g., '64').

ipSubnetMaskstring

IP subnet mask for the VE interface (e.g., '255.255.255.0').

ingressAclstring

Ingress ACL name or ID applied to incoming traffic on this VE port.

egressAclstring

Egress ACL name or ID applied to outgoing traffic on this VE port.

vsixIngressAclstring

IPv6 ingress ACL configuration.

vsixEgressAclstring

IPv6 egress ACL configuration.

ipv6OspfAreastring

Enables OSPFv3 on a VE interface.

ipv6DhcpRelayAgentstring

Enable the DHCPv6 relay agent function and specify the relay destination (the DHCP server) address on a VE interface.

ipRouterIdstring

The router ID for the switch.

switchIdstring

Switch identifier where this VE port is configured.

]
[ { "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipv6AddressType": "__NULL", "ipAddress": "string", "ipv6Address": "string", "ipv6Prefix": "string", "ipSubnetMask": "string", "ingressAcl": "string", "egressAcl": "string", "vsixIngressAcl": "string", "vsixEgressAcl": "string", "ipv6OspfArea": "string", "ipv6DhcpRelayAgent": "string", "ipRouterId": "string", "switchId": "string" } ]

Responses

OK

Body
idstring

The identifier

veIdinteger(int32)

The virtual ethernet interface identifier, used as the VE interface number.

vlanIdinteger(int32)

The VLAN ID associated with this virtual ethernet interface for layer 3 routing.

defaultVlanboolean

The flag indicating whether this is the default VLAN for the switch (deprecated, use connectedVe instead).

namestring^(?:(?!").){1,64}$

The descriptive name assigned to the virtual ethernet interface.

ospfAreastring

The OSPF area identifier for routing protocol configuration on this VE interface.

dhcpRelayAgentstring

The IP address of the DHCP relay agent for forwarding DHCP requests across subnets.

ipAddressTypestring

The IP address assignment method for this VE interface: static or dynamic.

Enum"static""dynamic"
ipAddressstring

The IPv4 address assigned to this virtual ethernet interface.

ipSubnetMaskstring

The subnet mask for the IP address of this virtual ethernet interface.

ingressAclNamestring

The name of the Access Control List applied to ingress (incoming) traffic on this VE interface.

egressAclNamestring

The name of the Access Control List applied to egress (outgoing) traffic on this VE interface.

vsixIngressAclNamestring

The name of the VSIX ACL applied to ingress traffic for virtual switch integration.

vsixEgressAclNamestring

The name of the VSIX ACL applied to egress traffic for virtual switch integration.

switchIdstring

The identifier of the switch where this VE interface is configured.

tenantIdstring

The unique identifier of the tenant.

switchNamestring

The name of the switch where this VE interface is configured.

deviceStatusstring

The operational status of the device associated with this VE interface.

stackboolean

The flag indicating whether the switch is configured in a stack.

syncedSwitchConfigboolean

The flag indicating whether the VE interface configuration has been synchronized with the switch.

portTypestring

The type of port associated with this VE interface.

Enum"NONE""IP""VE""UNRECOGNIZED"
connectedVeboolean

The flag indicating whether this VE interface is connected and operational.

vePortViewListArray of objects(VePort_V1)

The list of VE port configurations for batch operations or nested VE management.

Response
{ "id": "string", "veId": 0, "vlanId": 0, "defaultVlan": true, "name": "string", "ospfArea": "string", "dhcpRelayAgent": "string", "ipAddressType": "static", "ipAddress": "string", "ipSubnetMask": "string", "ingressAclName": "string", "egressAclName": "string", "vsixIngressAclName": "string", "vsixEgressAclName": "string", "switchId": "string", "tenantId": "string", "switchName": "string", "deviceStatus": "string", "stack": true, "syncedSwitchConfig": true, "portType": "NONE", "connectedVe": true, "vePortViewList": [ {} ] }

Retrieve Virtual Ethernet SettingsDeprecated

Request

Retrieve virtual ethernet ports of switch by query. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts/query can be used for this content.

Security
jwtAuth
Path
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.

filterTypestringDeprecated

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

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

Responses

OK

Body
idstring
dataArray of objects

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 }

Delete Virtual Ethernet SettingsDeprecated

Request

Delete multiple virtual ethernet ports. This method will be removed no sooner than 08/31/2026. The following URL /venues/{venueId}/switches/{switchId}/vePorts can be used for this content.

Security
jwtAuth
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" } }

Trusted Port

Manage a port's trust 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