Canvas Mapping Notes
Resource Mappings
| Canvas Resource | Data Model Entity | Business Logic Notes |
|---|---|---|
| Assignments | Assignment | - |
| Submissions | AssignmentSubmission | - |
| Enrollment.grades | LMSGrade | The SourceSystemIdentifier and LMSGradeIdentifier are going to be be a concatenation of g# and the ID of the enrollment. |
| Sections | LMSSection | - |
| Users | LMSUser | For now the extractor is only exporting students. |
| Authentications Log | LMSSystemActivity | The SourceSystemIdentifier is going to be a concatenation of (("in" if it is a sign-in) or ("out" if it is a sign-out)) + # + User.Id + timestamp for the event. Examples: in#111#2021-02-08T21:21:41Z out#111#2021-02-08T21:21:48Z |
| - | LMSSectionActivity | There's no section activity information being extracted at this moment. |
| Enrollments | LMSUserLMSSectionAssociation | - |
Canvas Enumerations
The following enumerations and value sets for Canvas are based on the Canvas API documentation.
| Enumeration | System Values | Equivalent LMS UDM Attribute |
|---|---|---|
| courses.enrollment_type | teacher student ta observer * designer | LMSUser.UserRole |
| courses.enrollment_state | active invited_or_pending * completed | LMSUserLMSSectionAssociation.EnrollmentStatus |
| courses.state | unpublished available completed deleted | LMSSection.LMSSectionStatus |
| assignments.submission_type | online_quiz none on_paper discussion_topic external_tool online_upload oneline_text_entry online_url * media_recording | Assignment.SubmissionType |
| discussion_topics.discussion_type | side_comment threaded | LMSUserActivity.ActivityType |
| enrollments.state | active invited creation_pending deleted rejected completed inactive current_and_invited current_and_future current_and_concluded | LMSUserLMSSectionAssociation.EnrollmentStatus |
| submissions.submission_type | online_text_entry online_url online_upload media_recording * basic_lti_launch | Assignment.SubmissionType |
| submissions.workflow_state | submitted unsubmitted graded pending_review | AssignmentSubmission.SubmissionStatus |
Mappings to ODS Tables
| Object | Canvas API elements | ODS Column |
|---|---|---|
| User | User.sis_user_id | edfi.Student.StudentUniqueId |
| Section | Section.sis_section_id | edfi.Section.SectionIdentifier |
| Assignment | Section.id + Assignment.id | lmsx.Assignment.AssignmentIdentifier |
| "Canvas" | lmsx.Assignment.LMSSourceSystemDescriptorId | |
| Assignment.name | lmsx.Assignment.Title | |
| "assignment" | lmsx.Assignment.AssignmentCategoryDescriptorId | |
| Assignment.description | lmsx.Assignment.AssignmentDescription | |
| Assignment.unlock_at | lmsx.Assignment.StartDateTime | |
| Assignment.lock_at | lmsx.Assignment.EndDateTime | |
| Assignment.due_at | lmsx.Assignment.DueDateTime | |
| Assignment.points_possible | lmsx.Assignment.MaxPoints | |
| Submission | Submissions.id | lmsx.AssignmentSubmission.AssignmentSubmissionIdentifier |
| Submissions.late + Submissions.missing + Submissions.graded_at | lmsx.AssignmentSubmission.SubmissionStatusDescriptorId | |
| Submissions.submitted_at | lmsx.AssignmentSubmission.SubmissionDateTime | |
| None | lmsx.AssignmentSubmission.EarnedPoints | |
| Submissions.grade | lmsx.AssignmentSubmission.Grade |