openapi: 3.0.0 info: title: 'Learn Rest Api' version: '3.0' servers: - url: 'https://api-learn.ispring.com' description: 'Main server' paths: /api/v3/token: post: tags: - token summary: 'Generates a new access token based on client_id and client_secret' operationId: AccessRequest requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ClientCredentialsGrantTypeRequest' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/TokenResponse' application/xml: schema: $ref: '#/components/schemas/TokenResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' security: - { } /content: get: tags: - content summary: 'Get content list' operationId: GetContent parameters: - $ref: '#/components/parameters/targetLocale' - name: contentTypes in: query required: false schema: type: array items: $ref: '#/components/schemas/ContentType' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/ContentItemInformation' application/xml: schema: type: array items: $ref: '#/components/schemas/ContentItemInformation' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /contents: get: tags: - content summary: 'List content' operationId: ListContent parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - $ref: '#/components/parameters/targetLocale' - name: 'contentItemIds[]' in: query required: false schema: type: array items: type: string format: uuid - name: contentTypes in: query required: false schema: type: array items: $ref: '#/components/schemas/ContentType' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/ContentItemsInformationPage' application/xml: schema: $ref: '#/components/schemas/ContentItemsInformationPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - content summary: 'List content' operationId: ListContentByPost requestBody: required: true content: application/xml: schema: properties: contentItemIds: type: array items: { type: string, format: uuid } xml: { name: contentItemIds } contentTypes: type: array items: { $ref: '#/components/schemas/ContentType' } xml: { name: contentTypes } type: object xml: name: request responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/ContentItemsInformationPage' application/xml: schema: $ref: '#/components/schemas/ContentItemsInformationPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/content/{contentId}': get: tags: - content summary: 'Get content item' operationId: GetContentItem parameters: - $ref: '#/components/parameters/targetLocale' - name: contentId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: required: - contentItem properties: contentItem: { $ref: '#/components/schemas/ContentItemInformation' } type: object application/xml: schema: required: - contentItem properties: contentItem: { $ref: '#/components/schemas/ContentItemInformation' } type: object xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/content/{contentId}/final_statuses': get: tags: - content summary: 'Get content item final statuses' operationId: GetContentItemFinalStatuses parameters: - name: contentId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/ContentItemFinalStatus' application/xml: schema: type: array items: $ref: '#/components/schemas/ContentItemFinalStatus' xml: name: statuses wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' content: text/plain: schema: type: string example: 'Unknown content item' /courses/modules: get: tags: - content summary: 'List courses modules' operationId: ListCoursesModules parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: courseIds in: query required: true schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/CoursesModulesPage' application/xml: schema: $ref: '#/components/schemas/CoursesModulesPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' deprecated: true /course_fields: get: tags: - content summary: 'List course fields' operationId: ListCourseFields responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/CourseFields' application/xml: schema: $ref: '#/components/schemas/CourseFields' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/content/create/{contentType}': post: tags: - content summary: 'Create content item' operationId: CreateContent parameters: - name: contentType in: path required: true schema: $ref: '#/components/schemas/ContentType' requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CreateCourseRequest' responses: '201': description: Created content: application/json: schema: description: 'The content item ID' type: string format: uuid '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/course/{courseId}/modules': get: tags: - content summary: 'List modules by course id' operationId: ListCourseModules parameters: - name: courseId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: required: - modules properties: modules: { type: array, items: { $ref: '#/components/schemas/CoursesModule' } } type: object application/xml: schema: required: - modules properties: modules: { type: array, items: { $ref: '#/components/schemas/CoursesModule' } } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Unknown content item' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' /statistics/course: post: tags: - statistics summary: 'Update course status' operationId: UpdateCourseStatus parameters: - name: courseId in: query required: false schema: type: string format: uuid - name: enrollmentIds in: query required: false schema: $ref: '#/components/schemas/ArrayOfIds' - name: status in: query required: false schema: $ref: '#/components/schemas/CourseCompletionStatus' - name: date in: query required: false schema: type: string format: date-time - name: reason in: query required: false schema: type: string - name: awardedScore in: query required: false schema: type: number maximum: 100 minimum: 0 requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateCourseStatus' application/xml: schema: $ref: '#/components/schemas/UpdateCourseStatus' responses: '200': description: 'Success Response' content: application/json: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object application/xml: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /statistics/module: post: tags: - statistics summary: 'Update modules statuses' operationId: UpdateModuleStatuses requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateModulesStatuses' application/xml: schema: $ref: '#/components/schemas/UpdateModulesStatuses' responses: '200': description: 'Success Response' content: application/json: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object application/xml: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - statistics summary: 'Reset modules statistics' operationId: ResetModuleStatistics parameters: - name: courseId in: query required: false schema: type: string format: uuid - name: enrollmentIds in: query required: false schema: type: array items: type: string format: uuid - name: contentItemIds in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object application/xml: schema: required: - taskId properties: taskId: { description: 'Async Task ID', type: integer } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/task/{taskId}/status': get: tags: - task summary: 'Get async task status' operationId: GetTaskStatus parameters: - name: taskId in: path required: true schema: type: integer responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/TaskStatus' application/xml: schema: $ref: '#/components/schemas/TaskStatus' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /assignments: get: tags: - assignments summary: 'List assignments' operationId: ListAssignments parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: ungraded in: query required: false schema: type: integer enum: - 0 - 1 responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/AssignmentsPage' application/xml: schema: $ref: '#/components/schemas/AssignmentsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/assignment/{assignmentId}/attempts/ungraded': get: tags: - assignments summary: 'Retrieves a list of ungraded attempts for an assignment' operationId: ListAssignmentAttempts parameters: - name: assignmentId in: path required: true schema: type: string format: uuid - name: 'userIds[]' in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AssignmentAttempt' application/xml: schema: type: array items: $ref: '#/components/schemas/AssignmentAttempt' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /assignments/attempts/grade: post: tags: - assignments summary: 'Grade user assignment attempts' operationId: GradeAssignments requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AssignmentAttemptGrades' application/xml: schema: $ref: '#/components/schemas/AssignmentAttemptGrades' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /learning_track/courses: get: tags: - learning_track summary: 'Retrieves a list of courses included in the trajectories' operationId: ListLearningTracksCourses parameters: - name: learningTrackIds in: query required: true schema: description: 'Comma-separated array of track IDs' type: string responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/LearningTrackCourse' application/xml: schema: type: array items: $ref: '#/components/schemas/LearningTrackCourse' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /courses_tree: get: tags: - content summary: 'Get courses tree' operationId: GetCoursesTree parameters: - $ref: '#/components/parameters/targetLocale' - name: contentItemIds in: query required: false schema: $ref: '#/components/schemas/ArrayOfIds' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CourseTreeItem' application/xml: schema: type: array items: $ref: '#/components/schemas/CourseTreeItem' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /quizzes: get: tags: - quizzes summary: 'Retrieves a list of quizzes' operationId: ListQuizzes parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: quizIds in: query required: false schema: type: array items: type: string format: uuid - name: contentItemIds in: query required: false schema: type: array items: type: string format: uuid - name: parentCourseIds in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/QuizzesPage' application/xml: schema: $ref: '#/components/schemas/QuizzesPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /department: get: tags: - department summary: 'Get department list' operationId: GetDepartments parameters: - name: code in: query required: false schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: required: - departments properties: departments: { type: array, items: { $ref: '#/components/schemas/Department' } } type: object application/xml: schema: required: - departments properties: departments: { type: array, items: { $ref: '#/components/schemas/Department' } } type: object xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - department summary: 'Add a new department' operationId: AddDepartment parameters: - $ref: '#/components/parameters/returnObject' - name: X-Name in: header required: false schema: type: string - name: X-Parent-Department-Id in: header required: false schema: type: string format: uuid - name: X-Code in: header required: false schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewDepartment' application/xml: schema: $ref: '#/components/schemas/NewDepartment' responses: '201': description: Created content: application/json: schema: description: 'The department ID' type: string format: uuid application/xml: schema: description: 'The department ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/department/{departmentId}': get: tags: - department summary: 'Get department info' operationId: GetDepartment parameters: - name: departmentId in: path required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/Department' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/Department' } type: object '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - department summary: 'Update department' operationId: UpdateDepartment parameters: - name: departmentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateDepartment' application/xml: schema: $ref: '#/components/schemas/UpdateDepartment' responses: '204': description: 'No Content' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - department summary: 'Delete department' operationId: RemoveDepartment parameters: - name: departmentId in: path required: true schema: type: string responses: '204': description: 'Successful operation' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /departments: get: tags: - departments summary: 'List departments' operationId: ListDepartments parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/DepartmentsPage' application/xml: schema: $ref: '#/components/schemas/DepartmentsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/department/{departmentId}/subordination': post: tags: - department summary: 'Change department subordination' operationId: ChangeDepartmentSubordination parameters: - name: departmentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeDepartmentSubordination' application/xml: schema: $ref: '#/components/schemas/ChangeDepartmentSubordination' responses: '204': description: 'Successful operation' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/department/{departmentId}/user/move': post: tags: - department summary: 'Move users to department' operationId: MoveUsersToDepartment parameters: - name: departmentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MoveUsersToDepartment' application/xml: schema: $ref: '#/components/schemas/MoveUsersToDepartment' responses: '204': description: 'Successful operation' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/department/{parentId}/department/move': post: tags: - department summary: 'Move departments to parent department' operationId: MoveDepartments parameters: - name: parentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MoveDepartments' application/xml: schema: $ref: '#/components/schemas/MoveDepartments' responses: '204': description: 'Successful operation' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' /enrollment: get: tags: - enrollment summary: 'Get enrollment list' operationId: GetEnrollments parameters: - name: 'courseIds[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'learnerIds[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'enrollmentIds[]' in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: required: - enrollments properties: enrollments: { type: array, items: { $ref: '#/components/schemas/Enrollment' } } type: object application/xml: schema: required: - enrollments properties: enrollments: { type: array, items: { $ref: '#/components/schemas/Enrollment' } } type: object xml: name: response wrapped: true post: tags: - enrollment summary: 'Create new enrollments' operationId: EnrollLearnersInCourses requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewEnrollment' application/xml: schema: $ref: '#/components/schemas/NewEnrollment' responses: '201': description: Created '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /enrollments: get: tags: - enrollment summary: 'List enrollments' operationId: ListEnrollments parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: 'courseIds[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'learnerIds[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'enrollmentIds[]' in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/EnrollmentsPage' application/xml: schema: $ref: '#/components/schemas/EnrollmentsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - enrollment summary: 'List enrollments' operationId: ListEnrollmentsByPost requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListEnrollmentsRequest' application/xml: schema: $ref: '#/components/schemas/ListEnrollmentsRequest' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/EnrollmentsPage' application/xml: schema: $ref: '#/components/schemas/EnrollmentsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/enrollment/{enrollmentId}': get: tags: - enrollment summary: 'Get enrollment details' operationId: GetEnrollment parameters: - name: enrollmentId in: path required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/Enrollment' application/xml: schema: properties: enrollment: { $ref: '#/components/schemas/Enrollment' } type: object '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - enrollment summary: 'Update enrollment' operationId: ChangeEnrollment parameters: - name: enrollmentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateEnrollment' application/xml: schema: $ref: '#/components/schemas/UpdateEnrollment' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/enrollment/{enrollmentId}/reenroll': post: tags: - enrollment summary: 'Reenroll learner' operationId: Reenroll parameters: - name: enrollmentId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Reenroll' application/xml: schema: $ref: '#/components/schemas/Reenroll' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /enrollment/delete: post: tags: - enrollment summary: 'Delete enrollments' operationId: Unenroll requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DeleteEnrollments' application/xml: schema: $ref: '#/components/schemas/DeleteEnrollments' responses: '204': description: 'No Content' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/certificate/{issuedCertificateId}': get: tags: - certificate summary: 'Retrieves issued certificate information' operationId: GetIssuedCertificate parameters: - name: issuedCertificateId in: path required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/IssuedCertificate' application/xml: schema: $ref: '#/components/schemas/IssuedCertificate' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Not found' content: text/plain: schema: type: string example: 'Issued certificate not found' /gamification/points: get: tags: - gamification summary: 'Retrieves a list of users and their gamification points' operationId: GetGamificationPoints parameters: - name: 'userIds[]' in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/UserPointsInfo' application/xml: schema: type: array items: $ref: '#/components/schemas/UserPointsInfo' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /gamification/points/award: post: tags: - gamification summary: 'Award points to user' operationId: AwardGamificationPoints requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AwardGamificationPoints' application/xml: schema: $ref: '#/components/schemas/AwardGamificationPoints' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /gamification/points/withdraw: post: tags: - gamification summary: 'Withdraw points from user' operationId: WithdrawGamificationPoints requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/WithdrawGamificationPoints' application/xml: schema: $ref: '#/components/schemas/WithdrawGamificationPoints' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /group: get: tags: - group summary: 'Get group list' operationId: GetGroups responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/Group' application/xml: schema: type: array items: $ref: '#/components/schemas/Group' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - group summary: 'Add a new group' operationId: AddGroup parameters: - $ref: '#/components/parameters/returnObject' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewGroup' application/xml: schema: $ref: '#/components/schemas/NewGroup' responses: '201': description: Created content: application/json: schema: description: 'The group ID' type: string format: uuid application/xml: schema: description: 'The group ID' type: string format: uuid xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /group/smart: post: tags: - group summary: 'Add a new smart group' operationId: AddSmartGroup parameters: - $ref: '#/components/parameters/returnObject' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewSmartGroup' application/xml: schema: $ref: '#/components/schemas/NewSmartGroup' responses: '201': description: Created content: application/json: schema: description: 'The group ID' type: string format: uuid application/xml: schema: description: 'The group ID' type: string format: uuid xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/group/smart/{groupId}': post: tags: - group summary: 'Update smart group rules' operationId: EditSmartGroup parameters: - name: groupId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateSmartGroup' application/xml: schema: $ref: '#/components/schemas/UpdateSmartGroup' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/group/smart/{groupId}/rules': get: tags: - group summary: 'Get smart group rules' operationId: GetSmartGroupRules parameters: - name: groupId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: required: - smartGroupRules properties: smartGroupRules: { $ref: '#/components/schemas/SmartGroupRules' } type: object application/xml: schema: required: - smartGroupRules properties: smartGroupRules: { $ref: '#/components/schemas/SmartGroupRules' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/group/{groupId}': get: tags: - group summary: 'Get group details' operationId: GetGroup parameters: - name: groupId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/DetailedGroup' application/xml: schema: properties: response: { $ref: '#/components/schemas/DetailedGroup' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - group summary: 'Update group' operationId: UpdateGroup parameters: - name: groupId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateGroup' application/xml: schema: $ref: '#/components/schemas/UpdateGroup' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - group summary: 'Delete group' operationId: RemoveGroup parameters: - name: groupId in: path required: true schema: type: string format: uuid responses: '204': description: 'No content' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/group/{groupId}/members': post: tags: - group summary: 'Update group members' operationId: UpdateGroupMembers parameters: - name: groupId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateGroupMembers' application/xml: schema: $ref: '#/components/schemas/UpdateGroupMembers' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /groups: get: tags: - group summary: 'List groups' operationId: ListGroups parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/GroupsPage' application/xml: schema: $ref: '#/components/schemas/GroupsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /job-training/checklist/sessions/list: post: tags: - jobtraining summary: 'List сhecklists with sessions' operationId: listChecklistSessions requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListChecklistsSessionsRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/ChecklistSessionsData' application/xml: schema: type: array items: $ref: '#/components/schemas/ChecklistSessionsData' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /job-training/sessions/result/list: post: tags: - jobtraining summary: 'List sessions result' operationId: listSessionsResult requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListSessionsResultRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/JobTrainingSessionResultData' application/xml: schema: type: array items: $ref: '#/components/schemas/JobTrainingSessionResultData' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /job-training/completed-session/criterion-group/result/list: post: tags: - jobtraining summary: 'List criterion groups result' operationId: listCriterionGroupsResult requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListCriterionGroupsResultRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CriterionGroupResultData' application/xml: schema: type: array items: $ref: '#/components/schemas/CriterionGroupResultData' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /job-training/completed-session/criterion/result/list: post: tags: - jobtraining summary: 'List criterion result in completed sessions' operationId: listCriterionResult requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListCriterionResultRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CriterionResultData' application/xml: schema: type: array items: $ref: '#/components/schemas/CriterionResultData' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /performance-management/competencies/scale/list: get: tags: - performance-management summary: 'List competency scales' operationId: ListCompetencyScales responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CompetencyScale' application/xml: schema: type: array items: $ref: '#/components/schemas/CompetencyScale' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /performance-management/competencies/scale/create: post: tags: - performance-management summary: 'Create competency scale' operationId: CreateCompetencyScale requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCompetencyScaleData' responses: '200': description: 'Success Response' content: application/json: schema: description: 'The scale ID' type: string format: uuid application/xml: schema: description: 'The scale ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/performance-management/competencies/scale/{scaleId}/change': post: tags: - performance-management summary: 'Change competency scale' operationId: ChangeCompetencyScale parameters: - name: scaleId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeCompetencyScaleRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Scale not found' /performance-management/competencies/group/create: post: tags: - performance-management summary: 'Create competency group' operationId: CreateCompetencyGroup requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCompetencyGroupData' responses: '200': description: 'Success Response' content: application/json: schema: description: 'The group ID' type: string format: uuid application/xml: schema: description: 'The group ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/performance-management/competencies/group/{groupId}/rename': post: tags: - performance-management summary: 'Change competency group name' operationId: ChangeCompetencyGroupName parameters: - name: groupId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: required: - name properties: name: type: string type: object responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Group not found' /performance-management/competencies/group/batch-move: post: tags: - performance-management summary: 'Move competency groups to parent group' operationId: MoveCompetencyGroups requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MoveCompetencyGroupsToParentGroup' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Group not found' /performance-management/competencies/competency/batch-move: post: tags: - performance-management summary: 'Move competencies to group' operationId: MoveCompetenciesToGroup requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MoveCompetenciesToGroup' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Group not found' /performance-management/competencies/group/list: get: tags: - performance-management summary: 'List competency groups' operationId: ListCompetencyGroups responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CompetencyGroup' application/xml: schema: type: array items: $ref: '#/components/schemas/CompetencyGroup' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /performance-management/competencies/competency/list: post: tags: - performance-management summary: 'List competencies' operationId: ListCompetencies requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListCompetenciesRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/Competency' application/xml: schema: type: array items: $ref: '#/components/schemas/Competency' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /performance-management/competencies/competency/create: post: tags: - performance-management summary: 'Create competency' operationId: CreateCompetency requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCompetencyData' responses: '200': description: 'Success Response' content: application/json: schema: description: 'The competency ID' type: string format: uuid application/xml: schema: description: 'The competency ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/performance-management/competencies/competency/{competencyId}/change': post: tags: - performance-management summary: 'Change competency' operationId: ChangeCompetency parameters: - name: competencyId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeCompetencyData' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Competency not found' '/performance-management/competencies/competency/{competencyId}/indicator/create': post: tags: - performance-management summary: 'Create competency indicator' operationId: CreateCompetencyIndicator parameters: - name: competencyId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CompetencyIndicatorData' responses: '200': description: 'Success Response' content: application/json: schema: description: 'The competency indicator ID' type: string format: uuid application/xml: schema: description: 'The competency indicator ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/performance-management/competencies/competency/{competencyId}/indicator/{indicatorId}/change': post: tags: - performance-management summary: 'Change competency indicator' operationId: ChangeCompetencyIndicator parameters: - name: competencyId in: path required: true schema: type: string format: uuid - name: indicatorId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CompetencyIndicatorData' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Indicator not found' /performance-management/competencies/profile/list: post: tags: - performance-management summary: 'List competency profiles' operationId: ListCompetencyProfiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ListCompetencyProfilesRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/CompetencyProfile' application/xml: schema: type: array items: $ref: '#/components/schemas/CompetencyProfile' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /performance-management/appraisal/session/list: post: tags: - performance-management summary: 'List appraisal sessions' operationId: ListAppraisalSessions requestBody: content: application/json: schema: $ref: '#/components/schemas/ListAppraisalSessionsRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AppraisalSession' application/xml: schema: type: array items: $ref: '#/components/schemas/AppraisalSession' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/employee-card/list': get: tags: - performance-management summary: 'List appraisal session employee cards' operationId: ListAppraisalSessionEmployeeCards parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeCard' application/xml: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeCard' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/review/list': get: tags: - performance-management summary: 'List appraisal session reviews' operationId: ListAppraisalSessionReviews parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionReview' application/xml: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionReview' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/results': get: tags: - performance-management summary: 'Get appraisal session results' operationId: GetAppraisalSessionResults parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeResults' application/xml: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeResults' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/performance-management/appraisal/session/{sessionId}/content/competencies': get: tags: - performance-management summary: 'Get appraisal session content competencies' operationId: GetAppraisalSessionContentCompetencies parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/AppraisalSessionContentCompetencies' application/xml: schema: properties: '': { $ref: '#/components/schemas/AppraisalSessionContentCompetencies' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/user/attributes/list': post: tags: - performance-management summary: 'List appraisal session user attributes' operationId: ListAppraisalSessionUserAttributes parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ListAppraisalSessionUserAttributesRequest' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionUserAttributes' application/xml: schema: type: array items: $ref: '#/components/schemas/AppraisalSessionUserAttributes' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/start': post: tags: - performance-management summary: 'Start appraisal session' operationId: StartAppraisalSession parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/StartAppraisalSessionStatusCode' application/xml: schema: $ref: '#/components/schemas/StartAppraisalSessionStatusCode' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/restart': post: tags: - performance-management summary: 'Restart appraisal session' operationId: RestartAppraisalSession parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/RestartAppraisalSessionStatusCode' application/xml: schema: $ref: '#/components/schemas/RestartAppraisalSessionStatusCode' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/complete': post: tags: - performance-management summary: 'Complete appraisal session' operationId: CompleteAppraisalSession parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/performance-management/appraisal/session/{sessionId}/update': post: tags: - performance-management summary: 'Updating the appraisal session' operationId: UpdateAppraisalSession parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateAppraisalSessionRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' /performance-management/appraisal/session/create: post: tags: - performance-management summary: 'Creating the appraisal session' operationId: CreateAppraisalSession requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateAppraisalSessionRequest' responses: '200': description: 'Success Response' content: application/json: schema: description: 'Created session id' type: string format: uuid '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/employee-card/add': post: tags: - performance-management summary: 'Add employee cards to the appraisal session' operationId: AddAppraisalSessionEmployeeCards parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AddAppraisalSessionEmployeeCardsRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/employee-card/reviewer/replace': post: tags: - performance-management summary: 'Replaces employee card reviewers in an appraisal session' operationId: ReplaceAppraisalSessionEmployeeReviewers parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ReplaceAppraisalSessionEmployeeReviewersRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/employee-card/remove': post: tags: - performance-management summary: 'Remove employee cards from the appraisal session' operationId: RemoveAppraisalSessionEmployeeCards parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RemoveAppraisalSessionEmployeeCardsRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/employee-card/reviewer/remove': post: tags: - performance-management summary: 'Remove reviewers from the appraisal session' operationId: RemoveAppraisalSessionReviewers parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RemoveAppraisalSessionReviewersRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/question/add': post: tags: - performance-management summary: 'Adding the appraisal session question' operationId: AddAppraisalQuestion parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AddAppraisalQuestionRequest' responses: '200': description: 'Success Response' content: application/json: schema: description: 'Added question id' type: string format: uuid '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/question/{questionId}/update': post: tags: - performance-management summary: 'Updating the appraisal session question' operationId: UpdateAppraisalQuestion parameters: - name: sessionId in: path required: true schema: type: string format: uuid - name: questionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateAppraisalQuestionRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/question/change-order': post: tags: - performance-management summary: 'Changing the appraisal session question orders' operationId: ChangeAppraisalQuestionOrders parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeAppraisalQuestionOrdersRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/question/{questionId}/remove': post: tags: - performance-management summary: 'Removing the appraisal session question' operationId: RemoveAppraisalQuestion parameters: - name: sessionId in: path required: true schema: type: string format: uuid - name: questionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/permissions/add': post: tags: - performance-management summary: 'Adding the appraisal session permissions' operationId: AddAppraisalSessionPermissions parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AddAppraisalSessionPermissionsRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/permissions/remove': post: tags: - performance-management summary: 'Removing the appraisal session permissions' operationId: RemoveAppraisalSessionPermissions parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RemoveAppraisalSessionPermissionsRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/info': get: tags: - performance-management summary: 'Getting the appraisal session full info' operationId: GetAppraisalSessionInfo parameters: - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/AppraisalSessionInfo' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' '/performance-management/appraisal/session/{sessionId}/notification/change': post: tags: - performance-management summary: 'Changing the appraisal session notification settings' operationId: ChangeAppraisalSessionNotificationSettings parameters: - name: sessionId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeAppraisalSessionNotificationSettingsRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': $ref: '#/components/responses/NotFound' /report/active-users-by-period: get: tags: - report summary: 'Get active users' operationId: GetUsersWithActivity parameters: - name: activityDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' responses: '200': description: 'Success Response' content: application/json: schema: type: array items: type: string format: uuid xml: { name: id, wrapped: true } application/xml: schema: properties: response: { $ref: '#/components/schemas/ActiveUsersByPeriod' } type: object xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /report/answer-breakdown: get: tags: - report - quizzes summary: 'Retrieves a paginated list of answers results for answer breakdown report' operationId: ListAnswerBreakdownResults parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: quizId in: query required: true schema: type: string format: uuid - name: parentCourseId in: query required: false schema: type: string format: uuid - name: userIds in: query required: false schema: type: array items: type: string format: uuid - name: enrollmentIds in: query required: false schema: type: array items: type: string format: uuid - name: departmentIds in: query required: false schema: type: array items: type: string format: uuid - name: groupIds in: query required: false schema: type: array items: type: string format: uuid - name: attemptDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/AnswerBreakdownResultsPage' application/xml: schema: $ref: '#/components/schemas/AnswerBreakdownResultsPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/training/{trainingId}': get: tags: - training summary: 'Retrieves information about training' operationId: GetTrainingById parameters: - name: trainingId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/Training' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/Training' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/training/session/{trainingSessionId}': get: tags: - training summary: 'Retrieves training session information' operationId: GetTrainingSession parameters: - name: trainingSessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/TrainingSession' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/TrainingSession' } type: object '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' content: text/plain: schema: type: string example: 'Training session not found' '/training/{trainingId}/sessions': get: tags: - training summary: 'Retrieves information about sessions by training id' operationId: ListSessionsByTrainingId parameters: - name: trainingId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/TrainingSession' application/xml: schema: type: array items: $ref: '#/components/schemas/TrainingSession' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/training/day/{dayId}': get: tags: - training summary: 'Retrieves session day information' operationId: GetDay parameters: - name: dayId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/Day' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/Day' } type: object '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Day not found' content: text/plain: schema: type: string example: 'Day not found' post: tags: - training summary: 'Update day url' operationId: UpdateDay parameters: - name: dayId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateDay' application/xml: schema: $ref: '#/components/schemas/UpdateDay' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Day not found' '/training/session/participants/{sessionId}': get: tags: - training summary: 'Retrieves information about participants by session id' operationId: ListSessionParticipants parameters: - $ref: '#/components/parameters/pageToken' - $ref: '#/components/parameters/pageSize' - name: sessionId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: type: array items: type: string format: uuid application/xml: schema: type: array items: type: string format: uuid xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Session not found' '/training/day/{dayId}/participants/attendance/update': post: tags: - training summary: 'Updates participants attendance by day' operationId: UpdateDayParticipantsAttendance parameters: - name: dayId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateDayParticipantsAttendanceRequest' application/xml: schema: $ref: '#/components/schemas/UpdateDayParticipantsAttendanceRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Day not found' /user: get: tags: - user summary: 'Get user list' operationId: GetUsers parameters: - name: 'departments[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'groups[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'logins[]' in: query required: false schema: type: array items: type: string - name: 'emails[]' in: query required: false schema: type: array items: type: string responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/User' application/xml: schema: type: array items: $ref: '#/components/schemas/User' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - user summary: 'Add a new user' operationId: AddUser parameters: - $ref: '#/components/parameters/returnObject' - name: X-Department-Id in: header required: false schema: type: string format: uuid - name: X-Fields in: header required: false schema: $ref: '#/components/schemas/UserProfileFields' - name: X-Password in: header required: false schema: type: string - name: X-Role in: header required: false schema: $ref: '#/components/schemas/UserRoleEnum' - name: X-Role-Id in: header required: false schema: type: string format: uuid - name: X-Manageable-Department-Ids in: header required: false schema: $ref: '#/components/schemas/ArrayOfIds' - name: X-Group-Ids in: header required: false schema: $ref: '#/components/schemas/ArrayOfIds' - name: X-Roles in: header required: false schema: type: array items: $ref: '#/components/schemas/UserRole' - name: X-Send-Login-Email in: header required: false schema: type: boolean - name: X-Invitation-Message in: header required: false schema: type: string - name: X-Send-Login-SMS in: header required: false schema: type: boolean - name: X-Invitation-SMS-Message in: header required: false schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NewUser' application/xml: schema: $ref: '#/components/schemas/NewUser' responses: '201': description: Created content: application/json: schema: description: 'The user ID' type: string format: uuid application/xml: schema: description: 'The user ID' type: string format: uuid xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}': get: tags: - user summary: 'Get user profile' operationId: GetUserProfile parameters: - name: userId in: path required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/User' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/User' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - user summary: 'Update user profile' operationId: UpdateUserProfile parameters: - name: userId in: path required: true schema: type: string format: uuid - name: X-Department-Id in: header required: false schema: type: string format: uuid - name: X-Role in: header required: false schema: $ref: '#/components/schemas/UserRoleEnum' - name: X-Role-Id in: header required: false schema: type: string format: uuid - name: X-Roles in: header required: false schema: type: array items: $ref: '#/components/schemas/UserRole' - name: X-Fields in: header required: false schema: $ref: '#/components/schemas/UserProfileFields' - name: X-Group-Ids in: header required: false schema: $ref: '#/components/schemas/ArrayOfIds' - name: X-Manageable-Department-Ids in: header required: false schema: $ref: '#/components/schemas/ArrayOfIds' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateUser' application/xml: schema: $ref: '#/components/schemas/UpdateUser' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - user summary: 'Delete user' operationId: RemoveUser parameters: - name: userId in: path required: true schema: type: string responses: '204': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/find_existing: post: tags: - user summary: 'Find existing users' operationId: FindExistingUsers parameters: - name: X-User-Ids in: header required: false schema: type: array items: type: string format: uuid requestBody: required: true content: application/json: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object application/xml: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request responses: '200': description: 'Success Response' content: application/json: schema: type: array items: type: string format: uuid xml: { name: id, wrapped: true } application/xml: schema: type: array items: type: string format: uuid xml: { name: id, wrapped: true } xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/v2': get: tags: - user summary: 'Get user profile' operationId: GetUserProfileV2 parameters: - name: userId in: path required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: properties: response: { $ref: '#/components/schemas/UserV2' } type: object application/xml: schema: properties: response: { $ref: '#/components/schemas/UserV2' } type: object xml: name: response '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /user/v2: get: tags: - user summary: 'Get user list' operationId: GetUsersV2 parameters: - name: 'departments[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'groups[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'logins[]' in: query required: false schema: type: array items: type: string - name: 'emails[]' in: query required: false schema: type: array items: type: string responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/UserV2' application/xml: schema: type: array items: $ref: '#/components/schemas/User' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users: get: tags: - user summary: 'List users' operationId: ListUsers parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: 'departments[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'groups[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'logins[]' in: query required: false schema: type: array items: type: string - name: 'emails[]' in: query required: false schema: type: array items: type: string responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/UsersPage' application/xml: schema: $ref: '#/components/schemas/UsersPage' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' deprecated: true /users/v2: get: tags: - user summary: 'List users' operationId: ListUsersV2 parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: 'departments[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'groups[]' in: query required: false schema: type: array items: type: string format: uuid - name: 'logins[]' in: query required: false schema: type: array items: type: string - name: 'emails[]' in: query required: false schema: type: array items: type: string - name: 'userIds[]' in: query required: false schema: type: array items: type: string format: uuid responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/UsersPageV2' application/xml: schema: $ref: '#/components/schemas/UsersPageV2' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' post: tags: - user summary: 'List users' operationId: ListUsersV2ByPost requestBody: required: true content: application/xml: schema: properties: groups: type: array items: { type: string, format: uuid } xml: { name: groups } departments: type: array items: { type: string, format: uuid } xml: { name: departments } logins: type: array items: { type: string } xml: { name: logins } emails: type: array items: { type: string } xml: { name: emails } userIds: type: array items: { type: string, format: uuid } xml: { name: userIds } type: object xml: name: request responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/UsersPageV2' application/xml: schema: $ref: '#/components/schemas/UsersPageV2' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /user/profile/fields: get: tags: - user summary: 'Get user profile fields' operationId: GetUserProfileFields responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/UserFieldInfo' application/xml: schema: type: array items: $ref: '#/components/schemas/UserFieldInfo' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/password': post: tags: - user summary: 'Update user password' operationId: UpdateUserPassword parameters: - name: X-Password in: header required: false schema: type: string - name: userId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateUserPassword' application/xml: schema: $ref: '#/components/schemas/UpdateUserPassword' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/status': post: tags: - user summary: 'Activate/Deactivate user' operationId: ChangeUserStatus parameters: - name: userId in: path required: true schema: type: string format: uuid - name: X-Status in: header required: false schema: $ref: '#/components/schemas/UserStatus' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateUserStatus' application/xml: schema: $ref: '#/components/schemas/UpdateUserStatus' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/subordination': post: tags: - user summary: 'Change user subordination' operationId: ChangeUserSubordination parameters: - name: userId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeUserSubordination' application/xml: schema: $ref: '#/components/schemas/ChangeUserSubordination' responses: '204': description: 'No Content' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/scheduled_deactivation': post: tags: - user summary: 'Schedule user deactivation' operationId: ScheduleUserDeactivation parameters: - name: userId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ScheduledUserDeactivation' application/xml: schema: $ref: '#/components/schemas/ScheduledUserDeactivation' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - user summary: 'Delete scheduled deactivation date' operationId: RemoveScheduledUserDeactivation parameters: - name: userId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/scheduled_termination': post: tags: - user summary: 'Schedule user termination' operationId: ScheduleUserTermination parameters: - name: userId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ScheduledUserTermination' application/xml: schema: $ref: '#/components/schemas/ScheduledUserTermination' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' delete: tags: - user summary: 'Delete scheduled termination date' operationId: RemoveScheduledUserTermination parameters: - name: userId in: path required: true schema: type: string format: uuid responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '/user/{userId}/groups/remove': post: tags: - user summary: 'Remove user from groups' operationId: RemoveUserFromGroups parameters: - name: X-Group-Ids in: header required: false schema: type: array items: type: string format: uuid - name: userId in: path required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RemoveUserGroups' application/xml: schema: $ref: '#/components/schemas/RemoveUserGroups' responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /learners/results: get: tags: - results summary: 'Retrieves a paginated list of results for specific learners in specific courses' operationId: ListLearnerResults parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: userIds in: query required: false schema: type: array items: type: string - name: courseIds in: query required: false schema: type: array items: type: string - name: departmentIds in: query required: false schema: type: array items: type: string - name: enrollmentIds in: query required: false schema: type: array items: type: string - name: completionStatuses in: query required: false schema: type: array items: $ref: '#/components/schemas/CompletionStatus' - name: completionDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: accessDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: dueDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: userStatuses in: query required: false schema: type: array items: $ref: '#/components/schemas/UserStatus' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/LearnersResultsResponse' application/xml: schema: $ref: '#/components/schemas/LearnersResultsResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /learners/modules/results: get: tags: - results summary: 'Retrieves a paginated list of results for specific learners in specific modules' operationId: ListLearnerModulesResults parameters: - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageToken' - name: userIds in: query required: false schema: type: array items: type: string format: uuid - name: courseIds in: query required: false schema: type: array items: type: string format: uuid - name: moduleIds in: query required: false schema: type: array items: type: string format: uuid - name: courseItemIds in: query required: false schema: type: array items: type: string format: uuid - name: enrollmentIds in: query required: false schema: type: array items: type: string format: uuid - name: departmentIds in: query required: false schema: type: array items: type: string format: uuid - name: completionStatuses in: query required: false schema: type: array items: $ref: '#/components/schemas/CompletionStatus' - name: completionDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: accessDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: dueDate in: query required: false style: deepObject schema: $ref: '#/components/schemas/DateRange' - name: userStatuses in: query required: false schema: $ref: '#/components/schemas/UserStatus' responses: '200': description: 'Success Response' content: application/json: schema: $ref: '#/components/schemas/LearnersModulesResultsResponse' application/xml: schema: $ref: '#/components/schemas/LearnersModulesResultsResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /role: get: tags: - user summary: 'Get role list' operationId: GetRoles responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/Role' application/xml: schema: type: array items: $ref: '#/components/schemas/Role' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/activate: post: tags: - user summary: 'activate users' operationId: 'Activate users' parameters: - name: X-User-Ids in: header required: false schema: type: array items: type: string format: uuid requestBody: required: true content: application/json: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object application/xml: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/deactivate: post: tags: - user summary: 'deactivate users' operationId: 'Deactivate users' parameters: - name: X-User-Ids in: header required: false schema: type: array items: type: string format: uuid requestBody: required: true content: application/json: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object application/xml: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/terminate: post: tags: - user summary: 'terminate users' operationId: 'Terminate users' parameters: - name: X-User-Ids in: header required: false schema: type: array items: type: string format: uuid requestBody: required: true content: application/json: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object application/xml: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /user/list: post: tags: - user summary: 'Get users list' operationId: GetPagedUsersList requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/GetPagedUsersListRequest' application/xml: schema: $ref: '#/components/schemas/GetPagedUsersListRequest' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/GetPagedUsersListResponse' application/xml: schema: $ref: '#/components/schemas/GetPagedUsersListResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/work-leave-status: post: tags: - user summary: 'Update work leave statuses' operationId: UpdateWorkLeaveStatuses requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateWorkLeaveStatusesRequest' application/xml: schema: $ref: '#/components/schemas/UpdateWorkLeaveStatusesRequest' responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /users/work-leave-status/delete: post: tags: - user summary: 'Remove work leave statuses' operationId: RemoveWorkLeaveStatuses parameters: - name: X-User-Ids in: header required: false schema: type: array items: type: string format: uuid requestBody: required: true content: application/json: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object application/xml: schema: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request responses: '200': description: OK '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /webhook/register: post: tags: - webhook summary: 'Register new subscriber' operationId: RegisterSubscriber requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' /webhook/disable: post: tags: - webhook summary: 'Disable subscriber' operationId: DisabableSubscriber requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberNameRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberNameRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/settings/change: post: tags: - webhook summary: 'Change subscriber settings' operationId: ChangeSubscriberSettings requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/remove: post: tags: - webhook summary: 'Remove subscriber' operationId: RemoveSubscriber requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberNameRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberNameRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/subscribe: post: tags: - webhook summary: 'Add subscription' operationId: Subscribe requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscribeRequest' application/xml: schema: $ref: '#/components/schemas/SubscribeRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/unsubscribe: post: tags: - webhook summary: 'Remove subscription' operationId: unsubscribe requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UnsubscribeRequest' application/xml: schema: $ref: '#/components/schemas/UnsubscribeRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscription not found' /webhook/subscription/list: get: tags: - webhook summary: 'List subscriber subscriptions' operationId: ListSubscriptions parameters: - name: subscriberName in: query required: true schema: type: string responses: '200': description: 'Success Response' content: application/json: schema: type: array items: $ref: '#/components/schemas/Subscription' application/xml: schema: type: array items: $ref: '#/components/schemas/Subscription' xml: name: response wrapped: true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/enable: post: tags: - webhook summary: 'Enable subscriber' operationId: EnableSubscriber requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberNameRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberNameRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/code/send: post: tags: - webhook summary: 'Send a code to confirm the url' operationId: SendConfirmationCode requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SubscriberNameRequest' application/xml: schema: $ref: '#/components/schemas/SubscriberNameRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/confirm: post: tags: - webhook summary: 'Confirm subscriber callback url' operationId: Confirm requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ConfirmRequest' application/xml: schema: $ref: '#/components/schemas/ConfirmRequest' responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' /webhook/subscriber/info: get: tags: - webhook summary: 'Get information about subscriber' operationId: GetSubscriberInfo parameters: - name: subscriberName in: query required: true schema: type: string responses: '200': description: 'Success Response' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/PermissionDenied' '404': description: 'Subscriber not found' components: schemas: UserProfileFields: required: - login - email properties: additionalProperties: type: string login: type: string email: type: string type: object UserRoleEnum: type: string enum: - learner - administrator - department_administrator - publisher - custom ArrayOfIds: type: array items: type: string format: uuid xml: name: id xml: wrapped: true UserStatus: description: '1 - active, 3 - inactive, 5 - terminated' type: integer enum: - 1 - 3 - 5 DueDateType: type: string enum: - unlimited - default - due_date - due_period EnrollmentTypeGroup: description: '0 - Enrolled by admin 1 - Enrolled from catalog' type: integer enum: - 0 - 1 CourseCompletionStatus: type: string enum: - complete - incomplete - passed - failed - automatic ClientCredentialsGrantTypeRequest: required: - client_id - client_secret - grant_type properties: client_id: type: string client_secret: type: string grant_type: type: string enum: - client_credentials type: object TokenResponse: required: - access_token - expires_in - token_type properties: access_token: type: string expires_in: type: integer token_type: type: string enum: - bearer type: object xml: name: response CreateCourseRequest: required: - folder_id - title properties: folder_id: type: string format: uuid title: type: string type: object UpdateCourseStatus: required: - courseId - enrollmentIds - status properties: courseId: type: string format: uuid enrollmentIds: $ref: '#/components/schemas/ArrayOfIds' status: $ref: '#/components/schemas/CourseCompletionStatus' date: type: string format: date-time reason: type: string awardedScore: type: number maximum: 100 minimum: 0 type: object xml: name: request UpdateModulesStatuses: required: - enrollmentIds - courseId - moduleStatuses properties: enrollmentIds: $ref: '#/components/schemas/ArrayOfIds' courseId: type: string format: uuid moduleStatuses: type: array items: $ref: '#/components/schemas/ModuleStatus' xml: wrapped: true type: object xml: name: request AssignmentAttemptGrades: required: - assignmentAttemptGrades properties: assignmentAttemptGrades: type: array items: $ref: '#/components/schemas/AssignmentAttemptGrade' xml: wrapped: true type: object xml: name: request NewDepartment: required: - name - parentDepartmentId properties: name: type: string parentDepartmentId: type: string format: uuid code: type: string type: object xml: name: request UpdateDepartment: properties: name: type: string parentDepartmentId: type: string format: uuid code: type: string type: object xml: name: request ChangeDepartmentSubordination: properties: subordination: $ref: '#/components/schemas/Subordination' coSubordination: $ref: '#/components/schemas/Subordination' type: object xml: name: request MoveUsersToDepartment: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request MoveDepartments: required: - departmnetIds properties: departmentIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request NewEnrollment: required: - courseIds - learnerIds - dueDateType properties: courseIds: $ref: '#/components/schemas/ArrayOfIds' learnerIds: $ref: '#/components/schemas/ArrayOfIds' dueDateType: $ref: '#/components/schemas/DueDateType' dueDate: type: string format: date duePeriod: type: integer accessDate: type: string format: date lockAfterDueDate: type: boolean type: object xml: name: request ListEnrollmentsRequest: properties: pageSize: type: integer xml: name: pageSize wrapped: false pageToken: type: integer xml: name: pageToken wrapped: false courseIds: type: array items: type: string format: uuid xml: name: courseIds wrapped: false learnerIds: type: array items: type: string format: uuid xml: name: learnerIds wrapped: false enrollmentIds: type: array items: type: string format: uuid xml: name: enrollmentIds wrapped: false type: object UpdateEnrollment: required: - accessDate - dueDateType properties: accessDate: type: string format: datetime dueDateType: $ref: '#/components/schemas/DueDateType' dueDate: type: string format: date duePeriod: type: integer lockAfterDueDate: type: boolean type: object xml: name: request Reenroll: required: - accessDate - dueDateType properties: accessDate: type: string format: date dueDateType: $ref: '#/components/schemas/DueDateType' dueDate: type: string format: date duePeriod: type: integer lockAfterDueDate: type: boolean type: object xml: name: request DeleteEnrollments: required: - enrollmentIds properties: enrollmentIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request AwardGamificationPoints: required: - userId - amount - reason properties: userId: type: string format: uuid amount: type: number reason: type: string type: object xml: name: request WithdrawGamificationPoints: required: - userId - amount - reason properties: userId: type: string format: uuid amount: type: number reason: type: string type: object xml: name: request NewGroup: required: - name properties: name: type: string userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request NewSmartGroup: required: - name - rules properties: name: type: string rules: $ref: '#/components/schemas/SmartGroupRuleNodes' type: object xml: name: request SmartGroupRuleNodes: required: - and properties: and: type: array items: $ref: '#/components/schemas/AndSmartGroupRuleNode' type: object UpdateSmartGroup: required: - rules properties: name: type: string rules: $ref: '#/components/schemas/SmartGroupRuleNodes' type: object xml: name: request UpdateGroup: required: - name properties: name: type: string type: object xml: name: request UpdateGroupMembers: required: - userIds properties: userIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request ListChecklistsSessionsRequest: properties: checklistIds: type: array items: type: string format: uuid sessionIds: type: array items: type: string format: uuid type: object ListSessionsResultRequest: properties: checklistId: type: string format: uuid sessionStatus: $ref: '#/components/schemas/SessionStatus' sessionIds: type: array items: type: string format: uuid type: object ListCriterionGroupsResultRequest: properties: checklistId: type: string format: uuid sessionIds: type: array items: type: string format: uuid groupIds: type: array items: type: string format: uuid type: object ListCriterionResultRequest: properties: checklistId: type: string format: uuid sessionIds: type: array items: type: string format: uuid groupIds: type: array items: type: string format: uuid criterionIds: type: array items: type: string format: uuid type: object ChangeCompetencyScaleRequest: required: - name - levels properties: name: type: string levels: type: array items: $ref: '#/components/schemas/CompetencyScaleLevel' type: object ListCompetenciesRequest: properties: competencyIds: type: array items: type: string format: uuid type: object ChangeCompetencyData: required: - name - scaleId - reviewMethod - commentsRequirementLevel - emptyAnswersEnabled properties: name: type: string description: type: string scaleId: type: string format: uuid reviewMethod: $ref: '#/components/schemas/CompetencyReviewMethod' commentsRequirementLevel: $ref: '#/components/schemas/CompetencyCommentsRequirementLevel' emptyAnswersEnabled: type: boolean type: object CompetencyIndicatorData: required: - name - levels properties: name: type: string levels: type: array items: $ref: '#/components/schemas/CompetencyIndicatorLevel' type: object ListCompetencyProfilesRequest: properties: profileIds: type: array items: type: string format: uuid type: object ListAppraisalSessionsRequest: properties: sessionIds: type: array items: type: string format: uuid type: object ListAppraisalSessionUserAttributesRequest: required: - userIds properties: userIds: type: array items: type: string format: uuid type: object UpdateAppraisalSessionRequest: properties: name: type: string description: type: string instruction: type: string selfReviewInstruction: type: string profileId: type: string format: uuid managerId: type: string format: uuid type: object CreateAppraisalSessionRequest: required: - name - managerId properties: name: type: string description: type: string managerId: type: string format: uuid type: object AddAppraisalSessionEmployeeCardsRequest: required: - cards properties: cards: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeDetailedCard' type: object ReplaceAppraisalSessionEmployeeReviewersRequest: required: - cards properties: cards: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeDetailedCard' type: object RemoveAppraisalSessionEmployeeCardsRequest: required: - employeeIds properties: employeeIds: type: array items: type: string format: uuid type: object RemoveAppraisalSessionReviewersRequest: required: - reviewerIds properties: reviewerIds: type: array items: type: string format: uuid type: object AddAppraisalQuestionRequest: required: - text - isRequired - targetRoles properties: text: type: string isRequired: type: boolean targetRoles: type: array items: $ref: '#/components/schemas/AppraisalSessionReviewerRole' type: object UpdateAppraisalQuestionRequest: properties: text: type: string isRequired: type: boolean targetRoles: type: array items: $ref: '#/components/schemas/AppraisalSessionReviewerRole' type: object ChangeAppraisalQuestionOrdersRequest: required: - questionIds properties: questionIds: type: array items: type: string format: uuid type: object AddAppraisalSessionPermissionsRequest: required: - userIds properties: userIds: type: array items: type: string format: uuid type: object RemoveAppraisalSessionPermissionsRequest: required: - userIds properties: userIds: type: array items: type: string format: uuid type: object ChangeAppraisalSessionNotificationSettingsRequest: required: - dailyReviewersNotificationDay - dailyReviewersNotificationTimeMilli properties: dailyReviewersNotificationDay: type: integer dailyReviewersNotificationTimeMilli: type: integer type: object UpdateDay: properties: url: type: string type: object xml: name: request UpdateDayParticipantsAttendanceRequest: properties: participantsAttendance: type: array items: $ref: '#/components/schemas/TrainingParticipantAttendance' type: object xml: name: request NewUser: required: - departmentId - fields properties: departmentId: type: string fields: $ref: '#/components/schemas/UserProfileFields' password: type: string role: type: string roleId: type: string format: uuid manageableDepartmentIds: $ref: '#/components/schemas/ArrayOfIds' groupIds: $ref: '#/components/schemas/ArrayOfIds' roles: type: array items: $ref: '#/components/schemas/UserRole' sendLoginEmail: type: boolean invitationMessage: type: string sendLoginSMS: type: boolean invitationSMSMessage: type: string type: object xml: name: response UpdateUser: properties: departmentId: type: string role: $ref: '#/components/schemas/UserRoleEnum' roleId: type: string format: uuid roles: type: array items: $ref: '#/components/schemas/UserRole' fields: $ref: '#/components/schemas/UserProfileFields' groupIds: $ref: '#/components/schemas/ArrayOfIds' manageableDepartmentIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request UpdateUserPassword: required: - password properties: password: type: string format: password type: object xml: name: request UpdateUserStatus: required: - status properties: status: { } type: object xml: name: request ChangeUserSubordination: properties: subordination: $ref: '#/components/schemas/Subordination' coSubordination: $ref: '#/components/schemas/Subordination' type: object xml: name: request ScheduledUserDeactivation: required: - date properties: date: type: string format: date type: object xml: name: request ScheduledUserTermination: required: - date properties: date: type: string format: date type: object xml: name: request RemoveUserGroups: required: - groupIds properties: groupIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: request ProfileFieldsFilterItem: required: - name - values properties: name: type: string values: type: array items: type: string type: object ProfileFieldsDateRangeItem: required: - name - from - to properties: name: type: string from: type: string format: date to: type: string format: date type: object GetPagedUsersListRequest: properties: groups: type: array items: type: string format: uuid departments: type: array items: type: string format: uuid logins: type: array items: type: string emails: type: array items: type: string profileFields: type: array items: $ref: '#/components/schemas/ProfileFieldsFilterItem' profileFieldsDateRange: type: array items: $ref: '#/components/schemas/ProfileFieldsDateRangeItem' type: object GetPagedUsersListResponse: properties: pageNumber: type: integer totalUsersNumber: type: integer userProfiles: type: array items: $ref: '#/components/schemas/User' type: object UpdateWorkLeaveStatusesRequest: properties: workLeaveStatuses: type: array items: $ref: '#/components/schemas/WorkLeaveStatusData' xml: name: workLeaveStatuses wrapped: false type: object SubscriberRequest: required: - subscriberName - callbackUrl properties: subscriberName: type: string callbackUrl: type: string secret: type: string type: object xml: name: request SubscriberNameRequest: required: - subscriberName properties: subscriberName: type: string type: object SubscribeRequest: required: - subscriberName - subscription properties: subscriberName: type: string subscription: $ref: '#/components/schemas/Subscription' type: object UnsubscribeRequest: required: - subscriberName - subscriptionType properties: subscriberName: type: string subscriptionType: type: string type: object ConfirmRequest: required: - subscriberName - code properties: subscriberName: type: string code: type: string type: object GetSubscriberInfoResponse: required: - subscriberStatus - confirmationStatus - notificationProcessStatus properties: subscriberStatus: type: string enum: - INACTIVE - ACTIVE confirmationStatus: type: string enum: - UNCONFIRMED - CONFIRMED notificationProcessStatus: type: string enum: - INACTIVE - ACTIVE - SUSPENDED type: object ErrorResponse: required: - code - message properties: code: type: integer message: type: string type: object xml: name: response ActiveUsersByPeriod: required: - ids properties: ids: type: array items: type: string format: uuid xml: name: ids wrapped: true activityStartDate: type: string format: date xml: name: activityStartDate activityEndDate: type: string format: date xml: name: activityEndDate type: object xml: name: activeUsersByPeriod AnswerBreakdownResult: required: - userId - enrollmentId - quizVersion - attemptDate - isAttemptPassed - attemptScore - passingScore - questionNumber - questionTitle - questionType - questionScore - answerText - isAnswerCorrect - answerScore properties: userId: type: string format: uuid enrollmentId: type: string format: uuid quizVersion: type: string attemptDate: type: string format: datetime isAttemptPassed: type: boolean attemptScore: type: number format: float passingScore: type: number format: float questionNumber: type: integer questionTitle: type: string questionType: type: string questionScore: type: number format: float questionGroup: type: string statementTitle: type: string answerText: type: string customAnswerText: type: string isAnswerCorrect: type: boolean answerScore: type: number format: float type: object xml: name: result wrapped: true AnswerBreakdownResultsPage: required: - results properties: results: type: array items: $ref: '#/components/schemas/AnswerBreakdownResult' xml: wrapped: true nextPageToken: type: string type: object xml: name: results AppraisalQuestion: required: - id - text - isRequired - targetRoles properties: id: type: string format: uuid text: type: string isRequired: type: boolean targetRoles: type: array items: $ref: '#/components/schemas/AppraisalSessionReviewerRole' type: object AppraisalSession: required: - sessionId - name - description - managerId - profileId - status - startDate properties: sessionId: type: string format: uuid name: type: string description: type: string managerId: type: string format: uuid profileId: type: string format: uuid status: $ref: '#/components/schemas/AppraisalSessionStatus' startDate: type: string format: dateTime endDate: type: string format: dateTime type: object xml: name: appraisalSession AppraisalSessionContentCommentsRequirementLevel: type: string enum: - DISABLED - OPTIONAL - REQUIRED AppraisalSessionContentCompetencies: required: - competencies - scales properties: competencies: type: array items: $ref: '#/components/schemas/AppraisalSessionContentCompetency' xml: wrapped: true scales: type: array items: $ref: '#/components/schemas/AppraisalSessionContentScale' xml: wrapped: true type: object xml: name: appraisalSessionContentCompetencies AppraisalSessionContentCompetency: required: - competencyId - name - scaleId - reviewMethod - indicators - commentsRequirementLevel - emptyAnswersEnabled properties: competencyId: type: string format: uuid name: type: string scaleId: type: string format: uuid requiredLevel: $ref: '#/components/schemas/AppraisalSessionContentRequiredLevelData' reviewMethod: $ref: '#/components/schemas/AppraisalSessionContentCompetencyReviewMethod' indicators: type: array items: $ref: '#/components/schemas/AppraisalSessionContentIndicatorData' xml: wrapped: true commentsRequirementLevel: $ref: '#/components/schemas/AppraisalSessionContentCommentsRequirementLevel' emptyAnswersEnabled: type: boolean type: object xml: name: appraisalSessionContentCompetency AppraisalSessionContentCompetencyReviewMethod: type: string enum: - INDICATORS_INDIVIDUALLY - COMPETENCY_ENTIRELY AppraisalSessionContentIndicatorData: required: - indicatorId - name properties: indicatorId: type: string format: uuid name: type: string requiredLevel: $ref: '#/components/schemas/AppraisalSessionContentRequiredLevelData' type: object xml: name: appraisalSessionContentIndicatorData AppraisalSessionContentRequiredLevelData: required: - name - score properties: name: type: string score: type: number type: object xml: name: requiredLevel AppraisalSessionContentScale: required: - scaleId - levels properties: scaleId: type: string format: uuid levels: type: array items: $ref: '#/components/schemas/AppraisalSessionContentScaleLevelData' xml: wrapped: true type: object xml: name: appraisalSessionContentScale AppraisalSessionContentScaleLevelData: required: - levelId - score properties: levelId: type: string format: uuid score: type: number type: object xml: name: appraisalSessionContentScaleLevelData AppraisalSessionEmployeeCard: required: - employeeId - reviewerIds properties: employeeId: type: string format: uuid reviewerIds: type: array items: type: string format: uuid xml: wrapped: true type: object xml: name: appraisalSessionEmployeeCard AppraisalSessionEmployeeCompetencyResults: required: - competencyId properties: competencyId: type: string format: uuid result: type: number type: object xml: name: appraisalSessionEmployeeCompetencyResults AppraisalSessionEmployeeDetailedCard: required: - employeeId - reviewers properties: employeeId: type: string format: uuid reviewers: type: array items: $ref: '#/components/schemas/AppraisalSessionReviewer' type: object AppraisalSessionEmployeeIndicatorResults: required: - indicatorId properties: indicatorId: type: string format: uuid result: type: number type: object xml: name: appraisalSessionEmployeeIndicatorResults AppraisalSessionEmployeeResults: required: - employeeId - sessionId - competencyResults - indicatorResults properties: employeeId: type: string format: uuid sessionId: type: string format: uuid competencyResults: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeCompetencyResults' xml: wrapped: true indicatorResults: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeIndicatorResults' xml: wrapped: true type: object xml: name: appraisalSessionEmployeeResults AppraisalSessionInfo: required: - sessionId - name - description - managerId - startDate - endDate - status - profileId - instruction - selfReviewInstruction - questions - employees - permittedUserIds properties: sessionId: type: string format: uuid name: type: string description: type: string managerId: type: string format: uuid startDate: type: string format: dateTime endDate: type: string format: dateTime status: $ref: '#/components/schemas/AppraisalSessionStatus' profileId: type: string format: uuid instruction: type: string selfReviewInstruction: type: string questions: type: array items: $ref: '#/components/schemas/AppraisalQuestion' employees: type: array items: $ref: '#/components/schemas/AppraisalSessionEmployeeDetailedCard' permittedUserIds: type: array items: type: string format: uuid sessionNotificationSettings: $ref: '#/components/schemas/AppraisalSessionNotificationSettings' type: object AppraisalSessionNotificationSettings: required: - dailyReviewersNotificationDay - dailyReviewersNotificationTimeMilli properties: dailyReviewersNotificationDay: type: integer dailyReviewersNotificationTimeMilli: type: integer type: object AppraisalSessionReview: required: - reviewId - sessionId - employeeId - reviewerId - status - completionDate properties: reviewId: type: string format: uuid sessionId: type: string format: uuid employeeId: type: string format: uuid reviewerId: type: string format: uuid status: $ref: '#/components/schemas/AppraisalSessionReviewStatus' completionDate: type: string format: dateTime type: object xml: name: appraisalSessionReview AppraisalSessionReviewStatus: type: string enum: - NOT_STARTED - IN_PROGRESS - SUBMITTED AppraisalSessionReviewer: required: - reviewerId - role properties: reviewerId: type: string format: uuid role: $ref: '#/components/schemas/AppraisalSessionReviewerRole' type: object AppraisalSessionReviewerRole: type: string enum: - REVIEWER_ROLE_SELF_REVIEW - REVIEWER_ROLE_DIRECT_MANAGER - REVIEWER_ROLE_PEER - REVIEWER_ROLE_DIRECT_REPORT - REVIEWER_ROLE_CUSTOMER - REVIEWER_ROLE_EXPERT AppraisalSessionStatus: type: string enum: - NOT_STARTED - IN_PROGRESS - COMPLETED AppraisalSessionUserAttribute: required: - key - value - title properties: key: type: string value: type: string title: type: string type: object xml: name: appraisalSessionUserAttribute AppraisalSessionUserAttributes: required: - sessionId - userId - displayingName - initials - departmentId - departmentName - status - attributes properties: sessionId: type: string format: uuid userId: type: string format: uuid displayingName: type: string initials: type: string departmentId: type: string format: uuid departmentName: type: string status: $ref: '#/components/schemas/AppraisalSessionUserStatus' attributes: type: array items: $ref: '#/components/schemas/AppraisalSessionUserAttribute' xml: wrapped: true type: object xml: name: appraisalSessionUserAttributes AppraisalSessionUserStatus: type: string enum: - ACTIVE - DEACTIVATED - DELETED - TERMINATED RestartAppraisalSessionStatusCode: type: string enum: - SUCCESS - NOT_COMPLETED xml: name: response StartAppraisalSessionStatusCode: type: string enum: - SUCCESS - EMPTY_PROFILE - NO_EMPLOYEES - NO_REVIEWERS - ALREADY_STARTED - NO_PROFILE xml: name: response Assignment: required: - assignmentId - title properties: assignmentId: type: string format: uuid title: type: string instructorId: type: string format: uuid courseFields: type: array items: $ref: '#/components/schemas/CourseFieldValue' type: object xml: name: assignment AssignmentAttempt: required: - attemptId - enrollmentId - userId - comment properties: attemptId: type: string format: uuid enrollmentId: type: string format: uuid userId: type: string format: uuid comment: type: string attachments: type: array items: $ref: '#/components/schemas/AssignmentAttemptAttachment' type: object xml: name: attempt AssignmentAttemptAttachment: required: - fileName - fileSize - url properties: fileName: type: string fileSize: description: 'File size in bytes' type: integer url: type: string format: url type: object xml: name: attachment AssignmentAttemptGrade: required: - attemptId - score properties: attemptId: type: string format: uuid score: type: number maximum: 100 minimum: 0 comment: type: string type: object xml: name: attemptGrade AssignmentsPage: required: - assignments properties: assignments: type: array items: $ref: '#/components/schemas/Assignment' xml: wrapped: true nextPageToken: type: string type: object xml: name: response Competency: required: - competencyId - name - scaleId - reviewMethod - indicators - commentsRequirementLevel - emptyAnswersEnabled properties: competencyId: type: string format: uuid name: type: string description: type: string scaleId: type: string format: uuid reviewMethod: $ref: '#/components/schemas/CompetencyReviewMethod' indicators: type: array items: $ref: '#/components/schemas/CompetencyIndicator' xml: wrapped: true commentsRequirementLevel: $ref: '#/components/schemas/CompetencyCommentsRequirementLevel' emptyAnswersEnabled: type: boolean type: object xml: name: competency CompetencyCommentsRequirementLevel: type: string enum: - DISABLED - OPTIONAL - REQUIRED CompetencyGroup: description: 'The root group has an empty parentId' required: - groupId - name - parentId - competencyIds properties: groupId: type: string format: uuid name: type: string parentId: type: string format: uuid competencyIds: type: array items: type: string format: uuid xml: wrapped: true type: object xml: name: competencyGroup CompetencyIndicator: required: - indicatorId - name - levels properties: indicatorId: type: string format: uuid name: type: string levels: type: array items: $ref: '#/components/schemas/CompetencyIndicatorLevel' xml: wrapped: true type: object xml: name: competencyIndicator CompetencyIndicatorLevel: required: - levelId properties: levelId: type: string format: uuid description: type: string type: object xml: name: competencyIndicatorLevel CompetencyProfile: required: - profileId - name - description - competencies - indicators properties: profileId: type: string format: uuid name: type: string description: type: string competencies: type: array items: $ref: '#/components/schemas/ProfileCompetencyData' xml: wrapped: true indicators: type: array items: $ref: '#/components/schemas/ProfileIndicatorData' xml: wrapped: true type: object xml: name: competencyProfile CompetencyReviewMethod: type: string enum: - INDICATORS_INDIVIDUALLY - COMPETENCY_ENTIRELY CompetencyScale: required: - scaleId - name - levels properties: scaleId: type: string format: uuid name: type: string levels: type: array items: $ref: '#/components/schemas/CompetencyScaleLevel' xml: wrapped: true type: object xml: name: competencyScale CompetencyScaleLevel: required: - levelId - name - score properties: levelId: type: string format: uuid name: type: string score: type: number type: object xml: name: competencyScaleLevel CreateCompetencyData: required: - name - description - scaleId - groupId - reviewMethod - commentsRequirementLevel - emptyAnswersEnabled properties: name: type: string description: type: string scaleId: type: string format: uuid groupId: type: string format: uuid reviewMethod: $ref: '#/components/schemas/CompetencyReviewMethod' commentsRequirementLevel: $ref: '#/components/schemas/CompetencyCommentsRequirementLevel' emptyAnswersEnabled: type: boolean type: object CreateCompetencyGroupData: required: - name - parentId properties: name: type: string parentId: description: 'You can use the root group ID from the list of groups or the ID of other groups' type: string format: uuid type: object CreateCompetencyScaleData: required: - name - levels properties: name: type: string levels: type: array items: $ref: '#/components/schemas/CreateCompetencyScaleLevelData' type: object CreateCompetencyScaleLevelData: required: - name - score properties: name: type: string score: type: number type: object MoveCompetenciesToGroup: required: - groupId - competencyIds properties: groupId: type: string format: uuid competencyIds: type: array items: type: string format: uuid xml: wrapped: true type: object xml: name: data MoveCompetencyGroupsToParentGroup: required: - parentGroupId - groupIds properties: parentGroupId: type: string format: uuid groupIds: type: array items: type: string format: uuid type: object ProfileCompetencyData: required: - competencyId - requiredLevelId properties: competencyId: type: string format: uuid requiredLevelId: type: string format: uuid type: object xml: name: profileCompetencyData ProfileIndicatorData: required: - indicatorId - requiredLevelId properties: indicatorId: type: string format: uuid requiredLevelId: type: string format: uuid type: object xml: name: profileIndicatorData ContentItemInformation: required: - contentItemId - title - subtitle - description - userId - addedDate - viewUrl - type - viewType properties: contentItemId: type: string format: uuid title: type: string subtitle: type: string description: type: string userId: type: string format: uuid addedDate: type: string format: date-time viewUrl: type: string format: url type: type: string deprecated: true contentItemType: $ref: '#/components/schemas/ContentType' courseFields: type: array items: $ref: '#/components/schemas/CourseFieldValue' type: object xml: name: contentItem ContentItemFinalStatus: required: - userId - status - progress properties: userId: type: string format: uuid status: type: string progress: type: integer maximum: 100 minimum: 0 completionDate: type: string format: date-time lastViewDate: type: string format: date-time type: object xml: name: status wrapped: true ContentItemsInformationPage: required: - contentItems properties: contentItems: type: array items: $ref: '#/components/schemas/ContentItemInformation' xml: wrapped: true nextPageToken: type: string type: object xml: name: response ContentType: type: string enum: - iSpringSuiteModule - Audio - Video - Image - Quiz - Survey - SCORM - Course - LearningTrack - WordDocument - PowerPointPresentation - PDFDocument - ExcelSpreadsheet - RolePlay - Link - Assignment - Book - Interaction - Page - OnlineQuiz - ExternalCourse CourseField: required: - fieldId - fieldCustomId - fieldLabel - fieldType properties: fieldId: type: string format: uuid fieldCustomId: type: string fieldLabel: type: string fieldType: $ref: '#/components/schemas/CourseFieldType' type: object xml: name: courseField wrapped: true CourseFieldType: type: string enum: - TEXT CourseFieldValue: required: - fieldId - fieldValue properties: fieldId: type: string format: uuid fieldValue: type: string type: object xml: name: courseField wrapped: true CourseFields: required: - courseFields properties: courseFields: type: array items: $ref: '#/components/schemas/CourseField' xml: wrapped: true type: object xml: name: response ModuleItemType: type: string enum: - training - material CourseModule: required: - moduleId - itemId - courseId - title - description - authorId - addedDate - type - sequentialNumber properties: moduleId: type: string format: uuid itemId: type: string format: uuid courseId: type: string format: uuid title: type: string description: type: string authorId: type: string format: uuid addedDate: type: string format: date-time type: $ref: '#/components/schemas/ModuleItemType' trainingType: $ref: '#/components/schemas/TrainingType' viewUrl: type: string format: url sequentialNumber: type: integer type: object xml: name: module CourseModulesPage: required: - modules properties: modules: type: array items: $ref: '#/components/schemas/CourseModule' xml: wrapped: true nextPageToekn: type: string type: object xml: name: response CourseTreeItem: required: - contentItemId - title - type - description - addedDate - viewUrl - parentId - isShared properties: contentItemId: type: string format: uuid title: type: string type: type: string description: type: string addedDate: type: string format: date-time viewUrl: type: string format: url parentId: type: string format: uuid isShared: type: boolean type: object xml: name: contentItem CoursesModule: required: - moduleId - contentItemId - courseId - title - description - authorId - addedDate - viewUrl properties: moduleId: type: string format: uuid contentItemId: type: string format: uuid courseId: type: string format: uuid title: type: string description: type: string authorId: type: string format: uuid addedDate: type: string format: datetime viewUrl: type: string format: url type: object xml: name: module CoursesModulesPage: required: - modules properties: modules: type: array items: $ref: '#/components/schemas/CoursesModule' xml: wrapped: true nextPageToekn: type: string type: object xml: name: response DateRange: required: - startDate - endDate properties: startDate: type: string format: dateTime endDate: type: string format: dateTime type: object xml: name: dateRange Day: required: - dayId - sessionId - trainingId - startTime properties: dayId: type: string format: uuid sessionId: type: string format: uuid trainingId: type: string format: uuid startTime: type: string format: datetime duration: description: 'Duration in seconds' type: integer location: type: string url: type: string type: object xml: name: Day Department: required: - departmentId - name - subordination - coSubordination properties: departmentId: type: string format: uuid name: type: string parentDepartmentId: type: string format: uuid code: type: string subordination: $ref: '#/components/schemas/Subordination' coSubordination: $ref: '#/components/schemas/Subordination' type: object xml: name: department DepartmentsPage: required: - departments properties: departments: type: array items: $ref: '#/components/schemas/Department' xml: wrapped: true nextPageToken: type: string type: object xml: name: response DetailedGroup: required: - usersCount - groupId - userIds - name - isSmart properties: usersCount: type: integer groupId: type: string format: uuid userIds: $ref: '#/components/schemas/ArrayOfIds' name: type: string isSmart: type: boolean type: object xml: name: group Enrollment: required: - enrollmentId - courseId - learnerId - accessDate - shouldLockAfterDueDate - enrollmentTypeGroup properties: enrollmentId: type: string format: uuid courseId: type: string format: uuid learnerId: type: string format: uuid accessDate: type: string format: date dueDate: type: string format: date expirationDate: type: string format: date shouldLockAfterDueDate: type: boolean certificate: $ref: '#/components/schemas/IssuedCertificateInformation' enrollmentTypeGroup: $ref: '#/components/schemas/EnrollmentTypeGroup' type: object xml: name: enrollment EnrollmentsPage: required: - enrollments properties: enrollments: type: array items: $ref: '#/components/schemas/Enrollment' xml: wrapped: true nextPageToken: type: string type: object xml: name: response UserPointsInfo: required: - userId - points properties: userId: type: string format: uuid points: type: number type: object xml: name: userPointsInfo wrapped: true Group: required: - groupId - name - isSmart properties: groupId: type: string format: uuid name: type: string isSmart: type: boolean type: object xml: name: group GroupsPage: required: - groups properties: groups: type: array items: $ref: '#/components/schemas/Group' xml: wrapped: true nextPageToken: type: string type: object xml: name: response IssuedCertificate: required: - url properties: url: type: string format: url type: object xml: name: attachment IssuedCertificateInformation: required: - issuedCertificateId - issueDate properties: issuedCertificateId: type: string format: uuid issueDate: type: string format: date expiryDate: type: string format: date type: object ChecklistSessionsData: required: - checklistId - checklistTitle - checklistStatus - sessionIds properties: checklistId: type: string format: uuid checklistTitle: type: string checklistStatus: $ref: '#/components/schemas/ChecklistStatus' sessionIds: type: array items: type: string format: uuid type: object xml: name: checklistSessions ChecklistStatus: type: string enum: - PUBLISHED - HIDDEN CriterionGroupResultData: required: - groupId - groupTitle - checklistId - sessionId - employeeId - observerId properties: groupId: type: string format: uuid checklistId: type: string format: uuid groupTitle: type: string sessionId: type: string format: uuid result: type: number format: float totalPoints: type: number format: float points: type: number format: float employeeId: type: string format: uuid observerId: type: string format: uuid type: object xml: name: criterionGroupResultData CriterionResultData: required: - criterionId - criterionTitle - checklistId - sessionId - groupId - skipped - employeeId - observerId properties: criterionId: type: string format: uuid groupId: type: string format: uuid checklistId: type: string format: uuid criterionTitle: type: string sessionId: type: string format: uuid skipped: type: boolean totalPoints: type: number format: float points: type: number format: float employeeId: type: string format: uuid observerId: type: string format: uuid type: object xml: name: criterionResultData JobTrainingSessionResultData: required: - checklistId - checklistTitle - sessionId - sessionStatus - startDate - employeeId - observerId properties: checklistId: type: string format: uuid checklistTitle: type: string sessionId: type: string format: uuid sessionStatus: $ref: '#/components/schemas/SessionStatus' startDate: type: string format: dateTime actualStartDate: type: string format: dateTime completionDate: type: string format: dateTime result: type: number format: float totalPoints: type: number format: float points: type: number format: float employeeId: type: string format: uuid observerId: type: string format: uuid type: object xml: name: jobTrainingSessionResult SessionStatus: type: string enum: - NOT_STARTED - IN_PROGRESS - PASSED LearnerModuleResult: required: - userId - courseId - moduleId - moduleTitle - courseItemId - accessDate - completionStatus - isOverdue properties: userId: type: string format: uuid courseId: type: string format: uuid moduleId: type: string format: uuid moduleTitle: type: string courseItemId: type: string format: uuid enrollmentId: type: string format: uuid accessDate: type: string format: datetime dueDate: type: string format: datetime expirationDate: type: string format: datetime completionDate: type: string format: datetime timeSpent: description: 'Time spent in seconds' type: integer completionStatus: $ref: '#/components/schemas/CompletionStatus' awardedScore: type: number format: float passingScore: type: number format: float progress: type: number format: float isOverdue: type: boolean viewsCount: type: integer type: object xml: name: result wrapped: true LearnersModulesResultsResponse: required: - results properties: results: type: array items: $ref: '#/components/schemas/LearnerModuleResult' xml: wrapped: true nextPageToken: type: string type: object xml: name: response CompletionStatus: type: string enum: - not_started - in_progress - pending - complete - passed - accepted - incomplete - failed - declined LearnerResult: required: - userId - courseId - courseTitle - accessDate - completionStatus - isOverdue properties: userId: type: string format: uuid courseId: type: string format: uuid courseTitle: type: string enrollmentId: type: string format: uuid accessDate: type: string format: datetime dueDate: type: string format: datetime expirationDate: type: string format: datetime completionDate: type: string format: datetime duration: type: integer timeSpent: description: 'Time spent in seconds' type: integer completionStatus: $ref: '#/components/schemas/CompletionStatus' awardedScore: type: number format: float passingScore: type: number format: float progress: type: number format: float isOverdue: type: boolean viewsCount: type: integer type: object xml: name: result wrapped: true LearnersResultsResponse: required: - results properties: results: type: array items: $ref: '#/components/schemas/LearnerResult' xml: wrapped: true nextPageToken: type: string type: object xml: name: response LearningTrackCourse: required: - learningTrackId - courseId properties: learningTrackId: type: string format: uuid courseId: type: string format: uuid type: object xml: name: learningTracksCourse wrapped: true ModuleStatus: required: - contentItemId - date - reason - status - awardedScore properties: contentItemId: type: string format: uuid date: type: string format: date-time reason: type: string status: $ref: '#/components/schemas/CompletionStatus' awardedScore: type: number maximum: 100 minimum: 0 type: object xml: name: moduleStatus ParticipantsPage: required: - participants properties: participants: $ref: '#/components/schemas/ArrayOfIds' nextPageToken: type: string type: object xml: name: response Quiz: required: - quizId - quizTitle - contentItemId - parentCourseIds properties: quizId: type: string format: uuid quizTitle: type: string contentItemId: type: string format: uuid parentCourseIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: result wrapped: true QuizzesPage: required: - results properties: results: type: array items: $ref: '#/components/schemas/Quiz' xml: wrapped: true nextPageToken: type: string type: object xml: name: response Role: required: - roleId - type - title - description properties: roleId: type: string format: uuid type: type: string title: type: string description: type: string type: object xml: name: role SmartGroupRule: required: - attributeType - operator - value properties: attributeType: description: '1 - Department, 2 - Group, 3 - Profile used' type: integer enum: - 1 - 2 - 3 attributeId: type: string operator: description: '1 - Only, 2 - This and nested' type: integer enum: - 1 - 2 value: type: string type: object AndSmartGroupRuleNode: required: - or properties: or: type: array items: $ref: '#/components/schemas/OrSmartGroupRuleNode' type: object OrSmartGroupRuleNode: required: - rule properties: rule: $ref: '#/components/schemas/SmartGroupRule' type: object SmartGroupRules: required: - groupId - rules properties: groupId: type: string format: uuid rules: $ref: '#/components/schemas/SmartGroupRuleNodes' type: object Subordination: required: - subordinationType properties: subordinationType: type: string enum: - manual - inherit - no_supervisor supervisorId: type: string type: object TaskStatusEnum: type: string enum: - waiting - in_progress - complete - cancelled - error TaskStatus: required: - status properties: status: $ref: '#/components/schemas/TaskStatusEnum' type: object xml: name: request Training: required: - title - organizer - sessions - type properties: title: type: string organizer: type: string format: uuid sessions: $ref: '#/components/schemas/ArrayOfIds' type: type: string type: object xml: name: training TrainingParticipantAttendance: required: - participantId - isAttended properties: participantId: type: string format: uuid isAttended: type: boolean duration: description: 'Duration in seconds' type: integer type: object xml: name: trainingParticipantAttendance TrainingSession: required: - id - title - startTime - duration - dayIds properties: id: type: string format: uuid title: type: string startTime: type: string format: datetime duration: type: integer instructor: type: string dayIds: $ref: '#/components/schemas/ArrayOfIds' type: object xml: name: trainingSession TrainingType: required: - trainingTypeId - trainingTypeTitle properties: trainingTypeId: type: string format: uuid trainingTypeTitle: type: string type: object xml: name: trainingType wrapped: true User: required: - userId - role - roleId - departmentId - status - fields - addedDate - lastLoginDate - userRoles - subordination - coSubordination properties: userId: type: string format: uuid role: $ref: '#/components/schemas/UserRoleEnum' roleId: type: string format: uuid departmentId: type: string format: uuid status: $ref: '#/components/schemas/UserStatus' fields: $ref: '#/components/schemas/UserProfileFields' addedDate: type: string format: datetime lastLoginDate: type: string format: datetime manageableDepartmentIds: $ref: '#/components/schemas/ArrayOfIds' userRoles: type: array items: $ref: '#/components/schemas/UserRole' groups: $ref: '#/components/schemas/ArrayOfIds' subordination: $ref: '#/components/schemas/Subordination' coSubordination: $ref: '#/components/schemas/Subordination' workLeaveStatus: $ref: '#/components/schemas/WorkLeaveStatus' securityPolicyAcceptanceDate: type: string format: datetime personalDataConsentAcceptanceDate: type: string format: datetime type: object xml: name: userProfile wrapped: true UserProfileField: required: - name - value properties: name: type: string value: type: string type: object xml: name: field UserFieldInfo: required: - userFieldInfoId - name - label - type - isUnique - isRequired - orderPriority - values properties: userFieldInfoId: type: string name: type: string label: type: string type: type: string isUnique: type: integer enum: - 0 - 1 isRequired: type: integer enum: - 0 - 1 orderPriority: type: integer values: $ref: '#/components/schemas/UserProfileFields' type: object xml: name: userFieldInfo wrapped: true UserV2: required: - userId - role - roleId - departmentId - status - fields - addedDate - lastLoginDate - userRoles - subordination - coSubordination properties: userId: type: string format: uuid role: $ref: '#/components/schemas/UserRoleEnum' roleId: type: string format: uuid departmentId: type: string format: uuid status: $ref: '#/components/schemas/UserStatus' fields: $ref: '#/components/schemas/UserProfileFields' addedDate: type: string format: datetime lastLoginDate: type: string format: datetime manageableDepartmentIds: $ref: '#/components/schemas/ArrayOfIds' userRoles: type: array items: $ref: '#/components/schemas/UserRole' groups: $ref: '#/components/schemas/ArrayOfIds' subordination: $ref: '#/components/schemas/Subordination' coSubordination: $ref: '#/components/schemas/Subordination' workLeaveStatus: $ref: '#/components/schemas/WorkLeaveStatus' securityPolicyAcceptanceDate: type: string format: datetime privacyPolicyConsentAcceptanceDate: type: string format: datetime type: object xml: name: userProfile wrapped: true UsersPage: required: - userProfiles properties: userProfiles: type: array items: $ref: '#/components/schemas/User' xml: wrapped: true nextPageToken: type: string type: object xml: name: response UsersPageV2: required: - userProfiles properties: userProfiles: type: array items: $ref: '#/components/schemas/UserV2' xml: wrapped: true nextPageToken: type: string type: object xml: name: response UserRole: required: - roleId properties: roleId: type: string format: uuid manageableDepartmentIds: $ref: '#/components/schemas/ArrayOfIds' roleType: $ref: '#/components/schemas/UserRoleEnum' type: object xml: name: userRole wrapped: true Subscription: required: - subscriptionType properties: subscriptionType: type: string enum: - USER_REGISTERED - LEARNERS_ENROLLED_IN_COURSE - TRAINING_MEETING_ADDED - TRAINING_MEETING_REMOVED - TRAINING_MEETING_UPDATED - TRAINING_SESSION_PARTICIPANTS_ADDED - TRAINING_SESSION_PARTICIPANT_REMOVED - COURSE_COMPLETED_SUCCESSFULLY - COURSE_STATUS_CHANGED - COURSE_ITEM_COMPLETED_SUCCESSFULLY - COURSE_ITEM_STATUS_CHANGED params: type: array items: $ref: '#/components/schemas/SubscriptionParameter' type: object SubscriptionParameter: required: - name - value properties: name: type: string value: type: string type: object WorkLeaveReason: type: string enum: - OutOfTheOffice - OnVacation - PersonalLeave - BusinessTrip - SickLeave - ParentalLeave - EducationalLeave WorkLeaveStatus: required: - workLeaveReason - startDate properties: workLeaveReason: $ref: '#/components/schemas/WorkLeaveReason' startDate: type: string format: date endDate: type: string format: date type: object xml: name: workLeaveStatus wrapped: true WorkLeaveStatusData: required: - userId - workLeaveReason properties: userId: type: string format: uuid workLeaveReason: $ref: '#/components/schemas/WorkLeaveReason' startDate: type: string format: date endDate: type: string format: date type: object responses: BadRequest: description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' ConflictResponse: description: Conflict content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' PermissionDenied: description: 'Permission Denied' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' NotFound: description: 'Not Found' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' Unauthorized: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' application/xml: schema: $ref: '#/components/schemas/ErrorResponse' parameters: returnObject: name: X-Return-Object in: header required: false schema: type: boolean targetLocale: name: X-Target-Locale in: header required: false schema: type: string enum: - en-US - ru-RU - da-DK - de-DE - es-ES - fr-FR - zh-CN - ja-JP - pt-BR - id-ID - mn-MN - it-IT - nl-NL - fi-FI - uk-UA - no-NO - pl-PL - az-AZ - kk-KK - ro-RO - ko-KR - bg-BG - cs-CZ - uz-UZ - zh-TW pageToken: name: pageToken in: query required: false schema: type: string pageSize: name: pageSize in: query required: false schema: type: integer securitySchemes: bearerAuth: type: http scheme: bearer security: - bearerAuth: [] tags: - name: department description: 'Department operations' - name: group description: 'Group operations' - name: enrollment description: 'Enrollment operations' - name: user description: 'User operations' - name: content description: 'Content operations' - name: results description: 'User result data operations' - name: gamification description: 'Gamification operations' - name: assignments description: 'Assignment operations' - name: certificate description: 'Certificate operations' - name: training description: 'Training operations' - name: learning_track description: 'Learning track operations' - name: task description: 'Async method operations' - name: token description: 'Retrieve access tokens'