Sign in

Learning Tools Interoperability® (LTI®)

Learning Tools Interoperability® (LTI®) is a widely adopted 1EdTech standard that makes it simple and secure to connect digital learning tools with learning platforms like LMSs. Using a consistent, vendor-neutral approach, LTI enables single sign-on, trusted tool launch, and the seamless exchange of course and user context—so educators and learners can access integrated tools quickly, reliably, and with confidence.

Looking for a specific clause, definition, or requirement? Use the site-wide search to scan every specification, guide, and conformance document.

Asset Processor

Asset Processor (6)

Asset Processor is an LTI workflow that plugs into an LMS’s native assignment submission interface, letting learners submit files as they normally would while enabling backend tools to be notified when work is submitted. Those tools can then securely fetch and process the submitted assets (e.g., analyze, validate, scan, or transform them) and return a structured report back to the platform, so results appear in the LMS alongside the original submission.

Candidate Final

Asset Processor

v1.0.0 Asset Processor Asset Processor

The asset processor profile is a collection of LTI extensions that when implemented and used together, provide the optimal user experience and allow for the richest possible asset processor integration. The individual extensions used in this profile may be implemented in isolation, however this may lead to a degraded user experience, increased manual configuration during setup or reduced interoperability."

Read Specification
Candidate Final

Asset Processor Content Item

v1.0.0 Asset Processor Asset Processor

This specification defines a new content item type that can be returned from a Deep Linking request. This content item type is used to represent an asset processor that is associated with the current activity. The content item returned represents the creation of an asset processor settings link, and the registration to receive asset processor submission notices within the scope of the current activity.

Read Specification
Candidate Final

Asset Processor Settings Request

v1.0.0 Asset Processor Asset Processor

The workflow for an Asset Processor Settings Request is designed to be embedded into a platform provided activity, and provide settings for the configuration for a specific instance of an asset processor within that activity.

Read Specification
Candidate Final

Asset Report Service

v1.0.0 Asset Processor Asset Processor

The Asset Report Service is a similar concept to the assignments and grades service, without the constraints of a lineitem. The asset report service allows for the generation of a report of individual assets, the benefit of this being that the number of assets may vary per user rather than requiring grades to fit within a gradebook grid"

Read Specification
Candidate Final

Asset Service

v1.0.0 Asset Processor Asset Processor

The asset service is used to give a tool access to specific assets (files) submitted to a platform by a user. The asset service claim is scoped to a submission, with each asset having a service url scoped to that specific asset.

Read Specification
Candidate Final

Report Review

v1.0.0 Asset Processor Asset Processor

An LTI Report Review Request provides similar functionality to an LTI Submission Review Request, relying on a submission and user to identify the asset's report being launched instead of a lineitem.

Read Specification
Core

Core (1)

LTI Core is the foundation of LTI—it defines the standard way a learning platform (like an LMS) securely launches and connects to an external learning tool. It covers the essentials needed for reliable integration, including how the launch works, what basic information can be shared at launch, and the security model (modern LTI uses OAuth 2.0 and OpenID Connect) so tools can plug into many platforms with a consistent, trusted experience.

Final

LTI Core

v1.3.0 Core Core

The Learning Tools Interoperability Core Specification specification defines standards and protocols for educational technology integration.

Read Specification
Examples

Examples (2)

Example implementations and demonstrations of LTI specifications.

Final

Markdown Examples

v1.0.0 Examples Examples

This is a temporary example file to showcase/ test how document features are rendered.

Read Specification
Public Candidate Final

Public Candidate Final Example

v1.0.0 Examples Examples

Showcases how the authentication system should require a login to see Public Candidate Final documents

Read Specification
Messages

Messages (6)

LTI Messages are the specific kinds of requests an LMS sends to an external learning tool when a user clicks a link—like “open this activity” or “choose content to add.” They tell the tool what action to perform and include the basic information it needs (like where to return the user and what they’re trying to open) so the tool can launch and behave consistently across different LMS

Draft

Context Message

v1.0 Messages Messages

The Learning Tools Interoperability Context Messsage specification defines standards and protocols for educational technology integration.

Read Specification
Draft

Data Privacy Message Specification

v1.0 Messages Messages

The Learning Tools Interoperability (LTI) Data Privacy Message specification allows LTI-enabled tools to assist administrative users to manage and execute requests related to data privacy.

Read Specification
Final

Deep Linking Specification

v2.0 Messages Messages

IMS is developing the Learning Tools Interoperability Deep Linking specification to allow a platform to more easily integrate content gathered from an external tool. Using the deep linking message defined in this specification, platform users can launch out to a URI specified by an external tool, _then_ select specific content appropriate for their use, and have returned back a URI that other platform users can use at a later time as the basis for other launches directly to that specific content. For example, via the deep linking message, course designers can launch out to a publisher's tool, select some course content modules appropriate to the particular course they are working on, and get back LTI resource links that, when launched by students, will go directly to the content modules rather than some more general "table of contents page".

Read Specification
Candidate Final

Eula Message

v1.0.0 Messages Messages

A EULA (End User License Agreement) request is a message launch that allows a user to view and respond to an end user license agreement. The launch has no resource or context and thus should not contain any context specific data or service claims, however MUST contain the deployment level EULA service. It is the responsibility of the tool to track whether or not a user has accepted the EULA and must provide a sufficient workflow for the user to do so.

Read Specification
Draft

LTI Client Side postMessages

v1.0 Messages Messages

The LTI Client Side postMessages specification defines standards and protocols for educational technology integration.

Read Specification
Public Candidate Final

Submission Review Service

v1.0 Messages Messages

Being able to report a score to the platform's gradebook has long been a key feature of the Learning Tools Interoperability (LTI) specifications. It started years ago with the LTI 1.1 basic outcome service, and is being significantly enriched by the newer Assignment and Grade Services. For example, the Assignment and Grade Services allows the tool to notify the platform that an activity has been submitted and now needs grading. However, once in the gradebook, there is no easy way for the instructor or the student to go back to the tool to see what's 'behind' the grade or the needs grading flag, and eventually grade the learner's work. This is the purpose of this message: launch back from the platform's gradebook to the tool to display the learner's submission for a particular line item. The term submission in this specification refers to any representation of the learner's work; that representation can greatly vary based on the type of activity. For example, a submission can be your traditional essay the learner wrote for a writing assignment, or some statistics about the user's engagement in a group online game session that took place earlier.

Read Specification
Notices

Notices (2)

Notices are platform-generated events that a tool can subscribe to so it can be notified when something happens in the LMS. They provide a standardized way for the platform to send timely notifications (about relevant activity or changes) to subscribed tools, enabling background workflows and integrations without relying on a user launch.

Candidate Final

Asset Processor Submission Notice

v0.1 Notices Notices

The LTI Asset Processor Submission Notice is a Notice that can be configured via the Platform Notification Service [[lti-pns]] and are sent directly from a platform to a tool (not via a user's browser). The event by which this notice is triggered, is a user submitting one or multiple assets (files) to a platform activity where an asset processor is attached. A platform MUST NOT send LTI asset processor submission notices for submissions made to activities where an asset processor is not attached. An LTI Asset Processor can be uniquely identified by a combination of the following properties: Activity.Id and custom data properties.

Read Specification
Candidate Final

Context Copy Notice

v0.1 Notices Notices

The LTI Context Copy Notice is a notice that can be configured via the Platform Notification Service, and thereby sent directly from a platform to a tool (not via a user's browser). When an LTI Context inside the Platform is created, the platform can send this notice to indicate this to the tool so it can learn about the new (target) context that may contain some of its own resources.

Read Specification
Services

Services (9)

LTI Services are the standard API-based capabilities that let an LTI tool and a platform exchange information. They enable deeper integration—such as reading course rosters, creating or selecting content, posting grades, or accessing submissions—using consistent, secure service endpoints so tools can work the same way across different LMSs.

Draft

Activity Item Profile Specification

v1.0 Services Services

The LTI Activity Item Profile described in this document defines a way to coordinate the use of several LTI Advantage specifications to meet a key family of workflows: allowing an LTI Tool to host a part of a multi-part *Activity* hosted on the LTI Platform, and allowing the Platform to regulate discrete *submission attempts* when users interact with this Activity (and its parts).

Read Specification
Final

Assignment and Grade Services

v2.0 Services Services

The Learning Tools Interoperability\u00ae (LTI) Assignment and Grade Services specification allows tools to manage gradebook columns and post scores.

Read Specification
Public Candidate Final

Caliper Analytics Connector Service

v1.0 Services Services

The IMS Caliper Analytics specification describes a way learning systems can capture data from learning interactions and share that data with data stores. While many of these interactions may take place within an LTI platform, in order to obtain a more holistic picture of a learner's activities, it is important not to ignore those interactions that may take place within any connected LTI tool deployments. Thus, it is important not only to instrument the LTI platform, but also the LTI tools. Indeed, for the analytics data to be most useful, the activity in the tools should be correlated with the activity in the platform, during the same logical "session". IMS is developing this LTI Caliper Analytics Connector Service specification to allow a platform to more easily inform their deployed external LTI tools of a common place all these deployed tools can send their Caliper Analytics data in a secure way. Using the Caliper Connector Service URL communicated to tools via LTI messages, tools can send Caliper event and entity data to a Caliper Endpoint common to the LTI context in which users' activity occurs.

Read Specification
Public Candidate Final

Context Groups Service

v1.0 Services Services

The Context Groups Service is based on IMS Learning Information Services (LIS) and W3C Organization Ontology. It is concerned with providing access to data about users’ enrollments on groups within a context, a course being an example of a context.

Read Specification
Public Candidate Final

Dynamic Registration Specification

v1.0 Services Services

The Learning Tools Interoperability® (LTI®) Dynamic Registration specification, as described in this document, defines a way to automate the exchange of registration information between LTI Platforms and Tools that use the OpenId Connect and oAuth 2 registration flows. This allows Platform administrators to automate tool registrations and avoid tedious and possibly error prone manual configuration while remaining in control of granting or denying Tools access to the Platform.

Read Specification
Candidate Final

Eula Service

v1.0.0 Services Services

The EULA (End User License Agreement) service is a deployment level service that allows for a platform to be notified of whether or not a user has accepted a tool's EULA.

Read Specification
Candidate Final

Link and Content Service

v1.0 Services Services

The Link and Content Service allows a tool to know and manage its assets that are engaged in a given platform's learning context. The primary use case of this specification is to manage a tool's LTI Resource Links, but it affords platforms the ability to support the management of other types of tool assets. While this specification is related to the LTI Advantage Deep Linking UI flow [[LTI-DL-Spec]], which allows the user to import the tool's assets through a UI flow, it does not preclude assets that were not imported using Deep Linking. The assets may have been manually added, imported from cartridges, or come from a copy. What matters is the asset is explicitly bound to the tool. This specification is also a sibling of the Line Item Service within the LTI Assignment and Grades Service [[LTI-AGS-Spec]]. While the latter allows for the management of line items, this specification allows for the management of LTI Resource Links and, optionally, other kinds of Tool content.

Read Specification
Candidate Final

LTI Platform Notification Service

v0.1 Services Services

The Platform Notification Service adds a third messaging channel to LTI to facilitate Platform-to-Tool messages that can occur outside the boundaries of an active user agent session. After discovering this service in the standard way, the Tool can use a service request to: Discover the various platform *notice types* the Platform supports (So that the Tool may register to receive *notices* of those types). Manage the registration of a Tool-hosted HTTP *webhook* or *handler* endpoint with the Platform to receive these notices.

Read Specification
Final

Names and Role Provisioning Services

v2.0 Services Services

The Names and Role Provisioning Services is based on IMS Learning Information Services (LIS) and W3C Organization Ontology. It is concerned with providing access to data about users’ roles within organizations, a course being an example of an organization. So a very common purpose for this service is to provide a roster (list of enrolments) for a course.

Read Specification