openapi: 3.0.3 info: title: Liferay Roles API description: >- Roles API Basics. You can create and manage roles from the Application menu, but you can also use Liferay's REST APIs. Call these services to manage roles, including associating and dissociating users to regular, site, and organization roles. version: v1.0 contact: name: Liferay url: https://learn.liferay.com/w/dxp/integration/headless-apis/user-management-apis/roles-api-basics servers: - url: http://localhost:8080/o/headless-admin-user/v1.0 description: Default Liferay headless admin user API base URL security: - basicAuth: [] tags: - name: Roles description: Manage roles and role associations paths: /roles: get: tags: - Roles summary: List roles description: Returns the collection of roles available in Liferay. operationId: getRoles responses: '200': description: A page of roles content: application/json: schema: $ref: '#/components/schemas/RolePage' /roles/{roleId}: get: tags: - Roles summary: Get a role description: Returns a single role identified by its ID. operationId: getRole parameters: - $ref: '#/components/parameters/RoleId' responses: '200': description: The requested role content: application/json: schema: $ref: '#/components/schemas/Role' /roles/{roleId}/association/user-account/{userId}: post: tags: - Roles summary: Associate a regular role to a user operationId: associateRoleToUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' responses: '204': description: Association created delete: tags: - Roles summary: Remove regular role association from a user operationId: dissociateRoleFromUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' responses: '204': description: Association removed /roles/{roleId}/association/user-account/{userId}/site/{siteId}: post: tags: - Roles summary: Associate a site role to a user operationId: associateSiteRoleToUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' - $ref: '#/components/parameters/SiteId' responses: '204': description: Association created delete: tags: - Roles summary: Remove site role association from a user operationId: dissociateSiteRoleFromUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' - $ref: '#/components/parameters/SiteId' responses: '204': description: Association removed /roles/{roleId}/association/user-account/{userId}/organization/{orgId}: post: tags: - Roles summary: Associate an organization role to a user operationId: associateOrgRoleToUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' - $ref: '#/components/parameters/OrgId' responses: '204': description: Association created delete: tags: - Roles summary: Remove organization role association from a user operationId: dissociateOrgRoleFromUser parameters: - $ref: '#/components/parameters/RoleId' - $ref: '#/components/parameters/UserId' - $ref: '#/components/parameters/OrgId' responses: '204': description: Association removed components: securitySchemes: basicAuth: type: http scheme: basic parameters: RoleId: in: path name: roleId required: true schema: type: integer format: int64 UserId: in: path name: userId required: true schema: type: integer format: int64 SiteId: in: path name: siteId required: true schema: type: integer format: int64 OrgId: in: path name: orgId required: true schema: type: integer format: int64 schemas: Role: type: object properties: id: type: integer format: int64 name: type: string description: type: string roleType: type: string enum: - regular - site - organization dateCreated: type: string format: date-time dateModified: type: string format: date-time RolePage: type: object properties: items: type: array items: $ref: '#/components/schemas/Role' page: type: integer pageSize: type: integer totalCount: type: integer