Improved analytics - set User Records to 'inactive', not 'deleted'

Idea created by Geraint Draheim on Jul 26, 2017
    Open for Voting

    TL;DR - I would like to be able to set the status of a Canvas user to a new 'inactive' status (currently only 'active' and 'deleted' are available), without affecting the current status of that user's enrolments, so we can still look at that user's historic enrolment and associated interactions through Canvas Data, even after they finishes/leave. 




    Currently users can only have one of two states:


    'active' or 'deleted'


    As per the documentation at SIS Import Format Documentation - Canvas LMS REST API Documentation - When a student is 'deleted', all of their enrolments will also be deleted. 


    Canvas Doco Screenshot - deleting users deletes enrolments


    It is suggested that setting their enrolments to 'completed', and leaving the student's user record active, is a way to stop students from accessing old courses, but to let the log in to the system.


    But what about the opposite of that?


    What about when students complete their degree, or perhaps leave part way through, or perhaps a staff member leaves the organisation. Sure - we have Identity Management and Authentication that stops the user from getting in to Canvas. But, we want to be able to record in the LMS that these users are no-longer current/active users (i.e. we don't want to have every user that has ever been in our Canvas system ever with a status of 'active', as the number of users would grow to be unwieldy). However, currently our only option is to set these users to be 'deleted', and when we do this, it results in all of the student's enrolment records being set to deleted - so we can no longer distinguish between past students who actually completed the course, vs those who might have withdrawn from the course part way through. i.e. all of these students will have 'deleted' enrolments for all of their courses, but we want to know if their enrolments were actually 'active', 'completed', or 'inactive' at the time they left.


    It seems that being able to set a user record to be 'inactive' (or some similar state that is not 'active' or 'deleted'), such that their enrolment record status is not affected, would be a really simple way for us to be able to distinguish between current/active users, those that were previously active, but that we still need to be able to track their interactions (e.g. due to legal and analytics/reporting requirements for a number of years after the student leaves the University), and then those users which have not been active beyond this, and hence are deleted. 


    This has come up numerous times, with slight variations.


    • Given that the issue keeps coming up, it seems that this issue is relevant for a reasonable number of institutions using Canvas.
    • It seems that having another status to for users shouldn't be a massive change to the system - and for people that don't need this functionality, they could just ignore it, and keep doing what they are currently doing.
    • As people start to dive deeper into Canvas Data, and want to be able include interactions of past students when making comparisons against historical data and looking for trends, it seems having this extra status for user records could be really valuable.