Community Novice

What are the different events that can populate submission_dim.posted_at field (obtained via the API) ?

I initially thought that submissions' posted_at timestamps would either be the same as the graded_at values, or some later date, identical for all submissions linked to the same assignment, representing the date-time when all grades are released to students. But I have found several cases where the submission_dim.posted_at date value is before any submission is even graded. I have also find cases where submissions have posted_at values over a year after these have been graded... Hence I am trying to understand the different types of event that can lead to populate the posted_at field. 

0 Kudos
2 Replies
Coach Emeritus

 @theo_dufort , greetings! Due to the technical nature of this question, I'm going to share it with the Canvas Developers‌ group in the Community. Hopefully, they will be able to help!


0 Kudos
Community Champion

 @theo_dufort ,

This is not a definitive statement, just a summary of what I've found.

The posted_at property is supposed to represent when the grade or feedback becomes available to the student.

In my experimentation with the new gradebook and the grade posting policy,  posting grades will set this to the current date and time. This changes even if the grade was already available to the student. For example, consider John, who had turned his work in early and the instructor posted the grade for him. Later, the instructor posts the grades for the entire section that John is in. The posted_at datetime will reflect the time when the entire section had their grades released, even though John had been able to see it earlier.

If you have a missing policy, then the posted_at should reflect when the grade was assigned. For example, I had an assignment due at 23:59:59 yesterday and Canvas marked it posted_at 00:00:49 this morning.

I had a student submit that same assignment at 22:06:17 yesterday, but the posted_at is 22:17:54. I did not grade it, but that was the time that I left her a submission comment on the assignment.

I had another student submit at 10:22:28 yesterday, I left a submission comment at 10:34:08, which is the posted_at timestamp. I graded it at 14:08:51, but the posted_at remained from the earlier submission comment.

Looking at another assignment that isn't even published yet. It shows a posted_at date of 22:40:48 on January 14. The course wasn't even published at that time, although it's possible that's when I went through and unpublished the assignment from when I had copied it over from another course.

The posted_at wasn't always there. The documentation on it got added about 8 months ago. It's possible that if you had an assignment without a posted_at, the timestamp notes when Canvas added that field to the database and it went through and assigned values for grades that were available.