Gradebook History API

BETA: This API resource is not finalized, and there could be breaking changes before its final release.

API for accessing the versioned history of student submissions along with their grade changes, organized by the date of the submission.

A Grader object looks like:

{
  // the user_id of the user who graded the contained submissions
  id: 27

  // the name of the user who graded the contained submissions
  name: 'Some User'

  // the assignment groups for all submissions in this response that were
  // graded by this user.  The details are not nested inside here, but the
  // fact that an assignment is present here means that the grader did grade
  // submissions for this assignment on the contextual date. You can
  // use the id of a grader and of an assignment to make another API
  // call to find all submissions for a grader/assignment combination on 
  // a given date.
  assignments: [Assignment]
}
  

A Day object looks like:

{
  // the date represented by this entry
  date: '8/9/1986'

  // an array of the graders who were responsible for the submissions in this response.
  // the submissions are grouped according to the person who graded them and the
  // assignment they were submitted for.
  graders: [Grader]
}
  

A SubmissionVersion object looks like:

{
  // A SubmissionVersion object contains all the fields that a Submission
  // object does, plus additional fields prefixed with current_* new_* and
  // previous_* described below.

  // the id of the assignment this submissions is for
  assignment_id: 22604

  // the name of the assignment this submission is for
  assignment_name: "some assignment"

  // the body text of the submission
  body: "text from the submission"

  // the most up to date grade for the current version of this submission
  current_grade: "100"

  // the latest time stamp for the grading of this submission
  current_graded_at: "2013-01-31T18:16:31Z"

  // the name of the most recent grader for this submission
  current_grader: "Grader Name"

  // boolean indicating whether the grade is equal to the current submission grade
  grade_matches_current_submission: true

  // time stamp for the grading of this version of the submission
  graded_at: "2013-01-31T18:16:31Z"

  // the name of the user who graded this version of the submission
  grader: "Grader Name"

  // the user id of the user who graded this version of the submission
  grader_id: 67379

  // the id of the submission of which this is a version
  id: 11607

  // the updated grade provided in this version of the submission
  new_grade: "100"

  // the timestamp for the grading of this version of the submission (alias for graded_at)
  new_graded_at: "2013-01-31T18:16:31Z"

  // alias for 'grader'
  new_grader: "Grader Name"

  // the grade for the submission version immediately preceding this one
  previous_grade: "90"

  // the timestamp for the grading of the submission version immediately preceding this one
  previous_graded_at: "2013-01-29T12:12:12Z"

  // the name of the grader who graded the version of this submission immediately preceding this one
  previous_grader: "Graded on submission"

  // the score for this version of the submission
  score: 100

  // the name of the student who created this submission
  user_name: "student@example.com"

  // the type of submission
  submission_type: 'online'

  // the url of the submission, if there is one
  url: null

  // the user ID of the student who created this submission
  user_id: 67376

  // the state of the submission at this version
  workflow_state: "unsubmitted"
}
  

A SubmissionHistory object looks like:

{
  // the id of the submission
  submission_id: 4

  // an array of all the versions of this submission
  versions: [SubmissionVersion]
}
  

Days in gradebook history for this course GradebookHistoryApiController#days

BETA: This API endpoint is not finalized, and there could be breaking changes before its final release.

GET /api/v1/courses/:course_id/gradebook_history/days

Returns a map of dates to grader/assignment groups

Request Parameters:

  • course_id
    Integer

    The id of the contextual course for this API call

Returns a list of Days

Details for a given date in gradebook history for this course GradebookHistoryApiController#day_details

BETA: This API endpoint is not finalized, and there could be breaking changes before its final release.

GET /api/v1/courses/:course_id/gradebook_history/:date

Returns the graders who worked on this day, along with the assignments they worked on. More details can be obtained by selecting a grader and assignment and calling the 'submissions' api endpoint for a given date.

Request Parameters:

  • course_id
    Integer

    The id of the contextual course for this API call

  • date
    String

    The date for which you would like to see detailed information

Returns a list of Graders

Lists submissions GradebookHistoryApiController#submissions

BETA: This API endpoint is not finalized, and there could be breaking changes before its final release.

GET /api/v1/courses/:course_id/gradebook_history/:date/graders/:grader_id/assignments/:assignment_id/submissions

Gives a nested list of submission versions

Request Parameters:

  • course_id
    Integer

    The id of the contextual course for this API call

  • date
    String

    The date for which you would like to see submissions

  • grader_id
    Integer

    The ID of the grader for which you want to see submissions

  • assignment_id
    Integer

    The ID of the assignment for which you want to see submissions

Returns a list of SubmissionHistories

List uncollated submission versions GradebookHistoryApiController#feed

BETA: This API endpoint is not finalized, and there could be breaking changes before its final release.

GET /api/v1/courses/:course_id/gradebook_history/feed

Gives a paginated, uncollated list of submission versions for all matching submissions in the context. This SubmissionVersion objects will not include the new_grade or previous_grade keys, only the grade; same for graded_at and grader.

Request Parameters:

  • course_id
    Integer

    The id of the contextual course for this API call

  • assignment_id
    Integer, Optional

    The ID of the assignment for which you want to see submissions. If absent, versions of submissions from any assignment in the course are included.

  • user_id
    Integer, Optional

    The ID of the user for which you want to see submissions. If absent, versions of submissions from any user in the course are included.

  • ascending
    Boolean, Optional

    Returns submission versions in ascending date order (oldest first). If absent, returns submission versions in descending date order (newest first).

Returns a list of SubmissionVersions