Visitor Aware supports syncing data via a OneRoster API ClassLink integration and by integrating directly with Student Information Systems either via a OneRoster API connection or via SFTP. For a full list of known Student Information Systems and their associated data syncing option, please reference this help article.
IMPORTANT - Please read before continuing:
- If ClassLink is an option for syncing data, we'd prefer to utilize this service for the data integration process. We've had great success consuming data through this vendor.
- If a OneRoster API connection is going to be used (ClassLink or SIS), please have your API credentials ready when meeting with our support representatives. This will help ensure a productive call.
- If you need assistance locating these credentials, please reach out to your SIS or ClassLink representative.
- Double check if your SIS needs to enable Visitor Aware's integration capability on their side. Some providers require their customers to reach out to enable this capability.
- Users need to be active, enabled, and associated with an active location to log into Visitor Aware.
- To ensure Visitor Aware consumes your data properly, please make sure the data is clean (no duplicates) and follows the correct format (described below).
SourcedIds
Each user (this data comes from the OneRoster /users endpoint) in your SIS data will have a unique SourcedId. This SourcedId is the primary key for each user and is used for updating and deleting the user.
If the same person exists in your SIS multiple times, Visitor Aware will see this as multiple different users. This is because each user has a different SourcedId. This will cause issues downstream because only one profile/user can exist in Visitor Aware.
Below is an example of the same person listed in SIS data multiple times. For best results, this should be cleaned up (NULLs removed, etc.) before sending your data to Visitor Aware.
Student Guardian Relationships
A relationship between a student and a guardian is tied together by an agentSourcedId (the classic primary key/ foreign key relationship).
The student record has a column called "agents." The value in the "agents" column is a comma-separated list of sourcedIds. Each sourcedId belongs to a guardian of the student.
Example Student Record
The inverse is true for the guardian (parent) record. The guardian record has a column called "agents." The value in the "agents" column is a comma-separated list of sourcedIds. Each sourcedId belongs to a student of the guardian.
Teachers who are also Guardians
If there are teachers that have student relationships within the district, it is very important to make sure there are separate email addresses assigned to the teacher as a:
- District employee/user accessing the software (https://app.visitor-aware.com/login)
- Guardian with student relationships assigned accessing their portal (https://app.visitor-aware.com/guardian/login
If the same email is provided for both the user and guardian aspects of the software, the guardian portal will not be accessible.
This is programmatically called out within the OneRoster specifications (https://www.imsglobal.org/oneroster-v11-final-specification#_Toc480452019) stating: "Note: Teachers MUST NOT be set as agents of students - the teaching relationship is covered via enrollments."
Role mappings between OneRoster and Visitor Aware
Below is an example of how the roles in OneRoster are mapped to the roles in Visitor Aware.
Role in OneRoster => Role in Visitor Aware
districtadministrator => administrator
systemadministrator => administrator
tenant administrator => administrator
administrator => site administrator
siteadministrator => site administrator
aide => operator
proctor => operator
teacher => teacher
Locations need to be active and be matched to the correct orgSourcedId
Student data is only synced when a Location is active and has been mapped to the matching orgSourcedId.
SIS (OneRoster) Org Data Sample
Example of Visitor Aware Location Mapping
Click here for more information on Location Mapping (see the heading: Mapping Your Data to the Correct Locations)