Hi - I'm getting a 422 Unprocessable Entity error when I try to test this API call (I'm using Advanced REST Client) :
https://class.yciw.net/api/v1/courses/114/assignments/3784/submissions?as_user_id=2398&submission[submission_type]=online_url&submission[url]=www.google.com
I'm using my admin access code in the header. Trying to submit this on behalf of student "2398."
Is it formatted incorrectly?
Thanks
Matt
matt5834,
I just tried this using ARC and it worked fine for me. It generates a "201 Created" response code.
I took your URL and my URL and pasted them next to each other and then put your IDs into my URL and I didn't see any differences, so I think you have the syntax correct.
Here are some things to look at.
Finally, this is not the reason, but www.google.com is not a URL. The URL includes the protocol, so https://www.google.com would be the correct way. Browsers often work if you type it into the location bar that way, but if you include it as a link on a web page, it probably (Apache does this by default, not sure about other webservers) gets turned into a relative link because it doesn't have the protocol and then you get a notice that it can't find the page www.google.com on the server. However, I tested it with www.google.com and Canvas took it -- but it also added http and not https to it. Still, it would be better to actually submit a URL.
Thank you James so much! I've been so frustrated by this so I greatly appreciate your help.
I verified all of your suggestions and everything checked out. Is this not working because I'm misunderstanding how to use the masquerading feature?? User 2398 is a student without permissions to masquerade and I'm using my access token in the header. This feature is supposed to work the other way around right? A user would masquerade as someone with permissions that can masquerade.... (???)
I've attached a pic for what it looks like in ARC for me...
I'm building an app that needs to allow the user (after going through the Oauth dance) to submit an assignment. Should I be doing this some other way??
The reason I put the as_user_id in there was because I wasn't being allowed to submit an assignment as a student.
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…