-
Notifications
You must be signed in to change notification settings - Fork 95
Description
Problem
I tired to integrate an LTI 1.3 tool named Ed Lessons in Ulmo sandbox. The integration worked but deep linking did NOT work. As seen in the screenshot below, user sees the message "There are no lessons that you can select from".
On the call with Ed stem's LTI dev, we figured out the reason: deep linking launch is NOT sharing context. Ed Lessons needs this to determine which courses they need to show in the deep linking launch.
As per the standard (link), context claim is optional. Here's what a sample context claim looks like.
"https://purl.imsglobal.org/spec/lti/claim/context": { "id": "c1d887f0-a1a3-4bca-ae25-c375edcc131a", "label": "ECON 101", "title": "Economics as a Social Science", "type": ["CourseOffering"] },
Suggestion
We add context claim in deep linking launch as specified in the standard. This will enable tools like Ed Lessons to use course ID from Open edX platform.
Resources
Link to course unit in Studio where you can try deep linking launch with Ed Lessons: https://apps.ulmo.openedx.io/authoring/course/course-v1:OpenedX+M101+2026/container/block-v1:OpenedX+M101+2026+type@vertical+block@0cdf61069fe141dd97c665f657554188/block-v1:OpenedX+M101+2026+type@sequential+block@d465b5c514f54c15b9d74d2ea63b91bc
Here's the decode id_token from deep linking launch:
{ "https://purl.imsglobal.org/spec/lti/claim/message_type": "LtiDeepLinkingRequest", "https://purl.imsglobal.org/spec/lti/claim/version": "1.3.0", "iss": "https://ulmo.openedx.io", "aud": _removed_, "azp": _removed_, "https://purl.imsglobal.org/spec/lti/claim/deployment_id": "1", "https://purl.imsglobal.org/spec/lti/claim/target_link_uri": "https://us.edstem.org/api/lti/launch?tool=lessons", "sub": _removed_, "https://purl.imsglobal.org/spec/lti/claim/roles": [ "http://purl.imsglobal.org/vocab/lis/v2/institution/person#Instructor" ], "name": "admin", "email": "aayub@axim.org", "preferred_username": "admin_aayub", "https://purl.imsglobal.org/spec/lti/claim/resource_link": { "id": "block-v1:OpenedX+M101+2026+type@lti_consumer+block@9dbb3c27462b4491986501d37cce7cfb" }, "https://purl.imsglobal.org/spec/lti-dl/claim/deep_linking_settings": { "accept_types": [ "ltiResourceLink", "link", "html", "image" ], "accept_presentation_document_targets": [ "iframe", "window", "embed" ], "accept_multiple": true, "auto_create": true, "title": "", "text": "", "deep_link_return_url": "https://ulmo.openedx.io/api/lti_consumer/v1/lti/20/lti-dl/response" }, "nonce": _removed_, "iat"_removed_, "exp":_removed_ }