For Developers

Implementation Details

Providers implement OneRoster in their own unique ways. It is not possible to guarantee that all providers will support the same functionality. This document lists common OneRoster functionalities that providers may support.

OneRoster 1.1 vs OneRoster 1.2

Whenever possible, we recommend using OneRoster 1.2 as it is the latest version of the standard and handles user roles more effectively.

Provider Specific Behaviors

  • Rediker:
    • When fetching organizations, Rediker includes a non-standard value type called "departments". In this case, the fetched organization is entered into the Edlink dataset as a department, rather than as a school or district.
    • In some cases, a Rediker source may designate all schools as departments. In cases where a query for Rediker organizations returns no entries of type "School", all entries marked as "Department" are entered into the Edlink dataset as schools.
  • Infinite Campus:
    • Infinite Campus has a nuanced relationship system where users can be marked as a relative. However, this doesn't automatically mean that they should have Guardian permissions in the Edlink system. People can be marked as relatives (aunt, uncle, sibling, etc.) without necessarily being a legal guardian with access rights to student data. To validate whether a user is a Guardian, Edlink checks to see if the user has a relative role assignment and has a corresponding agent relationship record with a Guardian relationship type (gathered from the relationships listed in the records returned from the entries from the users endpoint).

Provider Specific Limitations

Please refer to the specific provider docs for more information on the limitations of each provider.

  • Aspen does not support creating or updating categories.
  • Aspen, Blackbaud, and Skyward do not support listing categories by class.
  • Blackbaud does not support deleting categories.

Entity Mapping

OneRoster EntityEdlink Entity
OrgDistrict, School
Academic SessionSession
CourseDepartment, Subject, Course
ClassClass
EnrollmentEnrollment
UserPerson
User (Relationships)Agent
CategoryCategory
LineItemAssignment
ResultSubmission

Organizations associated with Users

We exclude organizations that were previously associated with users, retaining only their current and future organization relationships.

Custom Field Mapping

The following fields can be custom-mapped in our dashboard UI:

  • agent relationships