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. Using the PowerSchool sync method to ingest the data categories below enables you to light up core SDS capabilities for provisioning. It also allows you to enhance experiences for the Microsoft 365 products and features listed below.
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, review the Overview of SDS 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 SDS 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 > Plug-in Management Configuration > Install
Enter or select the plug-in installation file you created (.xml), and then choose Install. The plug-in will appear in the Installed Plug-ins section on the Plug-in Management Dashboard page. Make sure the plug-in is enabled. If it is not, choose the Enable option on the Plug-in Management Dashboard page.
On the Plug-in Management Dashboard page, make sure that the plug-in 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 SIS profile.
Make sure the REST endpoints are Internet accessible
SDS 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 SDS for a tenant which is synchronized from on-premises active directory through AADConnect, you may notice an increase in the number of disconnectors shown in your misclient. This is a result of Office 365 Group being unable to sync 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. 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 have installed the plug-in and set up access, create a profile in Microsoft SDS to synchronize your users' information.
SDS Access and First Time Login
To access the SDS 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 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 are 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.
If running with option for creating new users and wish to adopt V2.1 CSV, we will be releasing tooling that will help you prepare to support V2.1 CSV format as part of your transition for back to school. Watch for follow-up announcements and postings to the SDS Docs repository at https://aka.ms/sdsoverview.
Existing Users - Select this option if you already have user accounts created 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 or teacher has a username within PowerSchool, SDS will attempt to use that to generate an 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 Microsoft 365 Group and Class Team for each class synced. If you leave the box unchecked, SDS will only create the Microsoft 365 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 - If you do not see the “Sync to Insights” option when creating your sync profile, you have not performed the setup as part of SDS for Insights. You will need to complete the setup for enabling “Sync organizational data (preview)" to sync the user metadata, roles, classes, and organizational hierarchy with Education Insights Premium. To do so, click on the link that says “To continue setup and monitoring navigate to SDS for Insights.”
> At this time, single tenant with mixed formats (i.e. having V1 and V2 sync profiles actively running and both set to 'Sync to Insights') will not work.
- 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 the 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 are selecting attributes and options within the correct format. If matching a UserPrincipalName for example, you must select a 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 will 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 the 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: