Found this content helpful? Log in or sign up to leave a like!
How to retrieve student group membership via LTI 1.3 for external tools?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
a week ago
I'm developing an LTI 1.3 tool integrated with Canvas and need to programmatically determine which group(s) a student belongs to when they launch the tool. I've tried several approaches without success:
What I've tried:
- Custom variable substitutions - Added
$Canvas.group.id and
$Canvas.group.name to my LTI configuration, but these only return literal strings like "$Canvas.group.id" rather than actual values (launching from course navigation, not group navigation)
- Names and Role Provisioning Service (NRPS) - Enabled the "Can retrieve user data associated with the context" scope and successfully call the NRPS endpoint, but the response doesn't include any group information in the members array (no
groups field or LTI Groups Service claims)
- LTI Groups Service scope - There's no UI option in Canvas to enable
https://purl.imsglobal.org/spec/lti-gs/scope/contextgroup.readonly
My questions:
- Does Canvas support the LTI 1.3 Groups Service specification, and if so, how do I enable it?
- Should NRPS responses include group membership data? If yes, what configuration is needed?
- Are the
$Canvas.group.id custom variables only populated when launching from group navigation placement (not course navigation)?
- Is there a recommended approach for LTI tools to access student group membership without using Canvas API tokens?
My setup:
- Canvas LMS (cloud hosted)
- LTI 1.3 tool with course navigation placement
- Groups are properly configured in courses with students assigned