LTI Launch using AWS Lambda

LTI Lambda

This project demonstrates how to do a basic LTI launch using AWS Lambda. This uses the Serverless framework.

Getting started

You will need an AWS account and credentials to run the function.

Follow the Serverless getting started documentation


serverless deploy

LTI Setup

Add a new LTI tool to your LMS. Use any value for the lti key. The value for the lti secret is hard coded to 'secret'.

Here's an example XML configuration that can be used to add a course navigation tool to Instructure Canvas. Be sure to replace the urls with your own urls:

<?xml version="1.0" encoding="UTF-8"?>
<cartridge_basiclti_link xmlns="" xmlns:blti="" xmlns:lticm="" xmlns:lticp="" xmlns:xsi="" xsi:schemaLocation="">
  <blti:title>LTI Lambda</blti:title>
  <blti:description>LTI Lambda example</blti:description>
  <blti:extensions platform="">
    <lticm:options name="course_navigation">
      <lticm:property name="default">enabled</lticm:property>
      <lticm:property name="enabled">true</lticm:property>
      <lticm:property name="text">LTI Lambda</lticm:property>
      <lticm:property name="url"></lticm:property>
      <lticm:property name="visibility">public</lticm:property>
    <lticm:property name="domain"></lticm:property>
    <lticm:property name="privacy_level">public</lticm:property>