# paths./{id}/Question.get.description
Get questions under the survey or under a section in the survey

# paths./{id}/Question.get.parameters[].description
Format - uuid. Section id if get the question for that section only

# paths./{id}/Question.get.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/Question/search.get.responses.403.description
Login user not authorized to perform this action

# paths./{surveyid}/Question/{id}.get.responses.403.description
Login user not authorized to perform this action

# paths./{surveyid}/Question/{id}.get.responses.404.description
The survey is not found or the question is not found

# paths./Question/TOF.put.requestBody.description
True/False question input. ID is required

# paths./Question/TOF.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/TOF.post.requestBody.description
True/False question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/TOF.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/TOF.patch.requestBody.description
True/False question input. ID is required

# paths./Question/TOF.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Choice.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Choice.post.requestBody.description
Choice question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/Choice.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/Choice.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Essay.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Essay.post.requestBody.description
Essay question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/Essay.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/Essay.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/FIB.put.requestBody.description
Fill-in-the-blank question input. ID is required

# paths./Question/FIB.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/FIB.post.requestBody.description
Fill-in-the-blank question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/FIB.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/FIB.patch.requestBody.description
Fill-in-the-blank question input. ID is required

# paths./Question/FIB.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Scale.put.description
Update Likert’s Scale(LKS) question or semantic differential(SED) question

# paths./Question/Scale.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Scale.post.description
Add a Likert’s Scale(LKS) question or a semantic differential(SED) question

# paths./Question/Scale.post.requestBody.description
Scale question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/Scale.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/Scale.patch.description
Update Likert’s Scale(LKS) question or semantic differential(SED) question (patch)

# paths./Question/Scale.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Ordinal.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Ordinal.post.requestBody.description
Ordinal question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/Ordinal.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/Ordinal.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/ConstantSum.put.requestBody.description
Constant Sum question input. ID is required

# paths./Question/ConstantSum.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/ConstantSum.post.requestBody.description
Constant sum question input. ResourceID is survey id, parent id is section Id(if any)

# paths./Question/ConstantSum.post.responses.403.description
Login user not authorized to perform this action

# paths./Question/ConstantSum.patch.requestBody.description
Constant Sum question input. ID is required

# paths./Question/ConstantSum.patch.responses.403.description
Login user not authorized to perform this action.

# paths./Question/Sort.put.description
Sort questions in a section or in a survey

# paths./Question/Sort.put.responses.403.description
Login user not authorized to perform this action.

# paths./Question/{ID}.delete.description
Delete a question from survey. Responses made on this question will be deleted as well.

# paths./Question/{ID}.delete.responses.403.description
Login user not authorized to perform this action.

# paths./Question.delete.description
Delete list of questions from survey. Responses made on these questions will be deleted as well.

# paths./Question.delete.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/response.get.description
Get all responses within a survey session

# paths./session/{id}/response.get.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/response.post.description
Save individual repsonse made on a question in a specific session

# paths./session/{id}/response.post.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/response.post.responses.404.description
Specified session or question is not found.

# paths./{id}/response.get.responses.403.description
Login user not authorized to perform this action.

# paths./response/{id}.get.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/question/{questionId}/response.get.description
Get login user's latest response made on a question

# paths./session/{id}/question/{questionId}/response.get.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/question/{questionId}/response.get.responses.404.description
Specified response is not found. User has not answered this question.

# paths./question/{id}/response.get.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/responses.post.description
Save repsonses made on multiple questions in a specific session

# paths./session/{id}/responses.post.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}/responses.post.responses.404.description
Specified session or question is not found.

# paths./{id}/section.get.responses.200.description
Returns list of survey section information

# paths./{id}/section.get.responses.403.description
Login user not authorized to perform this action

# paths./section/{id}.get.responses.403.description
Login user not authorized to perform this action

# paths./Section.put.responses.403.description
Login user not authorized to perform this action

# paths./Section.post.responses.403.description
Login user not authorized to perform this action

# paths./Section/Sort.put.requestBody.description
List of section ids in newly sorted order

# paths./Section/Sort.put.responses.403.description
Login user not authorized to perform this action.

# paths./Section/{id}.delete.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/session.get.parameters[].description
attempt type, /A: All Attempt (default) C: All Completed Attempt/I:All Incompleted Attempt

# paths./{id}/session.get.responses.200.description
List of student sessions for this survey

# paths./{id}/session.get.responses.403.description
Login user not authorized to perform this action

# paths./{id}/session.post.description
Start or resume an existing session, used when student start taking the survey

# paths./{id}/session.post.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/ownsession.get.responses.200.description
User's own session for this survey if exists

# paths./session/{id}.get.description
Get a single sessions within a survey. Only lecturer of the survey or the student who did the session can get the information.

# paths./session/{id}.get.responses.403.description
Login user not authorized to perform this action.

# paths./session/{id}.put.description
Submit session, used when student submit/finish taking the survey

# paths./session/{id}.put.responses.403.description
Login user not authorized to perform this action.

# paths./Session/{id}.delete.responses.403.description
Login user not authorized to perform this action.

# paths./Session.delete.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/Session.delete.responses.403.description
Login user not authorized to perform this action.

# paths./.get.description
If parent ID is specified, the result will return a list of surveys under this parent. If the parent is not specified, the result will return all accessible surveys.

# paths./.get.parameters[].description
Format - uuid. Parent id, null means get all accessible survey which has no parent

# paths./.get.responses.403.description
Login user not authorized to perform this action

# paths./.put.responses.403.description
Login user not authorized to perform this action

# paths./.post.description
Create a survey. 
            
            If the parentID/moduleID is specified, only user with the Manager access can create the survey under the module.
            
            Otherwise only users with “RootResource.Create” role can call this API.

# paths./.post.requestBody.description
The survey information with its settings.

# paths./.post.responses.403.description
Login user not authorized to perform this action

# paths./.delete.responses.403.description
Login user not authorized to perform this action.

# paths./.patch.responses.403.description
Login user not authorized to perform this action

# paths./{ParentID}/search.get.description
Search surveys which are under a parent/module

# paths./{ParentID}/search.get.responses.403.description
Login user not authorized to perform this action

# paths./{id}.get.responses.403.description
Login user not authorized to perform this action

# paths./{id}.delete.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/analysis.get.responses.403.description
Login user not authorized to perform this action

# paths./{id}/copy/{DestId}.post.description
Duplicate an survey within current module or to another module.

# paths./{id}/copy/{DestId}.post.parameters[].description
Format - uuid. New destination id, could be another module or current module

# paths./{id}/copy/{DestId}.post.responses.403.description
Login user not authorized to perform this action

# paths./{id}/copy/{DestId}.post.responses.404.description
Specified survey or destination not found

# paths./excel.post.description
Export completed session and/or reponse information (raw data) to excel

# paths./excel.post.responses.403.description
Login user not authorized to perform this action.

# paths./sort.put.requestBody.description
List of survey ids in newly sorted order

# paths./sort.put.responses.403.description
Login user not authorized to perform this action.

# paths./{id}/question_analysis_excel.get.parameters[].description
C: All Completed Attempt (default)/ A: All Attempt

# paths./{id}/session/search.get.description
Get all searched sessions within a survey.

# paths./{id}/session/search.get.parameters[].description
attempt type, /A: All Attempt (default) C: All Completed Attempt/I:All Incompleted Attempt

# paths./{id}/session/search.get.parameters[].description
text to seach student attempt. Minimum 3 characters

# paths./{id}/session/search.get.responses.200.description
List of searched student sessions for this survey

# paths./{id}/session/search.get.responses.403.description
Login user not authorized to perform this action

# paths./{id}/student_nottaken.get.summary
Get list of students who have NOT taken the survey

# paths./{id}/student_nottaken.get.description
Get list of students who have NOT taken the survey

# paths./{id}/student_nottaken.get.responses.403.description
Login user not authorized to perform this action

# components.schemas.contract.Question.API.Question.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.Question.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.Question.properties.type.description
type of the question:

Constant Sum Question                   - COS

Essay Question                          - ESS

Fill-In-The-Blank Question              - FIB

True or False Question                  - TOF

Single Selection Question in Radio      - MCQ

Single Selection Question in Dropdown   - SEL

Multiple Selection Choice Question      - MRQ

Matching Question                       - MCH

Oridinal Question                       - ORD

Likert's Scale Question                 - LKS

Semantic Differential Question          - SED

# components.schemas.contract.Question.API.Question.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.Question.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.Question.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.Question.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.Question.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.Question.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.Question.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.Question.description
base question model, can have multiple variations with additional properties

# components.schemas.contract.Question.API.TOFQuestion.properties.correctAnswer.description
correct answer set for assessment question, true means "True" option is the correct answer.

# components.schemas.contract.Question.API.TOFQuestion.properties.negativeMarking.description
whether the question is allow negative marking,0 or null means negative marking is not set.

# components.schemas.contract.Question.API.TOFQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.TOFQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.TOFQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.TOFQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.TOFQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.TOFQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.TOFQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.TOFQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.TOFQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.TOFQuestion.description
input and output model for true/false question

# components.schemas.contract.Question.API.MarkingScheme.description
different marking scheme for check list selection

# components.schemas.contract.Question.API.ChoiceOption.properties.feedback.description
feedback text when this option is selected, used in assessment

# components.schemas.contract.Question.API.ChoiceOption.properties.hint.description
hint displayed for this option, used in assessment

# components.schemas.contract.Question.API.ChoiceOption.properties.isCorrect.description
Indicate whether this option is a correct answer

# components.schemas.contract.Question.API.ChoiceQuestion.properties.type.description
type of the question: MCQ - Radiobutton list for selection, MRQ - checkbox list for selection, SEL - dropdown list for selection

# components.schemas.contract.Question.API.ChoiceQuestion.properties.recommendMarkingScheme.description
recommented marking scheme, if the question is a MRQ question and it is used for assessment.

0 - if user selected any of the incorrect answers, he/she will get 0 mark or negative marks.

1 - user must select all the correct answers to get full marks, otherwise he/she will get 0 mark or negative marks

2 - if user selected correct and incorrect answers, he/she will get partial marks = full-mark * number-of-selected-correct-option/total-number-of-correct options. used together with RestrictSelection

3 - if user selected correct and incorrect answers, he/she will get partial marks = full-mark * (number-of-selected-correct-option - number-of-selected-incorrect-option)/total-number-of-correct options.

# components.schemas.contract.Question.API.ChoiceQuestion.properties.negativeMarking.description
whether the question is allow negative marking,0 or null means negative marking is not set.

# components.schemas.contract.Question.API.ChoiceQuestion.properties.restrictSelection.description
the maximum number of options can be selected by the user.

# components.schemas.contract.Question.API.ChoiceQuestion.properties.otherOptionText.description
the instructional text for that additional text box, if any

# components.schemas.contract.Question.API.ChoiceQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.ChoiceQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.ChoiceQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.ChoiceQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.ChoiceQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.ChoiceQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.ChoiceQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.ChoiceQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.ChoiceQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.ChoiceQuestion.description
input and output model for choice/selection based questions

# components.schemas.contract.Question.API.EssayQuestion.properties.wordLimit.description
The word limit of the user's answer if set

# components.schemas.contract.Question.API.EssayQuestion.properties.characterLimit.description
The character limit of the user's answer if set

# components.schemas.contract.Question.API.EssayQuestion.properties.answerWordsKeyMatch.description
The keyword list of a correct answers for assessment question.

# components.schemas.contract.Question.API.EssayQuestion.properties.allowHtmlAnswer.description
indicate whether to allow student type html content as the answer.

# components.schemas.contract.Question.API.EssayQuestion.properties.rubricID.description
Rubric Id if this question is marked by rubric. used for normal quiz

# components.schemas.contract.Question.API.EssayQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.EssayQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.EssayQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.EssayQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.EssayQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.EssayQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.EssayQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.EssayQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.EssayQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.EssayQuestion.description
input and output model for essay question

# components.schemas.contract.Question.API.FIBAnswer.properties.isNumericAnswer.description
indicate whether the answer is a numeric range or a text based answer

# components.schemas.contract.Question.API.FIBAnswer.properties.numericRangeMinValue.description
the minumum value which to be accepted as correct answer, this is used together with NumericRangeMaxValue

# components.schemas.contract.Question.API.FIBAnswer.properties.numericRangeMaxValue.description
the maxinum value which to be accepted as correct answer, this is used together with NumericRangeMinValue

# components.schemas.contract.Question.API.FIBOption.properties.answer.description
list of corrects answer for this blank, user will get full mark for this blank if the answer is matched with one of list

# components.schemas.contract.Question.API.FIBOption.properties.caseSensitive.description
indicate whether the correct answer should be evaluated in a case sensitive way, used when the answer is text answer.

# components.schemas.contract.Question.API.FIBOption.properties.characterLimit.description
the maximum character limit for user to enter for this blank.

# components.schemas.contract.Question.API.FIBOption.properties.onlyNumericAnswers.description
to indicate to UI whether this blank only allow numeric answers

# components.schemas.contract.Question.API.FIBOption.description
option for fill-in-the-blank questions,used for assessment

# components.schemas.contract.Question.API.FIBQuestion.properties.answersAndFeedbacks.description
FIB answes and feedbacks for assessment question

# components.schemas.contract.Question.API.FIBQuestion.properties.requireAllCorrect.description
students are required to answer all blanks correctly in order to obtain any score. used for assessment only

# components.schemas.contract.Question.API.FIBQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.FIBQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.FIBQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.FIBQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.FIBQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.FIBQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.FIBQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.FIBQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.FIBQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.FIBQuestion.description
intput and output model fill-in-the-blank question

# components.schemas.contract.Question.API.Heading.description
list of headings used for radio buttons list in scale questions

# components.schemas.contract.Question.API.Statement_Right.properties.text_Right.description
the text displayed on the right of the options

# components.schemas.contract.Question.API.Statement_Right.description
options with a text displayed on the right side

# components.schemas.contract.Question.API.ScaleQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.ScaleQuestion.properties.headings.description
list of headings (radio buttons) used for scale question

# components.schemas.contract.Question.API.ScaleQuestion.properties.statements.description
list of statements (rows) used for scale question

# components.schemas.contract.Question.API.ScaleQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.ScaleQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.ScaleQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.ScaleQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.ScaleQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.ScaleQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.ScaleQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.ScaleQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.ScaleQuestion.description
input and output model for scale questions

# components.schemas.contract.Question.API.Statement.description
the statement or the text displayed for scale questions

# components.schemas.contract.Question.API.OrdinalQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.OrdinalQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.OrdinalQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.OrdinalQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.OrdinalQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.OrdinalQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.OrdinalQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.OrdinalQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.OrdinalQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.OrdinalQuestion.description
input and output model for Ordinal question

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.forAssessment.description
Whether the question created for assessment

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.totalPoints.description
total points to be distributed among the options

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.resourceID.description
ID of the tool or folder which contains this question, could be survey id or module id

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.parentID.description
parent of the question id, could be section id if it is different from question ID

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.solution.description
question solution or feedback, used for assessment question, which displayed after student completed the assessment

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.publish.description
indicate whether the question is published

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.requireRationale.description
allow student to enter rationale for the answer.

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.difficultyLevel.description
Difficulty level of the question, 0 - Easy, 1 - Normal, 2 - Difficult. Used for assessment question.

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.videoTimeStamp.description
the timestamp(in seconds) set for the in-video quiz

# components.schemas.contract.Question.API.ConstantSumQuestion.properties.lastUpdatedBy.description
Name of the user who modified the question last time

# components.schemas.contract.Question.API.ConstantSumQuestion.description
input and output model for constant-sum questions

# components.schemas.API_Survey.API.Response.properties.userId.description
login id of the user who made the answer

# components.schemas.API_Survey.API.Response.properties.userMatrixNo.description
matrix number of the user who made the answer

# components.schemas.API_Survey.API.Response.properties.options.description
Selected Response for list options:

Choice Question - order of selected options, eg [3]

Ordinal Question - new sorted order of the options, eg [2, 1, 3]

Constant Sum Question - entered points for the ordered options, eg [20,30,50]

Scale Question = selected option for ordered statements. eg [2,1,3,5,5,6]

# components.schemas.API_Survey.API.Response.properties.text.description
input text made for essay questions or "Other" option text in choice questions

# components.schemas.API_Survey.API.InputResponse.properties.options.description
Selected Response for list options:

Choice Question - order of selected options, eg [3]

Ordinal Question - new sorted order of the options, eg [2, 1, 3]

Constant Sum Question - entered points for the ordered options, eg [20,30,50]

Scale Question = selected option for ordered statements. eg [2,1,3,5,5,6]

# components.schemas.API_Survey.API.InputResponse.properties.text.description
input text made for essay questions or "Other" option text in choice questions

# components.schemas.API_Survey.API.InputResponses.properties.endSession.description
true means user would like to submit/end the session

# components.schemas.API_Survey.API.InputResponses.description
user answers on multiple survey questions

# components.schemas.API_Survey.API.Section.properties.surveyId.description
id of the survey this section belongs to

# components.schemas.API_Survey.API.InputSectionForCreate.properties.surveyId.description
id of the survey this section belongs to

# components.schemas.API_Survey.API.Session.properties.creatorId.description
Id of the user who made on this attempt, null if the survey is set as Anonymous

# components.schemas.API_Survey.API.Session.properties.startDate.description
the time when user start taking the survey

# components.schemas.API_Survey.API.Session.properties.completedDate.description
the time when user finish taking the survey

# components.schemas.contract.ACL.Models.Access_Result.properties.access_Full.description
all accesses on the resource and its contents

# components.schemas.contract.ACL.Models.Access_Result.properties.access_Settings_Read.description
read-only access on the resource setting

# components.schemas.API_Survey.API.Survey.properties.parentId.description
the parent entity of the survey, usually the module. if it is same as ID, means it has no parent.

# components.schemas.API_Survey.API.Survey.properties.lastUpdatedBy.description
ID of the user who lastly updated the survey

# components.schemas.API_Survey.API.Survey.properties.creatorName.description
the name of the user who created the survey

# components.schemas.API_Survey.API.Survey.properties.updatorName.description
the name of the user who lastly updated the survey

# components.schemas.API_Survey.API.Survey.properties.description.description
description/instructional text of the survey

# components.schemas.API_Survey.API.Survey.properties.closeMessage.description
message displayed after user submit the survey

# components.schemas.API_Survey.API.Survey.properties.displayType.description
display type - 

0 -  Full page, all contents displayed in one page

1 - By Section, one section per page

2 - By Question, one question per page

# components.schemas.API_Survey.API.Survey.properties.isAnonymous.description
is student's identity hidden to the lecturer when taking the survey

# components.schemas.API_Survey.API.Survey.properties.allowModifyAfterSubmit.description
allow user to modify their answers after submitted the survey

# components.schemas.API_Survey.API.Survey.properties.requireAnswerAllQuestions.description
once enabled, student need to answer all questions in order to submit the survey

# components.schemas.API_Survey.API.Survey.properties.isTask.description
whether the survey should be added as a task

# components.schemas.API_Survey.API.Survey.description
The survey which used to build a question list for gathering feedback purposes

# components.schemas.contract.ACL.Models.InputRoleAccess.properties.groupAccess.description
Group access rights defined for this resource

# components.schemas.contract.ACL.Models.InputRoleAccess.properties.userAccess.description
Individual user access rights which is different from the groups the user belongs to (if any)

# components.schemas.contract.ACL.Models.InputRoleAccess.properties.publicAccess.description
the access rights which the user defined for public. null means NO_ACCESS

# components.schemas.contract.ACL.Models.InputRoleAccess.properties.inheritedResourceID.description
not null means it follow permission from another resource

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.parentId.description
parent id of the survey, null means no parent

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.access.description
all access rights defined for the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.lessonID.description
lesson Id if it is created as a lesson activity

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.description.description
description/instructional text of the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.closeMessage.description
message displayed after user submit the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.displayType.description
display type - 

0 -  Full page, all contents displayed in one page

1 - By Section, one section per page

2 - By Question, one question per page

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.isAnonymous.description
is student's identity hidden to the lecturer when taking the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.allowModifyAfterSubmit.description
allow user to modify their answers after submitted the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.requireAnswerAllQuestions.description
once enabled, student need to answer all questions in order to submit the survey

# components.schemas.API_Survey.API.InputSurveyForCreate.properties.isTask.description
whether the survey should be added as a task

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.access.description
all access rights defined for the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.description.description
description/instructional text of the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.closeMessage.description
message displayed after user submit the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.displayType.description
display type - 

0 -  Full page, all contents displayed in one page

1 - By Section, one section per page

2 - By Question, one question per page

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.isAnonymous.description
is student's identity hidden to the lecturer when taking the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.allowModifyAfterSubmit.description
allow user to modify their answers after submitted the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.requireAnswerAllQuestions.description
once enabled, student need to answer all questions in order to submit the survey

# components.schemas.API_Survey.API.InpputSurveyForUpdate.properties.isTask.description
whether the survey should be added as a task

# components.schemas.API_Survey.API.OptionAnalysis.description
detailed analysis for question options used for Fill-in-the-blank question and scaling question

# components.schemas.API_Survey.API.QuestionAnalysis.properties.answered.description
number of students who answered this question

# components.schemas.API_Survey.API.QuestionAnalysis.properties.skipped.description
number of students who skipped this question

# components.schemas.API_Survey.API.QuestionAnalysis.properties.allowHtmlAnswerInEssay.description
indicate whether to allow student type html content as the answer. For Essay Question only.

# components.schemas.API_Survey.API.QuestionAnalysis.properties.scaleHeadings.description
scale headings used by scaling questions

# components.schemas.API_Survey.API.QuestionAnalysis.properties.responses.description
answers made by students in open options for selection questions, or answers made in essay questions

# components.schemas.API_Survey.API.Analysis.properties.response.description
number of students who tried this survey

# components.schemas.API_Survey.API.Analysis.properties.completed.description
number of student who submitted their responses

# components.schemas.API_Survey.API.ExportLayout.description
export layout

1. export all records in one excel sheet, one user per row

2. export all records into one excel worksheet, one question per row

3. split all records into multiple excel worksheet, one user per worksheet

3. split all records into multiple excel worksheet, one question per worksheet

# components.schemas.API_Survey.API.ExportSetting.properties.exportType.description
list of sessions to be exported

A: All Attempts/ C: All Completed Attempt

# components.schemas.API_Survey.API.ExportSetting.properties.groupID.description
if set, system will export sessions of students which only belongs to this group. it not set, system will export sessions for all students

# components.schemas.API_Survey.API.ExportSetting.properties.includeUserGroup.description
below field is true means user group information is added to the excel

# components.schemas.API_Survey.API.ExportSetting.properties.includeUserFaculty.description
below field is true means user faculty/department information is added to the excel

# components.schemas.API_Survey.API.ExportSetting.properties.includeQuestionsAndResponses.description
below field is true means question text, student answer in each question is added to the excel

# components.schemas.API_Survey.API.ExportSetting.properties.sortBy.description
the default sort order of the information, possible value :Name, UserID, Number, StartDate or EndDate

# components.schemas.API_Survey.API.ExportSetting.properties.layout.description
export layout applies when IncludeQuestionsAndResponses is true

1. export all records in one excel sheet, one user per row

2. export all records into one excel worksheet, one question per row

3. split all records into multiple excel worksheet, one user per worksheet

3. split all records into multiple excel worksheet, one question per worksheet

# components.schemas.API_Survey.API.ExportSetting.properties.startDate.description
The date filter of the session result, if set, only sessions started after this date will be returned. 
For in-video quiz, only responses made after this date will be returned.

# components.schemas.API_Survey.API.ExportSetting.properties.endDate.description
The date filter of the session result, if set, only sessions started before this date will be returned.
For in-video quiz, only responses made before this date will be returned.

# components.schemas.API_Survey.API.ExportSetting.description
export settings
the default list of information to be exported to excel will be :

user login id, 

student number, 

student name, 

total score obtained, 

duration of the attempts(if any), 

time when student start this attempt,

time when student submit the answers (if any)

This input defines additional information which to be exported into excel.