Leading through Chaos - Insights and Actions • Browse the resources from the keynote presented by the Academic Strategy Team.
Found this content helpful? Log in or sign up to leave a like!
Can someone give me an example of Paste JOSN Method to create new LTI developer key?
What fields or properties should be there in the JSON?
Screenshot:
There's documentation on the JSON format on: https://canvas.instructure.com/doc/api/file.lti_dev_key_config.html
Or if you switch to manual entry, put in some values and then switch back to JSON view it should show you the equivalent JSON.
Thanks @matthew_buckett
It was really helpful.
But now if we add a developer key, we could not see that in the "Configure External Tool" when creating an assignment.
Here's the screenshot of the created developer keys,
The "ES" is not showing up in here
ES is just the label for the developer key, the value that appears in the interface is inside the developer key configuration page. However it might also be that you haven't added a LTI tool based on the your developer key client ID to the course/account you are testing in, this is documented by Canvas on: https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-external-app-for-an-account-usi...
Thanks @matthew_buckett It was really helpful.
We got another question,
Is it possible to get the user details like username or email from id_token that we got from authorize_redirect url ie (https://<domain>/api/lti/authorize_redirect)?
Because as for now we only getting the user_id when decoding the id_token.
Yes, if you mark your developer key as Public rather than Private Canvas will send across the user's name, email in the JWT (id_token) under the name/email claims.
You can also specify additional fields to be sent across in the custom data of the developer key, the available fields are documented on https://canvas.instructure.com/doc/api/file.tools_variable_substitutions.html
Hi,
Regarding "Yes, if you mark your developer key as Public rather than Private Canvas will send across the user's name, email in the JWT (id_token) under the name/email claims."
Is there official documentation that says this in such a straightforward way anywhere?
I find the LTI 1.3 documentation to be rather scattershot and not at all helpful for showing to bosses.
Thank you,
-S
I agree the documentation on this is poor and disjointed.
The documentation on the configuration is on https://canvas.instructure.com/doc/api/file.lti_dev_key_config.html
The documentation on adding an LTI key is on https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-LTI-key-for-an-account/ta-p/140 but this doesn't mention the privacy level at all.
Yeah, I have seen those two pages. It says:
privacy_level | Required | string |
What level of user information to send to the external tool. Allowed values: |
I know from experimenting with LTI 1.1 what exactly those mean, but my boss wants to see it spelled out that it means the same thing for LTI 1.3 configuration.
Here is what it means for LTI 1.1 (which sends POST data):
Email Only: All of Anonymous plus lis_person_contact_email_primary
Name Only: All of Anonymous plus: lis_person_name_family, lis_person_name_full, lis_person_name_given
Public: All of Anonymous, Email Only & Name Only plus: custom_canvas_api_domain, custom_canvas_course_id, custom_canvas_user_id, custom_canvas_user_login_id, custom_canvas_workflow_state, lis_person_sourcedid, user_image
Is LTI 1.3 Public sending the same information as LTI 1.1 public?
I wish we had more flexibility with the data to send in 1.3. I know we can do custom attributes, but still. You can decode the 1.3 launch data through a base64 decoder.
Thank you! I will have to experiment with that.
To interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in