Celebrate Excellence in Education: Nominate Outstanding Educators by April 15!
Hi Linda!
There is not a way to upload student photos in the user interface, however, there is a script in Github that does it through the API. It is found here: canvas/api/bulk_assign_avatars at master · unsupported/canvas · GitHub
If you have someone on staff who is familiar with (or willing to learn) Ruby or Python, most of the work is already done for you in these scripts.
If there is another way, I'd LOVE to hear it. I'm always open to learning other ways to do stuff.
I hope this helps!
Mike
Mike,
The problem with that script is your student photos need to be placed in a location that is publicly accessible, I have an issue with posted our student photos with a some form of identifier on a public website. I find it very disappointing that this feature is left out in Canvas.
Linda
Try the bulk_upload_avatars script in the same folder as the one above. It actually uploads and sets the profile picture.
canvas/bulk_upload_avatars.py at master · unsupported/canvas · GitHub
Mike, I was in attendance for your API 101 course at this year's instructurecon (carn), do you think that this is something that Postman could help with? Interesting thought using a Put or Post perhaps
@udelhsar , Yes, you could do this using Postman to process a csv file. On a quick look at the script above, there are 2 steps.
In order to do this and not need the avatars to be publicly viewable, you would need to masquerade as the user as you do these steps. That way the user's photo would then become part of the user's files.
Best wishes.
We actually had a custom project put together by Instructure's ProServ that updates everyone's profile pic every night to match their University ID picture. We push the images to their servers and then they update the images. We do it this way so we don't have to police their images and make judgement calls on appropriate vs inappropriate. Because this is an active project, we do pay a maintenance fee, but if this is something you'd be interested in adopting for your school, let me know.
Sorry for replaying to such an old post. My institution is working to add student photos to several of our application (ERP, Canvas, Security System). Are the GitHub scripts the best way upload student photos into Canvas? I was hoping to do integrate the photos from our Security system, similarly to the way abunag had.
How can we turn off the feature that allows students to add a profile photo?
Good morning, @reynoldsn ...
Canvas administrators at your school can turn this option on/off, and it would apply to all users within your school's account...not for just a specific course or a specific set of users. Check out this Canvas administrator Guide:
How do I set details for an account? - Instructure Community (canvaslms.com)
Scroll down to about the middle of the Guide, and look for the heading "View Features". Then, look for the "User Avatars" checkbox (labeled as item 12) and the description of it below the screenshot.
If you are not a Canvas administrator, you would want to have a conversation with that person at your school...keeping in mind what I mentioned earlier that this would be a setting that applies to everyone at your school.
I hope this will help a bit. Let Community members know if you have any other questions about this...thanks!
Hello,
This can be done on a case-by-case basis via the rest api. Setting the user[avatar][state] to 'locked' will prevent the user from changing their profile picture. At our school, I created a PHP script to set the state to locked and to set the user[avatar][url] to an external url. (https://canvas.instructure.com/doc/api/users.html#method.users.update)
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.