Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LTI 1.3 $Canvas.assignment.dueAt.iso8601 is null rather than unexpanded #2424

Open
drlippman opened this issue Oct 31, 2024 · 0 comments
Open

Comments

@drlippman
Copy link

Summary:

Past behavior, and the expected behavior per documentation, is that if an LTI 1.3 external tool assignment has no due date, then the $Canvas.assignment.dueAt.iso8601 substitution variable is unexpanded. Recently (in the last few days), Canvas started sending null instead of the unexpanded string.

Steps to reproduce:

  1. Set up an LTI 1.3 tool with a custom field using the substitution variable $Canvas.assignment.dueAt.iso8601, like canvas_assignment_due_at=$Canvas.assignment.dueAt.iso8601
  2. Create an external tool assignment using that tool, and set no due date on it
  3. Launch the tool, capture and decode the id_token containing the launch claims
  4. Observe the variable value is null instead of a string

Expected behavior:

That the claim include

"https://purl.imsglobal.org/spec/lti/claim/custom": {
    "canvas_assignment_due_at": "$Canvas.assignment.dueAt.iso8601"
}

Actual behavior:

The claim includes

"https://purl.imsglobal.org/spec/lti/claim/custom": {
    "canvas_assignment_due_at": null
}

Additional notes:

I'm assuming this is related to the recent commit 5a74bc9, but I'm not certain of that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant