How is data in Senior Systems mapped when it is imported into PowerSchool Learning?
When using plug and play integration with the Senior Systems Student Information System, PowerSchool Learning has to make some assumptions about how your data is stored and how it should be imported. Below, you can find details based on each type of information coming from Senior Systems. The "PowerSchool Learning Values" listed in the first column of each table use the format of the PowerSchool Learning Full Import Specification.
Student Mappings
PowerSchool Learning Values | Senior Systems |
external_id | person -> entity_no |
first_name | person -> first_name |
middle_init | person -> middle_name |
last_name | person -> last_name |
suffix | person -> suffix |
nickname | person -> preffered_name |
login | person -> web_user_id |
password | |
person -> student_email | |
user_type | "S" |
organization_id | Choice of first student_current_school from the person -> student_accounts |
enabled | "1" |
display_id | |
google_email_address | Checks that the email listed in email is a part of the list of Google domains and if it is lists it here |
Note: We are only importing students who have a value of 'Student' for the "Student Group."
Teacher Mappings
PowerSchool Learning Values | Senior Systems |
external_id | person -> entity_no |
first_name - person | first_name |
middle_init | person -> middle_name |
last_name | person -> last_name |
suffix | person -> suffix |
nickname | person -> preffered_name |
login | person -> web_user_id |
password | |
email1 in the address entry that has :internal_address_code=>"FP" | |
user_type | "T" |
organization_id | Searches through all the classes taught by a teacher and chooses the org id for the school with the most classes. If there is a tie, the first school listed will be chosen. If there are no classes, leaves empty string. |
enabled | "1" |
display_id | |
google_email_address | Checks that the email listed in email field is a part of the list of Google domains. Lists here if so. |
Note: Regarding faculty email and Google Apps SSO authentication, if a faculty member is also a parent/constituent/alumni then the email brought over may not be their desired Google email address. In this case, once a user is set to use Google Apps SSO authentication they can only be removed manually. If they are not automatically set to this authentication via the import, the user can be set manually and following imports will not change this authentication type (implemented 3/15/14).
Parent Mappings
PowerSchool Learning Values | Senior Systems |
external_id | person -> entity_no |
first_name | person -> first_name |
middle_init | person -> middle_name |
last_name | person -> last_name |
suffix | person -> suffix |
nickname | person -> preffered_name |
login | person -> web_user_id |
password | |
Chooses email2 if the parent_name_group="NAME2" or email1 for all others. | |
user_type | "P" |
organization_id | |
enabled | "1" |
display_id | |
google_email_address | Checks that the email listed in email field is a part of the list of Google domains. Lists here if so. |
Organizational Mappings
PowerSchool Learning Values | Senior Systems |
external_id | school -> school_id |
name | school -> school_name |
organization_id |
Class Mappings
PowerSchool Learning Values | Senior Systems |
external_id | section > course_id + "-" + section_no + "-" + school -> year Year is appended since section ids are reused from year to year and PowerSchool Learning needs to have unique ids for each year. |
name | section -> full_name |
shortname | section -> course_name + "_" + section -> section_id Section id is appended because any sections have the same course name |
description | section -> description |
code | section -> abbreviation + "_" + section -> section_id Section id is appended because many sections have the same abbreviation |
year | school -> year |
teacher_id | chooses the first id in section -> faculty_i_ds Adjustments to handle co-teachers |
organization_id section | school_id |
Parent Child
These are mapped from the parent records. We ask that Senior Systems also include students and send a student's personal records alongside the parents'.
PowerSchool Learning Values | Senior Systems |
parent_id | parent id from from parent mappings person -> entity_no |
child_id | from parent record person -> students -> student_id (this is taken from the first student account) -> which is used to find the student's entity_no |
Roster
For each section at a school we make a request to get the roster for that section.
PowerSchool Learning Values | Senior Systems |
eclass_id | see course id in class section above |
user_id | see student id in student section above |
role | "S" |