LMS Connect - Core Concepts
Key Entities and Data Model
The grade passback API contains two new object types that don’t appear in the Clever Data API Schema: Assignments and Submissions.
An assignment is an activity that can be completed by a student. Amongst other fields, it includes a due date as well as a potential score. A submission is a specific student’s attempt at completing the assignment.
The fields and values listed here show the possibilities of what could be returned in the API response. Fields and values that are not defined in the above "Endpoints" section are read-only and cannot be modified via the API.
Assignment
Resource | Property | Type | Description | Additional notes | Guaranteed |
Assignment | id | String | UUID for assignment. Used in API calls (ex/v3.1/sections/4fee004cca2e43cf27000007/assignments/00000000-0000-0000-0000-000000000000) | UUID | Y |
Assignment | created | Date | Resource creation date. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | Y |
Assignment | last_modified | Date | Last time resource was updated. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | Y |
Assignment | title | String | The assignment's title. | Y | |
Assignment | description | String | The assignment description. | Y | |
Assignment | state | String | The assignment state. | Possible values: ["draft", "scheduled", "open", "locked"] | Y |
Assignment | attachments | List of attachments | List of attachments associated with the assignment. | N | |
Assignment | assignee_mode | String | Indicates whether all or individual students in a section are associated with an assignment. | Possible values: ["all", "individuals"] | N |
Assignment | assignee_ids | List of ObjectIDs | List of IDs of users associated with the assignment. Used when the assignee_mode is "individuals". | N | |
Assignment | due_date | Date | Indicates when new submissions are late for the assignment. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | Y* (null is possible if teacher manually creates assignment) |
Assignment | display_date | Date | Indicates when the assignment becomes visible to students. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | N |
Assignment | start_date | Date | Indicates when submissions begin to be accepted for the assignment. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | N |
Assignment | end_date | Date | Indicates when submissions are no longer accepted for the assignment. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | N |
Assignment | points_possible | Number | The number of points possible for the assignment. | N | |
Assignment | grading_type | String | The assignment's grading type. | Possible values: ["points", "percent", "pass_fail", "letter_grade"] | Y |
Assignment | grading_scale | List of grading scales | List of grading scales including the allowed letter grades and the point value of each. Used when the grading_type is "letter_grade" | N | |
Assignment | submission_types | List of submission types | List of submission types accepted by the assignment. If not specified, providers may not accept submissions. | Possible values for submission types: ["link", "file", "text", "discussion"] | N |
Assignment | max_attempts | Number | The maximum number of attempts a submission for an assignment can have. | N | |
Assignment | term_id | ObjectID | Globally unique and stable id for term associated with the assignment. | N |
Submission
Resource | Property | Type | Example Data | Description | Additional notes | Guaranteed |
Submission | id | String | "00000000-0000-0000-0000-000000000000" | UUID for submission. Used in API calls (ex/v3.1/sections/4fee004cca2e43cf27000007/assignments/00000000-0000-0000-0000-000000000001/submissions/00000000-0000-0000-0000-000000000000) | UUID | Y |
Submission | created | Date | "2022-01-27T17:10:09.702Z" | Resource creation date. | Y | |
Submission | last_modified | Date | "2022-01-03T20:49:09.233Z" | Last time resource was updated. | Y | |
Submission | state | String | "submitted" | Submission state. | Possible values: ["created", "submitted", "returned", "reclaimed"] | Y |
Submission | flags | List of submission flags | ["missing"] | List of submission flags. | Possible values in list of flags: ["missing", "late", "excluded"]. List can be empty. | N |
Submission | attachments | Attachment Object | [ { "attachments": { "type": "link", "url": "URL example" }, "created_date": "2022-01-27T17:10:09.702Z" } ] | Latest submission attempt the assignee has made. | N | |
Submission | grade_comment | String | "Example comment" | Optional comment for the submission, provided by the grader. | N | |
Submission | grade_points | Number | 80 | Submission's grade in numerical representation, if applicable. | N | |
Submission | grade | String | "B" | Submission's grade in string representation, if applicable. | N | |
Submission | extra_attempts | String | The number of extra attempts the assignee has for the submission beyond the assignment's max_attempts. | N | ||
Submission | override_due_date | Date | "2022-01-29T23:59:59.000Z" | Indicates when an assignment submission is due for the associated assignee. Overrides the assignment due_date. | ISO 8601 format in UTC time: YYYY-MM-DDThh:mm:ss.sssZ | N |
Submission | assignment_id | UUID | "00000000-0000-0000-0000-000000000000" | UUID for assignment. | Y | |
Submission | grader_id | ObjectID | "4fee004cca2e43cf27000007" | Globally unique and stable id for user assigned as grader for the submission. | N | |
Submission | user_id | ObjectID | "4fee004cca2e43cf27000007" | Globally unique and stable id for user assigned to the submission. | Y |
Data Flow
Updated about 2 hours ago