Integrating Cadmus + D2L Brightspace

Follow these steps to integrate Cadmus as an external tool in D2L Brightspace using LTI 1.3

Cadmus supports the following LTI 1.3 enabled integrations:

  1. Launching into Cadmus as a configured external LTI Tool / Application. 

  2. Grade pass-back through the LTI 1.3 Assignment and Grade Services.

  3. LTI Membership service (Names and Role Provisioning Services) for Student list synchronisation between Cadmus and the LMS.

Cadmus supports the following REST API enabled integrations:

    1. Syncing Brightspace groups as Cadmus marking groups

To integrate Cadmus and D2L Brightspace, you will need to:

  1. Register Cadmus as an External Tool
  2. Deploy Cadmus as an External Learning Tool
  3. Add a REST API Client for Cadmus usage
  4. Share keys with Cadmus

The Client ID and Deployment ID generated through this process must be shared with Cadmus to complete the integration.

 

Stage 1: Register Cadmus as an External Tool

Begin by creating a new Developer Key for Cadmus. This will configure the LTI 1.3 OAuth2 settings, and generate a Client ID for the Cadmus Tool in your LMS.

  1. Log into D2L Brightspace as an administrator.
  2. From the Admin Tools menu, click Manage Extensibility.

  3. In the LTI Advantage tab, click Register Tool.

    d2l-1@2x

  4. Choose Standard registration, and input the following fields:

    Name

    Cadmus LTI 1.3

    Domain

    https://api.cadmus.io

    Redirect URLs

    https://api.cadmus.io/accounts/lti1p3/launch

    OpenID Connect Login URL

    https://api.cadmus.io/accounts/lti1p3/login

    Keyset URL

    https://api.cadmus.io/accounts/lti1p3/jwks
  5. Under Extensions, select the following:
    • Assessment & Grade Service
    • Names & Roles Provisioning Service
  6. Under Roles, select Send Institution Role.
  7. Click Register.
  8. Under the Brightspace Registration Details, you will find the unique IDs and URLs for the tool.
  9. Record or copy all details — you will need to share these with Cadmus.

    d2l-2@2x

 

Stage 2: Deploy Cadmus as an external learning tool

Now that Cadmus has been registered as an external learning tool, you will need to deploy it for academics to use.

  1. From the Admin Tools menu, click External Learning Tools.
  2. In the LTI Advantage tab, click New Deployment.

    d2l-5@2x

  3. From the tool drop-down list, select Cadmus LTI 1.3.
  4. Input the following fields:

    Name

    Cadmus

    Description

    Create a Cadmus assessment
  5. Under Extensions, select the following:
    • Assessment & Grade Service
    • Names & Roles Provisioning Service
  6. Under Security, select the following:
    • Org Unit Information
    • User Information (Name, Email, User ID, Username, Ord Defined ID)
    • Link Information (Title, Description)
    • Classlist including users not known to this deployment
    d2l-3@2x

  7. Click Add Org Units and select the units in which you would like to make Cadmus avaliable.

  8. Click Create Deployment.

  9. Under the Brightspace Deployment Details, you will find your Deployment ID.

    d2l-4@2x

  10. Record or copy the Deployment ID — you will need to share this with Cadmus.

Stage 3: Add a REST API Client for Cadmus usage

Additional integration functionality not accessible via LTI 1.3 can be enabled by providing Cadmus with D2L REST API access via OAuth2. The credentials are created as a D2L REST API client.

The previously created LTI 1.3 Client is independent of an REST API Client Key. The LTI Key's Client ID creates an LTI 1.3 link between Cadmus and Brightspace. The API Key is needed to enable deeper integration with Brightspace. The LTI Key is still the primary key needed to connect Cadmus and Brightspace.

Begin by creating a new Developer Key (API Key) for Cadmus. This will generate OAuth2 credentials which Cadmus can use to access user data on request. The credentials include a Client ID and a Client Secret.


1. Navigate to Brightspace’s Manage Extensibility Tool page via the Admin tools.

2. Select OAuth 2.0 tab to create an OAuth 2.0 App.

3. Click on Register an app.

4. Input the following Key Settings:

Application Name 

Cadmus Platform

Or any preferred name.

Redirect URIs (Please note these are location-specific)

Region URL
AU
https://api.cadmus.io/cadmus/auth/callback
UK
https://api.cadmus.io/cadmus/auth/callback

Scopes

groups:group:read

 

Access Token Lifetime (seconds)

Can use default 3600 or more.n

 

5. Click Save to confirm these settings.


6. On saving the details, you will get the details that can be copied and shared:

Application Name
Cadmus Platform

Client ID
xxxxxxx-xxxx-xxxx-xxxxx-xxxxxxxxxx

Client Secret
X_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Description

Redirect URI
<https://api.cadmus.io/cadmus/auth/callback>

Access Token Lifetime (seconds)
3600

Scope
groups:group:read

Prompt For User Consent?
true

Enable refresh tokens
true

7. Record or copy this API Client ID and API Client Secret — you will need to share these keys with us.

Stage 4: Share keys with Cadmus

To complete the integration process in Brightspace, you will need to share some important details with Cadmus. We will use this information to identify and authenticate your integration.

Please email all configuration details to admin@cadmus.io:


LTI 1.3 Client
  • Client ID
  • Brightspace Keyset URL
  • Brightspace OAuth2 Access Token URL
  • OpenID Connect Authentication Endpoint
  • Brightspace OAuth2 Audience
  • Issuer
  • Deployment ID
  • D2L URL of your institution
  • D2L Launch Environment: [ Production, Beta or Test ]

REST API Client (optional)
  • Client ID
  • Client Secret