Difference between revisions of "LTI Outcomes2 Services"

Jump to: navigation, search
(Implementing LTI Outcomes Management 2 (rich outcomes) services)
Line 3: Line 3:
|state = Planning
|state = Planning
|tracker = TBA
|tracker = TBA
|discussion = TBA
|discussion = [https://moodle.org/mod/forum/discuss.php?d=317752 Support for LTI Outcomes Management 2 services]
|assignee = [[User:Stephen Vickers|Stephen Vickers]]
|assignee = Stephen Vickers
==Project goal==
==Project goal==

Revision as of 17:14, 3 August 2015

LTI Outcomes Management 2 Services
Project state Planning
Tracker issue TBA
Discussion Support for LTI Outcomes Management 2 services
Assignee Stephen Vickers

Project goal

The goal of this project is to add support for the LTI Outcomes Management 2 services as per the specification available from the IMS website. These services are sometimes referred to as "rich outcomes" and are in public draft at the time of writing. They allow LTI Tool Providers to manage columns in the gradebook of an LTI Tool Consumer. Their implementation allows LTI tools to overcome the limitation of the LTI 1.1 Basic Outcomes Service which restricts each resource link to having a single gradebook column associated with it.

This work is being undertaken with the kind support of Vitalsource.


There are two main services: LineItem and LISResult which provide CRUD operations on line items (columns) and results (cells). Service endpoints are provided for both containers (collections) of line items for a course and sets of results for a line item, as well as for managing individual line item and result resources. A media type is also defined for obtaining details of a line item together with its associated results.

The services are secured in the same way as other LTI services, using the same consumer key and shared secret as used for LTI launch messages. The OAuth signature is placed in the Authorization header of the message and the payloads all use JSON-LD.

LineItem service

Allows line items to be created, read, updated and deleted by a Tool Provider in the Tool Consumer gradebook. Only line items created by the Tool Provider can be read/updated/deleted by it. Each line item will be owned by the Tool Provider and associated with a specific context (course); they are not connected to any specific resource link, just a context. The specification does not impose any limits on the number of line items which can be created by a Tool Provider - all part of the trust relationship implemented by LTI. (Of course, a Moodle administrator does not have to make these services available to a Tool Provider.) The line item which may have been auto-created for a resource link can also be accessed via these services, so it will be included in lists of line items for the context in which the resource link resides. These services provide an alternative way of managing these line items; the LTI 1.1 Basic Outcomes service may also continue to be used.

On launch a Tool Provider may be passed two URLs as custom parameters: an endpoint for the container of all line items for the context and an endpoint for the auto-created (LTI 1.1) line item (if any). The endpoints for any of the other line items can be obtained from the container service.

LISResult service

The LISResult service allows a Tool Provider to create, read, update and delete results (grades) in the line items which can be accessed through the LineItem service. A grade may also include a comment (feedback). This service cannot be used to access any other grades in the gradebook; just those belonging to the Tool Provider's line items.