About the integration
DataCamp supports integration with Canvas via LTI 1.3 (Learning Tools Interoperability). This integration allows your institution to:
- Use Deep Linking to embed DataCamp content directly in Canvas.
- Sync completions through the Assignments and Grade Services (AGS) standard.
With this setup, learners can launch DataCamp content from Canvas, and their completions can be reflected in the Canvas gradebook.
Deep Linking
With Deep Linking, Canvas admins or instructors can browse DataCamp content from within Canvas and add them into their course modules.
To use Deep Linking, the user must be an admin, manager, or team manager in the DataCamp group.
The supported content types are:
- Courses
- Projects
- Assessments
- Practices
- Tracks
- Custom tracks
- Certifications
Currently, we support using DataCamp content as Assignments in Canvas. After you set up the integration, within a course when adding a new assignment, select "External Tool" as the Submission Type and choose DataCamp from the configured tools.
Creating a new assignment
You'll be shown a catalog page where you can select a content item from DataCamp from the available content types. After selecting a content item, always select “Load in New Tab”. DataCamp courses must open in a new browser tab rather than inside an iframe, this is because our content is highly interactive, involving videos and live coding exercises that must be taken within our platform.
The final step of embedding DataCamp content
Assignment and Grading
The integration uses Assignments and Grade Services (AGS) to sync completions:
- When a learner completes a DataCamp course, the completion is immediately sent back to Canvas.
- The corresponding Canvas assignment is marked as complete for the user. The score is hardcoded to 100 out of 100.
This ensures that Canvas instructors can easily track learner progress on DataCamp content.
A learner must first launch the content item from Canvas for the grade to be recorded. The content can still be completed on DataCamp at a later time, and we will send the completion, but the course must always be launched from Canvas first.
Below is a screenshot of the instructor's view of the grades of several Datacamp assignments within their course:
Instructor's view of the gradebook of their course
Student view of their grades in the course
User provisioning
DataCamp uses Just-in-time (JIT) provisioning for learners launching from Canvas. When a learner clicks a DataCamp course in Canvas, if they don’t already have a DataCamp account, one is created instantly and they will be added, with the highest available license, to the organization in DataCamp.
With JIT provisioning, learners can move from Canvas into DataCamp seamlessly, without any extra steps.
Pre-requisites
In order to set up an integration with LTI, the following requirements must be met:
- You must have access to an active Canvas LMS instance
- You must have an active enterprise subscription on DataCamp
- You must have admin privileges on the Canvas LMS instance
- You must have Admin, Manager, or Team Manager role in your DataCamp subscription
Setup
Step 1: Receive & prepare necessary information
As a first step, you’ll need to gather some information to provide us, as well as receive information from us.
Receive the following information from your DataCamp point of contact:
- Public JWK URL
- Redirect URIs
Prepare the following information to provide to DataCamp:
- URL of your Canvas instance
- To verify the Canvas URL, visit:
https://<your-canvas-url>/api/lti/security/jwks-- you should see a JSON response with keys.
- To verify the Canvas URL, visit:
Step 2: Create a Developer Key in Canvas
In the Canvas Admin panel, go to Developer Keys.
Click + Developer Key and select LTI Key.
Fill in the form with the following values:
- Key Name: DataCamp
- Configure Method: Manual Entry
- Title: DataCamp
- Description: DataCamp LTI Integration
- Target Link URI: https://lms-api.datacamp.com/lti/launch
- OpenID Connect Initiation URL: https://lms-api.datacamp.com/lti/oidc/initiate
- JWK Method: Public JWK URL
- Public JWK URL: Provided by DataCamp
- Redirect URIs: Provided by DataCamp
Enable LTI Advantage Services
Please enable the following options:
- Can create and view assignment data in the gradebook associated with the tool
- Can view assignment data in the gradebook associated with the tool
- Can view submission data for assignments associated with the tool
- Can create and update submission results for assignments associated with the tool
- Can retrieve user data associated with the context the tool is installed in
- Can update public JWK for LTI services
Additional Settings
- Privacy Level: Public
Placements
- Link Selection → Message Type: LtiDeepLinkingRequest | Height: 1000 | Width: 1300
- Assignment Selection → Message Type: LtiDeepLinkingRequest | Height: 1000 | Width: 1300
Save the configuration.
Copy the Client ID and Client Secret.
Step 3: Install the App in Canvas
In the Canvas Admin panel, go to Settings > Apps. Click +App.
Under Configuration Type, select By Client ID and enter the Client ID you copied earlier. Click Submit, then Install.
Open the app’s settings and copy the Deployment ID.
Find and copy the Deployment ID after installing the app
Step 4: Share details with DataCamp
Please provide your DataCamp contact with:
- Client ID
- Client Secret (if applicable)
- This is not provided in some newer versions of Canvas. In this case, you can leave this out from the details.
- Deployment ID
- URL of your Canvas instance
- To verify the Canvas URL, visit:
https://<your-canvas-url>/api/lti/security/jwks-- you should see a JSON response with keys.
- To verify the Canvas URL, visit:
Step 5: Test the integration
Once enabled by DataCamp, test the setup by embedding a DataCamp course into Canvas using Deep Linking.
⚠️ Always select “Load in New Tab” when embedding DataCamp content.
When launching the embedded course, you should be redirected seamlessly to DataCamp, already logged in, and taken directly to the selected piece of content.
FAQ
Why can’t DataCamp content be embedded in an iframe inside Canvas?
DataCamp courses are interactive and cannot be packaged or served from another platform. Our courses combine video with live coding exercises that only run on the DataCamp platform. For this reason, all content must be set to “Load in New Tab” when embedded in Canvas.
Note: Deep Linking can (and will) be performed in an iframe.
Can learners access DataCamp directly if they were provisioned through Canvas?
Yes, but only after setting a password via the "Forgot my password" feature. This is because accounts created via Canvas through JIT provisioning do not initially have a password.
What if a learner has already completed a DataCamp course that I have added to my Canvas course?
The learner needs to only launch the course once from Canvas and we will immediately send the completion to Canvas, which will mark the course as completed. They will not have to re-complete the course on DataCamp.
Can I set up LTI with Dynamic Registration?
Dynamic registration is not supported at the moment.