Kamar API

Overview - Kamar API

Are you sure you want to remove this component?

The Kamar API populates the School User Data Store (SUDS) with user profile and timetable information.

Once SUDS has been populated, the User Provisioning System (UPS) is able to run as a scheduled process for the creation of and ongoing updates to a user’s Schoolbox Profile. A user's timetable and profile page (that directly rely on the Kamar API data in SUDS) will surface the most recently uploaded information as per the schema and do not require the UPS to have completed its scheduled run (though caching of data may delay this). 

NOTE: Due to the duration that the import of data can take, it is recommended that an hourly sync is NOT used.

It is recommended that an import is conducted after midnight to ensure that SUDS is populated with the correct timetable day and to gather current profile data (including new starters). The completion of this import should precede the User Provisioning System’s scheduled run. An additional import before the start of the school day may be utilised to present changes made to the timetable for cover lessons and room changes that may have been made in the SIS that day. A final import after working hours can also be utilised to update any changes made by the SIS administrators that day.

Kamar Setup

Are you sure you want to remove this component?

To configure Kamar to work with Schoolbox you first need to:

1. Navigate to Sever > Directory Services > Services within Kamar. 

2. Create a new service called Schoolbox and enter the following details:

- Address: Your schoolbox instance path with /api/kamar.php appended eg. schoolbox.myschool.cloud/api/kamar.php

- Port: 443

- Enable: Use SSL

- Timeout: 30

- Username: schoolbox

- Password: Set a strong password here and note down as will be required for Schoolbox configuration

- XML format

- Tick full details for students and Staff

- Tick all subjects for Staff

- Tick timetables for Student and Staff

- Tick School 1

image.php?hash=3522bfc41f7005576f4da2407f5615d1b834acfa

To configure Schoolbox: 

1. Navigate to Administration -> School Data Import.

2. Update the drop down to Kamar.

3. Enter the endpoint host as /mnt/data/schoolbox/cache/stream/kamar

4. Set the 'School data endpoint key' as the password defined in Kamar

5. Change import frequency to 'none'.

 

To configure your Schoolbox timetable definition (Important for first setup and rollover process):

1. Navigate to Administration > School Data import.

2. Change the dropdown to CSV.

3. Click 'Timetable Structure'.

4. Click 'Download Template'.

5. Complete Template.

6. Upload.

7. Navigate to Administration > School Data import.

8. Change the dropdown to Kamar. 

9. Save.

  • The School User Data Store (SUDS) and its Schema

Where does the Parent ID come from

Are you sure you want to remove this component?

For families with two or more students:

The external ID for the parents inside Schoolbox is based on a value called "Sibling Link" if there are siblings in the system. For example, we have two brothers:

  • Kevin Smith has a User ID of 20104
  • John Smith has a User ID of 20103

 

However, they both share a sibling link of 201900105504 which is what determines they are part of a family. 

This sibling link is then used to determine the parents IDs by first stripping the year, in this example leaving 00105504.  Then the starting zeros are trimmed, leaving 105504. 

 

The Caregiver index is then added to it which in this case is:

  • Caregiver 1: Jame Smith = 105504-1
  • Caregiver 2: David Smith = 105504-2

 

Families with a single student:

For those families, there is no sibling link, thus the external ID is generated by using the student's external ID. For example:

  • Janette Doe has a user ID of 20107

 

To determine the parent ID we use the student ID and attach the caregiver number:

  • Caregiver 1: Jane Doe = 20107-1
  • Caregiver 2: John Doe = 20107-2