D2L Integration

February 1, 2017 Rex McWilliams

1. Login to D2L as an Administrator.

Creating the Service Account Role

We will need to create a service account that acts as an intermediary between our API and the LMS. Creating the role is the first step in the process.

1. Click the Cog Wheel at the top-right of the page. Select Roles and Permissions.

2. Click Create / Copy.

3. Click Start Fresh.

4. Name the role "ExamSoft SVC" and match the settings as shown in the screenshots.

5. Return the Roles and Permissions screen. Click the drop-down arrow next to the role you created ("ExamSoft SVC"), and click Import Permissions.

6. From a new tab or window, navigate to getbrightspace.examsoft.com

a. Click 1.0.0 to navigate to the file.

b. Right-Click on the file "ExamSoft Service Account Permissions.txt", and select Save Link As to download the file to a location on your computer.

7. Return to the Import Permissions screen. Click Choose File.

8. Select the file that was just downloaded, and click Open.

9. Click Next to import the permissions file

Please note, if you are using a custom role for users within a course, you may need to add the permissions to the Service Account to allow our API to search for the custom role. It should match the same fields as the student account on your D2L side.

Creating the Service Account User

1. Click the Cog Wheel at the top-right of the page. Select Users.

2. Click New User.

3. Match the settings as shown in the screenshot. Note, if the role you created is not visible, you may need to edit the permissions.

Registering ExamSoft API as an App

This step is necessary in order for the ExamSoft API to get information from the LMS.

1. Click the Cog Wheel at the top-right of the page. Select Manage Extensibility

2) Click Register an App.

3. Enter "ExamSoft" as the Application Name.

4. Enter the API Test Tool URL as the Trusted URL [https://apitesttool.desire2learnvalence.com].

5. Check the Enable this Application and accept the Non-Commercial Developer Agreement boxes.

6. Copy both the Application ID, the Application Key, and the Trusted URL, and store them temporarily in a Notepad or Word document.

Impersonating the Service Account

This step is necessary in order to make sure we get correct access to the system, which is crucial for the integration to work.

1. Click the Cog Wheel at the top-right of the page. Select Users.

2. Search for "ExamSoft SVC" (the name of the account you'd created earlier)

3. Click the drop-down arrow next to the user, and click Impersonate User.

4. Click Yes when prompted, logging you in as the user.

5. Navigate to the API Test Tool.

Use the API Test Tool to retrieve a User ID and User Key

1. In the Host field, paste the URL for the D2L instance that you'd copied earlier.

2. In the App ID and App Key fields, paste the respective values that you'd copied earlier.

3. Click Authenticate.

4. You will be asked to allow ExamSoft to access your information. Click Continue on the screen.

5. Copy the User ID and User Key, and store for later use.

Setup the Course

1. Select any course. Navigate to the Content section.

2. From the the Content tab, click Add a Module, and type "ExamSoft" as the name  for your new module.

3. Within that module, click Add Existing Activities, then click External Learning Tools.

4. Click Manage External Tools. On the next screen, click New Link.

On the next screen, add a title for the tool. Add the ExamSoft Key and Secret Key that can be provided by your Customer Success Specialist. Match the security settings.

6. Click the drop-down arrow next to the item you just created, and click Edit Properties in place.

a. Ensure that the box marked as Open as External Resource is checked.

8. Click the name of the item, and it will launch the API.

Configuring the API

1. Fill in the App IDApp KeyUser ID, and User Key with all of the respective values from the API Test Tool. Also, select the desired Course and User ID types from their respective drop-down menus. If you're using SAML, check the box to Enable SAML. Select your SAML ID type from the drop-down menu. Click Save at the bottom of this page.

2. Select your Course ID type and User ID type within the fields below. If you're using SAML, check the Enable SAML box, and choose your SAML ID type from the drop-down menu.

3. On page 2, you will verify that the Key and Shared Secret are filled in. Check that the Integration Endpoint is listed as:
https://esintegration.examsoft.com/ESIntegration/ESIntegrationService.svc
 

4. On page 3, you will see the area where you can add courses to the Sync List. To sync courses, you will need to provide a list of Course IDs in the Course ID List box. You will use whatever ID type that you selected in Step 4. You can add multiple IDs by separating them with commas, or you can use the CSV option to import a list of courses. When the courses are added in the list, click Save at the bottom of the page, and the course will be added into the sync list. Note, the courses included in the list will dictate which courses and students are synced to your ExamSoft Portal.

4. On page 4, you will see the role names of the user types. For both instructors and students, you will need to indicate which role ExamSoft should be referencing. Unless you are using custom roles within D2L, you should enter "Instructor" in the Instructor field, and "Student" in the Exam Taker field. If you are using custom roles, please add the custom roles to each respective field.

5. Once completed, click Save. You can prompt an immediate sync by navigating back to the Course tab, and selecting Sync Now. Note that this process can take up to 10 minutes to complete.

6. If you would like to schedule a sync to occur on a daily basis, open your ExamSoft Portal. Select Admin, then select Global Settings. On this page, select LMS Settings. Here, you will choose the time for the automatic sync to occur. Note that this feature must be configured by the ExamSoft Key Administrator.

Previous Article
Moodle Integration
Moodle Integration

Next QRG
SofTest and Lab Management System Integration
SofTest and Lab Management System Integration

Lab Management Systems are applications that institutions use to manage lab computers and restore installat...