How to deploy School Data Sync by using PowerSchool SIS API
PowerSchool is a Student Information System (SIS) that integrates with School Data Sync (SDS). Using the PowerSchool sync method, you can connect directly to your SIS using the REST-based APIs provided by PowerSchool, and synchronize data directly instead of using CSV files. To set up SDS using the PowerSchool Sync method, follow the instructions detailed in this article.
Before you start synchronizing with SDS using the PowerSchool Sync method, read the Overview of School Data Sync and make sure you meet the following prerequisites:
An Office 365 for Education tenant
Global Admin Permissions
School Data Sync (Plan 1) enabled
The data that you provide through School Data Sync may be accessible to third-party application providers through their apps, so you should sync only the data that you want to make available to these third parties.
Install the REST API plug-in for PowerSchool
Before SDS can access data from your PowerSchool SIS, you must install the application plug-in below within PowerSchool and obtain OAuth credentials following these steps.
On your local computer, create an XML plug-in installation file with following content, and save the file as "plugin.xml".
<?xml version="1.0" encoding="UTF-8"?> <plugin xmlns="http://plugin.powerschool.pearson.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://plugin.powerschool.pearson.com plugin.xsd" name="Microsoft School Data Sync" version="1.0.0" description="Plugin for Powerschool REST API for Microsoft SDS"> <oauth></oauth> <publisher name="Microsoft Corp."> <contact email="email@example.com" /> </publisher> </plugin>
Sign in to the PowerSchool admin portal website using your System Administrator credentials.
On the start page, choose System from the main menu, then go to System Settings > Plugin Management Configuration > Install
Enter or select the plug-in installation file you just created (.xml), and then choose Install. The plug-in will appear in the Installed Plugins section on the Plugin Management Dashboard page. Make sure the plug-in is enabled. If it is not, choose the Enable option on the Plugin Management Dashboard page.
On the Plugin Management Dashboard page, make sure that the plugin is enabled.
Choose Data Configuration to view the OAuth credentials that were generated for the plug-in.
Record the values for the Client ID and Client Secret so you can enter these credentials when you create your School Information Sync profile.
Make sure the REST endpoints are Internet accessible
Microsoft School Data Sync must be able to reach your school's PowerSchool server. To make sure the server is accessible, open ports 80 and 443 from the Internet to your Powerschool server.
To validate that the endpoints are set correctly, check that you can open the PowerSchool server website pages from the Internet. For example, in your browser, go to (https://Powerschool.com/public/) and (http://Powerschool.com/public/).
About AADConnect deployment warnings
If you are configuring School Data Sync for a tenant which is synchronized from onpremises Active Directory through AADConnect, you may notice an increase in the number of Disconnectors shown in your miisclient. This is a result of Office 365 Group being unable to synchronize back to the AADConnect Metaverse and on-premises Active Directory. These warnings do not have any negative impact on your current AADConnect deployment, and only provide an informational note on the resultant sync failure. You should expect these warnings in AADConnect after enabling sync in SDS, as one Office 365 Group is created for each class synchronized through SDS.
Synchronize your SIS data using the PowerSchool sync method
Watch the video: Deploy School Data Sync
After you've installed the plug-in and set up access, create a profile in Microsoft School Data Sync to synchronize your users' information.
SDS Access and First Time Login
To access the School Data Sync Admin Portal launch a web browser, navigate to sds.microsoft.com, and then sign in using your O365 Global Admin account.
Create a Sync Profile and Sync your SIS Data
After logging in, click +Add Profile in the left hand navigation pane to create a Sync Profile.
On the Choose Connection Type page complete the form as appropriate. Once complete, click Start.
- Name this profile - Enter a name for your sync profile. This name will be used to identify the sync profile in the SDS Dashboard, and cannot be changed once the profile setup is complete.
- Choose your sync method - Choose between the sync methods shown. If you’re syncing using PowerSchool API, select the Connect via an API box and then select the PowerSchool API option.
- On the Sync Options page, select the appropriate option to create new users or sync existing users. Then complete your selections on the page as appropriate.
- Existing Users - Select this option if you already have user accounts create within your O365 tenant for each of the students and teachers contained within PowerSchool.
- New Users - Select this option if you want SDS to create user accounts for each of your students and teachers contained within PowerSchool.
If a student/teacher has a user name within PowerSchool, SDS will attempt to use that to generate their account.
If that username is not available then it will create one in the following format:
Web Access URL - This is the base URL for your PowerSchool SIS which is Internet accessible.
client Id - This is the client Id recorded in the Install the REST API plug-in for PowerSchool section of this article.
client secret - This is the client secret recorded in the Install the REST API plug-in for PowerSchool section of this article.
Select schools to sync - This option allows you to select the school you want to sync from PowerSchool.
School properties - After uploading your CSV files, the attributes contained within your School.csv will be auto- selected. You should validate the attributes selected here are the same attributes contained in your School.csv
Section Properties - After uploading your CSV files, the attributes contained within your Student.csv will be auto-selected. You should validate the attributes selected here are the same attributes contained in your School.csv
Filter inactive properties - Checking this box will only sync active records.
Team Creation Option – Checking this box will ensure SDS creates both the M365 Group and Class Team for each class synced. If you leave the box unchecked, SDS will only create the M365 Groups.
Replace unsupported characters - Checking this box will automatically replace unsupported characters with supported ones.
Sync option for Section Group Display Name - Checking this box will allow teachers to control the section display name after the first sync, and prevent SDS from overwriting Section DisplayName changes made by teachers.
Sync to Insights - Preview - Checking this box will combine SDS Sync Profiles data with User Activity data from Microsoft 365 applications, providing educators and leaders with valuable analytics information in the Team's Insights app. If you do not see the "Sync to Insights" option, go to the Settings page in the SDS Admin Console and enable "Insights" and "Sync to Insights." If you do not see Sync to Insights - Preview on the SDS Settings page as an option under Manage Education Analytics please follow these instructions to request to participate.
Delay Student Access - Enabling this option will allow you to set a future date for students to view their classes. Disable this option to allow students view their classes immediately.
When should we stop syncing this profile? - You will typically want to do this at the end of the school year. Once we stop syncing this profile, you will have the option to retire the classes associated with this profile.
- On the Teacher options page, select the appropriate identity matching options, confirm the teacher properties are selected, then click Next.
- Primary Key (Target Directory) - This is the User attribute in Azure AD used for SDS Identity Matching. Watch the Identity Matching video for additional information on how to select the appropriate target directory attribute, and properly configure the identity matching settings for the teacher.
- Domain (optional) - This is an optional domain value that you can add to the selected Source Directory attribute to complete your Teacher Identity Matching. If you need to match to a UserPrincipalName or Mail attribute, you must have a domain included in the string. Your source attribute must either include the domain already or you can append the appropriate domain to the source attribute using this dropdown menu.
- Primary Key (Source Directory) - This is the Teacher attribute in PowerSchool used for SDS Identity Matching. Watch the Identity Matching video for additional information on how to select the appropriate source directory attribute, and properly configure the identity matching settings for teacher.
- On the Student options page, select the appropriate identity matching options, confirm the student properties are selected, and then click Next. SDS will check to ensure you're selecting attributes and options within the correct format. If matching a UserPrincipalName for example, you must selecta source directory attribute which is in the format of a UserPrincipalName (firstname.lastname@example.org) or you must choose to append a domain to the source directory attribute to ensure proper formatting. If your selections are not in the proper format to complete a match, you'll see a red error displayed on the page.
- Primary Key (Source Directory) - This is the Student attribute in PowerSchool used for SDS Identity Matching. Watch the Identity Matching video for additional information on how to select the appropriate source directory attribute, and properly configure the identity matching settings for teacher.
- Primary Key (Target Directory) - This is the User attribute in Azure AD used for SDS Identity Matching. Watch the Identity Matching video for additional information on how to select the appropriate target directory attribute, and properly configure the identity matching settings for the student.
- Domain (optional) - This is an optional domain value that you can add to the selected Source Directory attribute to complete your Student Identity Matching. If you need to match to a UserPrincipalName or Mail attribute, you must have a domain included in the string. Your source attribute must either include the domain already or you can append the appropriate domain to the source attribute using this dropdown menu.
- On the Review page, ensure you've made the appropriate selections. If no additional changes are needed, click Create Profile. Once you create a sync profile, SDS will begin a pre-sync validation process. If any errors are found during this process, you will have the option to fix them and re-upload files before clicking the resume sync button and starting the real synchronization process. If you receive errors and choose not to update them, you can still choose to resume sync without addressing the errors.
Filtered State of PowerSchool SIS API
Students and enrollments – SDS syncs some students based on school association and status.
- Not Synced
- Dropped Out
- Transferred Out
Teachers – SDS syncs some teachers based on school association, and staff type.
- Not Synced
- Lunch Staff
- Not Assigned
Classes and Schools- SDS syncs all within the selected school year.
Video: How to match source and target attributes for sync
For various examples of matching logic success and failure for sync, watch the Identity Matching video: