create_rubric
Create a rubric in a Canvas course with custom criteria, ratings, and optional assignment association for grading.
Instructions
Create a new rubric in a course, optionally associating it with an assignment.
Uses bracket-notation form-data encoding required by the Canvas rubric API.
The criteria parameter is a JSON string mapping arbitrary criterion keys to
objects with the following fields:
description(required): Short criterion label shown in the rubric gridpoints(required): Maximum points for this criterion (non-negative number)long_description(optional): Detailed criterion descriptionratings(optional): List (or object) of rating levels, each with:description(required): Rating label (e.g. "Excellent")points(required): Points for this rating (non-negative number)long_description(optional): Detailed rating description
Example criteria JSON::
{
"c1": {
"description": "Content Quality",
"points": 10,
"ratings": [
{"description": "Excellent", "points": 10},
{"description": "Satisfactory", "points": 7},
{"description": "Needs Work", "points": 3}
]
},
"c2": {
"description": "Grammar",
"points": 5,
"ratings": [
{"description": "No errors", "points": 5},
{"description": "Minor errors", "points": 3}
]
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Rubric title | |
| criteria | Yes | JSON string defining rubric criteria (see docstring above) | |
| reusable | No | Make rubric reusable across courses (default: False) | |
| assignment_id | No | Optional assignment ID to immediately associate the rubric with | |
| use_for_grading | No | When associating with an assignment, use rubric for grade calculation (default: False) | |
| course_identifier | Yes | Course code or Canvas ID | |
| free_form_criterion_comments | No | Allow free-form comments per criterion instead of rating selection (default: False) |