AnsweredAssumed Answered

Using REST API For All User Creation and Updating

Question asked by bruce.phillips on May 11, 2017
Latest reply on Sep 25, 2017 by ja29127

My school currently uses the Command Line SnapShot tool to create and update all Blackboard Learn users.  Since the next release of Blackboard Learn will no longer support the SnapShot tool I'm researching what method we should change to for user creation and updating.

 

We have approximately 56,000 Blackboard users.  Once a day we create a file of users who are authorized Blackboard (all 56,000) and run that file using the SnapShot tool.  Blackboard figures out which users are new and which users need to have their data update.  The entire process takes about 30 minutes.  This process has worked very well for us for the past 5 years. (NOTE - we currently do not delete users)

 

I've researched the SIS Integration Flat File method ( https://help.blackboard.com/Learn/Administrator/Hosting/System_Integration/SIS/SIS_Integration_Types/Snapshot_Flat_File ) as a possible new way of creating and updating our Blackboard users. 

 

My Director of IT has also asked me to research the new REST APIs as a more real time solution for creating and updating users.

 

If anyone could provide some general feedback on using the REST APIs as the primary method of creating and updating Blackboard users that would be very helpful. 

 

Some specific questions I have after reviewing the REST API documentation:

 

1.   Do we need to do a separate post request for each new user?

 

2.  How well does this REST API handle large volume of requests - e.g. creating 1,000 new users in a very short time period?

 

3.  Do we need to do a separate patch request for each user being updated? 

 

4.  How well does this REST API handle large volume of requests - e.g. updating 1,000 users in a very short time period?

 

My general concept for how we could use the REST APIs as our primary method of creating and updating Blackboard Learn users is (note all of our people are managed by our identity management [IDM] system)

 

1.  A new person is created in our IDM system and that person is authorized to use Blackboard

     a.  IDM system sends a message to our new middleware application (this application is authorized to use the Blackboard Learn REST APIs)

     b.  Middleware application creates and posts the request to /learn/api/public/v1/users and handles the response

     c.  Middleware application logs the post request and response

     d.  Middleware application sends email to person with information about using Blackboard

 

2.  An existing person who is authorized to use Blackboard has a data item updated (e.g. email address) that is also a Blackboard Learn user data item

     a.  IDM system sends a message to our new middleware application (this application is authorized to use the Blackboard Learn REST APIs)

     b.  Middleware application creates and patches the request to /learn/api/public/v1/users/{userid} and handles the response

     c.  Middleware application logs the patch request and response

     d.  Middleware application sends email to person informing him/her what information in Blackboard was updated

 

Any feedback on this concept would be appreciated.

 

Thank you in advance for your response.

 

Bruce Phillips

University of Kansas

Outcomes