Does Area9 Rhapsode™ support LTI® 1.1?

Yes. Area9 Rhapsode™ supports LTI® 1.0, 1.1, and 1.1.1. Information about LTI fields is included in this article.

Area9 Rhapsode™ supports the 1.0, 1.1., and 1.1.1 variants of the LTI standard from IMS Global (

Rhapsode uses the following LTI fields:

User ID (user_id)
Student First Name (lis_person_name_given)
Student Family Name (lis_person_name_family)
Email Address (lis_person_contact_email_primary)
Locale (launch_presentation_locale)
Assignment ID (resource_link_id)
Class ID (context_id)
Class Name (context_title)
Outcome URL (lis_outcome_service_url)
LMS Score ID (lis_result_sourcedid)
Return URL (launch_presentation_return_url)
OAuth Nonce (oauth_nonce)
OAuth Signature (oauth_signature)
OAuthTimestamp (oauth_timestamp)
OAuth Consumer Key (oauth_consumer_key)
OAuth Signature Method (oauth_signature_method:)
OAuth Callback (oauth_callback)
OAuth Version (oauth_version)
LTI Message Type (lti_message_type)
LTI Version (lti_version)


Data Element Explanation
user_id The identifier of the user. It is a value the LMS chooses. For example “12321”
Student First Name [Optional] First name of the learner who launched the course.
Student Family Name [Optional] Family name of the learner who launched the course.
Email Address [Optional] Email of the learner
Locale This will be used to set the initial language of the learner (Rhapsode will default to “en-US”). For example en-GB.
Assignment ID This is the identifier of the “assignment”. It is a value the LMS chooses. If users are never required to take the same course twice, then this should be the identifier for the course type (learning resource type identifier). For example “L12444-X”.
Class ID If the learners are grouped in classes then it is recommended to set this to the class identifier, this makes the reports in Rhapsode Educator more useful. It is an identifier the LMS chooses. For example “378267AD”
Class Name If this parameter is present, then it is used as the name of the new class. For example: “Mathematics 1A 2019”.
Role This allows launching either Rhapsode LEARNER™ or Rhapsode EDUCATOR™. To launch Rhapsode EDUCATOR, set this value to “Instructor”. If you also want to give the user access to Rhapsode LEARNER also, then set it to: “Instructor,Learner”. In Rhapsode EDUCATOR the user will be able to see progress and other information for the other users that have launched with the same context_id. To launch just Rhapsode LEARNER skip the roles parameter or set it to “Learner”.
Outcome URL The URL that Rhapsode will use to send the score. It is chosen by the LMS. If the LMS does not require a score, then this parameter can be skipped. For example,
Learner Score ID This is a “string” that the LMS chooses. Rhapsode will store this identifier for every launch, and send it with every call of the “lis_outcome_service_url”.  The LMS uses this value to know how to store the learner’s score. For example: “u1273:a3773”. If the LMS does not require a score, then this parameter can be skipped.
Return URL [Optional] If it is set Rhapsode will display a “Return to LMS” button that will navigate to this url. (The text of the button can be changed). It is most useful, in the case where Rhapsode replaces the LMS (neither an iframe or popup is used).
OAuth Nonce A value that must not be reused. For example: eca2bc229a83c9fbd9b2befbcb664430
OAuth Signature The signature of the form post (The consumer secret is needed to make this signature).
OAuth Timestamp The “epoch” timestamp. For example, 1571061595. Rhapsode will reject timestamps that are older than 5 minutes.
OAuth Consumer Key This identifier is exported once, from a Rhapsode Published Learner Package. For example, “EUD15”.
OAuth Signature Method Must always be “HMAC-SHA1”
OAuth Callback Must always be “about:blank”
OAuth Version Must always be “1.0”
LTI Message Type Must always be “basic-lti-launch-request”
LTI Version Must always be “LTI-1p0”