IMS Final Release

A REST API for Result Resources
in the application/vnd.ims.lis.v2.result+json Format

Final Release
Date Issued: 10 September 2015
Latest version: http://www.imsglobal.org/lti

Abstract

This specification defines a REST API for reading and updating Result resources.

Table of Contents

1. Introduction

This specification defines a REST API for reading and updating Result resources. Following common conventions, the API uses a different HTTP verb for each type of operation: GET for read and PUT for update

Implementations of this REST API may be incomplete; a given server might support only a subset of the HTTP verbs. A server that supports the complete API will expose two different kinds of endpoints: a container endpoint for receiving POST requests and item endpoints for manipulating individual instances. This specification document does not prescribe a method for discovering the endpoint URLs.

2. Result Representations

Result resources manipulated via this REST API are represented as JSON documents in the application/vnd.ims.lis.v2.result+json format. For detailed information about this media type, see [Result-media-type].

3. Service Methods

3.1 GET

To get a representation of a particular Result instance, the client submits an HTTP GET request to the resource's REST endpoint, in accordance with the following rules:

 

Request Header NameValue
AuthorizationAuthorization parameters dictated by the OAuth Body Hash Protocol
Acceptapplication/vnd.ims.lis.v2.result+json
Table 1.  Required HTTP Headers for GET Request

 

Table 2 describes the possible responses from the GET method.

HTTP Status Description
200 OK The request was successful.

The response contains a JSON document in the format defined by the application/vnd.ims.lis.v2.result+json media type.

301 Moved Permanently The URI for the requested resource has changed.

In this case, the response body is empty, and the new URI is provided in the Location header. The client should GET the resource from the new location, and furthermore, it should send all future requests to the new location as well.

307 Temporary Redirect The requested resource resides temporarily under a different URI.

In this case, the response body is empty, and the temporary URI is defined by the Location header field. The client should GET the resource at the temporary URI, but future requests should continue to be sent to the original URI.

401 Unauthorized The client did not authenticate properly.
404 Not Found The server has not found anything matching the request URI.
500 Internal Service Error The server encountered an unexpected condition which prevented it from fulfilling the request.
Table 2.  Possible responses from a GET method

3.2 PUT

To update a particular Result instance, the client submits an HTTP PUT request to the resource's REST endpoint in accordance with the following rules:

 

Request Header NameValue
Content-Typeapplication/vnd.ims.lis.v2.result+json
AuthorizationAuthorization parameters dictated by the OAuth Body Hash Protocol
Table 3.  Required HTTP Headers for PUT Request

 

Table 4 describes the possible responses from the PUT method. In all cases, the response body is empty.

HTTP Status Description
200 OK The request was successful.
401 Unauthorized The client did not authenticate properly.
404 Not Found The server has not found anything matching the request URI.
500 Internal Service Error The server encountered an unexpected condition which prevented it from fulfilling the request.
Table 4.  Possible responses from a PUT method

4. References

[Result-media-type]
Stephen Vickers. Result JSON Binding in the application/vnd.ims.lis.v2.result+json format. IMS Final Release. 10 September 2015.

About this Document

Title: A REST API for Result Resources in the application/vnd.ims.lis.v2.result+json Format
Editor:Stephen Vickers (IMS Global)
Version: 2.0
Version Date: 10 September 2015
Release: Final Release
Status: IMS Final Release
Purpose: This document is made available for review and comment by the public community at large.

List of Contributors

The following list of individuals contributed to the authoring of this document:

Craig DunkD2LPadraig O'hiceadhaHMH
Viktor HaagD2LCharles SeveranceIMS Global
Brad HumphreyInstructureColin SmytheIMS Global
Greg McFallPearsonMatt StoeltingCengage
Mark McKellIMS GlobalJohn TibbettsVitalsource
Bracken MosbackerLumen LearningClaude VervoortCengage
Lance NeumannBlackboardStephen VickersIMS Global