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.
Hello, I'm building a standalone app that integrate with CanvasI) - What are the requirements (and cost if any) for receiving an API developer key issued by Instructure? - Are Instructure-issued keys enabled globally in all Canvas organizations? or will there need to be institution-by-institution enablement? Thanks
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…