The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December. Read our blog post for more info about this change.
I have my external tool which working fine with Canvas. All the auth endpoints are working as expected. As an instructor, I am able to create line items from my tool which gets displayed as an assignment in the platform.
Below sample JSON of my line item.
I'm wondering how your create works? I just so happen to be implementing our tool on Canvas, a tool that already works on several other platforms. But the create line item is failing. We've tried POSTing with basically the same payload you have, but the result comes back as an error of"Not found". Whatever that means...we know the course id is correct since we get it from the LTI context url.
We POST to a URL like this in the test environment:
https://{ourcompany}.test.instructure.com/api/lti/courses/{courseId}/line_items
The media type posted is the LTI standard:
application/vnd.ims.lis.v2.lineitem+json
For the external_tool_url, we are just using the same URL that launches our tool. Granted, we're not getting past the create yet so we don't see the workflow you describe.
I'm seeing the same behavior. Is there a way to explicitly force a created LineItem to use LTI 1.3?
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.