How to tell when LTI 1.3 launch is coming from Module?

FunkyPajamas
Community Explorer

Hi,

I'm doing an LTI 1.3 LtiDeepLinkingRequest from Canvas into my tool. When I was working with the canvas.docker environment, I could check the return_url for "context_module" querystring and determine that the launch was coming from a module instead of the rich editor or an assignment. Once I moved to a production environment, Canvas stopped sending that variable (just getting a "data" querystring instead).

I then tried using variable substitution with "$Canvas.module.id" and "$Canvas.moduleItem.id" but that's just coming as the same variable names, meaning they're blank, even when the LtiDeepLinkingRequest is coming from a Module.

The variable substitution documentation states:

====

Canvas.module.id
Returns the module_id that the module item was launched from.

Availability: when content tag is present

====

What is a "content tag"? I can't find that anywhere in the LTI 1.3 documentation or Canvas' own documentation. How do I make it so the "content tag" is present when launching an LtiDeepLinkingRequest from a Module, or what is the best way to determine when an LtiDeepLinkingRequest is coming from a Module vs an Assignment?

Thanks.

Labels (4)
0 Likes