Skip to content

DPSK Service (0.0.3)

Overview

The DPSK REST APIs provide endpoints to manage DPSK resources, including pools, passphrases devices, and templates.

What This API Does

  • Create, modify, and delete DPSK pools
  • Create, modify, and delete passphrases within pools
  • Manage devices associated with passphrases
  • Manage DPSK service templates and REC templates
  • Associate policy sets with DPSK pools
  • Import and export passphrase data via CSV
  • Search passphrases by client network and MAC address

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
  • 409 Conflict: Resource conflict (e.g., duplicate names)
  • 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

APIs for DPSK Service

Operations for managing DPSK pools, including create, update, delete, and policy management.

Operations

APIs for DPSK Passphrase

Operations for managing DPSK passphrases, CSV import/export, and query support.

Operations

Get DPSK Passphrase

Request

Get the specified DPSK passphrase by ID.

Path
poolIdstringrequired

DPSK pool id

idstringrequired

DPSK passphrase id

No request payload

Responses

DPSK passphrase

Body
idstringread-only
passphrasestring[ 8 .. 63 ] characters

The actual passphrase value.

usernamestring

Username for the passphrase.

vlanIdinteger(int32)

VLAN associated with passphrase.

numberOfDevicesinteger(int32)

Number of devices. Must be between 1 and 50. Inputs outside this range will be adjusted.

createdDatestring(date-time)read-only

Passphrase creation date record.

lastModifiedDatestring(date-time)read-only

Last modification timestamp record.

expirationDatestring(date-time)

Expiration date of passphrase.

emailstring[ 0 .. 255 ] characters^[\w!#$%&’*+/=?`{|}~^-]+(?:\.[\w!#$%&’*+/=?`{...

Email associated with passphrase.

Example: "abc@email.com"
phoneNumberstring

Phone associated with passphrase.

revocationDatestring(date-time)read-only

The date time that the PSK was revoked.

revocationReasonstring

Reason for revocation of passphrase.

devicesArray of objects(DpskPassphraseDeviceDto)read-only

The devices configured or connected to the passphrase.

isReferencedbooleanread-only

If this entity is referenced by an identity and cannot be deleted.

Response
{ "id": "string", "passphrase": "stringst", "username": "string", "vlanId": 0, "numberOfDevices": 0, "createdDate": "2019-08-24T14:15:22Z", "lastModifiedDate": "2019-08-24T14:15:22Z", "expirationDate": "2019-08-24T14:15:22Z", "email": "abc@email.com", "phoneNumber": "string", "revocationDate": "2019-08-24T14:15:22Z", "revocationReason": "string", "devices": [ { … } ], "isReferenced": true }

Update Specific DPSK Passphrase

Request

Update DPSK passphrase(s) for the specified pool.

Path
poolIdstringrequired

DPSK pool id

idstringrequired

DPSK passphrase id

Bodyrequired
passphrasestring[ 8 .. 63 ] characters

The actual passphrase value.

usernamestring

Username for the passphrase.

vlanIdinteger(int32)

VLAN associated with passphrase.

numberOfDevicesinteger(int32)

Number of devices. Must be between 1 and 50. Inputs outside this range will be adjusted.

expirationDatestring(date-time)

Expiration date of passphrase.

emailstring[ 0 .. 255 ] characters^[\w!#$%&’*+/=?`{|}~^-]+(?:\.[\w!#$%&’*+/=?`{...

Email associated with passphrase.

Example: "abc@email.com"
phoneNumberstring

Phone associated with passphrase.

revocationReasonstring

Reason for revocation of passphrase.

{ "passphrase": "stringst", "username": "string", "vlanId": 0, "numberOfDevices": 0, "expirationDate": "2019-08-24T14:15:22Z", "email": "abc@email.com", "phoneNumber": "string", "revocationReason": "string" }

Responses

The passphrase update request is in progress

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Update Specific DPSK Passphrase

Request

Update an entity partially with provided attributes. Only the attributes provided in the request body will be updated.

Path
poolIdstringrequired

DPSK pool id

idstringrequired

DPSK passphrase id

Bodyrequired
passphrasestring[ 8 .. 63 ] characters

The actual passphrase value.

usernamestring

Username for the passphrase.

vlanIdinteger(int32)

VLAN associated with passphrase.

numberOfDevicesinteger(int32)

Number of devices. Must be between 1 and 50. Inputs outside this range will be adjusted.

expirationDatestring(date-time)

Expiration date of passphrase.

emailstring[ 0 .. 255 ] characters^[\w!#$%&’*+/=?`{|}~^-]+(?:\.[\w!#$%&’*+/=?`{...

Email associated with passphrase.

Example: "abc@email.com"
phoneNumberstring

Phone associated with passphrase.

revocationReasonstring

Reason for revocation of passphrase.

{ "passphrase": "stringst", "username": "string", "vlanId": 0, "numberOfDevices": 0, "expirationDate": "2019-08-24T14:15:22Z", "email": "abc@email.com", "phoneNumber": "string", "revocationReason": "string" }

Responses

The passphrase update request is in progress

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Get Passphrase

Request

List passphrases for specific DPSK pool with pagination.

Path
poolIdstringrequired

DPSK pool id

Query
pageinteger>= 0

Page index starting from 0 (0..N)

Default 0
sizeinteger>= 1

The size of the page to be returned

Default 20
sortArray of strings

Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.

No request payload

Responses

Passphrases

Body
totalElementsinteger(int64)

Total number of items across all pages.

totalPagesinteger(int32)

Total number of pages available.

sizeinteger(int32)
contentArray of objects

List of items contained in the current page.

numberinteger(int32)

Current page index starting from 0.

sortobject(SortObject)

Sorting details applied to the query.

numberOfElementsinteger(int32)

Number of items present in the current page.

pageableobject(PageableObject)

Pagination information associated with this page.

firstboolean

Whether this is the first page.

lastboolean

Whether this is the last page.

emptyboolean

Whether the page is empty.

Response
{ "totalElements": 0, "totalPages": 0, "size": 0, "content": [ null ], "number": 0, "sort": { "empty": true, "unsorted": true, "sorted": true }, "numberOfElements": 0, "pageable": { "offset": 0, "sort": { … }, "unpaged": true, "paged": true, "pageNumber": 0, "pageSize": 0 }, "first": true, "last": true, "empty": true }

Create DPSK Passphrase

Request

Create DPSK passphrase(s) for the specified pool.

Path
poolIdstringrequired

DPSK pool id

Bodyrequired
passphrasestring[ 8 .. 63 ] characters

The actual passphrase value to be created.

usernamestring

The username for passphrase.

lengthinteger(int32)[ 8 .. 63 ]

Length of the passphrase.

vlanIdinteger(int32)

The VLAN for passphrase.

macstring^$|^([0-9A-Fa-f]{2}[.:-]){5}([0-9A-Fa-f]{2})$...

The mac for passphrase.

Example: "11:22:33:44:55:66"
numberOfPassphrasesinteger(int32)

The number of PSK to be generated if passphrase is not provided.

numberOfDevicesinteger(int32)

Number of devices. Must be between 1 and 50. Inputs outside this range will be adjusted.

expirationstring

The expiration for passphrase.

Enum"UNLIMITED""ONE_DAY""TWO_DAYS""ONE_WEEK""TWO_WEEKS""ONE_MONTH""SIX_MONTHS""ONE_YEAR""TWO_YEARS"
numberOfDevicesTypestring

Number of devices type.

Enum"UNLIMITED""LIMITED"
formatstring

The format for passphrase.

Enum"MOST_SECURED""KEYBOARD_FRIENDLY""NUMBERS_ONLY"
expirationDatestring(date-time)

The expiration for passphrase.

emailstring[ 0 .. 255 ] characters^(?:[\w!#$%&’*+/=?`{|}~^-]+(?:\.[\w!#$%&’*+/=...

The email for passphrase.

Example: "abc@email.com"
phoneNumberstring

The number for passphrase.

vxlanIdinteger(int32)

The VNI to associate with this PSK.

{ "passphrase": "stringst", "username": "string", "length": 8, "vlanId": 0, "mac": "11:22:33:44:55:66", "numberOfPassphrases": 0, "numberOfDevices": 0, "expiration": "UNLIMITED", "numberOfDevicesType": "UNLIMITED", "format": "MOST_SECURED", "expirationDate": "2019-08-24T14:15:22Z", "email": "abc@email.com", "phoneNumber": "string", "vxlanId": 0 }

Responses

Create DPSK passphrase(s) accepted

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Delete Passphrase

Request

Delete DPSK passphrase(s) for the specified pool.

Path
poolIdstringrequired

DPSK pool id

BodyrequiredArray [
string
]
[ "string" ]

Responses

The passphrase(s) delete request is in progress

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Update Specific DPSK Passphrases

Request

Update entities partially with provided attributes. Only the attributes provided in the request body will be updated.

Path
poolIdstringrequired

DPSK pool id

Bodyrequired
idsArray of strings[ 1 .. 2147483647 ] itemsrequired

The passphrase IDs to be changed.

changesobject(DpskPassphraseDto)required

Changes to be applied to the passphrases.

changes.​passphrasestring[ 8 .. 63 ] characters

The actual passphrase value.

changes.​usernamestring

Username for the passphrase.

changes.​vlanIdinteger(int32)

VLAN associated with passphrase.

changes.​numberOfDevicesinteger(int32)

Number of devices. Must be between 1 and 50. Inputs outside this range will be adjusted.

changes.​expirationDatestring(date-time)

Expiration date of passphrase.

changes.​emailstring[ 0 .. 255 ] characters^[\w!#$%&’*+/=?`{|}~^-]+(?:\.[\w!#$%&’*+/=?`{...

Email associated with passphrase.

Example: "abc@email.com"
changes.​phoneNumberstring

Phone associated with passphrase.

changes.​revocationReasonstring

Reason for revocation of passphrase.

{ "ids": [ "string" ], "changes": { "passphrase": "stringst", "username": "string", "vlanId": 0, "numberOfDevices": 0, "expirationDate": "2019-08-24T14:15:22Z", "email": "abc@email.com", "phoneNumber": "string", "revocationReason": "string" } }

Responses

DPSK passphrases updated

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Query Passphrases for Specified Pool

Request

Query passphrases for the specified DPSK pool.

Path
poolIdstringrequired
Bodyrequired
fieldsArray of strings

List of field names to include in the response.

pageinteger(int32)

Page number, starting from index 0.

pageSizeinteger(int32)

Number of items per page.

sortFieldstring

Field name to sort by.

sortOrderstring

Sort order: ASC for ascending, DESC for descending.

Enum"ASC""DESC"
searchTargetFieldsArray of strings

List of field names to search within.

searchStringstring

Search string to match against the specified searchTargetFields.

filtersobject(DpskPassphraseFilters)

Filter criteria used to query DPSK passphrases.

maxDevicesPerPassphraseinteger(int32)

Maximum number of devices to return per passphrase, preventing excessive data retrieval for passphrases with large device counts.

{ "fields": [ "string" ], "page": 0, "pageSize": 0, "sortField": "string", "sortOrder": "ASC", "searchTargetFields": [ "string" ], "searchString": "string", "filters": { "networkId": [ … ], "vlanId": [ … ], "passphrase": [ … ], "mac": [ … ], "username": [ … ], "email": [ … ], "phoneNumber": [ … ], "status": [ … ] }, "maxDevicesPerPassphrase": 0 }

Responses

Passphrases

Body
fieldsArray of strings

List of field names that were requested in the query.

totalCountinteger(int64)

Total number of items matching the query criteria across all pages.

totalPagesinteger(int32)

Total number of pages available based on the pageSize and totalCount.

pageinteger(int32)

Current page number starting from 0.

dataArray of objects(DpskPassphraseDto)
Response
{ "fields": [ "string" ], "totalCount": 0, "totalPages": 0, "page": 0, "data": [ { … } ] }

DPSK Passphrase to CSV

Request

Export DPSK passphrases to a CSV file.

Path
poolIdstringrequired
Query
timezonestring

If specified, the timezone will be used for date values. Default value is UTC.

Default "UTC"
date-formatstring

Format will be applied for date values. Default value is "day/month/year hour:minute"

Default "dd/MM/yyyy HH:mm"
Bodyrequired
fieldsArray of strings

List of field names to include in the response.

pageinteger(int32)

Page number, starting from index 0.

pageSizeinteger(int32)

Number of items per page.

sortFieldstring

Field name to sort by.

sortOrderstring

Sort order: ASC for ascending, DESC for descending.

Enum"ASC""DESC"
searchTargetFieldsArray of strings

List of field names to search within.

searchStringstring

Search string to match against the specified searchTargetFields.

filtersobject(DpskPassphraseFilters)

Filter criteria used to query DPSK passphrases.

maxDevicesPerPassphraseinteger(int32)

Maximum number of devices to return per passphrase, preventing excessive data retrieval for passphrases with large device counts.

{ "fields": [ "string" ], "page": 0, "pageSize": 0, "sortField": "string", "sortOrder": "ASC", "searchTargetFields": [ "string" ], "searchString": "string", "filters": { "networkId": [ … ], "vlanId": [ … ], "passphrase": [ … ], "mac": [ … ], "username": [ … ], "email": [ … ], "phoneNumber": [ … ], "status": [ … ] }, "maxDevicesPerPassphrase": 0 }

Responses

Exported passphrases

Bodytext/csv
string(binary)

CSV file containing exported passphrases

Response
No content

Import Passphrase from CSV

Request

Import DPSK passphrases from a CSV file.

Path
poolIdstringrequired
Query
usernamePrefixstring
Bodymultipart/form-data
filestring(binary)required
multipart/form-data
{
  "file": "string"
}

Responses

Passphrases

Body
requestIdstring

Identifier for tracking the asynchronous request.

idstring

Optional resource ID affected or created by the operation.

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

APIs for DPSK Passphrase Device

Operations for managing devices linked to DPSK passphrases.

Operations

APIs for DPSK Service Template

Operations for managing DPSK templates, including creation, cloning, and network template association.

Operations