Manage AAA (authentication, authorization, and accounting) servers.
Switch Services (0.4.0)
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.
- 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
All API calls require valid authentication via JWT (JSON Web Token) in Authorization header.
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
The API uses standard HTTP status codes with detailed error messages in the response body.
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.
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
No request payloadOK
- application/json
- application/vnd.ruckus.v1+json
The purpose of this AAA server, indicating whether it is used for authentication, authorization, or accounting.
The authorization level assigned to users authenticated through this AAA server.
The type of AAA server protocol being used, such as RADIUS or TACACS+.
The shared secret key used for secure communication between the switch and the AAA server.
The total number of switches in the venue that are configured to use this AAA server.
- application/json
- application/vnd.ruckus.v1+json
{ "id": "string", "name": "string", "username": "string", "password": "string", "purpose": "UNSPECIFIED", "level": "UNSPECIFIED", "serverType": "__NULL", "secret": "string", "ip": "string", "acctPort": 0, "authPort": 0, "switchCountInVenue": 0, "syncedPasswordSwitchCount": 0 }
Request
Update authentication, authorization, and accounting server by id. Use activity API with request id to get the status update.
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
Authentication port number for RADIUS or TACACS+ server (0-65535).
IP address of the AAA server (supports both IPv4 and IPv6 formats).
Privilege level for local user.
Password for local user authentication (8-64 characters, stored in plain text for internal use).
Purpose of TACACS+ server (e.g., authentication, authorization, accounting).
Shared secret for RADIUS or TACACS+ server authentication (1-64 characters).
Type of AAA server (RADIUS, TACACS_PLUS, or LOCAL).
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
{ "id": "string", "acctPort": 65535, "authPort": 65535, "ip": "string", "level": "UNSPECIFIED", "name": "string", "password": "stringst", "encryptedPassword": "string", "purpose": "UNSPECIFIED", "secret": "string", "serverType": "__NULL", "username": "string", "authEnable": true }
OK
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
The username credential for authenticating to the AAA server, used for management access.
The purpose of the AAA server: authentication, authorization, or accounting.
The access level or privilege level associated with this AAA server configuration.
The type of AAA server protocol: RADIUS or TACACS+.
The total number of switches in the venue that can use this AAA server.
The number of switches that have successfully synchronized the AAA server password.
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
{ "id": "string", "name": "string", "username": "string", "password": "string", "purpose": "UNSPECIFIED", "level": "UNSPECIFIED", "serverType": "__NULL", "secret": "string", "ip": "string", "acctPort": 0, "authPort": 0, "switchCountInVenue": 0, "syncedPasswordSwitchCount": 0, "aaaServerViewList": [ {} ] }
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers/{aaaServerId}
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
No request payload- application/json
- application/vnd.ruckus.v1+json
{ "requestId": "string", "response": { "id": "string" } }
Request
Add authentication, authorization, and accounting server. Use activity API with request id to get the status update.
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
Authentication port number for RADIUS or TACACS+ server (0-65535).
IP address of the AAA server (supports both IPv4 and IPv6 formats).
Privilege level for local user.
Password for local user authentication (8-64 characters, stored in plain text for internal use).
Purpose of TACACS+ server (e.g., authentication, authorization, accounting).
Shared secret for RADIUS or TACACS+ server authentication (1-64 characters).
Type of AAA server (RADIUS, TACACS_PLUS, or LOCAL).
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- application/json
- application/vnd.ruckus.v1+json
- application/vnd.ruckus.v1.1+json
{ "id": "string", "acctPort": 65535, "authPort": 65535, "ip": "string", "level": "UNSPECIFIED", "name": "string", "password": "stringst", "encryptedPassword": "string", "purpose": "UNSPECIFIED", "secret": "string", "serverType": "__NULL", "username": "string", "authEnable": true }
OK
- application/json
- application/vnd.ruckus.v1+json
The username credential for authenticating to the AAA server, used for management access.
The purpose of the AAA server: authentication, authorization, or accounting.
The access level or privilege level associated with this AAA server configuration.
The type of AAA server protocol: RADIUS or TACACS+.
The total number of switches in the venue that can use this AAA server.
The number of switches that have successfully synchronized the AAA server password.
- application/json
- application/vnd.ruckus.v1+json
{ "id": "string", "name": "string", "username": "string", "password": "string", "purpose": "UNSPECIFIED", "level": "UNSPECIFIED", "serverType": "__NULL", "secret": "string", "ip": "string", "acctPort": 0, "authPort": 0, "switchCountInVenue": 0, "syncedPasswordSwitchCount": 0, "aaaServerViewList": [ {} ] }
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- application/json
- application/vnd.ruckus.v1+json
[ "string" ]
- application/json
- application/vnd.ruckus.v1+json
{ "requestId": "string", "response": { "id": "string" } }
- application/json
- application/vnd.ruckus.v1+json
The list of field names to include in the query response, allowing clients to request only specific fields.
The sort order direction for the query results, either ascending or descending, defaulting to ascending.
- RUCKUS One API host for North American region.https://api.ruckus.cloud/venues/{venueId}/aaaServers/query
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/venues/{venueId}/aaaServers/query
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/venues/{venueId}/aaaServers/query
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- application/json
- application/vnd.ruckus.v1+json
{ "fields": [ "string" ], "page": 0, "pageSize": 0, "sortField": "string", "sortOrder": "ASC", "serverType": "__NULL" }
- application/json
- application/vnd.ruckus.v1+json
{ "id": "string", "data": [ null ], "fields": [ "string" ], "page": 0, "totalCount": 0, "totalPages": 0 }