Quiz
- class canvasapi.quiz.Quiz(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
- broadcast_message(conversations, **kwargs)
Send a message to unsubmitted or submitted users for the quiz.
- Calls:
POST /api/v1/courses/:course_id/quizzes/:id/submission_users/message
- Parameters:
conversations (dict) – A dictionary representing a Conversation. Requires ‘body’, ‘recipients’, and ‘subject’ keys.
- Returns:
True if the message was created, False otherwize
- Return type:
bool
- create_question(**kwargs)
Create a new quiz question for this quiz.
- create_question_group(quiz_groups, **kwargs)
Create a new question group for the given quiz id
- Calls:
- Parameters:
quiz_groups (list[dict]) – The name, pick count, question points, and/or assessment question bank id. All of these parameters are optional, but at least one must exist (even if empty) to receive a response. The request expects a list, but will only create 1 question group per request.
- Returns:
QuizGroup object
- Return type:
- create_report(report_type, **kwargs)
Create and return a new report for this quiz. If a previously generated report matches the arguments and is still current (i.e. there have been no new submissions), it will be returned.
- Calls:
- Parameters:
report_type (str) – The type of report, either student_analysis or item_analysis
- Returns:
QuizReport object
- Return type:
- create_submission(**kwargs)
Start taking a Quiz by creating a QuizSubmission can be used to answer questions and submit answers.
- delete(**kwargs)
Delete this quiz.
- Calls:
- Return type:
- edit(**kwargs)
Modify this quiz.
- Calls:
- Returns:
The updated quiz.
- Return type:
- get_all_quiz_reports(**kwargs)
Get a list of all quiz reports for this quiz
- get_question(question, **kwargs)
Get as single quiz question by ID.
- Calls:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/questions/:id
- Parameters:
question (int, str or
canvasapi.quiz.QuizQuestion) – The object or ID of the quiz question to retrieve.- Return type:
- get_questions(**kwargs)
List all questions for a quiz.
- get_quiz_group(id, **kwargs)
Get details of the quiz group with the given id
- Calls:
- Parameters:
id (int) – The ID of the question group.
- Returns:
QuizGroup object
- Return type:
- get_quiz_report(id, **kwargs)
Returns the data for a single quiz report.
- Calls:
- Parameters:
id (int or
canvasapi.quiz.QuizReport) – The ID of the quiz report you want to retrieve, or the report object- Returns:
QuizReport object
- Return type:
- get_quiz_submission(quiz_submission, **kwargs)
Get a single quiz submission.
- Calls:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id
- Parameters:
quiz_submission (int, string,
canvasapi.quiz.QuizSubmission) – The object or ID of the quiz submission to retrieve.- Return type:
- get_statistics(**kwargs)
Get statistics for for all quiz versions, or the latest quiz version.
- get_submissions(**kwargs)
Get a list of all submissions for this quiz.
- set_extensions(quiz_extensions, **kwargs)
Set extensions for student quiz submissions.
- Calls:
- Parameters:
quiz_extensions (list) – List of dictionaries representing extensions.
- Return type:
list of
canvasapi.quiz.QuizExtension
Example Usage:
>>> quiz.set_extensions([ ... { ... 'user_id': 1, ... 'extra_time': 60, ... 'extra_attempts': 1 ... }, ... { ... 'user_id': 2, ... 'extra_attempts': 3 ... }, ... { ... 'user_id': 3, ... 'extra_time': 20 ... } ... ])
QuizAssignmentOverrideSet
- class canvasapi.quiz.QuizAssignmentOverrideSet(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
QuizExtension
- class canvasapi.quiz.QuizExtension(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
QuizQuestion
- class canvasapi.quiz.QuizQuestion(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
- delete(**kwargs)
Delete an existing quiz question.
- Calls:
DELETE /api/v1/courses/:course_id/quizzes/:quiz_id/questions/:id
- Returns:
True if question was successfully deleted; False otherwise.
- Return type:
bool
- edit(**kwargs)
Update an existing quiz question.
QuizReport
- class canvasapi.quiz.QuizReport(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
- abort_or_delete(**kwargs)
This API allows you to cancel a previous request you issued for a report to be generated. Or in the case of an already generated report, you’d like to remove it, perhaps to generate it another time with an updated version that provides new features.
- Calls:
DELETE /api/v1/courses/:course_id/quizzes/:quiz_id/reports/:id
- Returns:
True if attempt was successful; False otherwise
- Return type:
bool
QuizStatistic
- class canvasapi.quiz.QuizStatistic(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
QuizSubmission
- class canvasapi.quiz.QuizSubmission(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
- answer_submission_questions(validation_token=None, **kwargs)
Provide or update an answer to one or more quiz questions.
- Calls:
- Parameters:
validation_token (str) – (Optional) The unique validation token for this quiz submission. If one is not provided, canvasapi will attempt to use self.validation_token.
- Returns:
A list of quiz submission questions.
- Return type:
- complete(validation_token=None, **kwargs)
Complete the quiz submission by marking it as complete and grading it. When the quiz submission has been marked as complete, no further modifications will be allowed.
- Calls:
POST /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id/complete
- Parameters:
validation_token (str) – (Optional) The unique validation token for this quiz submission. If one is not provided, canvasapi will attempt to use self.validation_token.
- Return type:
- get_submission_events(**kwargs)
Retrieve the set of events captured during a specific submission attempt.
- Calls:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id/events
- Returns:
PaginatedList of QuizSubmissionEvents.
- Return type:
canvasapi.paginated_list.PaginatedListofcanvasapi.quiz.QuizSubmissionEvent
- get_submission_questions(**kwargs)
Get a list of all the question records for this quiz submission.
- Calls:
- Returns:
A list of quiz submission questions.
- Return type:
- get_times(**kwargs)
Get the current timing data for the quiz attempt, both the end_at timestamp and the time_left parameter.
- Calls:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id/time
- Return type:
dict
- submit_events(quiz_submission_events, **kwargs)
Store a set of events which were captured during a quiz taking session.
- Calls:
POST /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id/events
- Parameters:
quiz_submission_events (list) – The submission events to be recorded.
- Returns:
True if the submission was successful, false otherwise.
- Return type:
bool
- update_score_and_comments(**kwargs)
Update the amount of points a student has scored for questions they’ve answered, provide comments for the student about their answer(s), or simply fudge the total score by a specific amount of points.
- Calls:
PUT /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id
- Returns:
The updated quiz.
- Return type:
QuizSubmissionEvent
- class canvasapi.quiz.QuizSubmissionEvent(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
QuizSubmissionQuestion
- class canvasapi.quiz.QuizSubmissionQuestion(requester, attributes)
- Parameters:
requester (
canvasapi.requester.Requester) – The requester to pass HTTP requests through.attributes (dict) – The JSON object to build this object with.
- flag(validation_token=None, **kwargs)
Set a flag on a quiz question to indicate that it should be returned to later.
- Calls:
PUT /api/v1/quiz_submissions/:quiz_submission_id/questions/:id/flag
- Parameters:
validation_token (str) – (Optional) The unique validation token for the quiz submission. If one is not provided, canvasapi will attempt to use self.validation_token.
- Returns:
True if the question was successfully flagged, False otherwise.
- Return type:
bool
- unflag(validation_token=None, **kwargs)
Remove a previously set flag on a quiz question.
- Calls:
PUT /api/v1/quiz_submissions/:quiz_submission_id/questions/:id/unflag
- Parameters:
validation_token (str) – (Optional) The unique validation token for the quiz submission. If one is not provided, canvasapi will attempt to use self.validation_token.
- Returns:
True if the question was successfully unflagged, False otherwise.
- Return type:
bool