Where do I find LTI parameters for a 3rd party / vendor?

Jump to solution
svarney
Community Novice

Hello!

We're fairly new to Canvas, and have installed an LTI tool for What Do You Think? course evaluation. Having installed the LTI tool we get a message saying our institution isn't configured. We contacted their support and they have said it's something they need to set up on their side. However, before they can do so they asked for this information:

  • What is the name of the LTI parameter for the email or SIS ID
  • Optionally, what is the LTI parameter for the Source Course ID

I have absolutely no idea where I can find this. I looked online at the Canvas docs but haven't really been able to figure out what they're looking for. They said that we were their first Canvas institution, and only provided this for which I am paraphrasing:

"What we receive from Canvas is pretty much just a big long piece of text. Like, "lis_person_contact_email_primary=yourEmail@domain.com, lis_person_name_given=YourFirstName, lis_person_name_family=YourLastName," and so on. We need to know which of those parameters to pull data from for specific purposes, so we know where to insert it in our end and how to make use of what we've received. Since different schools use different parameters for different things, we need to ask each school which ones we should look at for them.

For example, if we configured you to use the LTI parameter “lis_person_contact_email_primary” for email address, when we received a connect request from your institution's instance of Canvas we would know to look at the stored email addresses in WDYT and check against the value we've been sent for the parameter “lis_person_contact_email_primary.” Since you're using email address as your log in, we would then know who is logging in and what to display to them.

Similarly, for the source course id, we need to know what parameter from Canvas we need to look at in order to know what the course id is."

Where can I find this information that they're looking for? I thought when a vendor provided an LTI tool they would just be pretty straightforward as most of our others have been, but this one is driving us a wee bit nuts.

Thank you!

Spencer Varney

Labels (1)
1 Solution
ColinMurtaugh
Community Champion

Hi Spencer --

It's a little difficult to know exactly what your vendor needs because they haven't been clear about exactly what they will be using the values for.  Which parameters they should use depends on how they will be using the values.  I gather that they are trying to identify users and courses.  For the user parameter, it's important to know: do they need a stable, guaranteed unique ID? Will that ID be displayed in their UI, and does it need to be understandable by the person viewing it? Do they need an ID that can map back to your SIS or identity management system?

field name
example valueunique
stableopaque
relatable to SIS, identity management
user_id89b1619c5db9a0c6736bcf668b95dc19a8fb4c71yesyesyesno
custom_canvas_user_id7yesyesno (this is the number that appears in Canvas profile URLs: https://<Canvas host>/users/7)not directly
lis_person_contact_email_primaryuser@school.edumaybe?no (a user's Canvas email address may change over time)nomaybe
lis_person_name_fullJohn Doenononono
lis_person_sourcedid12345678 (the user's SIS ID, typically your institution's unique user ID)yesyes, generallymaybe/noyes
custom_canvas_user_login_id12345678 (the user's Login ID, the unique ID used by your institution's SSO system)yesyesmaybemaybe

So - if the vendor needs a unique ID, they probably should use either the user_id or custom_canvas_user_id.  If you know that all of your Canvas users have an sis_user_id populated, then the vendor could use lis_person_sourcedid. If you use single-sign-on with a local authentication provider, they could use custom_canvas_user_login_id as a unique user ID as well. Those values aren't great choices for display in a UI, though ("Hi, 12345678!").  A good practice would be to use one of the guaranteed-unique parameters as a unique ID in the vendor system, but to also store one of the user-readable values like lis_person_full_name or lis_person_contact_email_primary for display purposes.

There are a few options for identifying courses, too:

field name
example value
unique
stable
opaque
relatable to SIS
lis_course_offering_sourcedid

1234 (this is the course's SIS ID, your institution's unique course ID; it may or may not be human-readable depending on how your institution creates courses in Canvas)

yesyesno/maybeyes
custom_canvas_course_id50 (this is the Canvas course ID that appears in Canvas URLs)yesyesnono
context_labelBIO 200 (this is the human-readable Course Code value from the course settings screen in Canvas) nomaybenomaybe

So -  if the vendor needs a unique course ID they could use the custom_canvas_course_id or the lis_course_offering_sourcedid (assuming your institution populates the SIS ID for all of your courses).  Those values may or may not be good human-readable identifiers depending on your institution's practices.  A good practice would be for the vendor to use one of the unique parameters as the unique key in their system, and to also store a human-readable value like context_label (or context_title, which contains the course title) for display purposes.

Hope this is helpful -- most of the yes/no/maybe values in the tables above are from memory, so hopefully I've got them right!

--Colin

View solution in original post