LTI 1.3 Integration Testing

Jump to solution
haeven
Community Novice

I am wondering if LTI 1.3 integrations are possible with the current state of Canvas. Specifically in the most current build for the instructure/cavas docker image. I am currently attempting to integrate our LTI 1.3 tool with our containerized canvas instance, but when I go to create a new Developer Key I receive the following screen.315991_pastedImage_1.png

If anyone has any solution to this it would be greatly appreciated. Our team is trying to push this integration as soon as possible. Thank you ahead of time for your response!

1 Solution
jpoulos
Instructure Alumni
Instructure Alumni

This is likely due to a malformed JSON block for the tool configuration. We don't yet have great docs on the json format that Canvas is looking for (it's on my roadmap).

give this block a try. If you get the same error, then you know something is wrong with your local instance of Canvas:

{  
   "title":"IMS LTI RI",
   "scopes":[  
      "https://purl.imsglobal.org/spec/lti-ags/scope/lineitem",
      "https://purl.imsglobal.org/spec/lti-ags/scope/result.readonly",
      "https://purl.imsglobal.org/spec/lti-ags/scope/score",
      "https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly",
      "https://purl.imsglobal.org/spec/lti-ags/scope/lineitem.readonly"
   ],
   "extensions":[  
      {  
         "domain":"lti-ri.imsglobal.org",
         "tool_id":"IMS LTI RI",
         "platform":"canvas.instructure.com",
         "settings":{  
            "text":"IMS LTI RI Text",
            "icon_url":"https://static.thenounproject.com/png/131630-200.png",
            "placements":[  
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"user_navigation",
                  "message_type":"LtiResourceLinkRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"migration_selection",
                  "message_type":"LtiDeepLinkingRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/deep_link_launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"link_selection",
                  "message_type":"LtiDeepLinkingRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/deep_link_launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"homework_submission",
                  "message_type":"LtiDeepLinkingRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/deep_link_launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"editor_button",
                  "message_type":"LtiDeepLinkingRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/deep_link_launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"course_navigation",
                  "message_type":"LtiResourceLinkRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"assignment_selection",
                  "message_type":"LtiDeepLinkingRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/deep_link_launches",
                  "canvas_icon_class":"icon-lti"
               },
               {  
                  "text":"IMS LTI RI",
                  "enabled":true,
                  "icon_url":"https://static.thenounproject.com/png/131630-200.png",
                  "placement":"account_navigation",
                  "message_type":"LtiResourceLinkRequest",
                  "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/launches",
                  "canvas_icon_class":"icon-lti"
               }
            ],
            "selection_width":"1000",
            "selection_height":"1000"
         },
         "privacy_level":"public"
      }
   ],
   "public_jwk":{  
      "kty":"RSA",
      "alg":"RS256",
      "e":"AQAB",
      "kid":"8f796179-0ac4-48a3-a202-fa4f3d814fcd",
      "n":"nZD7QWcIwj-3N_RZ1qJjX6CdibU87y2l02yMay4KunambalP9g0fU9yILwLX9WYJINcXZDUf6QeZ-SSbblET-h8Q4OvfSQ7iuu0WqcvBGy8M0qoZ7I-NiChw8dyybMJHgpiP_AyxpCQnp3bQ6829kb3fopbb4cAkOilwVRBYPhRLboXma0cwcllJHPLvMp1oGa7Ad8osmmJhXhM9qdFFASg_OCQdPnYVzp8gOFeOGwlXfSFEgt5vgeU25E-ycUOREcnP7BnMUk7wpwYqlE537LWGOV5z_1Dqcqc9LmN-z4HmNV7b23QZW4_mzKIOY4IqjmnUGgLU9ycFj5YGDCts7Q",
      "use":"sig"
   },
   "description":"1.3 Test Tool",
   "custom_fields":{  
      "bar":"$Canvas.user.sisid",
      "foo":"$Canvas.user.id"
   },
   "target_link_uri":"https://lti-ri.imsglobal.org/lti/tools/281/launches",
   "oidc_initiation_url":"https://lti-ri.imsglobal.org/lti/tools/281/login_initiations"
}

View solution in original post