Canvas LMS Setup Guide
For IT Administrators: This guide walks you through integrating DebaterHub with your Canvas LMS instance.
Time Required: ~30 minutes Access Required: Canvas Admin
Overview
DebaterHub integrates with Canvas LMS using:
- LTI 1.3 for secure launch and user authentication
- OAuth 2.0 for grade passback to the Canvas gradebook
No code changes, plugins, or server modifications are required on your Canvas instance.
What You'll Configure
| Component | Purpose | Required |
|---|---|---|
| LTI Developer Key | Secure tool launch | Yes |
| OAuth Developer Key | Grade passback | Yes (for graded assignments) |
| Course Placements | Where tool appears | Yes |
Part 1: LTI 1.3 Configuration
Step 1.1: Create LTI Developer Key
- Go to Admin > Developer Keys
- Click + Developer Key > LTI Key
- Configure the key:
Key Name: DebaterHub
Owner Email: your-admin@university.edu
Redirect URIs: https://app.my-desk.ai/canvas/callback
Step 1.2: Configure Tool Settings
In the LTI Key configuration:
| Field | Value |
|---|---|
| Title | DebaterHub |
| Description | AI-powered reading comprehension and learning |
| Target Link URI | https://app.my-desk.ai/canvas/launch |
| OpenID Connect Initiation URL | https://app.my-desk.ai/canvas/login |
| JWK Method | Public JWK URL |
| Public JWK URL | https://app.my-desk.ai/.well-known/jwks.json |
Step 1.3: Configure Placements
Enable these placements:
- Course Navigation - Adds "DebaterHub" to course sidebar
- Assignment Selection - Allows creating DebaterHub assignments
Step 1.4: Enable and Copy Credentials
- Click Save
- Set the key state to ON
- Copy the Client ID (you'll need this)
Part 2: OAuth 2.0 Configuration (Grade Passback)
Step 2.1: Create OAuth Developer Key
- Go to Admin > Developer Keys
- Click + Developer Key > API Key
- Configure:
Key Name: DebaterHub Grade Sync
Owner Email: your-admin@university.edu
Redirect URI: https://app.my-desk.ai/canvas/oauth/callback
Step 2.2: Required Scopes
Enable these scopes:
url:GET|/api/v1/courses/:course_id/assignments
url:GET|/api/v1/courses/:course_id/assignments/:assignment_id
url:PUT|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id
Step 2.3: Enable and Copy Credentials
- Click Save
- Set the key state to ON
- Copy the Client ID and Client Secret
Part 3: Complete Setup with DebaterHub
Step 3.1: Enter Credentials in DebaterHub
- Log in to DebaterHub as an admin
- Go to Settings > Integrations > Canvas
- Enter your Canvas domain:
https://yourschool.instructure.com - Enter the LTI Client ID
- Enter the OAuth Client ID and Secret
- Click Verify & Save
Step 3.2: Test the Integration
- Create a test course in Canvas
- Navigate to Settings > Apps > View App Configurations
- Click + App and search for "DebaterHub"
- Add the tool to your course
- Click "DebaterHub" in the course navigation to launch
Part 4: Verification Checklist
- LTI launch opens DebaterHub correctly
- User name and role are passed correctly
- Grade passback updates Canvas gradebook
- Students see their assignments
Security Notes
- All communication uses TLS 1.3
- Tokens are stored encrypted
- No Canvas data is stored permanently
- Grade data is transmitted in real-time
Next Steps
- Troubleshooting Guide - Common issues and fixes
- FAQ - Frequently asked questions
Support
Technical Support: support@my-desk.ai