Scott,
If you are adding users to a roster from inside the course, there is no way I am aware of to prevent the invitation email to go out. Your API suggestion would work but there is a simpler way for your admins to do it. In the Admin area you can batch enroll people in a course with a simple CSV file and no need to bother with APIs. Here is a page documenting what those files look like; take a look at the Enrollments.csv section https://canvas.instructure.com/doc/api/file.sis_csv.html A lot of those fields are optional, if you look at the sample below the real core data needed is simply:
course_id,user_id,role,section_id,status
E411208,01103,student,1B,active
E411208,13834,student,2A,active
E411208,13aa3,teacher,2A,active
If you don't have admin access you'll need to get one to do this for you, but it's not that difficult for an admin to do. I do it all the time for special use courses where we need to "quietly" enroll people for a course not tied to our SIS.
Creating accounts is a different issue can can be solved in a similar manner if needed by uploading a users.csv file also referenced on that page.
Good luck,
Rick
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.