From b366e112ff0b896ba9c2b2f1777f371dac2b6181 Mon Sep 17 00:00:00 2001 From: Matthew Buckett Date: Mon, 2 Feb 2026 15:49:56 +0000 Subject: [PATCH] Expose the ltiContextId This isn't currently documented on https://canvas.instructure.com/doc/api/assignments.html It returns the ID that is returned in the "https://purl.imsglobal.org/spec/lti/claim/resource_link" -> "id" claim. --- .../edu/ksu/canvas/model/assignment/Assignment.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/edu/ksu/canvas/model/assignment/Assignment.java b/src/main/java/edu/ksu/canvas/model/assignment/Assignment.java index 50d0ba35..e2953c66 100644 --- a/src/main/java/edu/ksu/canvas/model/assignment/Assignment.java +++ b/src/main/java/edu/ksu/canvas/model/assignment/Assignment.java @@ -60,6 +60,9 @@ public class Assignment extends BaseCanvasModel implements Serializable{ private List assignmentVisibility; private Boolean postManually; private Boolean hideInGradebook; + // This isn't documented, but returns the LTI resource link ID when the assignment is an LTI assignment. + // This is useful for matching assignments to LTI Launches from deep linked assignments. + private String ltiContextId; public Integer getId() { return id; @@ -437,6 +440,14 @@ public void setHideInGradebook(Boolean hideInGradebook) { this.hideInGradebook = hideInGradebook; } + public String getLtiContextId() { + return ltiContextId; + } + + public void setLtiContextId(String ltiContextId) { + this.ltiContextId = ltiContextId; + } + public class ExternalToolTagAttribute implements Serializable { private static final long serialVersionUID = 1L;