Deep Linking
Make sure you've read about authenticating API requests before proceeding to the guide below.
The Deep Linking endpoint only accepts the ltik based authentication method.
If your application is a hub of multiple resources or activities, the LTI® protocol makes this easy to manage through the Deep Linking service. Deep Linking lets a privileged user within the LMS, usually a teacher or administrator, pick a specific resource from your application and embed it into the LMS as an assignment, a module item, or a generic resource link. From that point forward, students can launch directly into that resource without your tool having to display a content selection view every time.
LTIAAS gives you access to the Deep Linking service through the Deep Linking launch and the /api/deeplinking/form API endpoint. LTIAAS handles every piece of the protocol — verifying the LMS's signed deep-linking request, signing your tool's content selection response, and proxying the JWT back to the LMS. Your application is responsible for displaying the content selection view to the teacher, since the look and feel of that picker is unique to each tool.
Teacher initiates a deep-linking launch from the LMS
Step 1 of 5The teacher opens the LMS's assignment editor, module builder, or external-tool insertion UI, and chooses your tool from the list of registered LTI® tools. Different LMSes label this action differently — Canvas calls it "External Tool", Schoology calls it "External Content", and Moodle calls it "External tool" — but the underlying mechanism is the same: the LMS sends an LTI® Deep Linking launch request to your tool's deep linking URL.
Whether the LMS even presents this option to the teacher depends on how your tool was registered with the LMS. The LtiDeepLinkingRequest message type must have been included in the registration, with an appropriate placement (such as ContentArea or link_selection in Canvas terminology). See the Dynamic LMS Registration guide for details on enabling deep-linking placements.
What's next
- Launch + idtoken SSO flow — log the student into your tool from the resource link launch.
- Grade Passback flow — submit the student's score to the LMS gradebook after they complete the activity.
- Names & Roles flow — retrieve the full class roster so that you know which students have access to the deep-linked activity.
