Complete Deep Linking Launch Form
Completes a deep linking launch and returns a self-submitting HTML form that posts the signed ID Token to the tool's content picker.
The request body is identical to Complete Deep Linking Launch.
Request Body required
The metadata claim from the verified payload JWT that LTIAAS sent to your Deep Linking URL.
user object required
The user being launched. Name and email fields are only forwarded if the tool's privacy level permits it, so it is safe to always send them.
id object required
Your identifier for the user. Should match the user value you sent on the launch.
string
Your identifier for the user. Should match the user value you sent on the launch.
integer
Your identifier for the user. Should match the user value you sent on the launch.
Possible values: [SYSTEM_ADMINISTRATOR, SYSTEM_NONE, SYSTEM_ACCOUNT_ADMIN, SYSTEM_CRETOR, SYSTEM_SYS_ADMIN, SYSTEM_SYS_SUPPORT, SYSTEM_USER, INSTITUTION_ADMINISTRATOR, INSTITUTION_FACULTY, INSTITUTION_GUEST, INSTITUTION_NONE, INSTITUTION_OTHER, INSTITUTION_STAFF, INSTITUTION_STUDENT, INSTITUTION_ALUMNI, INSTITUTION_INSTRUCTOR, INSTITUTION_LEARNER, INSTITUTION_MEMBER, INSTITUTION_MENTOR, INSTITUTION_OBSERVER, INSTITUTION_PROSPECTIVE, CONTEXT_ADMINISTRATOR, CONTEXT_CONTENT_DEVELOPER, CONTEXT_INSTRUCTOR, CONTEXT_LEARNER, CONTEXT_MENTOR, CONTEXT_MANAGER, CONTEXT_MEMBER, CONTEXT_OFFICER]
The user's roles in this context. Many tools change what they show based on whether the user is an instructor or a learner.
context object required
id object required
Your identifier for the context. Should match the context value you sent on the launch.
string
Your identifier for the context. Should match the context value you sent on the launch.
integer
Your identifier for the context. Should match the context value you sent on the launch.
Short name, such as a course code.
Full name.
The kind of context this is. Most integrations send ["CourseOffering"].
- 201
- 400
- 401
- 403
ID Token form created
Schema
A self-submitting HTML form. Render it in an iframe or a new tab; it posts itself as soon as it loads.
{
"form": "<form id=\"ltiaas_launch\" style=\"display: none;\" action=\"https://mytool.ltiaas.com/lti/login\" method=\"POST\">\n <input type=\"hidden\" name=\"iss\" value=\"https://your.ltiaas.com\" />\n <input type=\"hidden\" name=\"client_id\" value=\"U0gIhEYg2rdIr4ABscEJ\" />\n <input type=\"hidden\" name=\"lti_deployment_id\" value=\"EgAssgssdfgsfshshq8iw\" />\n <input type=\"hidden\" name=\"target_link_uri\" value=\"https://mytool.ltiaas.com/lti/launch\" />\n <input type=\"hidden\" name=\"login_hint\" value=\"rKk4PdLgcRbqE4PdSW3iV0KhAmu2\" />\n <input type=\"hidden\" name=\"lti_message_hint\" value=\"a.long.jwt\" />\n </form>\n <script>document.getElementById(\"ltiaas_launch\").submit()</script>"
}
One or more request parameters were missing or malformed.
Schema
- Array [
- ]
details object
errors object[]
One entry per field that failed validation.
{
"status": 400,
"error": "Bad Request",
"details": {
"errors": [
{
"field": "clientId",
"message": "Missing 'clientId' parameter."
}
]
}
}
The Authorization header was missing, malformed, or carried the wrong key.
Schema
details object
Context for the failure. Always carries a message code; the other keys depend on what went wrong.
Context for the failure. Always carries a message code; the other keys depend on what went wrong.
{
"status": 403,
"error": "Forbidden",
"details": {
"message": "INACTIVE_SERVICE",
"description": "string"
}
}
{
"status": 401,
"error": "Unauthorized",
"details": {
"message": "INVALID_BEARER_AUTHORIZATION_HEADER",
"description": "Invalid API Key for account."
}
}
The LTI® service this endpoint depends on is not enabled on your account.
Schema
details object
Context for the failure. Always carries a message code; the other keys depend on what went wrong.
Context for the failure. Always carries a message code; the other keys depend on what went wrong.
{
"status": 403,
"error": "Forbidden",
"details": {
"message": "INACTIVE_SERVICE",
"description": "string"
}
}
{
"status": 403,
"error": "Forbidden",
"details": {
"message": "INACTIVE_SERVICE",
"service": "Deep Linking"
}
}
