Can I see the history of a Group?

Jump to solution
paolo_scussolin
Community Novice

Is it possible to see the history of changes in Groups? In particular, I want to know people that were previously members of a Group.

1 Solution
James
Community Champion

 @paolo_scussolin  

Information on who was previously in a group is not available directly. Unless you have been tracking the information or have a access to a snapshot of the membership data while they were in the group, there is little that you can do. 

I'll start with two things that you might be able to do on your own if you are the teacher of the course.

If the groupsets were created by the teacher and you used them for grading and assigned a grade to the entire group (not individually), then you may be able to determine who was in the group. I would go into your beta instance of Canvas (assuming the change happened prior to this week -- our beta instance is updated on Saturday so changes that happen this week aren't reflected there yet). Changes in the beta instance don't affect the production instance where students do their work and grade changes in beta won't affect their real grades (they won't get notified about them either). Change the grade for one for the student you are concerned about and see who else's grade changes with it. This may show how was a member of the group at the time the submission was made. If it happened this week, you can wait until next week or change them, make a note of which grades changed, and then change them back. Again, this is only a possibility if a grade was assigned while the student was part of the group and it was done as a group rather than individually.

The beta instance is a snapshot of the group enrollments in Canvas as of that Saturday. So, if you think the student was in the group last week, but not this week, you can go to the beta instance to check enrollments. Normally, there is a test instance of Canvas as well that is updated when the last release of Canvas was made. That may be up to a month ago, but the last release of Canvas was June 20, so right now, beta and test would likely have the same data.

That's the of things that you can do on your own if you're an instructor. Here is some additional information and some things that might work.

The list group memberships endpoint through the REST API only shows accepted, invited, and requested states. It does not show deleted states. That makes it impossible to query and get a list of who was there but isn't anymore.

If your institution has Canvas Data (not all use that), it contains information on group membership. Normally, you are getting a snapshot of the most recent information, which is 24-36 hours old at the time. Some institutions may not update this nightly so you might be able to get the results from the last time it was updated.

Canvas Data has historical dumps going back 50 days as well. I have access to daily dumps from May 9 - June 24 right now. That means that I could show a daily history of the status of the groups on each of those days. It would be a lot of work for the local Canvas Admin or whomever manages Canvas Data to download and extract that.


Canvas Data is a snapshot of the data at a particular instant in time. If a student joined a group and left it in the same day, there would be no record of them ever being in the group.

If your institution uses Canvas Data Services and has a Live Event Queue set up and is tracking group membership for your course [or the whole institution] and they haven't discarded that information then there is a group_membership_updated that might contain this information. It is triggered when a existing group membership is modified. It contains a workflow_state field that would change from 'active' to 'deleted' (I'm guessing on the 'deleted').  I would not hold out hope on this one. I purposefully listed each "and" to emphasize the slim chance of it being true. But it is something that you might check on.

It may be possible to obtain this information from Canvas support or from your local Canvas admin if your Canvas is self-hosted. There is probably a record in the database with a status of 'deleted' (or something similar). They are the only ones who would be able to detect the situation of someone joining and leaving on the same day or if you need to go back more than 50 days (unless the Live Event thing miraculously is true). 

View solution in original post