Showing results for 
Search instead for 
Did you mean: 
Community Member

How to find out user who has no enrollment?


I would like to know if there's any report or other ways that I can find out those user account has no enrollment in Canvas.

(i.e. a user account is created but not assigned to any of the Canvas courses)


6 Replies
Community Coach
Community Coach, I'm not how this would be done, but I'm guessing if it's possible it would be using the Canvas API. I'm going to share this with the Canvas Developers​ group in the Community to see if they can help answer this.


We run a user report and an enrollment report.  We reduce the enrollment report down to a single list of users using the "remove duplicates" option in Excel.  Then we compare the 2 lists.  Anyone who appears on the user list but not the enrollment list has an account without enrollments. 

Community Member

If you're trying to do this for an individual user or just a handful of users, then you can use the Enrollments API:

"GET /api/v1/users/:user_id/enrollments"

So, for a user with attributes like this:

  • sis_login_id: kylo_ren
  • sis_user_id: kr12345
  • canvas user id: 98765

It would be one of these:

  • GET /api/v1/users/sis_login_id:kylo_ren/enrollments
  • GET /api/v1/users/sis_user_id:kr12345/enrollments
  • GET /api/v1/users/98765/enrollments

If you get an empty response back, then the user has no enrollments. For multiple users, just loop through your own list, making one API call per user. If you'd like a code sample, i can share what i've done with PHP for this kind of thing.

If you're trying to do this for all users in the whole canvas environment (or too many to loop through efficiently), then the easiest way would be to do what Mary mentioned above (generate report, compare to your own list of users).

Thanks for the solution, Mary.

Although it's a bit clumsy for me to work out all these with excel. Smiley Wink Cheers.

I guess we've sorted out how to make that API call finally. I totally agree that there will be too many loops to go through the whole list of users.

Thanks, Nicholas!

Community Coach
Community Coach,

We are giving the Canvas Admins area a little bit of love (especially questions that are really, really old) and just want to check in with you.  This will also bring this question new attention. 


Were you able to find an answer to your question? I am going to go ahead and mark this question as answered because there hasn't been any more activity in a while so I assume that you have the information that you need. If you still have a question about this or if you have information that you would like to share with the community, by all means, please do come back and leave a comment.  Also, if this question has been answered by one of the previous replies, please feel free to mark that answer as correct.