# Identity Management

# Overview

The Identity Management REST APIs and Model, allow the creation, deletion, and modification of identity groups, and identities.

## What This API Does
- Create, modify, and delete identities groups and identities
- Manage devices under identities

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

Version: 0.0.1
License: RUCKUS Cloud Privacy Policy

## 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
```

## Security

### bearerAuth

Type: http
Scheme: bearer
Bearer Format: JWT

## Download OpenAPI description

[Identity Management](https://docs.ruckus.cloud/_bundle/api/persona-0.0.2.yaml)

## Identity Group

Operations for managing identity groups.

### Update the Policy Set Association

 - [PUT /identityGroups/{id}/policySets/{policySetId}](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/updatepolicysetassociation.md): Associate a policy set with an identity group.

### Remove the Policy Set Association

 - [DELETE /identityGroups/{id}/policySets/{policySetId}](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/removepolicysetassociation.md): Remove the association between a policy set and an identity group.

### Update the MAC Registration Association

 - [PUT /identityGroups/{id}/macRegistrationPools/{poolId}](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/updatemacregistrationassociation.md): Associate a MAC registration pool with an identity group.

### Update the DPSK Pool Association

 - [PUT /identityGroups/{id}/dpskPools/{dpskPoolId}](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/updatedpskpoolassociation.md): Associate a DPSK pool with an identity group.

### Returns the Identity Groups

 - [GET /identityGroups](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/getgroups.md): Retrieve a paginated list of all identity groups for the tenant.

### Query the Identity Groups

 - [POST /identityGroups/query](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/searchgroups.md): Search and filter identity groups based on specified criteria.

### Export Identity Groups Into File

 - [POST /identityGroups/csvFile](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/exportgroupscsv.md): Export identity groups to a CSV file based on search criteria.

### Returns the Specific Identity Group

 - [GET /identityGroups/{id}](https://docs.ruckus.cloud/api/persona-0.0.2/identity-group/getgroupbyid.md): Retrieve detailed information about a specific identity group by its ID.

## Identity

Operations for managing identities.

### Update the Identity's Ethernet Ports

 - [PUT /identityGroups/{groupId}/identities/{id}/venues/{venueId}/ethernetPorts](https://docs.ruckus.cloud/api/persona-0.0.2/identity/updateidentityethernetports.md): Update the ethernet ports associated with an identity at a specific venue.

### Returns Identities in the Group

 - [GET /identityGroups/{groupId}/identities](https://docs.ruckus.cloud/api/persona-0.0.2/identity/listidentitiesbygroup.md): Retrieve a paginated list of all identities within a specific identity group.

### Query Identities

 - [POST /identities/query](https://docs.ruckus.cloud/api/persona-0.0.2/identity/queryidentity.md): Search and filter identities across all groups based on specified criteria.

### Returns the Identity

 - [GET /identityGroups/{groupId}/identities/{id}](https://docs.ruckus.cloud/api/persona-0.0.2/identity/getidentitybyid.md): Retrieve detailed information about a specific identity by its ID.

### Returns Identities in All Groups

 - [GET /identities](https://docs.ruckus.cloud/api/persona-0.0.2/identity/listidentities.md): Retrieve a paginated list of all identities across all groups for the tenant.

### Retry VNI Allocation for Identity

 - [DELETE /identityGroups/{groupId}/identities/{id}/vnis](https://docs.ruckus.cloud/api/persona-0.0.2/identity/allocateidentityvni.md): Retry the VNI allocation for a specific identity.

## External Identity

Operations for managing external identities.

### Query External Identities

 - [POST /externalIdentities/query](https://docs.ruckus.cloud/api/persona-0.0.2/external-identity/queryexternalidentity.md): Search and filter external identities based on specified criteria.

