Canvas LTI
Note
This integration requires an Angstroma Enterprise plan and Canvas Admin access to register Developer Keys.
Angstroma integrates with Canvas LMS via LTI 1.3 — the current IMS Global standard for external tool integrations. Once installed, every student in the course sees an Accessibility Tools link in the course navigation that loads their personal accessibility toolbar inside Canvas.
How it works
- Canvas sends a signed LTI launch JWT to Angstroma when a student opens the tool
- Angstroma validates the JWT and extracts the Canvas user ID and course context
- The student's accessibility profile is loaded and features applied in the Canvas iframe
- Feature usage is logged back to your Angstroma analytics
Step 1 — Register in Canvas Admin
Go to Canvas Admin → Developer Keys → Add Developer Key → Add LTI Key and fill in the following values:
| Field | Value |
|---|---|
| Redirect URIs | https://api.angstroma.com/api/lti/launch |
| Target Link URI | https://api.angstroma.com/api/lti/launch |
| OpenID Connect Initiation URL | https://api.angstroma.com/api/lti/login |
| JWK Method | Public JWK URL |
| Public JWK URL | https://api.angstroma.com/api/lti/jwks |
After saving, enable the Developer Key and note the Client ID — you'll need it in the next step.
Step 2 — Configure your Angstroma account
In the Angstroma Portal, go to Settings → Integrations → Canvas LTI and enter:
- Your Canvas platform URL (e.g.
https://school.instructure.com) - The Client ID from step 1
- The Deployment ID (from Canvas after adding the tool to an account/course)
Step 3 — Install in Canvas
After enabling the Developer Key, add the tool to an account or course:
- Go to Account/Course Settings → Apps → +App
- Select By Client ID
- Enter the Client ID and click Submit
Students will see Accessibility Tools in course navigation.
LTI configuration reference
The full LTI 1.3 tool configuration in Canvas JSON format:
Warning
Privacy is set to
public so Canvas includes the user ID with each launch. Canvas may also send name, email, and course context — Angstroma discards those fields at the ingestion boundary and stores only the opaque Canvas user ID as the external student identifier. No student names, emails, or course metadata are persisted. See our Privacy Policy §12 and FERPA page for full data handling.Important
Schools / Enterprise plan required. The LTI 1.3 integration is gated to the Schools and Enterprise tiers and activates only after a signed Data Processing Agreement is on file. Attempts to launch without an active DPA return a 403 with the controlling FERPA / COPPA citation. See the Schools overview.