Data Model Quirks and Supported Features - District Integrations
Handling Edge Cases in Clever Data
Data in Clever can experience a number of edge cases listed below. Although these are not typical cases, it's a good idea to be prepared for these to occur. If your integration cannot handle any of these cases, please reach out to Clever Support to create Data Warnings to avoid any errors in your sync.
Users (New to v3.0)
- Users are merged across employees of a district (District Admins, Staff, Teachers) only. This means that it's possible for two users to have the same email address if the email address is also associated with a Student or Contact.
- If a district changes email addresses for a record, this can cause a User record to get a new Clever ID or for a merged User to be split into multiple users.
- The full contact name will be stored in the
last_name
field of the user object.
General
- The district is the top-level object in Clever; even if a single school has signed up for an account, there will still technically be a district object for their account.
- Clever's strings have no maximum length (if you must specify a field length, we recommend 255 chars as a safe limit).
- Clever's strings support all UTF-8 characters.
- There isn't a normalization of email format (emails may be missing the '@' sign).
Terms
- Most districts do not send actual terms to Clever, so most are constructed from information on the section object. As such, districts must sync at least one of
term name
,term start date
, orterm end date
in order for a term to be created. - If all of the sections associated with a term are deleted or the term information changes, the term will be deleted (and potentially recreated).
- As of 1/31/18, term IDs are not stable, so if a term is deleted and recreated, it will have a new Clever ID.
Courses
Changes for Back to School 2023
Beginning in January 2023, Clever is changing how we process course data to make courses more stable. If districts provide a
course_number
for a course, we will use it as the key ID for the course. This means that:
- If there are multiple courses with the same
course_number
, we will merge them into one course.- If changes are made to
course_name
butcourse_number
remains stable, we will update the course name instead of deleting and recreating courses.These changes are currently available on a per-district basis at request. If you have the need for merged courses based on course number, reach out to Clever Support
- Most districts do not send actual courses to Clever, so most are constructed from information on the section object. As such, districts must sync at least
course_name
in order for a course to be created. - If all of the sections associated with a course are deleted or the course information changes, the course will be deleted (and a new one may be created).
- As of 1/31/18, course IDs are not stable, so if a course is deleted and recreated, it will have a new Clever ID.
Sections
- Sections are the only way student and teacher associations are described in Clever. If a student or teacher is not enrolled in any sections, they will not be associated with any students/teachers.
- Sections must have at least one student.
- Sections are associated with a school, but the associated students and teachers in the section can be enrolled in any school in the district.
- Sections can have only one primary teacher, and up to 9 additional co-teachers.
- There is no limit to how many students may be enrolled in a section.
- Section names are not guaranteed to be unique.
- Section grade might not match all students' grades.
Students
- Students can be enrolled in multiple sections.
- Students might not be enrolled in any sections.
- Students can be enrolled in sections in multiple schools.
- Students can be enrolled in sections that contain other students and teachers that are not associated with their primary school.
Teachers
- Teachers can teach multiple sections.
- Teachers might not teach any sections.
- Teachers can teach sections in multiple schools.
- Teachers can teach classes that contain other students and teachers that are not associated with their primary school.
School Administrators
- School administrators can be in multiple schools.
- School administrators do not have a primary school association (there is only a
schools
field, not aschool
field at the/school_admins
endpoint).
Contacts
- Not a guaranteed field from Clever.
- Contact type is not consistent (type varies from SIS to SIS).
- Information might be limited to one contact per student.
- The full contact name will be stored in the
last_name
field of the user object.
Updated about 1 month ago
What’s Next