openapi: 3.2.0 info: title: Hyperlabs.Web Users API version: '1.0' servers: - url: /api tags: - name: Users paths: /v1/admin/users: get: tags: - Users parameters: - name: RoleIds in: query schema: title: Guid[] type: array items: title: Guid type: string format: uuid - name: Search in: query schema: title: String type: string - name: SortBy in: query schema: $ref: '#/components/schemas/Hyperlabs.Domain.Users.Models.UsersQuerySortParameter' - name: SortDesc in: query schema: title: Boolean type: boolean - name: PageNo in: query schema: title: Int32 type: integer format: int32 - name: PageSize in: query schema: title: Int32 type: integer format: int32 responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] post: tags: - Users requestBody: content: application/json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.CreateUserDto' text/json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.CreateUserDto' application/*+json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.CreateUserDto' responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] /v1/admin/users/{id}: get: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] put: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid requestBody: content: application/json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.ChangeUserDto' text/json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.ChangeUserDto' application/*+json: schema: $ref: '#/components/schemas/Hyperlabs.Web.Areas.Admin.Models.Users.ChangeUserDto' responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] delete: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] /v1/admin/users/{id}/enable: post: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid responses: '204': description: No Content '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] /v1/admin/users/{id}/disable: post: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid responses: '204': description: No Content '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] /v1/admin/users/{id}/invite: post: tags: - Users parameters: - name: id in: path required: true schema: title: Guid type: string format: uuid responses: '200': description: OK '401': description: Unauthorized '403': description: Forbidden security: - oauth2: [] components: schemas: Hyperlabs.Web.Areas.Admin.Models.Users.ChangeUserDto: title: ChangeUserDto type: object properties: roleId: title: Guid type: string format: uuid userName: title: String type: - string - 'null' firstName: title: String type: - string - 'null' lastName: title: String type: - string - 'null' title: title: String type: - string - 'null' additionalProperties: false Hyperlabs.Domain.Users.Models.UsersQuerySortParameter: title: UsersQuerySortParameter enum: - 1 - 2 type: integer format: int32 Hyperlabs.Web.Areas.Admin.Models.Users.CreateUserDto: title: CreateUserDto type: object properties: roleId: title: Guid type: string format: uuid userName: title: String type: - string - 'null' firstName: title: String type: - string - 'null' lastName: title: String type: - string - 'null' title: title: String type: - string - 'null' additionalProperties: false securitySchemes: oauth2: type: apiKey description: 'Standard Authorization header using the Bearer scheme. Example: "Bearer {token}"' name: Authorization in: header