Variable Custom Launch Parameters in LTI 1.3
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We have a vendor who wants us to create developer keys for each member institution, but the actual difference between each key is in a single custom parameter. Everything else is the same. Across 23 colleges, I'm looking at 90 developer keys (and deployments) for just one variable. Getting the vendor to change would be an uphill task.
I was investigating whether I could somehow hijack or insert that value using a custom parameter, but as best I can tell, you can do no operations on variable substitutions other than concatenation - https://canvas.instructure.com/doc/api/file.tools_variable_substitutions.html
e.g. we do this for Zoom LTI
zoomEmail=${Canvas.user.loginId}@ourdomain.edu
Is there a variable that I can access that varies based on context and is not in use? Something like course code or account name, but clearly those are in use.
vendorAttribute1=$Canvas.account.name
vendorAttribute2=$Canvas.course.sisSourceId
vendorAttribute3=$com.instructure.contextLabel
The ${variable} syntax looks like a JavaScript template string, but I have only skimmed the underlying code to see if that would hold up. I don't think it would. Brief testing indicates not.