tom_lamy
Community Novice

Courses and Sections

Hi, I am creating and testing API calls to delete and undelete courses for our SIS integration. I can delete courses, undelete courses, I can reset the sis_course_id from a cross-walk table I have, but so far I cannot restore the corresponding course section. I'm getting "The specified resource does not exist." I tried to recreate the section, but the system is telling me SIS ID is already in use. Does anyone know how to restore the corresponding section of a course with an API call?

Thank you -

Tags (2)
5 Replies
tyler_clair
Community Champion

Hi Thomas,

with the POST command to create a section there is a parameter called enable_sis_reactivation which if set to True will restore a previously deleted section using the SIS data https://canvas.instructure.com/doc/api/sections.html#method.sections.create​. I have used this sis_reactivation alot with users I think you can just use that parameter alone without any other information and it may work, I haven't tested it yet but give it a try and see if it works for you.

Best,

Tyler

Hi Tyler,

That great info. Is there any chance I could see an example of your API call to enable_sis_reactivation for a user?

Thank you.

reactivate_user.png

Here is a screenshot of the call restoring a test student I make in Postman. The two things I add in extra are the communication_channel[skip_confirmation] and enable_sis_reactivation. Those I set to True. The skip confirmation is for instances where the user may not have been in the system originally and the account will get created without notifying them. I use this often because previous recruitment processes caused anyone that applied, regardless if they actually attended, to get a student account that was then automatically fed into Canvas. So I cleaned them out but in some cases later on the account would have to be restored, and I use this method for quickly reactivating their account.

Best,

Tyler

Tyler,

How do you connect with Postman?

0 Kudos

In the Headers tab the key is Authorization and the value is Bearer {token} that will allow you to send API requests from Postman. If you don't have postman you can get it at https://www.getpostman.com/

postman_headers.png

There is the live API docs (https://{instance}.instructure.com/doc/api/live​) that will work when you paste your token at the top but I have used Postman for years and I am very partial to it.

0 Kudos