I am trying to implement grades pass back to Canvas. My application is a Tool Provider and am planning to use OAuth 1.0.
Can someone point me to the actual requirements and steps to implementing this feature? Thanks.
- Arun
When the tool consumer (Canvas) launches your tool and an LTI Basic Outcomes Service (Grade Passback) is available the consumer will pass a lis_outcome_service_url and a lis_result_sourcedid.
To send a grade back from your tool to Canvas, you POST some XML to the lis_outcome_service_url. This XML will include the lis_result_sourcedid, which identifies the user and gradebook column.
This is all as per the LTI specs. Eg., Learning Tools Interoperability v1.1 Implementation Guide | IMS Global Learning Consortium
Note that the XML has to be sent using OAuth body signing.
The easiest thing is to see if there is a library or code that already supports the LTI grade return, or failing that, just the OAuth stuff, for the programming language you are using. There are some links to code at Learning Tools Interoperability: Sample Code | IMS Global Learning Consortium
Canvas has some extensions, most of Grade Passback Tools - Canvas LMS REST API Documentation is outlining these extensions.
Hi everyone, I am seeking some insight into how Canvas LMS handles HTTP errors and how they are reflected in the logs versus the user interface. We are currently observing the following behavior in our environment: Log-only errors: We are seeing 500 (Internal Server Error) and 503 (Service Unavailable) errors recorded in…
I'm currently integrating an LTI tool and attempting to use the Activity.id.history https://canvas.instructure.com/doc/api/file.tools_variable_substitutions.html#activity-id-history variable, but I'm experiencing issues getting it to work properly. What I've Done: Added the Activity.id.history variable to my Developer…
I looked through the LTI Variable Substitutions documentation and while there are variable substitutions available for Canvas.term.name and Canvas.term.id (which is the Canvas incremented ID like "104"), I was surprised to see there was no option for Canvas.term.sisSourceId I tried testing other possible variants that may…
Summary:The Learning Mastery Gradebook allows drag-and-drop reordering of outcome columns, and this triggers a call to /api/v1/courses/:course_id/assign_outcome_order. The API returns 204 No Content (success), but the column order does not persist after page refresh. Steps to Reproduce: Open Learning Mastery Gradebook for…
I'm building a tool for my institution that imports grades from another LTI tool into Canvas so instructors can automate late assignment policies not otherwise supported by Canvas. I'm trying to use the LTIv1.3 ID which is readily available on the LTI-side as a link to the student record on Canvas, but I can't find the ID…