- Runs every six hours, by querying the OneRoster API
- Syncs all students who are designated as "active today" (activeToday = 1)
- Syncs all active staff members (employment.active = 1)
- Supports co-teachers for sections (sectionInfo_teacherPersonID, sectionInfo_teacher2PersonID, etc)
- Students and teachers need Infinite Campus Portal accounts in order to sync to Clever (see below)
- Clever only has access to OneRoster compatible fields made available by Infinite Campus.
- The available fields can be found here
Requirement: Portal Accounts
In order for students and teachers to be accessible in the IC API (and thus synced to Clever) they will need to have IC Portal accounts created.
To batch create IC Portal accounts, you have a couple of options:
1. System Administration > User Security > Student Accounts > Add Students > Change Accounts
This option creates all accounts with a default username and password, and must be completed separately for each school site.
2. System Administration > User Security > Batch and Import Wizard > User Account Batch Import Tool
With this method, when new users are created in IC you'll need to grant them IC Portal access in order for them sync to Clever.
Setting up the API sync
1. Obtain API credentials
In order to setup the API sync you'll obtain your API credentials from your Infinite Campus instance. You'll be able to do this by logging into Infinite Campus:
System Administration > Learning Interoperability > OneRoster Provisioning
There you'll create a OneRoster vendor record:
- Click New to create a new credential record.
- Enter a Vendor Name.
- Enter a Consumer Key following the hard-coded prefix.
- Leave OneRoster API selected as the Realm.
- Modify the Token Expiration Date if desired. Do not exceed 13 months from the current date.
- Leave the Status as Active.
- Click Save to finish.
2. Change sync type of Clever account
If you already have a Clever account and are switching to the API sync, please contact Clever Support . In your message, please specify which version of OneRoster (v1 or v1.1) you would like to use. Our team will need to switch your account sync type before you can move forward. If you signed up for a new account, the IC API sync will be the default sync type for your account and no switch needs to be made. You're free to move on to the next step!
3. Enter API credentials in Clever
Once your account's sync type is the IC API sync, please take the credentials for the API and enter them into the Sync Settings page in your Clever Dashboard:
- Web URL: API Host Name (should include "learningdata" and the API version)
- If you wish to use OneRoster v1, enter the URL ending in "/v1"
- If you wish to use OneRoster v1.1, enter the URL ending in "/v1p1"
- Username: Consumer Key (the hard-coded prefix + the text you entered)
- Password: Consumer Secret
Push "Sync Now" on the Sync Settings page to kick off the initial IC API sync!
If the record (student, teacher, section) is in Clever but data is missing or incorrect for the record (i.e. incorrect email, missing username), navigate to the Sync > Settings page in your Clever Dashboard. Under Sync Controls, click on View defaults
Here you can view which fields Clever is pulling for each record and field. In the below example:
- If a teacher's email address was incorrect, confirm the email is correct in the "contact.emaill" field in Infinite Campus
- If a teacher is missing State_teacher_id, you will see that Clever does not have this data available to us via the OneRoster API. Please contact Clever Support to see what options may be available to pull this data.
If an entire record is missing, we recommend checking the following:
- Must have an active Infinite Campus portal account
- Check that the student's Enrollment = Active
- Make sure the student's enrollment start and end dates are in the active school year
- The student's enrollment must not be flagged as a no show
- The student must have person and current identity records
- Make sure the student has a valid grade level designation
- The following data items associated with the student’s enrollment must not be marked external LMS exclude: School, Calendar, Schedule Structure, Enrollment, and Grade Level
- Must have an active Infinite Campus portal account
- Check that EmploymentAssignment = Active
- Check that the District Assignment start and end dates are valid
- The API sync only pulls the Primary master schedule, so if you have more than one master schedule at a site, each must be created as their own school instance
- Check active status: District.Inactive !=1 or District.Inactive is null
- Check active status: Trial.Active=1 + Course.Active=1 + SchoolYear.Active=1
- Check whether the section's term is current
- Section must have a primary teacher and there must be at least one student enrolled
School Year/Term Rollover
The Infinite Campus API sync requires that students be active in order to be synced through the API.
Once a school year ends, students are no longer active in Infinite Campus. This causes the synced data to no longer include enrollments or student files. You may see the following error in your Dashboard: "Encountered zero students data".
Once students and other record types are marked "Active" in Infinite Campus for the next school year, the sync will resume as expected.
Alternately, Clever will pull data 21 days prior to the beginning of the district's next active academic session. For example, if school begins on August 22nd, Clever will pull the upcoming data on August 1st.
To preserve access for your users between school years, Clever recommends that you put your sync on pause during the summer to prevent deletions.
Default Field Mappings
Below are the default field mappings for Infinite Campus OneRoster API sync that are managed by Clever. If your district uses the Infinite Campus Auto Sync to sync data to Clever, please see this article.
- If a field is blank, the field is either not pulled by default, or not accessible to Clever
- If you want to change a field mapping, please contact Clever Support to learn what options are available.
- If a field is not coming through with the correct value, Clever Support may need to complete a value mapping. This is common for: Grade, FRL_Status, ELL_Status, and IEP_Status.
|Teacher_ID||SectionStaffHistory.PersonID (must have "P" in SectionStaffHistory.StaffType field)|
|Teacher_2_ID, Teacher_3 ID, etc.||SectionStaffHistory.PersonID (secondary teachers will need to have "T" in the SectionStaffHistory.StaffType field)|
|Name||Clever-generated: Course.Number + Section.Number + Course.Name|
|Grade||Clever generated using average grade level of students enrolled|
|Subject||Course.CoreSubject - if not core then course.subjectType|