What development projects do you have currently underway?
Not so much an API-based development project, but we are looking doing some new things with the SIS import files through the API. One of our online programs has a orientation course that isn't a "real" course per se so it isn't in our normal SIS. We just started playing with batch loading new students in this program into new sections of this orientation course based on their program start date. Any students that start in the 201521 term show up in a 201521 section, etc. So far, it looks doable and has been working really well in our testing.
Currently I'm working on an LTI tool that turns a Canvas quiz into an immediate feedback self-test for teams. I'm basically just grabbing all the multiple choice items in the selected quiz, and presenting them to the selected group set teams to be taken collaboratively. Each time a team selects an answer option, they see the feedback associated with that response, and their score is adjusted. You lose half the points a question is worth each time you pick a wrong answer, but you get to try again. The entire team gets points for the assignment (not the quiz, which does not need to be published).
One thing I am struggling with is how often to push grades back to Canvas. Right now I do it every time an answer is selected, and I'm putting any incorrectly chosen options into a comment. That generated a long list of comments and grading events. I could of course withhold grades until the entire quiz has been completed, but I don't want data to be lost if something happens mid-quiz. I've taken pains to prevent teams from trying to restart the quiz as a way of cheating, so if someone's computer crashes, that team has no way to get back in to try again or pick up where they left off. It would be good for an instructor to know how far they got. Better, of course, if I store the info in such a way that I can reconstruct their responses, but I haven't tackled that piece yet.
The other thing I'm debating is what to do about masquerading. The easiest way to determine which group a logged-in student is in is to hit the groups endpoint 'as' him/her, but since faculty can't masquerade, I have to use an admin API token to do it. That's fine for us, but if I ever decide to go public with this, it would be best if faculty could use their own tokens. I also masquerade when submitting the grades, using the id of whoever chose the quiz and group-set during the resource selection phase. If faculty use their own tokens, that wouldn't be necessary, so if I do create a version that works for faculty, I might need a way to branch the code. I don't know what happens when you use as_user_id and your token has no masquerading privileges. The documentation suggests that masquerading will fail, no matter what you are trying to do. But the question is, if the masquerade fails, does the rest of the API request fail with it, even if the user is not asking for anything they couldn't do themselves? I'm thinking yes, but I haven't tested. I'm hoping that this might be a good place to collect that sort of information.
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…
How can one track Canvas Media use without having the reports available from Canvas Studio? Checking API endpoints and the Data 2 schema, there do not seem to be dedicated Canvas Media endpoints. Am I missing some? A method I've considered is using the body field of the wiki_pages table, as this contains the html code of…
Hello, I'm trying to utilize an API call to pull completed certificates and was hoping to download and store the certs as a backup. I can successfully run the API call but it will not allow me to view the certificate unless I access the URL while signed into an account where it's "my" cert. Is there a permissions setting…
UI for weekly progression idea that rest in the Schedule tab of the **K-12 UI** of Canvas it's incomplete and I really would not take it and push it into instance but I am going to post it here because in the past people like @James && @robotcars || @Steve_25 have had terrific input in the past... maybe w/their eyes and…
I have a new React + Flask webapp. It has its own login for users to start using the app. I have added this as an external tool in Canvas. What I want initially is to see of canvas users can start using the webapp without having to login if they click on the external tool link in a canvas course. I have 2 methods…