Enrolling multiple Users to Course through Canvas API

Jump to solution
Community Member

Is there any possibility of enrolling multiple users to a course through Canvas live APIs.
If yes , How to do that ?

2 Solutions
Community Coach
Community Coach


Yes 😀 you can use this endpoint to enroll a user to a course: https://canvas.instructure.com/doc/api/enrollments.html#method.enrollments_api.create

There are several ways you can archive this:

  • Writing a script to iterate through a list of users

The easiest to implement this script is using a Spreadsheet program (E.g. Google Sheets if you are familiar with Javascript, or Microsoft Excel using VBA)

  • Using an API development tool

Tools like Postman allow you to test the API Endpoint without having to write any script.

  • Low-code solution

My favorite low-code solution is an open-source software called n8n, you can follow my guide here to set it up: https://community.canvaslms.com/t5/Canvas-Developers-Group/Automate-Canvas-with-n8n/ba-p/585337

This software allows you to create a workflow (Via a GUI interface) with multiple actions (E.g Input a CSV with a list of users -> iterate through the list -> call the API endpoint to enroll users)

Please let me know if you need help with any of the above methods.

View solution in original post


You will need to make multiple API calls to that endpoint. This is achievable by writing a script to iterate through a list of users, or using a low-code solution as I've described above.

Another way to bulk enroll users is to do an SIS Import through Canvas UI

View solution in original post