For Developers
Implementation Details
How the Integration Works
Edlink's integration with Schoology facilitates synchronization of key rostering data via periodic "syncs". The integration leverages the Schoology API endpoints to pull data and transform it into Edlink's unified data model. Schoology objects are mapped to Edlink objects through a standardized transformation process.
Data Mapping
Schoology Model | Edlink Model |
---|---|
Root School | District |
Buildings | School |
Grading Period | Session |
User | Person |
User | Agent |
Course | Course |
Course.subject_area | Subject |
Section | Class |
Section | Section (deprecated) |
Enrollment | Enrollment |
Documents | File |
Assignment | Assignment |
Grade | Submission |
Submissions | Submission |
Grading Rubrics | Rubric |
Rostering Details
- Edlink pulls most roster data from Schoology like courses, classes, people, and schools.
- Each section in Schoology is treated as an individual class in Edlink. This abstracts away sections for developers making it much easier to interact with them.
- Enrollments are mapped automatically, ensuring that people are placed in the appropriate classes without manual intervention.
Key Considerations
- Limited Historical Data: Schoology's API may restrict access to historical data, limiting roster imports to the current academic year. This is common amongst LMS providers.
- On-Demand Assignments+Grades: As opposed to our rostering data, we interface with the Schoology API on demand when Assignment or Submissions related endpoints are used. As such, those endpoints may be slower, but also closer to "real-time" since there is no sync process to wait on.
- User Token Submissions Only: While Edlink provides both a Graph API and a User API, due to rules enforced by the Schoology API, only students are allowed to submit work, which requires using the Edlink User API for that use case.