Celebrate Excellence in Education: Nominate Outstanding Educators by April 15!
Due to a process that was not tested or discussed with the functional admins (but I'm not bitter), we have thousands of user accounts with incomplete information, including email addresses that are missing the @whateverfollows.edu (so if the student's email should be ssmith25@student.alamo.edu, if only has ssmith25 in the email field). When the students in question register for classes, their correct email address comes into Canvas from Banner, but does not become the default - the invalid address remains the default. This causes issues with notifications and access to LTIs that require a valid email address.
Can anyone think of a way to fix this in a batch? I have a provisioning report of users, filtered for the accounts that have the corrupt addresses. I am thinking that using that report to create a users.csv import file with the email addresses corrected might work to push in valid addresses in cases where they're not there at all, but I don't think it will make them the default email address.
I don't work with APIs (and our programmer support is minimal), but could it maybe be done via API?
I know this might also be a question for the Canvas Developers group...
I'm not sure how Banner and Canvas interact together, but I know with the integration that I have done when we have a student change their email address in our CSM system I am able to automatically update their email associated with in Canvas to their account. We also have it locked down to where they are not able to change their default email address in Canvas but can add additional email addresses if they so choose to.
To change their email address all I do is send up a User.CSV file containing their new email address.
SIS Import Format Documentation - Canvas LMS REST API Documentation
Thanks, @bneporadny - I suspected that adding an email to the users.csv would just add an email, leaving the default stuck at whatever it was set for before the import. But if the "new" email becomes the default automatically, that would do the trick!
Well, back to the drawing board. I have tried every SIS Import variation I can think of, and I can't get the email from the users.csv to become the default. The invalid email address persists as the default. It was a lovely thought :smileycry:
Hi Tracey --
I was able to update a user's (my own) default email address using a users.csv upload. Here's what my CSV file contained:
user_id,login_id,password,first_name,last_name,short_name,email,status
12345,12345,,Colin,Murtaugh,Colin Murtaugh,colin_test_murtaugh@harvard.edu,active
After I imported the above data, Canvas showed my email default email address as the one above. Did you get any errors when you imported your CSV? This seems like it should be doable -- I'm hoping you can get it to work!
--Colin
50581462- I used the same fields you describe. I did not get any errors. So your user account already had a default email address when you uploaded your file? Did the test email account replace it, or just add to the list (and become the default)? I wonder if the problem is that the system is seeing "student123@student.alamo.edu" in the new file, and maybe thinking it's the same as "student123" (the current default) so it's not altering it?
Hi Tracey —
My user account did already have a default email present — with this CSV import I added the “test” part to the middle of it. One possibility is that the email addresses that you currently have in your system have the UI sticky flag set; this could happen if profiles were edited through the UI, or if those user accounts were created or modified via API calls rather than CSV imports. If that were the case, you could try importing your CSV file with the “override UI changes” box checked (either of the other two sub-options should be fine - I’d choose the “reset sticky flag” one). I’d try this with a small test CSV file in your test or beta environment first so that there’s no risk of breaking anything.
—Colin
Thanks to everyone who suggested and tested. It gave me enough information to submit a ticket, since there was expected behavior not happening in my instance. It turns out that because the bad emails addresses were created via API, it seems (to the system) like the user added them and set them as the default. And apparently "SIS imports can't override the user decision to set a default email address". So they must be fixed via API. Which I was hoping to avoid, since that is not my forte. But hey, we all learned something interesting this week
To participate in the Instructure Community, you need to sign up or log in:
Sign In
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.