Create Launch Parameters
Builds the parameters needed to start a resource link launch (LtiResourceLinkRequest) into a registered tool.
Use this variant when you want to build the launch form yourself. If you would rather have LTIAAS build it for you, use Create Launch Form instead — it is the same request with a ready-to-render HTML form in the response.
The returned ltiMessageHint is a signed token that represents this launch. It expires one hour after it is issued, so the launch must be started within that window.
context and resource are opaque strings here — LTIAAS just carries them through the launch and hands them back to you in the validation request. They become full objects later, on Complete Launch.
Request Body required
NONE— no name and no emailEMAIL— email onlyNAME— full, given and family nameCOMPLETE— name and email
The tool to launch, identified by the client ID LTIAAS issued when you registered it.
Your identifier for the context the launch happens in — usually a course ID. Opaque to LTIAAS; you get it back on the validation request.
Your identifier for this particular placement of the tool inside the context — usually the database ID of the activity. Opaque to LTIAAS.
user object required
Your identifier for the user being launched.
string
Your identifier for the user being launched.
integer
Your identifier for the user being launched.
Override the tool's registered launch URL for this launch only. Useful for deep-linked content, where each placement has its own URL.
How much personal data may be sent to the tool.
customParameters object
Extra key/value pairs to send to the tool. Merged over the tool's registered customParameters, so anything you set here wins.
- 201
- 400
- 401
- 403
- 404
Launch parameters created
Schema
The tool's OIDC login initiation URL. Post the form here.
Your LTIAAS subdomain, acting as the LTI® issuer.
Where the tool should land after the handshake.
The user value you supplied.
A signed token representing this launch. Expires one hour after issue.
{
"target": "https://mytool.ltiaas.com/lti/login",
"iss": "https://your.ltiaas.com",
"clientId": "U0gIhEYg2rdIr4ABscEJ",
"ltiDeploymentId": "EgAssgssdfgsfshshq8iw",
"targetLinkUri": "https://mytool.ltiaas.com/lti/launch",
"loginHint": "rKk4PdLgcRbqE4PdSW3iV0KhAmu2",
"ltiMessageHint": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
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 account is not permitted to use this endpoint — most often because it is an LTIAAS Launch account rather than a Connect one, or because a trial quota has been reached.
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": "INVALID_ACCOUNT_TYPE"
}
}
No tool with that ID is registered on this 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": 404,
"error": "Not Found",
"details": {
"message": "UNREGISTERED_TOOL"
}
}
