Learn how to configure an API connection in sync service.
What's included in this article?
- Create an API Connection in Sync Service
- Configure Mapping for your Connection
- Import Students via API Connection
- Send a Test Record
- Assign Connection to your School(s)
- Schedule the API Import
Creating an API Connection in Sync Service
An API connection (Application Programming Interface) is available in sync service to provide an automated import or export of data between Enroll and one of the SIS vendors below:
- PowerSchool
- Aeries
- Skyward Qmlativ
1. From within Enroll, navigate to sync service via Settings > Sync Service and log in.
- Permissions Note: Only Admins with "Sync Service Full Access" are permitted to create connections.
2. Click "Add Sync Connection" and Agree.
3. Enter a name for the connection: Select Aeries, PowerSchool, or Skyward from the API menu
4. Select the instance of Enroll you are connecting to: Sandbox or Production
PowerSchool API Connection
To obtain your PowerSchool connection details (Client ID, Client Secret) follow the steps below:
- Click "Download the SchoolMint Plugin for PowerSchool” and install the plugin needed for this integration
2. Open a new browser window and sign into your PowerSchool instance
3. Go to the PowerSchool Plugin Console under System > System Settings > Plugin Management Configuration.
4. Click the “Install” button in the upper right corner of the Plugin Management Dashboard.
5. Select the SchoolMint Sync for the PowerSchool plugin you downloaded (ps_plugin.xml) and click Install.
- A message is displayed that the SchoolMint Plugin was installed successfully.
6. Find “SchoolMint Sync Service” in the list of plugins on the Plugin Management Dashboard and enable it by selecting the Enable/Disable checkbox on the right.
7. Click “Enable” on the modal window, “Are you sure you want to enable the SchoolMint plugin?”
The plugin installation is completed when you see the message: “Plugin successfully enabled”.
8. To view the plugin API Credentials, click the plugin name “SchoolMint Sync Service”.
9. Click “Data Provider Configuration” in the Function column.
10. Copy and paste the API credentials (Client ID and Client Secret) into the API connection you are creating in Enroll Sync Service.
11. Click Connect.
Important Note: To export data from Enroll and send it to PowerSchool via API, each school receiving data must have the Years & Terms set in PowerSchool (e.g. semester, quarter, etc.) for the sync to complete. If terms are not set, you will see the following error:
You will set this up by going to the following page in your PowerSchool instance:
Start Page > School Setup > Years and Terms > Term Setup
Under Portions, set “1/2” for semester, “1/3" for trimesters, and “1/4” for quarters.
Aeries API Connection
To obtain the connection information for your Aeries connection, you will set up two different APIs:
- Standard API Setup is used to push data to the student’s record
- OneRoster API Setup checks if a student(must match the column header in the file exactly)has a valid record
You are looking for the following connection information:
- Certificate (Standard API)
- OneRoster URL(OneRoster API)
- OneRoster Consumer ID (OneRoster API)
- OneRoster Consumer Secret Key (OneRoster API)
Standard API Setup
1. Log in to Aeries
2. Click “Filter Pages” and enter “API Sec” to reduce the number of topics listed
3. Click “API Security”
4. Click “Add New Record”
5. Enter a name for the standard API connection in the Product Name field (e.g., SM Enroll).
Leave the Type field blank and click Insert.
6. Select the permissions needed for the data tables you are syncing from SchoolMint Enroll to Aeries.
At a minimum, select Read, Update, and Insert, for Student Data and Contacts.
- Select read permissions for any other tables you want to share with SchoolMint Enroll.
7. Select “Display Certificate Details” and copy the certificate for input into the Aeries connection in Enroll Sync.
Important Note: To export data from Enroll and send it to PowerSchool via API, each school receiving data must have the Years & Terms set in PowerSchool (e.g. year, semester, quarter, etc.) for the sync to complete.
One Roster API Setup
To create the One Roster API:
- Click “Add New Vendor/Product”. (Click “Add New Record” if you are starting with this OneRoster setup)
- Enter the name for the OneRoster API connection in the Product Name field (e.g., SchoolMint Enroll OneRoster)
- Open the Type menu and select OneRoster
- Enter the comment, “This connection is used to verify that the student has a record in Aeries.”
- Click Insert
- Select read permissions for Student Data
- Select “Display Consumer ID & Secret Keys for OneRoster”
- Copy the OneRoster URL, Consumer ID and Consumer Secret Key into the connection card in sync service and click "Connect"
Skyward Qmlativ API Connection
Refer to Skyward's step-by-step instructions for Enroll users to obtain access to Qmlativ's API, including:
- Integration Access Setup (creating the integration access record within Qmlativ)
- Enroll Integration Setup
Configure Mapping for your Connection
Click the "Configure Mapping" button on your API connection card,
and view the types of data that can be imported or exported:
- Import School Mapping
- Import Student Mapping
- Export Student Mapping
Clicking on an import/export type in the left sidebar surfaces configuration items to be completed.
Student Examples: Entering the Student Unique ID for up to five sample students allows you to view how the data will be displayed during the Field Mapping step
SAVE!
Download Field Codes
The "Field Codes" dropdown in the upper righthand corner of the page is available as a resource when creating Match Codes and Transformations on the Field Mapping tab. CSVs are available for download to provide information on how data is stored in Enroll and in your SIS for items such as: custom fields, states, countries, languages, race, ethnicities, etc.).
Import Students via API Connection
Important Note: Using the API to import students will result in all students (including non-active/historical/graduated students) to be inserted into your Enroll instance. If you wish to filter which students need to be imported, we recommend importing via a flat file (SFTP or Ad Hoc). This way, you will only send students who are active. We also recommend sending non-active students who are still age-eligible to attend school.
The Field Mapping tab is where you will select which fields from your SIS correspond to the related field in Enroll. Transformations are available to format the data so it is stored in Enroll (or sent to your SIS) in your desired state.
Use the down arrow next to each category of data to expand the section to view all fields available for mapping:
- Student Information
- Guardian Information
- Emergency Contacts Information
- Custom Mapping
Within each section use the dropdown menu in the left column to select the field from your SIS that matches the corresponding Enroll field.
At a minimum, you must map the following fields when importing students:
- students.student_district_id
- students.fname
- students.lname
- students.DOB - (Must be in YYYY-MM-DD format. Use the “Date” transformation when mapping if the source date is in a different format)
- students.sis_school_year (If this field is not in your CSV file, Use the “Enroll School Year” or “Value Input” Transformations to input the current year).
- students_annual.sis_entrydate (If this field is not in your CSV file, Use the “Today” Transformation to input the current year)
Mapping Type column: Select if the data in the file will be mapped (included in the import/export) and how it should be mapped:
- Direct: data will be sent to Enroll exactly as it is formatted in the CSV file
- Transformation: data needs to be re-formatted in a specific way
- Match Codes: The values being imported are part of a set and each value in the file should be displayed as its corresponding/matched value
- Do Not Map: the field is not included in the import/export
Mapped Value column: This column previews how the data will be imported/exported based on the Mapping Type selected. This is a useful column to check your work on how you want the data formatted.
Overwrite column: If this is enabled (checked) for a field, the import will insert a null value in Enroll, replacing the existing field value in Enroll with a blank for each student in the CSV file. This is a useful option when correcting or removing erroneous data in a specific field for many students.
For Guardian fields, if Contacts are stored in your SIS with a one-to many relationship, use Contact Mapping.
SAVE!
Send a Test Record
Use the “Send Record” button to test importing one student record. The test record is the one being displayed in the “Mapped Value” column.
Preview the data to be imported. If it looks accurate, click “OK, Continue”.
- If you receive an error: "Organization does not accept Imports at this time" confirm in Enroll (Settings > General) that you have enabled importing of data for this school year.
Assign the Connection to a School(s)
Navigate to Settings > Schools/Programs > Manage Schools > Edit a School > Primary tab to select the API sync connection to be assigned to the school.
You also have the option to assign the same API connection to several schools at once using the Bulk Action > Set Sync Connection option.
Schedule the API Import
Once you have imported a student record successfully, you are ready to schedule the import of the rest of the data.
- Navigate back to the Sync Service Login page in Enroll
- Use the slider to enable “Schedule Import: Students” to import the file nightly
- Set the time of day for the import
- Click Save
Note: To turn on a non-production environment import (testing your import in sandbox), use the slider on the API connection card, confirming that it is pointing to Sandbox. The scheduled import to the non-production environment will turn off after one import.
Comments
0 comments
Article is closed for comments.