Skip to content

DPSK API & Model Documentation (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 Template Management

Operations

APIs for DPSK Service Management

Operations

APIs for DPSK Passphrase Management

Operations

Get Specific DPSK Passphrase

Request

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.

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.

lastModifiedDatestring(date-time)read-only
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
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

Path
poolIdstringrequired

DPSK pool id

idstringrequired

DPSK passphrase id

Bodyrequired
passphrasestring[ 8 .. 63 ] characters

The actual passphrase.

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

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
Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Get Passphrase

Request

Path
poolIdstringrequired

DPSK pool id

Query
pageinteger>= 0

Zero-based page index (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)
totalPagesinteger(int32)
sizeinteger(int32)
contentArray of objects
numberinteger(int32)
sortobject(SortObject)
pageableobject(PageableObject)
numberOfElementsinteger(int32)
firstboolean
lastboolean
emptyboolean
Response
{ "totalElements": 0, "totalPages": 0, "size": 0, "content": [ {} ], "number": 0, "sort": { "empty": true, "unsorted": true, "sorted": true }, "pageable": { "offset": 0, "sort": { … }, "unpaged": true, "paged": true, "pageNumber": 0, "pageSize": 0 }, "numberOfElements": 0, "first": true, "last": true, "empty": true }

Create DPSK Passphrase

Request

Path
poolIdstringrequired

DPSK pool id

Bodyrequired
passphrasestring[ 8 .. 63 ] characters

Actual passphrase.

usernamestring

The username for passphrase.

lengthinteger(int32)[ 8 .. 63 ]

Passphrase length

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)

Passphrase limit.

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)
{ "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
string
Response
"string"

Delete Passphrase

Request

Path
poolIdstringrequired

DPSK pool id

BodyrequiredArray [
string
]
[ "string" ]

Responses

The passphrase(s) delete request is in progress

Body
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.

changesobjectrequired

Changes to be applied to the passphrases.

changes.​passphrasestring[ 8 .. 63 ] characters

The actual passphrase.

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
Response
{ "requestId": "b3d3a0a0-0b1a-4b1a-9b0a-0b1a0b1a0b1a" }

Query Passphrases for Specified Pool

Request

Path
poolIdstringrequired
Bodyrequired
fieldsArray of strings
pageinteger(int32)
pageSizeinteger(int32)
sortFieldstring
sortOrderstring
Enum"ASC""DESC"
searchTargetFieldsArray of strings
searchStringstring
filtersobject(DpskPassphraseFilters)
maxDevicesPerPassphraseinteger(int32)
{ "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
totalCountinteger(int64)
totalPagesinteger(int32)
pageinteger(int32)
dataArray of objects(DpskPassphraseDto)
Response
{ "fields": [ "string" ], "totalCount": 0, "totalPages": 0, "page": 0, "data": [ { … } ] }

DPSK Passphrase to CSV

Request

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
pageinteger(int32)
pageSizeinteger(int32)
sortFieldstring
sortOrderstring
Enum"ASC""DESC"
searchTargetFieldsArray of strings
searchStringstring
filtersobject(DpskPassphraseFilters)
maxDevicesPerPassphraseinteger(int32)
{ "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

Import Passphrase from CSV

Request

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

Responses

Passphrases

Body
string
Response
"string"

APIs for DPSK Passphrase Device Management

Operations