LMS - D2L Brightspace (OAuth)

LMS - D2L Brightspace (OAuth)

Table of Contents

Client D2L Configuration

  1. In D2L, navigate to Settings → Manage Extensibility → OAuth 2.0, then register a new OAuth 2.0 application

  2. Set redirect URL as https://[school].service.campusgroups.com/academics/v1/callback  where [school] is the school code provided by Ready Education. If you are unable to locate your school code, please check with your Implementation Manager.

  3. SCOPES: Set scopes as follows: With a de-duplicated list of:
    core:*:* calendar:access:read content:access:read dropbox:folders:read enrollment:orgunit:read enrollment:own_enrollment:read grades:gradeobjects:read grades:own_grades:read news:newsitems:read orgunits:course:read quizzing:quizzes:read users:own_profile:read users:profile:read users:userdata:read

#

Scope

API Endpoint

#

Scope

API Endpoint

1

enrollment:own_enrollment:read

/d2l/api/lp/(version)/enrollments/myenrollments/ [GET]

2

orgunits:course:read

/d2l/api/lp/(version)/courses/(orgUnitId) [GET]

3

enrollment:orgunit:read

/d2l/api/le/(version)/(orgUnitId)/classlist/ [GET]

4

users:userdata:read

/d2l/api/lp/(version)/users/(userId) [GET]

5

news:newsitems:read

/d2l/api/le/(version)/(orgUnitId)/news/ [GET]

6

dropbox:folders:read

/d2l/api/le/(version)/(orgUnitId)/dropbox/folders/ [GET]

7

grades:gradeobjects:read

/d2l/api/le/(version)/(orgUnitId)/grades/ [GET]

8

grades:own_grades:read

/d2l/api/le/(version)/(orgUnitId)/grades/values/myGradeValues/ [GET]

9

grades:own_grades:read

/d2l/api/le/(version)/(orgUnitId)/grades/(gradeObjectId)/values/myGradeValue [GET]

10

enrollment:orgunit:read

/d2l/api/lp/(version)/enrollments/orgUnits/(orgUnitId)/users/(userId) [GET]

11

users:userdata:read

/d2l/api/lp/(version)/users/ [GET]

12

core:*:*

/d2l/api/le/(version)/calendar/events/myEvents/ [GET]

13

quizzing:quizzes:read

/d2l/api/le/(version)/(orgUnitId)/quizzes/ [GET]

14

users:profile:read users:own_profile:read

/d2l/api/lp/(version)/users/whoami [GET]

15

calendar:access:read

(though this is also not being used by our D2L, hence needing the fall-back core wildcard)

/d2l/api/le/(version)/(orgUnitId)/calendar/event/(eventId)/access/

  1. Set token expiry to 3600

  2. Enable Refresh Token as true

  3. Enroll a test user (who is also enrolled in the same course in your SIS) - provide Ready with test user’s SSO credentials

  4. PERMISSIONS: Note that certain permissions may be beyond what might be set by default:

    1. Apply the below permissions to whichever role your students are enrolled under (commonly named “Learner” or “Student”).

      1. In D2L, navigate to Settings → Roles and Permissions, select the appropriate role, and apply the following permissions.

      2. classlist > has access to classlist (in order to see the roster). This is required for the classlist API to return data successfully, allowing Rosters to display in your CampusGroups platform

      3. user information privacy > see usernames. This is required to allow the API to include Username in the response. Without this permission we cannot match LMS Users to their CampusGroups profile.
        course management console > see course info (in order to see course description within Ready Campus)

      4. In D2L, navigate to Settings → Config Variable Browser, search for d2l.Tools.Classlist.DisplayUsername(OrgUnit), and ensure it is enabled.
        This is required to show the username in the API response, which is how we do profile matching.

        image-20250410-100550.png

Provide the following information to your Technical Consultant

Provide the following information to your Implementation Project Manager

  1. Client ID

  2. Client Secret

  3. D2L Base URL

  4. Test user credentials as listed here: Test User and Test Data Requirements

Please send these requirements to integrations@readyeducation.com to create a ticket.