# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Canvas LMS REST Rubrics API version: 1.0.0 extends: openapi/canvas-rubrics-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 20 - target: $.paths['/v1/courses/{course_id}/rubrics'].get update: x-apievangelist-phrasing: intent: List a course's active rubrics effect: read questions: - What rubrics are active in my Canvas course? - Can I see every grading rubric defined at the course level? instructions: - text: List the active rubrics in course {course_id}. slots: course_id: path.course_id - text: Show all grading rubrics available in course {course_id}. slots: course_id: path.course_id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics'].post update: x-apievangelist-phrasing: intent: Create a rubric in a course effect: write questions: - How do I build a new grading rubric with criteria in a course? - Can I attach a new rubric to an assignment and use it for grading when I create it? - Can a rubric allow free-form comments instead of fixed ratings? instructions: - text: Create a rubric titled {title} in course {course_id}. slots: title: requestBody.rubric[title] course_id: path.course_id - text: Create a new rubric {title} in course {course_id} and associate it with assignment {association_id} for grading. slots: title: requestBody.rubric[title] course_id: path.course_id association_id: requestBody.rubric_association[association_id] method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/{id}'].get update: x-apievangelist-phrasing: intent: Get a rubric from a course effect: read questions: - How can I view one rubric's criteria and ratings in a course? - Can I include the assessments made with a course rubric when I fetch it? instructions: - text: Get rubric {id} in course {course_id}. slots: id: path.id course_id: path.course_id - text: Show course {course_id} rubric {id} with its {include} included. slots: course_id: path.course_id id: path.id include: query.include method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/{id}'].put update: x-apievangelist-phrasing: intent: Update a course rubric effect: write questions: - How do I rename a rubric or change its criteria in a course? - Can I edit a rubric's criteria without recalculating the assignment's points possible? instructions: - text: Rename rubric {id} in course {course_id} to {title}. slots: id: path.id course_id: path.course_id title: requestBody.rubric[title] - text: Update the criteria of course {course_id} rubric {id}. slots: course_id: path.course_id id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a rubric and its associations effect: destructive questions: - What happens to assignments using a rubric when I delete it? - Can I permanently remove a rubric from a course? instructions: - text: Delete rubric {id} from course {course_id}. slots: id: path.id course_id: path.course_id - text: Remove course {course_id} rubric {id} along with all of its associations. slots: course_id: path.course_id id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/accounts/{account_id}/rubrics'].get update: x-apievangelist-phrasing: intent: List an account's active rubrics effect: read questions: - Which rubrics are shared at the account level for reuse across courses? - Can an admin list every active rubric in an account? instructions: - text: List the active rubrics in account {account_id}. slots: account_id: path.account_id - text: Show the account-level rubric library for account {account_id}. slots: account_id: path.account_id method: generated generated: '2026-10-01' - target: $.paths['/v1/accounts/{account_id}/rubrics/{id}'].get update: x-apievangelist-phrasing: intent: Get a rubric from an account effect: read questions: - How do I view one account-level rubric's details? - Can I fetch an account rubric with its associated assessments? instructions: - text: Get rubric {id} from account {account_id}. slots: id: path.id account_id: path.account_id - text: Show account {account_id} rubric {id} in {style} style. slots: account_id: path.account_id id: path.id style: query.style method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/{id}/used_locations'].get update: x-apievangelist-phrasing: intent: See where a course rubric is used effect: read questions: - Which assignments are using a particular rubric from my course? - Before editing a course rubric, can I see every place it's used? instructions: - text: List the courses and assignments using rubric {id} from course {course_id}. slots: id: path.id course_id: path.course_id - text: Show where course {course_id} rubric {id} is currently in use. slots: course_id: path.course_id id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/accounts/{account_id}/rubrics/{id}/used_locations'].get update: x-apievangelist-phrasing: intent: See where an account rubric is used effect: read questions: - Which courses and assignments rely on an account-level rubric? - Can an admin find every course using a shared account rubric? instructions: - text: List the courses and assignments using account {account_id} rubric {id}. slots: account_id: path.account_id id: path.id - text: Find every place rubric {id} from account {account_id} has been applied. slots: id: path.id account_id: path.account_id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/upload'].post update: x-apievangelist-phrasing: intent: Import rubrics into a course from a CSV effect: write questions: - Can I import rubrics into a course from a CSV spreadsheet? - How do I bulk load rubrics into one course from a file? instructions: - text: Upload a rubric CSV file to course {course_id}. slots: course_id: path.course_id - text: Import rubrics from a CSV into course {course_id}. slots: course_id: path.course_id method: generated generated: '2026-10-01' - target: $.paths['/v1/accounts/{account_id}/rubrics/upload'].post update: x-apievangelist-phrasing: intent: Import rubrics into an account from a CSV effect: write questions: - Can an admin import account-level rubrics from a CSV? - How do I load a spreadsheet of rubrics into an account's rubric library? instructions: - text: Upload a rubric CSV file to account {account_id}. slots: account_id: path.account_id - text: Import CSV rubrics into the account {account_id} library. slots: account_id: path.account_id method: generated generated: '2026-10-01' - target: $.paths['/v1/rubrics/upload_template'].get update: x-apievangelist-phrasing: intent: Download the rubric import CSV template effect: read questions: - What format does a rubric CSV import need to be in? - Where can I download a blank template for importing rubrics? instructions: - text: Download the rubric import CSV template. - text: Get me the blank spreadsheet template for importing rubrics. method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubrics/upload/{id}'].get update: x-apievangelist-phrasing: intent: Check a course rubric CSV import's status effect: read questions: - Did my rubric CSV import into the course finish? - Can I check the latest rubric import for a course? instructions: - text: Get the status of rubric import {id} in course {course_id}. slots: id: path.id course_id: path.course_id - text: Check whether course {course_id} rubric upload {id} succeeded. slots: course_id: path.course_id id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/accounts/{account_id}/rubrics/upload/{id}'].get update: x-apievangelist-phrasing: intent: Check an account rubric CSV import's status effect: read questions: - Has the rubric spreadsheet I imported into the account finished processing? - Can an admin see the most recent account rubric import? instructions: - text: Get the status of rubric import {id} in account {account_id}. slots: id: path.id account_id: path.account_id - text: Check progress on account {account_id} rubric upload {id}. slots: account_id: path.account_id id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations/{rubric_association_id}/rubric_assessments'].post update: x-apievangelist-phrasing: intent: Assess a student's work with a rubric effect: write questions: - How do I score a student's submission against a rubric? - Can I save a provisional rubric assessment for moderated grading? instructions: - text: Create a rubric assessment under association {rubric_association_id} in course {course_id}. slots: rubric_association_id: path.rubric_association_id course_id: path.course_id - text: Submit a provisional rubric score for association {rubric_association_id} in course {course_id}, provisional {provisional}. slots: rubric_association_id: path.rubric_association_id course_id: path.course_id provisional: requestBody.provisional method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations/{rubric_association_id}/rubric_assessments/{id}'].put update: x-apievangelist-phrasing: intent: Update an existing rubric assessment effect: write questions: - Can I change the ratings on a rubric assessment I already made? - How do I mark an existing provisional rubric assessment as final? instructions: - text: Update rubric assessment {id} for association {rubric_association_id} in course {course_id}. slots: id: path.id rubric_association_id: path.rubric_association_id course_id: path.course_id - text: Set rubric assessment {id} under association {rubric_association_id} in course {course_id} as final {final}. slots: id: path.id rubric_association_id: path.rubric_association_id course_id: path.course_id final: requestBody.final method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations/{rubric_association_id}/rubric_assessments/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a rubric assessment effect: destructive questions: - Can I remove a rubric assessment I made by mistake? - What deletes a single rubric scoring of a student's work? instructions: - text: Delete rubric assessment {id} under association {rubric_association_id} in course {course_id}. slots: id: path.id rubric_association_id: path.rubric_association_id course_id: path.course_id - text: Remove the rubric scoring {id} from association {rubric_association_id} in course {course_id}. slots: id: path.id rubric_association_id: path.rubric_association_id course_id: path.course_id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations'].post update: x-apievangelist-phrasing: intent: Attach an existing rubric to an assignment effect: write questions: - How do I attach an existing rubric to an assignment in my course? - Can I hide the total score when linking a rubric to an assignment? instructions: - text: Associate rubric {rubric_id} with assignment {association_id} in course {course_id}. slots: rubric_id: requestBody.rubric_association[rubric_id] association_id: requestBody.rubric_association[association_id] course_id: path.course_id - text: Link rubric {rubric_id} in course {course_id} to {association_type} {association_id} and use it for grading. slots: rubric_id: requestBody.rubric_association[rubric_id] course_id: path.course_id association_type: requestBody.rubric_association[association_type] association_id: requestBody.rubric_association[association_id] method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations/{id}'].put update: x-apievangelist-phrasing: intent: Change how a rubric is attached to an assignment effect: write questions: - Can I stop using an attached rubric for grading without removing it? - How do I change the purpose of an existing rubric association? instructions: - text: Update rubric association {id} in course {course_id}. slots: id: path.id course_id: path.course_id - text: Set use for grading to {use_for_grading} on rubric association {id} in course {course_id}. slots: use_for_grading: requestBody.rubric_association[use_for_grading] id: path.id course_id: path.course_id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/rubric_associations/{id}'].delete update: x-apievangelist-phrasing: intent: Detach a rubric from an assignment effect: destructive questions: - How do I unlink a rubric from an assignment without deleting the rubric itself? - Can I remove a single rubric association in a course? instructions: - text: Delete rubric association {id} in course {course_id}. slots: id: path.id course_id: path.course_id - text: Detach the rubric linked by association {id} in course {course_id}. slots: id: path.id course_id: path.course_id method: generated generated: '2026-10-01'