cholling,
When you make a copy of a course, the rubric gets a new Rubric ID. The criterion and ratings within the criterion may keep the same IDs, which help tie them together across courses, but the ID on the rubric itself changes.
When you click the delete / trash icon in an assignment, what you're deleting is the association to the assignment, you're not actually deleting the rubric. The rubric still remains within the course until you go to Rubrics and Delete Rubric.
To confirm, I went into the test instance of Canvas and made a copy of a course that had a rubric that had been used for grading. I went and removed the rubric from that assessment and it was still in the Rubrics page. The original assignment in the original course still had the rubric assessment attached to it.
Then I went into the new copy of the course and completely deleted the rubric from the manage Rubrics page. I then went into the original course and the rubric and its assessment for that assignment was still present.
I then went into the original course and deleted the Rubric association from the assignment. As expected, the rubric disappeared from SpeedGrader. However, the rubric was still attached to the submission and I was able to recover it through the submissions API.
Reattaching the same rubric that I had just detached from the assignment did NOT bring back the rubric values in SpeedGrader. It presented me with a blank rubric. There is a rubric_association_id that changes when every time you attach a rubric to an assignment, so removing and reattaching changes the ID.
I then went into the Rubrics page and deleted the rubric itself from the original course. Canvas gave me this warning:
Are you sure you want to delete this rubric? This action will remove this rubric association from all assignments in the current course, and delete any existing associated assessments.
I clicked OK to completely remove the rubric from the course.
The rubric is now gone from SpeedGrader and from the assignment where I had reattached it. It's now gone from the Course Rubrics page. However, it is still present for the students who received it when you fetch the submission through the API.
If you add /undelete to the end of your course URL, it is there for you to restore. Restoring did not seem to put it back in the course rubrics page, though. I was able to fetch it through the API, though. This may be a caching issue or it may be a problem with the restore process. I went to a different browser and it wasn't there, but Canvas has an internal cache to make some requests go faster and I don't know if that's the issue -- the API is using a different user than the web interface is. Regardless, restoring it did not restore associations with assignments.
I do not know what happens with blueprint courses as we don't use them, but it looks like you're not going to lose the rubric that was completed for a student, even if you remove the rubric. You may lose it from SpeedGrader, but it's still there in the underlying data.
This is so long I'm not sure where to write it, but I wanted to document it somewhere. It's not necessarily related to your question. After the fact, I wondered if I had been throwing around some terminology incorrectly, so I wanted to set them straight. The rubric object has assessments and associations.
An association may (I'm not guaranteeing this list is exclusive) be to a course, account, or assignment. The course or account association lets you know where the rubric lives. When you restore a rubric that has been deleted, it no longer has a course association with it, which may be why it isn't showing up on my rubrics page. Each assignment also has an association with it.
The assessments happen for each student who has been assessed using the rubric. There is an artifact type and id as well. In my data, that has "Submission" for the artifact_type and the submission_id as the artifact_id. There is also an assessor_id that contains the user_id of the person who completed the rubric. The list of assessments does not contain the assignment ID.
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.