Operoo Wonde Sync - How does it work?

Operoo Wonde Sync - How does it work?

For Group and Community Editions


At Operoo, our developers often get asked how our Wonde sync works and what fields we use, so we decided to put this technical article together to try and answer some of those questions.

Wonde Documentation
We use this documentation for Wonde API v1.0 

How It Works
Every school will have a unique Wonde School ID. 
For the purpose of this article, we will use the Wonde School ID 'A1234'  

Interrogating Wonde EndPoints

Step 01
We interrogate the following Wonde URL:
We then use the retrieved data to display log entries, from the data field 'name'

Step 02
Getting staff, students and groups data from Wonde
We interrogate the following Wonde URLs:
  1. https://api.wonde.com/v1.0/schools/A1234/employees?include=employment_details,contact_details
  2. https://api.wonde.com/v1.0/schools/A1234/students?include=contacts,contacts.contact_details,permissions
  3. https://api.wonde.com/v1.0/schools/A1234/groups?include=students,employees
    the group data is then filtered to only have groups with 'type' of 'YEAR' or 'REGISTRATION'

Wonde data comes in the following format:
{ "data": [ <Item>, ... ] } 
Mapping Staff Data
From the data retrieved from the 'employees' URL, we translate each employee Item of the root 'data' array into a Operoo Staff Member. https://api.wonde.com/v1.0/schools/A1234/employees?include=employment_details,contact_details

We only bring to Operoo, Wonde employee records with the flag ['employment_details']['data']['current'] set to 'true'

This is the Staff mapping used:
Operoo Staff Member Data
Wonde Staff Item Data
integration_id
id
first_name
forename (and in its absence 'legal_forename')
last_name
surname (and in its absence 'legal_surname')
user_request_id
mis_id
request_email
contact_details['data']['emails']['work']

Mapping Student Data
From the data retrieved from the 'students' URL, we translate each student Item of the root 'data' array into an Operoo Student Member. https://api.wonde.com/v1.0/schools/A1234/students?include=contacts,contacts.contact_details,permissions

This is the Student mapping used:
Operoo Student Member Data
Wonde Student Item Data
integration_member_id
id
first_name
forename (and in its absence 'legal_forename')
last_name
surname (and in its absence 'legal_surname')
user_request_id
mis_id
request_email
best_contact primary email (or in its absence the first. See details below)
request_mobile_number
best_contact primary phone (or in its absence the first. See details below)

The best student contact is determined by the following:
  1. if there are contacts with the flag 'primary' set to 'true', choose the first one
  2. in its absence choose the first contact with the ['relationship']['relationship'] attribute set to 'Mother'
  3. in its absence choose the first contact with the ['relationship']['relationship'] attribute set to 'Father'
  4. in its absence choose the first where the attribute ['contact_details']['data']['emails']['primary'] has data
  5. in its absence choose the first where the attribute ['contact_details']['data']['phones']['primary'] has data
  6. in its absence choose the first where the attribute ['contact_details']['data']['phones']['phone'] has data
  7. in its absence choose the first contact
Student phone numbers and email addresses

Operoo syncs student email addresses and student phone numbers from Wonde.

Wonde has 5 types of phone numbers
  1. phone
  2. primary
  3. home
  4. work
  5. mobile

and 4 types of email addresses

  1. email
  2. primary
  3. home
  4. work

For students in Operoo we only display:

  1. the email address of type "home"
  2. the phone numbers of type "home" and "mobile"

Community Edition - Phone numbers
  1. Parents
    1. We sync the parent's phone numbers in the following order of preference.
                            1.  Primary
                        2. Phone
  1. Staff
    1. We don't sync staff phone numbers from Wonde.
    2. Staff can add/change their mobile phone number directly in Operoo Central

Group Edition - Phone numbers
  1. Student Contacts
    1. We sync all phone numbers
    2. Student contacts in Group Edition must have a first name and last name to sync successfully
  1. Staff
    1. We sync staff phone numbers in the following order of preference.
                            1. Mobile
                            2. Work
                            3. Primary
                            4. Phone

Mapping Groups Data

Community Edition
From the data retrieved from the 'groups' URL, we translate each groups Item of the root 'data' array into a Operoo Group.
Groups with no data in the 'name' attribute are skipped.

Mapping Year Groups Data
Only Groups with 'type' attribute having the value 'YEAR'

This is the Year Group mapping used:
Operoo Group Data
Wonde Group Item Data
integration_group_id
id
name
description (and in its absence 'name')
student_memberships
a compilation of the 'student_memberships' from Registration Groups with this year group id into parent_group_id

Mapping Registration Group Data
Only Groups with 'type' attribute having the value 'REGISTRATION'

This is the Registration Group mapping used:
Operoo Group Data
Wonde Group Item Data
integration_group_id
id
name
description (and in its absence 'name')
parent_group_id
the id of a year group, matching by similar group name, or no id
student_memberships
all the 'id' attributes from the ['students']['data'] array
Having a 'parent_group_id' will cause that group to be displayed on a tree level in Operoo

Group Edition
In Group Edition, the Groups description is taken from the "code" field in Wonde.  The "name" field is not used.

Step 03
Getting Student Photos

Mapping Student Data
From the data retrieved from the 'students' URL, we translate each student Item of the root 'data' array into a Operoo Student Photo.

The records with the flag ['permissions']['data']['photograph_student'] set to false' are skipped as Wonde is telling us we don't have permission to have that Student Photo on our website.

Step 04
Getting Staff Photos
We interrogate the following Wonde URL:

Mapping Staff Data:
From the data retrieved from the 'employees' URL, we translate each employee Item of the root 'data' array into a Operoo Staff Photo.
The records with the flag ['employment_details']['data']['current'] set to 'false' are skipped as Wonde is telling us this employee has left the School.


Additional information:

SIMS Profiles:
To sync both blue and white SIMS profiles into Operoo, make sure both profile types are synced from SIMS into Wonde.  Operoo will then sync the data from Wonde.


    • Related Articles

    • Syncing Pre-Admission students from Wonde

      For Group and Community Editions Important: This article is for Australian and UK schools only. Depending on the MIS/SIS, Australian and UK schools using Wonde to sync their data to Operoo can also sync their pre-admissions students, and ...
    • How does a school organise integration setup with Wonde (Community Edition)

      For Community Edition  ​ Wonde serves as the intermediary for Operoo to set up its integration with your School Management system.  Your school needs to notify their Operoo team member (Support /Sales/ CSM) that they’d like to organize integration ...
    • How does a school organise integration setup with Wonde (Group Edition)

      For Group Edition  ​ Wonde serves as the intermediary for Operoo to set up its integration with your School Management system.  Your school needs to notify their Operoo team member (Support /Sales/ CSM) that they’d like to organize integration with ...
    • Operoo Integration

      For Community and Group Editions How do you keep Operoo in sync with other systems? Operoo can be used as a stand-alone system or integrated with other systems. This article covers: methods to keep data in Operoo in sync with another system (eg. ...
    • Updating the "Source of permissions for Contacts (parents/guardians) on Student Records" (Wonde UK schools only)

      For Group Edition This guidance and process is only applicable to UK schools who use Group Edition and sync their data via Wonde. If you have any questions on either option, please contact the Operoo Support Team. In Operoo there are two types of ...