openapi: 3.0.1 servers: - url: /opal/restapi tags: - name: swagger-ui description: Endpoint from which the files for this UI are delivered paths: /licenses/version: get: tags: - licenses operationId: getVersion responses: default: description: default response content: text/plain: {} /licenses/list: get: tags: - licenses operationId: listLicenses responses: default: description: default response content: application/json: {} /lti/assessment: get: tags: - LTI 1.3 authentication operationId: assessmentGET parameters: - name: deployid in: query schema: type: string - name: subident in: query schema: type: string responses: default: description: default response content: application/vnd.ims.lis.v2.lineitemcontainer+json; charset=utf-8: {} post: tags: - LTI 1.3 authentication operationId: assessmentPOST parameters: - name: deployid in: query schema: type: string - name: subident in: query schema: type: string responses: default: description: default response content: application/vnd.ims.lis.v2.lineitem+json: {} /lti/keys: get: tags: - LTI 1.3 authentication operationId: authorizationKeys responses: default: description: default response content: application/json: {} /lti/token: post: tags: - LTI 1.3 authentication operationId: authorizationToken requestBody: content: '*/*': schema: type: object properties: grant_type: type: string client_assertion_type: type: string client_assertion: type: string scope: type: string responses: default: description: default response content: application/json: {} /lti/version: get: tags: - LTI 1.3 authentication operationId: getVersion_1 responses: default: description: default response content: text/plain: {} /lti/nrps: get: tags: - LTI 1.3 authentication operationId: nrps parameters: - name: deployid in: query schema: type: string responses: default: description: default response content: application/vnd.ims.lti-nrps.v2.membershipcontainer+json: {} /lti/assessment/results: get: tags: - LTI 1.3 authentication operationId: resultsGET parameters: - name: deployid in: query schema: type: string - name: subident in: query schema: type: string responses: default: description: default response content: application/vnd.ims.lis.v2.resultcontainer+json: {} /lti/assessment/scores: post: tags: - LTI 1.3 authentication operationId: scoresPOST parameters: - name: deployid in: query schema: type: string - name: subident in: query schema: type: string responses: default: description: default response content: '*/*': {} /repo/courses/template: put: tags: - courses operationId: createCourseFromTemplate parameters: - name: shortTitle in: query schema: type: string - name: title in: query schema: type: string - name: sharedFolderSoftKey in: query schema: type: string - name: courseIdMeta in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /mail_service/version: get: tags: - emails operationId: getVersion_2 responses: default: description: default response content: text/plain: {} /mail_service/mail: post: tags: - emails operationId: sendMail responses: default: description: default response content: '*/*': {} /enterprise/catalog/version: get: tags: - catalog operationId: getVersion_3 responses: default: description: default response content: text/plain: {} /enterprise/catalog/search/courses: get: tags: - catalog operationId: searchCourses parameters: - name: query in: query schema: type: string default: '*' - name: author in: query schema: type: string default: '*' - name: trainee in: query schema: type: string default: '*' - name: demand in: query schema: type: string default: '*' - name: status in: query schema: type: string default: '*' - name: enroled in: query schema: type: boolean default: false - name: overdue in: query schema: type: boolean default: false - name: metadata in: query schema: type: array items: type: string - name: keyword in: query schema: type: array items: type: string - name: results in: query schema: type: integer format: int32 default: 0 - name: page in: query schema: type: integer format: int32 default: 1 - name: forcereload in: query schema: type: boolean default: false - name: showClosedCourses in: query schema: type: boolean default: false responses: default: description: default response content: application/json: {} application/xml: {} /rest_download/{download_id}: get: tags: - time-limited downloads operationId: download parameters: - name: download_id in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/octet-stream: {} /rest_download/version: get: tags: - time-limited downloads operationId: getVersion_4 responses: default: description: default response content: text/plain: {} /olatlink/createuserlink: get: tags: - linked opal systems operationId: createUserLink parameters: - name: olatid in: query schema: type: string - name: remoteuser in: query schema: type: string - name: localuser in: query schema: type: string - name: token in: query schema: type: string responses: default: description: default response content: text/plain: {} /olatlink/deleteuserlink: get: tags: - linked opal systems operationId: deleteUserLink parameters: - name: olatid in: query schema: type: string - name: remoteuser in: query schema: type: string - name: localuser in: query schema: type: string - name: token in: query schema: type: string responses: default: description: default response content: text/plain: {} /olatlink/bookmark: get: tags: - linked opal systems operationId: getBookmarks parameters: - name: olatid in: query schema: type: string - name: remoteuser in: query schema: type: string - name: token in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /olatlink/version: get: tags: - linked opal systems operationId: getVersion_5 responses: default: description: default response content: text/plain: {} /olatlink/isloginrequested: get: tags: - linked opal systems operationId: isLoginRequested parameters: - name: olatid in: query schema: type: string responses: default: description: default response content: text/plain: {} /olatlink/isuserrequestinitiatedfor: get: tags: - linked opal systems operationId: isUserRequestInitiatedFor parameters: - name: olatid in: query schema: type: string - name: username in: query schema: type: string - name: token in: query schema: type: string responses: default: description: default response content: text/plain: {} /olatlink/requestuserprops: get: tags: - linked opal systems operationId: requestUserProperties parameters: - name: olatid in: query schema: type: string - name: remoteuser in: query schema: type: string - name: localuser in: query schema: type: string - name: token in: query schema: type: string - name: p in: query schema: type: array items: type: string responses: default: description: default response content: application/json: {} /reporights/version: get: operationId: getVersion_6 responses: default: description: default response content: text/plain: {} /reporights/updaterights: post: operationId: updateRepoRights requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: entries: type: string reporights: type: string rootentryid: type: string responses: default: description: default response content: application/json: {} /repovisibility/version: get: operationId: getVersion_7 responses: default: description: default response content: text/plain: {} /repovisibility/updatevisibility: post: operationId: updateRepoVisibility requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: entries: type: string visibility: type: string user: type: string responses: default: description: default response content: application/json: {} /transfer/version: get: tags: - inter-system data transfer operationId: getVersion_8 responses: default: description: default response content: text/plain: {} /transfer/{transfer_id}/{encoded_path}: get: tags: - inter-system data transfer operationId: transfer parameters: - name: transfer_id in: path required: true schema: type: integer format: int64 - name: encoded_path in: path required: true schema: type: string responses: default: description: default response content: application/octet-stream: {} /enterprise/user/{userKey}/roles: get: tags: - users operationId: getUserRoles parameters: - name: userKey in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - users operationId: setUserRoles parameters: - name: userKey in: path required: true schema: type: string - name: role in: query schema: type: string - name: enabled in: query schema: type: boolean - name: property in: query schema: type: array items: type: string - name: value in: query schema: type: array items: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - users operationId: setUserRolesPost parameters: - name: userKey in: path required: true schema: type: string - name: role in: query schema: type: string - name: enabled in: query schema: type: boolean - name: property in: query schema: type: array items: type: string - name: value in: query schema: type: array items: type: string responses: default: description: default response content: application/xml: {} application/json: {} /enterprise/user/version: get: tags: - users operationId: getVersion_9 responses: default: description: default response content: text/plain: {} /versions/version: get: tags: - repository entries operationId: getVersion_10 responses: default: description: default response content: text/plain: {} /versions/list/{repo_key}: get: tags: - repository entries operationId: getVersions parameters: - name: repo_key in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/json: {} /versions/content/{repo_key}/{vers_id}: get: tags: - repository entries operationId: transfer_1 parameters: - name: repo_key in: path required: true schema: type: integer format: int64 - name: vers_id in: path required: true schema: type: string responses: default: description: default response content: application/octet-stream: {} /catalog/{path}: get: tags: - catalog operationId: getCatalogEntry parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - catalog operationId: addCatalogEntry_1 parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" - name: name in: query schema: type: string - name: description in: query schema: type: string - name: type in: query schema: type: integer format: int32 - name: repoEntryKey in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - catalog operationId: updatePostCatalogEntry parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: name: type: string description: type: string responses: default: description: default response content: application/xml: {} application/json: {} delete: tags: - catalog operationId: deleteCatalogEntry parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/xml: {} application/json: {} /catalog/{path}/owners/{identityKey}: get: tags: - catalog operationId: getOwner parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} put: tags: - catalog operationId: addOwner parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} delete: tags: - catalog operationId: removeOwner parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /catalog/searchbydescription: get: tags: - catalog operationId: getCatalogEntriesByDescription parameters: - name: description in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /catalog/{path}/children: get: tags: - catalog operationId: getChildren parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/xml: {} application/json: {} /catalog/{path}/children/extended: get: tags: - catalog operationId: getExtendedChildren parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/xml: {} application/json: {} /catalog/{path}/owners: get: tags: - catalog operationId: getOwners parameters: - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/xml: {} application/json: {} /catalog: get: tags: - catalog operationId: getRoots responses: default: description: default response content: application/xml: {} application/json: {} /catalog/version: get: tags: - catalog operationId: getVersion_11 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/backup: get: tags: - backup operationId: backupCourse parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/zip: {} application/octet-stream: {} /repo/courses/{courseId}/imspackaging: get: tags: - backup operationId: backupCourse_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/zip: {} application/octet-stream: {} /repo/courses/restore: post: tags: - backup operationId: restoreCourse responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/elements/contact: put: tags: - course elements operationId: attachContact parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: coaches in: query schema: type: boolean default: false - name: participants in: query schema: type: boolean default: false - name: groups in: query schema: type: string - name: areas in: query schema: type: string - name: to in: query schema: type: string - name: defaultSubject in: query schema: type: string - name: defaultBody in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachContactPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string coaches: type: boolean default: false participants: type: boolean default: false groups: type: string areas: type: string to: type: string defaultSubject: type: string defaultBody: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/cp: put: tags: - course elements operationId: attachContentPackage parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: cpResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachContentPackagePost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: cpResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/enrollment: put: tags: - course elements operationId: attachEnrolmment parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: groups in: query schema: type: string - name: cancelEnabled in: query schema: type: boolean default: false responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachEnrollmenetPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string groups: type: string cancelEnabled: type: boolean default: false responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/enrollment/{nodeId}/groups: get: tags: - course elements operationId: getGroups parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/forum: put: tags: - course elements operationId: attachForum parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachForumPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/forum/{nodeId}/message: put: tags: - course elements operationId: newMessageToForum parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: parentMessageId in: query schema: type: integer format: int64 - name: title in: query schema: type: string - name: body in: query schema: type: string - name: identityName in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/forum/{nodeId}/thread: put: tags: - course elements operationId: newThreadToForum parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: title in: query schema: type: string - name: body in: query schema: type: string - name: identityName in: query schema: type: string - name: sticky in: query schema: type: boolean responses: default: description: default response content: application/xml: {} application/json: {} /repo/forums/{forumKey}/version: get: tags: - forums operationId: getVersion_12 responses: default: description: default response content: text/plain: {} /repo/forums/{forumKey}/threads: put: tags: - forums operationId: newThreadToForum_1 parameters: - name: forumKey in: path required: true schema: type: integer format: int64 - name: title in: query schema: type: string - name: body in: query schema: type: string - name: authorKey in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - forums operationId: newThreadToForumPost parameters: - name: forumKey in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: title: type: string body: type: string authorKey: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/forums/{forumKey}/posts/{messageKey}: put: tags: - forums operationId: replyToPost parameters: - name: messageKey in: path required: true schema: type: integer format: int64 - name: title in: query schema: type: string - name: body in: query schema: type: string - name: authorKey in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - forums operationId: replyToPostPost parameters: - name: messageKey in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: title: type: string body: type: string authorKey: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /notifications: get: tags: - notifications operationId: getNotifications parameters: - name: date in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /groups/{groupKey}/participants/{identityKey}: put: tags: - groups operationId: addParticipant parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} delete: tags: - groups operationId: removeParticipant parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/participantsName/{userId}: put: tags: - groups operationId: addParticipant_1 parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: userId in: path required: true schema: type: string responses: default: description: default response content: '*/*': {} /groups/{groupKey}/participants/{identityKey}/new_with_token: post: tags: - groups operationId: addParticipantNewWithToken parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/participants/{identityKey}/new: post: tags: - groups operationId: addParticipantPost parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/owners/{identityKey}: put: tags: - groups operationId: addTutor parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} delete: tags: - groups operationId: removeTutor parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/owners/{identityKey}/new: post: tags: - groups operationId: addTutorPost parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}: get: tags: - groups operationId: findById parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - groups operationId: postGroup parameters: - name: groupKey in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/GroupVO" application/json: schema: $ref: "#/components/schemas/GroupVO" responses: default: description: default response content: application/xml: {} application/json: {} delete: tags: - groups operationId: deleteGroup parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/forum/posts/{threadKey}: get: tags: - groups operationId: getMessages parameters: - name: threadKey in: path required: true schema: type: integer format: int64 - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/forum/threads: get: tags: - groups operationId: getThreads parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups: get: tags: - groups operationId: getGroupList responses: default: description: default response content: application/xml: {} application/json: {} /groups/{groupKey}/infos: get: tags: - groups operationId: getInformations parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /groups/{groupKey}/participants: get: tags: - groups operationId: getParticipants parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /groups/{groupKey}/owners: get: tags: - groups operationId: getTutors parameters: - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /groups/version: get: tags: - groups operationId: getVersion_13 responses: default: description: default response content: text/plain: {} /groups/{groupKey}/participants/{identityKey}/delete: post: tags: - groups operationId: removeParticipantPost parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /groups/{groupKey}/owners/{identityKey}/delete: post: tags: - groups operationId: removeTutorPost parameters: - name: groupKey in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /i18n/{package}/{key}: get: tags: - translations operationId: getTranslation parameters: - name: package in: path required: true schema: type: string - name: key in: path required: true schema: type: string - name: locale in: query schema: type: string responses: default: description: default response content: text/plain: {} /i18n/version: get: tags: - translations operationId: getVersion_14 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/elements/checklist/{nodeId}: get: tags: - checklist elements operationId: getCheckListElements parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: userId in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/checklist/version: get: tags: - checklist elements operationId: getVersion_15 responses: default: description: default response content: text/plain: {} /repo/entries/link: get: tags: - repository entries operationId: getDirectLink parameters: - name: repoid in: query schema: type: string responses: default: description: default response content: text/plain: {} /repo/entries: get: tags: - repository entries operationId: getEntriesText responses: default: description: default response content: text/html: {} text/plain: {} put: tags: - repository entries operationId: putResource responses: default: description: default response content: application/xml: {} application/json: {} /repo/entries/{repoEntryKey}/addOwner: put: tags: - repository entries operationId: addOwner_1 parameters: - name: repoEntryKey in: path required: true schema: type: string - name: id in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/entries/{repoEntryKey}: get: tags: - repository entries operationId: getById parameters: - name: repoEntryKey in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - repository entries operationId: replaceResource parameters: - name: repoEntryKey in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/entries/{repoEntryKey}/path: get: tags: - repository entries operationId: getPath parameters: - name: repoEntryKey in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/entries/{repoEntryKey}/file: get: tags: - repository entries operationId: getRepoFileById parameters: - name: repoEntryKey in: path required: true schema: type: string responses: default: description: default response content: application/zip: {} application/octet-stream: {} /repo/entries/{repoEntryKey}/update: put: tags: - repository entries operationId: updateResource parameters: - name: repoEntryKey in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/entries/version: get: tags: - repository entries operationId: getVersion_16 responses: default: description: default response content: text/plain: {} /repo/entries/search: get: tags: - repository entries operationId: searchEntries parameters: - name: type in: query schema: type: string - name: author in: query schema: type: string default: '*' - name: name in: query schema: type: string default: '*' - name: myentries in: query schema: type: boolean default: false - name: onlydownloadable in: query schema: type: boolean default: false - name: extended in: query schema: type: boolean default: false responses: default: description: default response content: application/json: {} application/xml: {} /repo/courses/{courseId}/assessments/{nodeId}: get: tags: - course assessment operationId: getAssessableResults parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: integer format: int64 - name: userId in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course assessment operationId: postAssessableResults parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string requestBody: content: application/xml: schema: $ref: "#/components/schemas/AssessableResultsVO" application/json: schema: $ref: "#/components/schemas/AssessableResultsVO" responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/assessments/{nodeId}/results: get: tags: - course assessment operationId: getCourseNodeDetailsResults parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: integer format: int64 - name: startdate in: query schema: type: string - name: enddate in: query schema: type: string - name: userId in: query schema: type: string - name: filter in: query schema: type: string - name: resultKey in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/assessments/{nodeId}/statistics: get: tags: - course assessment operationId: getCourseNodeDetailsStatistics parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: integer format: int64 - name: startdate in: query schema: type: string - name: enddate in: query schema: type: string - name: filter in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/assessments/{nodeId}/users/{identityKey}: get: tags: - course assessment operationId: getCourseNodeResultsForNode parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/assessments: get: tags: - course assessment operationId: getCourseResults parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/assessments/users/{identityKey}: get: tags: - course assessment operationId: getCourseResultsOf parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/assessments/version: get: tags: - course assessment operationId: getVersion_17 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/elements/survey/{nodeId}/configuration: get: tags: - course elements operationId: getSurveyConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - course elements operationId: addSurveyConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: allowCancel in: query schema: type: boolean default: false - name: allowNavigation in: query schema: type: boolean default: false - name: allowSuspend in: query schema: type: boolean default: false - name: sequencePresentation in: query schema: type: string default: itemPage - name: showNavigation in: query schema: type: boolean default: true - name: showQuestionTitle in: query schema: type: boolean default: true - name: showSectionsOnly in: query schema: type: boolean default: false responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: addSurveyConfigurationPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: allowCancel in: query schema: type: boolean default: false - name: allowNavigation in: query schema: type: boolean default: false - name: allowSuspend in: query schema: type: boolean default: false - name: sequencePresentation in: query schema: type: string default: itemPage - name: showNavigation in: query schema: type: boolean default: true - name: showQuestionTitle in: query schema: type: boolean default: true - name: showSectionsOnly in: query schema: type: boolean default: false responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/task/{nodeId}/configuration: get: tags: - course elements operationId: getTaskConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - course elements operationId: addTaskConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: enableAssignment in: query schema: type: boolean - name: taskAssignmentType in: query schema: type: string - name: taskAssignmentText in: query schema: type: string - name: enableTaskPreview in: query schema: type: boolean - name: enableTaskDeselect in: query schema: type: boolean - name: onlyOneUserPerTask in: query schema: type: boolean - name: enableDropbox in: query schema: type: boolean - name: enableDropboxConfirmationMail in: query schema: type: boolean - name: dropboxConfirmationText in: query schema: type: string - name: enableReturnbox in: query schema: type: boolean - name: enableScoring in: query schema: type: boolean - name: grantScoring in: query schema: type: boolean - name: scoreMin in: query schema: type: number format: float - name: scoreMax in: query schema: type: number format: float - name: grantPassing in: query schema: type: boolean - name: scorePassingThreshold in: query schema: type: number format: float - name: enableCommentField in: query schema: type: boolean - name: commentForUser in: query schema: type: string - name: commentForCoaches in: query schema: type: string - name: enableSolution in: query schema: type: boolean - name: accessExpertRuleTask in: query schema: type: string - name: accessExpertRuleDropbox in: query schema: type: string - name: accessExpertRuleReturnbox in: query schema: type: string - name: accessExpertRuleScoring in: query schema: type: string - name: accessExpertRuleSolution in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: addTaskConfigurationPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: enableAssignment in: query schema: type: boolean - name: taskAssignmentType in: query schema: type: string - name: taskAssignmentText in: query schema: type: string - name: enableTaskPreview in: query schema: type: boolean - name: enableTaskDeselect in: query schema: type: boolean - name: onlyOneUserPerTask in: query schema: type: boolean - name: enableDropbox in: query schema: type: boolean - name: enableDropboxConfirmationMail in: query schema: type: boolean - name: dropboxConfirmationText in: query schema: type: string - name: enableReturnbox in: query schema: type: boolean - name: enableScoring in: query schema: type: boolean - name: grantScoring in: query schema: type: boolean - name: scoreMin in: query schema: type: number format: float - name: scoreMax in: query schema: type: number format: float - name: grantPassing in: query schema: type: boolean - name: scorePassingThreshold in: query schema: type: number format: float - name: enableCommentField in: query schema: type: boolean - name: commentForUser in: query schema: type: string - name: commentForCoaches in: query schema: type: string - name: enableSolution in: query schema: type: boolean - name: accessExpertRuleTask in: query schema: type: string - name: accessExpertRuleDropbox in: query schema: type: string - name: accessExpertRuleReturnbox in: query schema: type: string - name: accessExpertRuleScoring in: query schema: type: string - name: accessExpertRuleSolution in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/test/{nodeId}/configuration: get: tags: - course elements operationId: getTestConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - course elements operationId: addTestConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: allowCancel in: query schema: type: boolean default: false - name: allowNavigation in: query schema: type: boolean default: false - name: allowSuspend in: query schema: type: boolean default: false - name: numAttempts in: query schema: type: integer format: int32 default: 0 - name: sequencePresentation in: query schema: type: string default: itemPage - name: showNavigation in: query schema: type: boolean default: true - name: showQuestionTitle in: query schema: type: boolean default: true - name: showResultsAfterFinish in: query schema: type: boolean default: true - name: showResultsDependendOnDate in: query schema: type: boolean default: false - name: showResultsOnHomepage in: query schema: type: boolean default: false - name: showScoreInfo in: query schema: type: boolean default: true - name: showQuestionProgress in: query schema: type: boolean default: true - name: showScoreProgress in: query schema: type: boolean default: true - name: showSectionsOnly in: query schema: type: boolean default: false - name: summaryPresentation in: query schema: type: string default: summaryCompact - name: startDate in: query schema: type: integer format: int64 - name: endDate in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: addTestConfigurationPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: allowCancel in: query schema: type: boolean default: false - name: allowNavigation in: query schema: type: boolean default: false - name: allowSuspend in: query schema: type: boolean default: false - name: numAttempts in: query schema: type: integer format: int32 default: 0 - name: sequencePresentation in: query schema: type: string default: itemPage - name: showNavigation in: query schema: type: boolean default: true - name: showQuestionTitle in: query schema: type: boolean default: true - name: showResultsAfterFinish in: query schema: type: boolean default: true - name: showResultsDependendOnDate in: query schema: type: boolean default: false - name: showResultsOnHomepage in: query schema: type: boolean default: false - name: showScoreInfo in: query schema: type: boolean default: true - name: showQuestionProgress in: query schema: type: boolean default: true - name: showScoreProgress in: query schema: type: boolean default: true - name: showSectionsOnly in: query schema: type: boolean default: false - name: summaryPresentation in: query schema: type: string default: summaryCompact - name: startDate in: query schema: type: integer format: int64 - name: endDate in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/assessment: put: tags: - course elements operationId: attachAssessment parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachAssessmentPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/blog: put: tags: - course elements operationId: attachBlog parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: repoEntry in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachBlogPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: repoEntry in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/externalpage: put: tags: - course elements operationId: attachExternalPage parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: url in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachExternalPagePost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: url in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/folder: put: tags: - course elements operationId: attachFolder parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachFolderPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/singlepage: put: tags: - course elements operationId: attachSinglePage_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: filename in: query schema: type: string - name: path in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachSinglePagePost_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string filename: type: string path: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/structure: put: tags: - course elements operationId: attachStructure parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachStructurePost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/survey: put: tags: - course elements operationId: attachSurvey parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: surveyResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachSurveyPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: surveyResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/task: put: tags: - course elements operationId: attachTask parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: text in: query schema: type: string - name: points in: query schema: type: number format: float responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachTaskPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string position: type: integer format: int32 shortTitle: type: string default: undefined longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string text: type: string points: type: number format: float responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/task/{nodeId}/file: put: tags: - course elements operationId: attachTaskFile parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachTaskFilePost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/test: put: tags: - course elements operationId: attachTest parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: testResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachTestPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: parentNodeId: type: string shortTitle: type: string default: undefined position: type: integer format: int32 longTitle: type: string default: undefined objectives: type: string default: undefined visibilityExpertRules: type: string accessExpertRules: type: string testResourceableId: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/wiki: put: tags: - course elements operationId: attachWiki parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: wikiResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course elements operationId: attachWikiPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: parentNodeId in: query schema: type: string - name: position in: query schema: type: integer format: int32 - name: shortTitle in: query schema: type: string default: undefined - name: longTitle in: query schema: type: string default: undefined - name: objectives in: query schema: type: string default: undefined - name: visibilityExpertRules in: query schema: type: string - name: accessExpertRules in: query schema: type: string - name: wikiResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/{nodeIdent}: delete: tags: - course elements operationId: deleteCourseNode parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeIdent in: path required: true schema: type: string responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/elements/{nodeId}: get: tags: - course elements operationId: getCourseNode parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/{nodeId}/repo: get: tags: - course elements operationId: getCourseNodeRepo parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements: get: tags: - course elements operationId: getElements parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/version: get: tags: - course elements operationId: getVersion_18 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/elements/{nodeId}/test/update: put: tags: - course elements operationId: updateTest parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string - name: testResourceableId in: query schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/elements/folders/{nodeId}/files: put: tags: - course elements operationId: attachFileToFolder parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: '*/*': {} post: tags: - course elements operationId: attachFileToFolderPost parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: nodeId in: path required: true schema: type: string responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/elements/folders/{nodeId}/version: get: tags: - course elements operationId: getVersion_19 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/groups/{groupKey}: get: tags: - course groups operationId: getGroup parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - course groups operationId: updateGroup parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: groupKey in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/GroupVO" application/json: schema: $ref: "#/components/schemas/GroupVO" responses: default: description: default response content: application/xml: {} application/json: {} delete: tags: - course groups operationId: deleteGroup_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: groupKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/groups: get: tags: - course groups operationId: getGroupList_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - course groups operationId: putNewGroup parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/GroupVO" application/json: schema: $ref: "#/components/schemas/GroupVO" responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/groups/version: get: tags: - course groups operationId: getVersion_20 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/groups/new: post: tags: - course groups operationId: postNewGroup parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/GroupVO" application/json: schema: $ref: "#/components/schemas/GroupVO" responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/resourcefolders/coursefolder: get: tags: - courses operationId: getCourseFiles parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} put: tags: - courses operationId: attachFileToFolder_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} post: tags: - courses operationId: attachFileToFolderPost_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/resourcefolders/coursefolder/{path}: get: tags: - courses operationId: getCourseFiles_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/json: {} application/xml: {} text/html: {} application/octet-stream: {} put: tags: - courses operationId: attachFileToFolder_2 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: '*/*': {} post: tags: - courses operationId: attachFileToFolderPost_2 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/resourcefolders/sharedfolder: get: tags: - courses operationId: getSharedFiles parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /repo/courses/{courseId}/resourcefolders/sharedfolder/{path}: get: tags: - courses operationId: getSharedFiles_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: path in: path required: true schema: type: array items: $ref: "#/components/schemas/PathSegment" responses: default: description: default response content: application/json: {} application/xml: {} text/html: {} application/octet-stream: {} /repo/courses/{courseId}/resourcefolders/version: get: tags: - courses operationId: getVersion_21 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/authors/{identityKey}: get: tags: - courses operationId: getAuthor parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - courses operationId: addAuthor parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} delete: tags: - courses operationId: removeAuthor parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}: get: tags: - courses operationId: findById_1 parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} delete: tags: - courses operationId: deleteCourse parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/editortreemodel: get: tags: - courses operationId: findEditorTreeModelById parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} /repo/courses/{courseId}/runstructure: get: tags: - courses operationId: findRunStructureById parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} /repo/courses/{courseId}/authors: get: tags: - courses operationId: getAuthors parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/configuration: get: tags: - courses operationId: getConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - courses operationId: setConfiguration parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/CourseConfigVO" application/json: schema: $ref: "#/components/schemas/CourseConfigVO" responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/version: get: tags: - courses operationId: getVersion_22 responses: default: description: default response content: text/plain: {} /repo/courses/{courseId}/publish: post: tags: - courses operationId: publishCourse parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: locale in: query schema: type: object properties: language: type: string displayName: type: string country: type: string variant: type: string script: type: string unicodeLocaleAttributes: uniqueItems: true type: array items: type: string unicodeLocaleKeys: uniqueItems: true type: array items: type: string displayLanguage: type: string displayScript: type: string displayCountry: type: string displayVariant: type: string extensionKeys: uniqueItems: true type: array items: type: string iso3Language: type: string iso3Country: type: string - name: access in: query schema: type: string default: "0" responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/metadata: post: tags: - courses operationId: saveMetadata parameters: - name: courseId in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/MetadataVOes" application/json: schema: $ref: "#/components/schemas/MetadataVOes" responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/{courseId}/statistic: get: tags: - courses operationId: showStatistic parameters: - name: courseId in: path required: true schema: type: integer format: int64 - name: startdate in: query schema: type: string - name: enddate in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses: get: tags: - courses operationId: getCourseList responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - courses operationId: createEmptyCourse parameters: - name: shortTitle in: query schema: type: string - name: title in: query schema: type: string - name: sharedFolderSoftKey in: query schema: type: string - name: semesterKey in: query schema: type: string - name: courseIdMeta in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} post: tags: - courses operationId: importCourse responses: default: description: default response content: application/xml: {} application/json: {} /repo/courses/version: get: tags: - courses operationId: getVersion_23 responses: default: description: default response content: text/plain: {} /repo/portfolio/create: post: tags: - e-portfolio operationId: createArtefact requestBody: content: multipart/form-data: schema: type: object properties: title: type: string description: type: string file: $ref: "#/components/schemas/FormDataContentDisposition" filename: type: string responses: default: description: default response content: application/xml: {} application/json: {} /repo/portfolio/version: get: tags: - e-portfolio operationId: getVersion_24 responses: default: description: default response content: text/plain: {} /auth/app/header: get: tags: - authentication summary: 'user login via app token ' description: |- Authenticates the user via the mobile app login token and provides a security token if successful. The token will be returned in the response header "X-OLAT-TOKEN". If the response content type "application/json" is requested, the token will also be returned in the response body. operationId: doAppLogin responses: default: description: default response content: text/plain: {} application/xml: {} application/json: {} /auth/version: get: tags: - authentication summary: API version of the /auth endpoints operationId: getVersion_25 responses: default: description: default response content: text/plain: {} /auth/{username}: get: tags: - authentication summary: user login description: |- Authenticates the user and provides a security token if successful. The token will be returned in the response header "X-OLAT-TOKEN". If the response content type "application/json" is requested, the token will also be returned in the response body. Since the password is sent in clear text, it is advised to only use this endpoint over HTTPS. operationId: login parameters: - name: username in: path required: true schema: type: string - name: password in: query schema: type: string responses: default: description: default response content: text/plain: {} application/xml: {} application/json: {} deprecated: true post: tags: - authentication summary: user login description: |- Authenticates the user and provides a security token if successful. The token will be returned in the response header "X-OLAT-TOKEN". If the response content type "application/json" is requested, the token will also be returned in the response body. Since the password is sent in clear text, it is advised to only use this endpoint over HTTPS. operationId: loginPost parameters: - name: username in: path required: true schema: type: string - name: password in: query schema: type: string responses: default: description: default response content: text/plain: {} application/xml: {} application/json: {} deprecated: true /auth/login: post: tags: - authentication summary: user login description: |- Authenticates the user and provides a security token if successful. The token will be returned in the response header "X-OLAT-TOKEN". If the response content type "application/json" is requested, the token will also be returned in the response body. Since the password is sent in clear text, it is advised to only use this endpoint over HTTPS. operationId: loginPostHeader parameters: - name: username in: header schema: type: string - name: password in: header schema: type: string responses: default: description: default response content: text/plain: {} application/xml: {} application/json: {} /ping/version: get: tags: - service health check operationId: getVersion_26 responses: default: description: default response content: text/plain: {} /ping: get: tags: - service health check operationId: ping responses: default: description: default response content: text/plain: {} /ping/{name}: post: tags: - service health check operationId: ping_1 parameters: - name: name in: path required: true schema: type: string responses: default: description: default response content: text/plain: {} /swagger-ui/{file}: get: tags: - swagger-ui operationId: getFile parameters: - name: file in: path required: true schema: type: string responses: default: description: default response content: '*/*': {} /findByProperties/{propName}: get: tags: - users operationId: findUserListByProperty parameters: - name: propName in: path required: true schema: type: string - name: propValue in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /findByProperties/version: get: tags: - users operationId: getVersion_27 responses: default: description: default response content: text/plain: {} /users/{username}/auth: get: tags: - users operationId: getAuthenticationTokenList parameters: - name: username in: path required: true schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - users operationId: create parameters: - name: username in: path required: true schema: type: string requestBody: content: application/xml: schema: $ref: "#/components/schemas/AuthenticationVO" application/json: schema: $ref: "#/components/schemas/AuthenticationVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/{username}/auth/new: post: tags: - users operationId: createPost parameters: - name: username in: path required: true schema: type: string requestBody: content: application/xml: schema: $ref: "#/components/schemas/AuthenticationVO" application/json: schema: $ref: "#/components/schemas/AuthenticationVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/{username}/auth/{authKey}: delete: tags: - users operationId: delete parameters: - name: username in: path required: true schema: type: string - name: authKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /users/{username}/auth/{authKey}/delete: post: tags: - users operationId: deletePost parameters: - name: username in: path required: true schema: type: string - name: authKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /users/{username}/auth/version: get: tags: - users operationId: getVersion_28 responses: default: description: default response content: text/plain: {} /users: get: tags: - users operationId: getUserListQuery parameters: - name: login in: query schema: type: string - name: authProvider in: query schema: type: string - name: authUsername in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} put: tags: - users operationId: create_1 parameters: - name: checkdoublemail in: query schema: type: boolean default: false - name: mandatoryPassword in: query schema: type: boolean default: false requestBody: content: application/xml: schema: $ref: "#/components/schemas/UserVO" application/json: schema: $ref: "#/components/schemas/UserVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/new: post: tags: - users operationId: createPost_1 parameters: - name: checkdoublemail in: query schema: type: boolean default: false - name: mandatoryPassword in: query schema: type: boolean default: false requestBody: content: application/xml: schema: $ref: "#/components/schemas/UserVO" application/json: schema: $ref: "#/components/schemas/UserVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/{identityKey}/portrait: get: tags: - users operationId: getPortrait parameters: - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: image/jpeg: {} image/jpg: {} application/octet-stream: {} post: tags: - users operationId: postPortrait parameters: - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} delete: tags: - users operationId: deletePortrait parameters: - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: '*/*': {} /users/{identityKey}/delete: post: tags: - users operationId: deletePost_1 parameters: - name: identityKey in: path required: true schema: type: integer format: int64 - name: keepAnonymizedCertificateData in: query schema: type: boolean default: false responses: default: description: default response content: application/xml: {} application/json: {} /users/{identityKey}{params}: get: tags: - users operationId: findById_2 parameters: - name: identityKey in: path required: true schema: type: integer format: int64 - name: params in: path required: true schema: pattern: (\/.*)? type: string responses: default: description: default response content: application/xml: {} application/json: {} /users/tokenlink: get: tags: - users operationId: getCompleteProfileToken parameters: - name: userid in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /users/{identityKey}/groups: get: tags: - users operationId: getUserGroupList parameters: - name: identityKey in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /users/{identityKey}/groups/{courseId}: get: tags: - users operationId: getUserGroupListForCourse parameters: - name: identityKey in: path required: true schema: type: string - name: courseId in: path required: true schema: type: integer format: int64 responses: default: description: default response content: application/xml: {} application/json: {} /users/byclient: get: tags: - users operationId: getUsersByClient parameters: - name: client in: query schema: type: string - name: daysSinceLogin in: query schema: type: integer format: int32 - name: hasPersistentId in: query schema: type: boolean - name: count in: query schema: type: string responses: default: description: default response content: application/xml: {} application/json: {} /users/version: get: tags: - users operationId: getVersion_29 responses: default: description: default response content: text/plain: {} /users/{identityKey}/roles: post: tags: - users operationId: postRoles parameters: - name: identityKey in: path required: true schema: type: integer format: int64 requestBody: content: application/xml: schema: $ref: "#/components/schemas/ListVO" application/json: schema: $ref: "#/components/schemas/ListVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/update/{identityKey}: post: tags: - users operationId: update parameters: - name: identityKey in: path required: true schema: type: integer format: int64 - name: checkdoublemail in: query schema: type: boolean default: false - name: mandatoryPassword in: query schema: type: boolean default: false requestBody: content: application/xml: schema: $ref: "#/components/schemas/UserVO" application/json: schema: $ref: "#/components/schemas/UserVO" responses: default: description: default response content: application/xml: {} application/json: {} /users/{identityKey}: post: tags: - users operationId: updatePost parameters: - name: identityKey in: path required: true schema: type: integer format: int64 - name: checkdoublemail in: query schema: type: boolean default: false - name: mandatoryPassword in: query schema: type: boolean default: false requestBody: content: application/xml: schema: $ref: "#/components/schemas/UserVO" application/json: schema: $ref: "#/components/schemas/UserVO" responses: default: description: default response content: application/xml: {} application/json: {} components: schemas: MultivaluedMapStringString: type: object properties: empty: type: boolean additionalProperties: type: array items: type: string PathSegment: type: object properties: path: type: string matrixParameters: type: object properties: empty: type: boolean additionalProperties: type: array items: type: string CatalogEntryVO: type: object properties: key: type: integer format: int64 name: type: string description: type: string externalURL: type: string type: type: integer format: int32 repositoryEntryKey: type: integer format: int64 parentKey: type: integer format: int64 link: type: array items: $ref: "#/components/schemas/LinkVO" xml: name: catalogEntryVO LinkVO: type: object properties: rel: type: string xml: attribute: true href: type: string xml: attribute: true title: type: string xml: attribute: true xml: name: link GroupVO: type: object properties: key: type: integer format: int64 description: type: string name: type: string type: type: string minParticipants: type: integer format: int32 maxParticipants: type: integer format: int32 invitationEnabled: type: boolean signoutEnabled: type: boolean xml: name: groupVO AssessableResultsVO: type: object properties: identityKey: type: integer format: int64 userVO: $ref: "#/components/schemas/UserVO" score: type: number format: float maxScore: type: number format: float passed: type: boolean attempts: type: integer format: int32 results: type: object additionalProperties: type: string xml: name: assessableResultsVO UserPropertyVO: type: object properties: name: type: string value: type: string UserVO: type: object properties: key: type: integer format: int64 login: type: string password: type: string firstName: type: string lastName: type: string email: type: string properties: type: array xml: wrapped: true items: $ref: "#/components/schemas/UserPropertyVO" link: type: array items: $ref: "#/components/schemas/LinkVO" xml: name: userVO MetadataVO: type: object properties: name: type: string value: type: string xml: name: metadata MetadataVOes: type: object properties: metadata: type: array items: $ref: "#/components/schemas/MetadataVO" xml: name: metadataVOes CourseConfigVO: type: object properties: sharedFolderSoftKey: type: string semester: type: string xml: name: courseVO FormDataContentDisposition: type: object properties: type: type: string parameters: type: object additionalProperties: type: string fileName: type: string creationDate: type: string format: date-time modificationDate: type: string format: date-time readDate: type: string format: date-time size: type: integer format: int64 name: type: string AuthenticationVO: type: object properties: key: type: integer format: int64 identityKey: type: integer format: int64 provider: type: string authUsername: type: string credential: type: string credentialType: type: string salt: type: string xml: name: authenticationVO ListVO: type: object properties: value: type: array items: type: string xml: name: list