Infinite Campus API Sync
  • 28 Aug 2023
  • 3 Minutes to read
  • Dark
    Light

Infinite Campus API Sync

  • Dark
    Light

Article Summary

For Studio and IDHub, RapidIdentity pulls data from Infinite Campus via the OneRoster Provisioning API, which is free for districts.

In order to sync your data through the OneRoster API you'll need to make sure your Infinite Campus is on version 1733 or higher.
  • Districts using OneRoster provisioning prior to Campus 1733 are free to continue using it
  • District who were not using OneRoster provisioning prior to Campus 1733 may contact Campus Support to have the functionality enabled

Infinite Campus API Sync Details:

  • Runs 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 RapidIdentity (see below)
  • RapidIdentity only has access to OneRoster compatible fields made available by Infinite Campus.
  • The available fields can be found here.

Requirement: User (Portal) Accounts

In order for a person to be accessible in the Infinite Campus OneRoster API (and thus synced to RI) the person needs a User (Portal) account in Infinite Campus.

For documentation on creating user accounts, please review this documentation. To create user accounts in bulk, please review this documentation.

To verify if a person has a user account, search for the user in Infinite Campus. If the person has a username, they have a user account. In the example below, "Amelkin, Federique" has a user account but "Freda, Irene" does not. As a result, "Freda, Irene" will not be accessible to Clever via the Infinite Campus OneRoster API. To add a user for a person, click Add User.

Screenshot 2023-08-25 at 11.23.41 AM.png

Setup

Step 1: Obtain API credentials

In order to configure the API sync you'll first generate API credentials in Infinite Campus:

  1. Navigate to Instruction > Settings > Digital Learning Application Configuration (or System Administration > Learning Interoperability in the Classic Navigation)
  2. Click 'Add Application', scroll to the bottom, and click 'Connect to Other Applications'
  3. Enter 'RapidIdentity' as the application name

image.png

  1. Click 'Generate New OneRoster Connection'

image.png

  1. For OneRoster version, select 'OneRoster 1.1 with OAuth 2.0' and click 'Generate':

image.png

  1. Share ClientID, Client Secret, Base URL and Token URL

image.png

Step 2: Enter API Credentials in RapidIdentity

One the API has been configured in Infinite Campus, please take the credentials for the API and enter them into the Sync Settings page in your Studio or IDHub Source Dashboard. If the Infinite Campus Source Application has not been added to your Studio Applications, please install from the App Library first.

  • Base URL: Enter the base URL copied from Infinite Campus
    • For your OneRoster v1.1, the URL should look like this: https://domain.infinitecampus.org/campus/oneroster/identityautomationtest/ims/oneroster/v1p1/
  • Client ID: Enter the Client ID copied from Infinite Campus
  • Client Secret: Enter the Client Secret copied from Infinite Campus
  • Confirm the credentials by clicking the blue 'Test Connection' button at the bottom of the screen. If the test is successful, proceed to syncing the data.

Step 3: Import Data

When you are ready to complete the first import of data from Infinite Campus, expand the 'Jobs' tab in the left navigation bar and click on 'All Jobs'.


Locate the Infinite Campus Source App, and use the Kabob Menu Icon or a right click to open the menu seen below. Select 'Run' to initiate an import of data. 




Troubleshooting

Record TypeTroubleshooting
Student
  • Must have an active Infinite Campus User (Portal) account
  • Check that the student's Enrollment = ActiveMake 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
Student Contacts
  • Must have Infinite CampusUser (Portal) account
  • Also have to be listed as Type = Guardian
  • Each guardian must have the "Portal" checkbox checked under their student's relationship tab
Teacher
  • Must have an active Infinite Campus User (Portal) account
  • Check that EmploymentAssignment = Active
  • Check that the District Assignment start and end dates are valid
  • Assignment must be flagged as Teacher (Users > Status / Role)
StaffThe users District Assignment in Infinite Campus must meet all the following requirements:
  • Start Date and End Date are inclusive of current date
  • Username field must be populated
  • The record must have an email address
  • At least one flag other than 'Teacher' checked. 'Teacher' can be checked. (If 'Teacher' is checked, both a teacher and staff account will be provisioned for the user.)
School
  • 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
Section
  • 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

Was this article helpful?