Skip to content

Policy Management REST API (0.0.8)

Overview

The Policy Management REST API's and Model, allow the creation, delete and modification of policies, policy sets, and assigning policies to policy sets. All policies must be inherited from a policy template. Only those evaluation conditions that are defined for the template can be assigned to the policy. Once a policy is assigned to a policy set, it must be given an evaluation priority. If the priority is changed, or a policy added or removed, the priority of the other policies will be automatically re-ordered.

Rate Limit

For the Policy Management REST API the following will be true:

  • Limits are applied to each tenant.
  • A maximum of 100 calls can be made per second.
  • Each second 50 calls will be returned to be used.
Download OpenAPI description
Languages
Servers
Generated server url

http://localhost:8080/

Policy Conditions

Manage the conditions that are applied on the specified policy.

Operations

Policy Templates

View the list of policy templates.

Operations

Policy Set Prioritized Rules

Manages, create and gets the policies prioritized for this set.

Operations

Policies

Manages, create and get of policies assigned to a specific template.

Operations

Get Policies

Request

Gets the list of policies that are based off of this template.

Path
templateIdinteger(int64)required

Policy template identifier.

Query
sizeany

Page size

pageany

The page to retrieve, paging starts at zero).

sortany

The field name to sort, comma seperated from the sort order (asc or desc).

No request payload

Responses

Policies in a paged format.

Body
pagingobject(PageDto)

The paging information for this response.

contentArray of objects(Policy)

The content list of the data.

_linksobject(Links)
Response
{ "paging": { "totalCount": 0, "page": 0, "pageSize": 0, "pageCount": 0 }, "content": [ {} ], "_links": { "property1": {}, "property2": {} } }

Create Policy

Request

Creates a policy from the requested values, and based on the specified parent. If the content type of "application/ruckus.one.v1-synchronous+json" is provided, then the method will be asynchronous, and will return only once it has correctly associated with the requested radius attribute group. Otherwise it is asynchronous, and must be looked up by id to be complete.

Path
templateIdinteger(int64)required

Policy template identifier.

Bodyrequired
idstring(uuid)

The identifier for this dynamic policy.

namestringrequired

The name of the policy.

descriptionstring

The policy description.

policyTypestringrequired

The data type for this attribute text. EX: it identifies which type of value the test data will be. This cannot be changed, and will be matched with the policy template for this policy type. It cannot be changed.

Enum"RADIUS""DPSK"
onMatchResponsestring

The response details if the policy is matched. For policy types which are RADIUS and DPSK, this is expected to be the identifier of a valid RADIUS attribute group.

policySetCountinteger(int64)

The number of policy sets that this policy is assigned to.

conditionsCountinteger(int64)

The number of conditions that are used when evaluating this policy.

policySetNamesArray of strings

The names of the policy sets that this policy is currently assigned to.

_linksobject(Links)
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "policyType": "RADIUS", "onMatchResponse": "string", "policySetCount": 0, "conditionsCount": 0, "policySetNames": [ "string" ], "_links": { "property1": {}, "property2": {} } }

Responses

Created

Bodyapplication/ruckus.one.v1-synchronous+json
idstring(uuid)

The identifier for this dynamic policy.

namestringrequired

The name of the policy.

descriptionstring

The policy description.

policyTypestringrequired

The data type for this attribute text. EX: it identifies which type of value the test data will be. This cannot be changed, and will be matched with the policy template for this policy type. It cannot be changed.

Enum"RADIUS""DPSK"
onMatchResponsestring

The response details if the policy is matched. For policy types which are RADIUS and DPSK, this is expected to be the identifier of a valid RADIUS attribute group.

policySetCountinteger(int64)

The number of policy sets that this policy is assigned to.

conditionsCountinteger(int64)

The number of conditions that are used when evaluating this policy.

policySetNamesArray of strings

The names of the policy sets that this policy is currently assigned to.

_linksobject(Links)
Response
application/ruckus.one.v1-synchronous+json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "policyType": "RADIUS", "onMatchResponse": "string", "policySetCount": 0, "conditionsCount": 0, "policySetNames": [ "string" ], "_links": { "property1": {}, "property2": {} } }

Query Policies

Request

Returns the list of policies on the specific templates using the specified query.

Path
templateIdinteger(int64)required

Policy template identifier.

Query
excludeContentboolean

Indicates that the content should be excluded from the query and only count and size data returned.

Default false
Bodyrequired
sortFieldstring

The field to use to sort on.

sortOrderstring

The sort order of the applied query.

Enum"ASC""DESC"
pageinteger(int32)>= 0

The page number to return, paging starts with 0.

pageSizeinteger(int32)[ 1 .. 2000 ]

The number of items requested on the page.

filtersobject

The list of filters to apply.

{ "sortField": "string", "sortOrder": "ASC", "page": 0, "pageSize": 1, "filters": { "property1": {}, "property2": {} } }

Responses

List Policy in a paged format.

Body
pagingobject(PageDto)

The paging information for this response.

contentArray of objects(Policy)

The content list of the data.

_linksobject(Links)
Response
{ "paging": { "totalCount": 0, "page": 0, "pageSize": 0, "pageCount": 0 }, "content": [ {} ], "_links": { "property1": {}, "property2": {} } }

Get Policy

Request

Retrieves the requested policy.

Path
templateIdinteger(int64)required

Policy template identifier.

policyIdstring(uuid)required

Policy identifier.

No request payload

Responses

Policy success

Body
idstring(uuid)

The identifier for this dynamic policy.

namestringrequired

The name of the policy.

descriptionstring

The policy description.

policyTypestringrequired

The data type for this attribute text. EX: it identifies which type of value the test data will be. This cannot be changed, and will be matched with the policy template for this policy type. It cannot be changed.

Enum"RADIUS""DPSK"
onMatchResponsestring

The response details if the policy is matched. For policy types which are RADIUS and DPSK, this is expected to be the identifier of a valid RADIUS attribute group.

policySetCountinteger(int64)

The number of policy sets that this policy is assigned to.

conditionsCountinteger(int64)

The number of conditions that are used when evaluating this policy.

policySetNamesArray of strings

The names of the policy sets that this policy is currently assigned to.

_linksobject(Links)
Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "policyType": "RADIUS", "onMatchResponse": "string", "policySetCount": 0, "conditionsCount": 0, "policySetNames": [ "string" ], "_links": { "property1": {}, "property2": {} } }

Delete Policy

Request

Deletes the policy and conditions, may not be assigned to a service.

Path
templateIdinteger(int64)required

Policy template identifier.

policyIdstring(uuid)required

Policy identifier.

No request payload

Responses

Policy deleted

Body
object
Response
{}

Update Policy

Request

Updates the policy from the requested values. The policy template assigned to this policy cannot be changed.

Path
templateIdinteger(int64)required

Policy template identifier.

policyIdstring(uuid)required

Policy identifier.

Bodyrequired
idstring(uuid)

The identifier for this dynamic policy.

namestringrequired

The name of the policy.

descriptionstring

The policy description.

policyTypestringrequired

The data type for this attribute text. EX: it identifies which type of value the test data will be. This cannot be changed, and will be matched with the policy template for this policy type. It cannot be changed.

Enum"RADIUS""DPSK"
onMatchResponsestring

The response details if the policy is matched. For policy types which are RADIUS and DPSK, this is expected to be the identifier of a valid RADIUS attribute group.

policySetCountinteger(int64)

The number of policy sets that this policy is assigned to.

conditionsCountinteger(int64)

The number of conditions that are used when evaluating this policy.

policySetNamesArray of strings

The names of the policy sets that this policy is currently assigned to.

_linksobject(Links)
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "policyType": "RADIUS", "onMatchResponse": "string", "policySetCount": 0, "conditionsCount": 0, "policySetNames": [ "string" ], "_links": { "property1": {}, "property2": {} } }

Responses

Policy updated

Body
idstring(uuid)

The identifier for this dynamic policy.

namestringrequired

The name of the policy.

descriptionstring

The policy description.

policyTypestringrequired

The data type for this attribute text. EX: it identifies which type of value the test data will be. This cannot be changed, and will be matched with the policy template for this policy type. It cannot be changed.

Enum"RADIUS""DPSK"
onMatchResponsestring

The response details if the policy is matched. For policy types which are RADIUS and DPSK, this is expected to be the identifier of a valid RADIUS attribute group.

policySetCountinteger(int64)

The number of policy sets that this policy is assigned to.

conditionsCountinteger(int64)

The number of conditions that are used when evaluating this policy.

policySetNamesArray of strings

The names of the policy sets that this policy is currently assigned to.

_linksobject(Links)
Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "policyType": "RADIUS", "onMatchResponse": "string", "policySetCount": 0, "conditionsCount": 0, "policySetNames": [ "string" ], "_links": { "property1": {}, "property2": {} } }

Policy Sets

Manages the policy sets.

Operations

Policy Set Assignments

Provides information on the assignments made on a policy set.

Operations