How to get re-submissions via API?

Options
Olivier.G.532
Olivier.G.532 Posts: 19 🌱
edited March 20 in Social Groups

I'm a teacher / facilitator for a school that uses brightspace. In order to make my life easier I made a browser plugin that scans all my classes for things I have to do. Tasks like "list of assignments to be graded", "list of unanswered questions", etc

I can use the following endpoint to get specific values.

https://docs.valence.desire2learn.com/res/dropbox.html#get--d2l-api-le-(version)-(orgUnitId)-dropbox-folders- The response contains 2 relevant fields: TotalUsersWithSubmissions and TotalUsersWithFeedback. If those numbers aren't the same I know there's an un-evaluated assignment in that course.

The problems comes when a student re-submits an assignment. The fields from the previous request don't change. Which makes sense.

By inspecting the requests that the UI makes I can find that there's this endpoint:

https://abcd1234-abcd-abcd-abcd-abcd1234abcd.activities.api.brightspace.com/old/activities/xxxx_xxxx_xxxxxx/usages/{COURSE_ID}/evaluation-status

and it's response contains a field called resubmissions with the appropriate value. However I can't find the equivalent call in the documented d2l API

https://docs.valence.desire2learn.com/http-routingtable.html

The d2l API does offer this endpoint

https://docs.valence.desire2learn.com/res/dropbox.html#get--d2l-api-le-(version)-(orgUnitId)-dropbox-folders-(folderId)-submissions-

Which does list all submissions, even new unevaluated ones. But offers no way to know which one is evaluated because the API "feedback" object has no "submission id" nor is there any timestamp that could be used to cross reference.

Is this an oversight of the API?

EDIT: This is a cross post of

that I'm posting to a different group. Sorry if this is against the rules.

Best Answer

Answers