Adding Customer & Group

Adding a Customer

Being an Enterprise Admin, you can add a customer or multiple customers whom you want to get onboard to the Kitaboo portal. It is to be noted here that the institutions or the employees associated with you are actually your customers or partners.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Next, select any of the Onboarding types from the SSO Source dropdown menu.

NOTE: We use the SSO (Single Sign-on) authentication method that enables you to

securely authenticate with our multiple applications by using just one set of credentials.

Presently, Kitaboo Studio supports the following onboarding types.

● Kitaboo

● Google Classroom

● LTI 1.1

● LTI 1.3

● Clever

● Classlink

● Azure, and

● SAML

5. Select the Rostering Type from the dropdown menu. We have selected Kitaboo as the Onboarding type as well as the Rostering type in this example.

NOTE: Several Rostering type options are available corresponding to each Onboarding type. This information has been summarized in the table given below.

6. Check the Privacy Policy and Terms of Service box. > Click on Add.

This is how you can add a customer.

Let’s now explore how to add a customer with another Rostering type option, that is

OneRoster.

7. If you select OneRoster as the Rostering type, new fields like Sync Type, Match with, Sync Frequency, Suffix, Authorization, Client Partner ID, Consumer Key, Secret Key, and URL will appear.

8. Select one of the options from the Sync Type dropdown menu. We have selected Sync With API as the Sync Type in this example.

9. Select any of the options from the Match with dropdown menu. We have selected Identifier from the Match with list in this example.

10. Enter the other details in the respective fields. We have continued with the default Sync Frequency option, that is Manual, in this example.

11. Check the Privacy Policy and Terms of Service box. > Click on Add.

LTI 1.1 Customers

The Kitaboo Studio system enables you to add LTI 1.1 customers as well. Once you add an LTI 1.1 customer to the Kitaboo system, you also need to define the Rostering type for securely sharing class rosters and related data. You can either select Kitaboo or OneRoster from the Rostering type dropdown menu. Let’s see how to move forward with either of the two options.

 Adding an LTI 1.1 Customer

You are all set to add an LTI 1.1 customer with Kitaboo as the Rostering type. However, it is crucial to be aware of certain dependencies at the outset before setting up for LTI 1.1 integration.

Let us now see how to add a customer to an LTI 1.1 class with Kitaboo as the Rostering type.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Select LTI 1.1 as the Onboarding type from the SSO Source dropdown menu. > Select the Rostering type. > Check the Privacy Policy and Terms of Service box. > Click on Add. We have selected the Kitaboo option from the Rostering type menu.

Once you’ve added an LTI 1.1 customer, the LTI needs to be integrated with the Kitaboo system. Let’s see how to do it.

5. Click on the Customers filter. > Select SSO Type from the list.

6. Click on the SSO Type filter. > Select LTI 1.1 from the list.

7. Click on the More options icon against the customer you’ve added. > Select the

Get LTI Key option.

8. The information related to the highlighted fields, like Customer Key, Secret Key, URL will be generated by Kitaboo.

NOTE: Please click on the link below to know more about LTI integration.

Kitaboo_LTI_integrtion_2020

Important: You should not use the same LTI keys for multiple LMS. It should be unique to each LMS account to avoid data duplication or update for a user account.

Let’s now see how to integrate LTI 1.1 with Moodle.

9. Navigate to the LTI Moodle LMS and sign in with the admin credentials.

10. Click on Site administration on the left navigation pane.

11. Select Plugins.

12. Under Activity modules, click on Manage tools.

13. Click on Configure a tool manually.

14. Under Tool settings, enter the following information.

Tool name: Give the tool a name of your choice. For example: “We Learn”.

Tool URL: enter the “Launch URL” from the We Learn LTI application’s registration page.

LTI version: LTI 1.1 [NOTE: LTI 1.0/1.1 will be the default selection.]

Consumer Key, Secret Key, and URL will be generated and provided by the Kitaboo

system, kindly refer to point number 8.

15. Next, select Show as preconfigured tool when adding an … from the Tool

configuration usage dropdown. > Move to the Services section to complete the registration process.

16. It is Important to note that Kitaboo supports the following Custom parameter options that you can use in the Custom parameters box:

● Leave the Custom parameter box blank – It will take a user (Teacher or Student) to the Kitaboo Studio library.

● bookid – It will directly open the specific book for the users.

● collectionid – It will directly open the specific collection for the users.

Important: Remember that the custom parameter options are case sensitive. Hence use them the way they have been shown in the list above.

17. Click on Services. > Select Use this service to retrieve members’ information as per privacy settings from the IMS LTI Names and Role Provisioning dropdown.

18. Click on Save changes. The tool will now appear listed with the name (We Learn) you provided.

Let’s consider the following use case scenario when a book is launched from Customer’s LTI enabled LMS.

Type: POST  

Request Header:

Teachers and students can login to your LMS and launch a Digital Content. Let’s see how a user can launch a book on the Kitaboo Reader.

19. Navigate to the LTI Moodle website and log in with your User (Teacher)

credentials. > Click on the This is for IMS menu on the left navigation panel.

20. On the This is for IMS page, click on the book you want to launch. A sample book has been selected in this example.

21. The book has now been launched on the Kitaboo Reader.

Adding an LTI 1.1 Customer with OneRoster

Adding an LTI 1.1 customer with OneRoster as the Rostering type is also subject to certain dependencies. Let’s see what these dependencies are before setting up for LTI 1.3 integration.

Let’s now see how to add an LTI 1.1 customer with the other Rostering type option, that is OneRoster.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. If you select OneRoster as the Rostering type, new fields like Sync Type, Match with, Sync Frequency, Suffix, Authorization, Client Partner ID, Consumer Key, Secret Key, and URL will appear.

5. The Sync Type menu has three options– Sync With API, SFTP, and ZIP Upload.

You need to select one of them.

6. There are four options on the Match with menu. You need to select one of them.

7. Enter the other details in the respective fields. We have selected SFTP as the Sync type and Identifier as the Match with option in this example.

8. If you select the ZIP Upload option for Sync type, the Auto Sync Frequency

button will disappear. This is because the only option to sync the data in this

case is to do it manually. You also need to provide the Client Partner ID.

9. Let’s consider SFTP as the Sync Type and Auto as the Sync Frequency option.

When you select the Auto button, a new field by the name Period will appear. The Period field specifies how frequently you want the system to automatically sync the data. Currently there are six options available on the Period menu.

10. You also need to enter details in the Client Partner ID, Host Name, and Username fields.

11. Next, enter details in the Password and Path fields. > Check the Privacy Policy and Terms of Service box. > Click on Add.

12. Once you have completed the LTI 1.1 customer addition process, you need to login with the partner’s credentials you have just created and initiate the process for syncing with OneRoster. Switch to the Users tab. > Click on Class.Click on the Sync with OneRoster – API button on the Class tab to initiate the data syncing process

How it Works

1. A user has to upload users.csv, orgs.csv, classes.csv, and enrollments.csv files in a bundle, i.e. the user has to make a zip of all the files.

2. Once the .zip file is ready, login with the institute admin credentials, navigate to the Users menu, click on Upload Roaster File, and upload the .zip file.

3. After successfully uploading the .zip file and process completion, The user should be able to see the newly added users and classes under the Users and Class sections respectively.

4. Once a user and class is created through OneRoster, a partner can add and assign content to the user/class.

5. The newly created user should now be able to login to the reader.

6. If you sync the data again, without the old user entries, the Kitaboo system will delete the old user who is missing in the new zip file. Hence, please make sure that you are updating the last uploaded sheet at a regular interval to avoid the risk of deletion.

7. Please make sure you uploaded the zip file to the correct location of SFTP and the file name should be the same which you defined during the account creation process.

LTI 1.3 Customers

Kitaboo Studio is also compatible with the LTI 1.3 ecosystem. As in the case of LTI 1.1, you need to define the Rostering type for securely sharing class rosters and related data for adding LTI 1.3 customers as well. You can either select Kitaboo or OneRoster from the Rostering type dropdown menu. Let’s see how to move forward with either of the two options.

Adding an LTI 1.3 Customer

The level of dependency between the Kitaboo system and its partner and vice-versa while adding an LTI 1.3 customer is slightly higher as compared to adding an LTI 1.1 customer. Let’s see what these dependencies are.

Let us now see how to add an LTI 1.3 customer with Kitaboo as the Rostering type.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Select LTI 1.3 as the Onboarding type from the SSO Source dropdown menu.> Select one of the options from the Rostering type menu.

5. Check the Privacy Policy and Terms of Service box. > Click on Add. We have selected the Kitaboo option from the Rostering type menu in this example.

Once you’ve added an LTI 1.3 customer, the LTI needs to be integrated with the Kitaboo system. Let’s see how to do it.

6. Click on the Customers filter. > Select SSO Type from the list.

7. Click on the SSO Type filter. > Select LTI 1.3 from the list.

8. Click on the More options icon against the customer you’ve added. > Select the Get LTI Key option.

9. Page 1 of 2 of the Registration page. The information related to the highlighted fields, like Client ID, Public Key, Tool URL/Initiate URL, and Redirection URL will be generated by Kitaboo. However more information about the customer will be required for completing the registration process.

10. Click on Update Registration Details to move to the next page.

11. Page 2 of 2 of the Registration page. The customer will go to the Admin section of his/her LMS and click the More icon on the tool that represents View configuration details.

NOTE: Configuration details, like Client ID, Authentication Request URL, and Public Keyset URL will be pulled from the LMS and passed on to Kitaboo by the customer.

Let’s see how to extract the configuration details and complete the registration process.

12. Sign in the LTI Moodle LMS with your admin credentials. > Click on Site

administration on the left navigation pane.

13. Select Plugins.

14. Under Activity modules, click on Manage tools.

15. Click on configure a tool manually.

16. Under Tool settings, enter the following information.

Tool name: Give the tool a name of your choice. For example: “We Learn”.

Tool URL: enter the “Launch URL” from the We Learn LTI application’s registration page.

LTI version: LTI 1.3

Public key type: Keyset URL

● We recommend using the Keyset URL as the Public Key type.

Public keyset: Enter “Public JWK Set URL” from the We Learn LTI application’s

registration page.

● If you select RSA key, instead of Keyset URL, as Public key type, you can enter the

“Public Key” from the We Learn LTI application’s registration page instead of the “Public JWK Set URL”.

Initiate login URL: Enter “Login URL” from the We Learn LTI application’s registration page.

Redirection URI(s): Enter the “Launch URL” from We Learn LTI application’s registrationpage.

Default launch container: New window

17. Next, select Show as preconfigured tool when adding an … from the Tool

configuration usage dropdown. > Move to the Services section to complete the registration process.

18. It is Important to note that Kitaboo supports the following Custom parameter options that you can usein the Custom parameters box:

● Leave the Custom parameter box blank – It will take a user (Teacher or Student) to the Kitaboo Studio library.

bookid – It will directly open the specific book for the users.

collectionid – It will directly open the specific collection for the users.

Important: Remember that the custom parameter options are case sensitive. Hence use them the way they have been shown in the list above.

19. Click on Services. > Select Use this service to retrieve members’ information as per privacy settings from the IMS LTI Names and Role Provisioning dropdown. > Move to the Privacy section.

20. Click on Privacy. > Select the following options:

● Share launcher’s name with tool: Always

● Share launcher’s email with tool: Always

● Accept grades from the tool: Always

21. Click on Save changes. The tool will now appear and listed with the name (We Learn) you provided.

22. Click on the icon on the tool that represents View configuration details.

23. Note down the following parameters:

● Platform ID

● Client ID

● Public keyset URL

● Access token URL

● Authentication request URL

Continue to configure the We Learn LTI application, by registering the parameters back in the Learn LTI application’s registration pages.

24. Page 1 of 2 of the Registration page.

25. Page 2 of 2 of the Registration page. Enter the information in relevant fields. > Click on Save to complete the registration process.

Now, teachers and students can login to your LMS and launch a Digital Content. Let’s see how a user can launch a book on the Kitaboo Reader.

26. Navigate to the LTI Moodle website and log in with your User (Teacher)

credentials. > Click on the This is for IMS menu on the left navigation panel.

27. On the This is for IMS page, click on the book you want to launch. A sample book has been selected in this example.

28. The book has now been launched on the Kitaboo Reader.

Adding an LTI 1.3 Customer with OneRoster

Adding an LTI 1.3 customer with OneRoster as the Rostering type involves a much higher level of dependency between the Kitaboo system and its partner and vice-versa. ies. Let’s see what these dependencies are before setting up for LTI 1.3 integration.

Partner ID in Kitaboo System so you need to ask for SourceID in case if they don’t understand the client partner ID.

Let’s now see how to add an LTI 1.3 customer with the other Rostering type option, that is OneRoster.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Select LTI 1.3 as the Onboarding type from the SSO Source dropdown menu.

> Select one of the options from the Rostering type menu.

5. If you select OneRoster as the Rostering type, new fields like Sync Type, Match with, Sync Frequency, Suffix, Authorization, Client Partner ID, Consumer Key, Secret Key, and URL will appear.

6. You need to select one of the Sync Type options from the dropdown menu.

We have selected the Sync With API option in this example.

7. Select one of the Match with options.We have selected the Source ID option in this example.

8. Next, select either Manual or Auto as the Sync Frequency. Let’s select the Auto mode of Sync frequency. In this case, you will have to define how frequently you want the system to automatically sync your data. Therefore, select one of the options on the Period menu. We have selected the Weekly option in this example.

9. Next, enter details in the Client Partner ID, Consumer Key, Secret Key, and URL fields. > Check the Privacy Policy and Terms of Service box. > Click on Add.

10. If you select the ZIP Upload option for Sync type, the Auto Sync Frequency

button will disappear. This is because the only option to sync the data in this case is to do it manually. You also need to provide the Client Partner ID. > Check the Privacy

Policy and Terms of Service box. > Click on Add.

11. Once you have completed the LTI 1.3 customer with OneRoster addition process, you need to login with the partner’s credentials you have just created and initiate the process for syncing with OneRoster. Switch to the Users tab. > Click on Class.Click on the Sync with OneRoster –API button on the Class tab to initiate the data syncing process

NOTE:

1. It is to be noted that the key values of each csv file are as per the IMS global standard, and therefore cannot be changed.

2. In the sample csv files link, fields which are marked in red are mandatory fields.

How it Works

1. A user has to upload users.csv, orgs.csv, classes.csv, and enrollments.csv files in a bundle, i.e. the user has to make a zip of all the files.

2. Once the .zip file is ready, login with the institute admin credentials, navigate to the Users menu, click on Upload Roaster File, and upload the .zip file.

3. After successfully uploading the .zip file and process completion, The user should be able to see the newly added users and classes under the Users and Class sections respectively.

4. Once a user and class is created through OneRoster, a partner can add and assign content to the user/class.

5. The newly created user should now be able to login to the reader.

6. If you sync the data again, without the old user entries, the Kitaboo system will delete the old user who is missing in the new zip file. Hence, please make sure that you are updating the last uploaded sheet at a regular interval to avoid the risk of deletion.

7. Please make sure you uploaded the zip file to the correct location of SFTP and the file name should be the same which you defined during the account creation process.

For more information, please refer to:

https://www.imsglobal.org/lis/imsOneRosterv1p0/imsOneRosterCSV-v1p0.html#_Toc421598314

Adding One roster 1.2

API SYNC Requirement:

● You will need the Consumer Key, Secret Key, URL and Access token URL from your

customer/client for Sync with API.

SFTP SYNC Requirement:

● You need to share the SFTP details, like Host Name, Username, Password, Path with the Kitaboo system for Sync with SFTP

Zip files need to be updated on the SFTP host.

For more details on Oneroster please refer the URL:

https://www.imsglobal.org/spec/oneroster/v1p2

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer

3. Enter the Profile, Administrator, and Address details of the customer you want

to add.

4. Select one of the Onboarding type options from the SSO Source dropdown menu. > Select OneRoster 1.2 from the Rostering type menu. We have selected the Kitaboo option as the Onboarding type in this example.

NOTE: The moment you select OneRoster 1.2 as the Rostering type, new fields like

Sync Type, Match with, Sync Frequency, Consumer Key, Secret Key, URL and

Access token URL will appear. For SFTP it will be Host Name, Username, Password,

Path.

In order to create a Group click on Add, and you will have to follow the same steps for creating a Group with One roster 1.2 .

Adding a OneRoster Customer

Adding a OneRoster customer also involves certain dependencies between the Kitaboo system and its partners/customers. Let’s list down those dependencies.

Let us now see how to add a OneRoster customer.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Select one of the Onboarding type options from the SSO Source dropdown menu. > Select OneRoster from the Rostering type menu.

We have selected the Kitaboo option as the Onboarding type in this example.

NOTE: The moment you select OneRoster as the Rostering type, new fields like Sync Type, Match with, Sync Frequency, and Client Partner ID will appear.

The Sync Type menu will have three options – Sync With API, SFTP, and Zip Upload.

● If you select the Sync With API option, OneRoster will do an API call and pull the

required data from the service. It will then create a partner, class, and a user. You can sync the OneRoster data by using the Sync with OneRoster hyperlink. You can also delete the OneRoster data on the server. The data will also get deleted from your system once you use the Update option.

● If you select the SFTP option as the sync type, the OneRoster file would not be uploaded automatically. You will have to provide the SFTP where you have placed your CSV file.The server will then pick the OneRoster file from the SFTP you provide and create a partner, class and a user.You can then assign the content to the desired class and user.

● If you select the Zip Upload option as the sync type, the user will be able to upload the OneRoster zip file to the server. The LMS will then create a class, and user aligned to the Partner ID you use. You can then assign the content to the desired class and user.

5. Select one of the options from the Sync Type dropdown menu. We have continued with the default Sync Type option, that is Sync With API, in this example.

6. You also need to select one of the options from the Match with menu. We have selected Email in this example.

7. As we have selected Sync With API as the Sync Type option, we will have to

provide details in the Client Partner ID, Consumer Key, Secret Key, and URL fields.

8. If you select the SFTP option from the Sync Type menu, you need to provide

details in the Client Partner ID, Host Name, Username, Password, and Path fields.

9. If you go by the ZIP Upload option, you need to provide the Client Partner ID only.

10. Next, you need to decide whether you want the data to be synced automatically by the system or you want to do it manually.

For this, select either Manual or Auto as the Sync Frequency option.

We have selected Manual in thisexample.

NOTE: Manual and Auto are the data syncing options.

● If you select Manual, you will have to manually sync the data.

● If you select Auto, the server will automatically sync the data through the API.

Remember that the Auto data syncing option will NOT be available, if you select the Zip Upload sync type option. This is because the only option you have for this Sync type is to sync the data manually.

11. Alternatively, you can select the Auto mode of Sync Frequency. If you select

the Auto mode, a new field by the name Period will appear. You need to select one of the options from the Period field. This will specify how frequently you want your data to be automatically synced. 

We have selected the Weekly option in this example.

NOTE: The other periods currently available for the data syncing are: Daily, Fortnightly, Monthly, Half Yearly, and Yearly.

12. Enter details in the Client Partner ID, Consumer Key, Secret Key, and URL

fields. > Check the Privacy Policy and Terms of Service box. > Click on Add.

Finally, you will get a confirmation message: Sync up request is accepted.

13. After you receive the “Sync up request is accepted” message, you can login with the partner’s credentials you have just created and initiate the process for syncing with OneRoster API.Switch to the Users tab. > Click on Class.Click on the Sync with OneRoster – API button on the Class tab to initiate the data syncing process.

Let’s now explore the OneRoster data interchange file format and best practices for

implementation.

The method for integrating rostering data into Kitaboo requires that you submit a set of .csv (Comma Separated Value) files that comply with the IMS Global OneRoster format. The information given on the following pages will help you in understanding the IMS Global OneRoster best practices for implementation.

CSV Overview

Majority of schools/districts currently share their students’ roster information to the tool service providers and LMS/LOR vendors as .csv formatted files. In compliance with the OneRoster data interchange format, the following seven files/data tables are used by the schools/districts to exchange their roster information with the

vendors.

Schools/districts must upload their class rosters in .csv format. They must prepare their roster data, for both import and export, in the form of the seven files/data tables listed below. The files’ format is actually a model onto which your organization’s data can be mapped.

1. orgs.csv

2. users.csv

3. courses.csv

4. classes.csv

5. enrollments.csv

6. academicSessions.csv

7. demographics.csv

NOTE: Hurix is currently using the orgs.csv, users.csv, classes.csv, and enrollments.csv files/data tables.

Sample orgs.csv

The orgs data table describes the organizations, mostly schools or districts, to be included in the roster information. While preparing an orgs.csv data table, you must remember that each row is dedicated to one organization, school or district, only.

Sample users.csv

The users’ data table describes the various users of the organization, like teachers, students, administrators etc. The users’ data includes the actual names of the users, as well as their email addresses, login names, and other information. Remember that each row represents one user only.

Sample classes.csv

The classes’ data table lists the classes taught for each course, including the grade level and the title of the class. Remember that each row represents one class only.

Sample enrollments.csv

The enrollments’ data table assigns users to their various classes. Each row designates one user belonging to one class.

NOTE:

1. It is to be noted that the key values of each csv file are as per the IMS global standard, and therefore cannot be changed.

2. In the sample csv files shown above, fields which are marked in red are mandatory fields.

How it Works

1. A user has to upload users.csv, orgs.csv, classes.csv, and enrollments.csv files in a bundle, i.e. the user has to make a zip of all the files.

2. Once the .zip file is ready, login with the institute admin credentials, navigate to the Users menu, click on Upload Roaster File, and upload the .zip file.

3. After successfully uploading the .zip file and process completion, The user should be able to see the newly added users and classes under the Users and Class sections respectively.

4. Once a user and class is created through OneRoster, a partner can add and assign content to the user/class.

5. The newly created user should now be able to login to the reader.

6. If you sync the data again, without the old user entries, the Kitaboo system will delete the old user who is missing in the new zip file. Hence, please make sure that you are updating the last uploaded sheet at a regular interval to avoid the risk of deletion.

7. Please make sure you uploaded the zip file to the correct location of SFTP and the file name should be the same which you defined during the account creation process.

Oneroster Sync : Delete Data with Sync

In this feature client admin have the ability to delete the user which are not required in the next sync. We have implemented a status check where client have to update the status column as “tobedelete” and the oneroster sync system will delete that data for you in the next sync. Another option we have is that you can share the next roster sync data without the user in it and when the next time sync happens the user will automatically get deleted or removed from the system.

Note

1. Delete will work for the rostered user on the platform.

2. This feature needs to be enabled on the platform to work.

Adding a Google Classroom Customer

Adding a Google Classroom customer is also subject to a dependency on the Kitaboo system. It is important to be aware of the solitary dependency before you initiate the process.

Let us now see how to add a Google Classroom customer.

1. Sign in with your Enterprise Admin credentials.

2. On the Customers tab, click on +Add Customer.

3. Enter the Profile, Administrator, and Address details of the customer you want to add.

4. Select Google Classroom as the Onboarding type from the SSO Source dropdown menu. > Select Google Classroom as the Rostering type.

NOTE: The only Rostering type option available for a google classroom is Google Classroom.

NOTE: The moment you select Google Classroom as the Rostering type, a new field by the name Client ID will appear. You need to generate a Client ID first, then enter the details in the Client ID field.

Let’s see how to generate a Client ID for a Google Classroom.

5. Navigate to the Google Cloud Platform. > Go to the API & Services menu. > Click on the Credentials option.

URL: console.cloud.google.com

6. Click on + CREATE CREDENTIALS.

7. Click on the OAuth Client ID option.

8. Select one of the Application type options.

NOTE: Web Application has been selected in this example.

9. Enter the client name in the Name field.

NOTE: Malcom State University is the client in this example.

10. Add URI as per domain & Click on the CREATE/SAVE button.

11. An OAuth client will thus be created. Copy the Client ID from the Your Client ID field.

NOTE: Use the same Client ID for adding this customer.

12. You need to enable the API Sync option by using the link below.

https://console.developers.google.com/apis/api/classroom.googleapis.com/overview

13. You also need to enable Google Classroom API option, which is available in the Library Section.

14. Search for Google Classroom in the search window and select the searched item to enable the setting.

15. Enter the generated ID in the Client ID field. > Check the Privacy Policy and

Terms of Service box. > Click on Add..

Syncing with Google Classroom

Once a Google Classroom customer is added to the Kitaboo ecosystem, the customer can avail many of the Kitaboo services. One of them being establishing a sync with Google Classroom. The portal empowers the partner administrator to establish a connection with Google Classroom for their domain and configure sync settings with its users. Let’s see how to sync your class with Google Classroom.

1. Sign in with your Partner Admin credentials.

2. On the Users tab, click on the Sync with Google Classroom hyperlink.

3. Next, select the Gmail Account that you used to create the Client ID during

customer setup for authentication.

4. Now, you need to select one of the Sync Type options – whether On Scroll or Load Full Data.

NOTE:

● The On Scroll option enables you to sync ninety-nine classes’ data at the maximum, even if you have checked the Select All box. For example, if there are one thousand classes data to be synced, you can sync a maximum of ninety-nine classes data by using the On Scroll option.

● Hence, if you want to sync more than ninety-nine classes’ data, you must select the Load Full Data option only.

5. Let’s select the On Scroll option first. > Click on the Apply button. Thus the On Scroll data sync type process will begin. Once completed, a message – On Scroll sync type applied. – will appear on the screen.

6. All the classes will consequently appear listed in the middle of the screen. The

data related to these classes will also get loaded in the backend as you scroll down. When this process is finished, a message – “Data loading completed. No more data to load.’’ – will appear on the screen.

7. Now you have three options before you:

● If you want to sync all the displayed classes (at the max 99 only), check the Select All box.

● If you want to sync specific classes, you need to select those classes.

● If you want to sync a particular class, you can type its name in the Search field and press Enter.

NOTE: We have selected three classes for syncing in this example.

8. Finally, you should click on the Sync button.

9. Alternatively, if you select the Load Full Data option and click the Apply button, the system will initiate uploading the entire data, irrespective of the number of classes.

A message – Load Full Data sync type applied. – will also appear in the end.

10. All the classes will appear listed in the middle of the screen. The data related

to these classes will also get loaded in the backend. When this process is finished, a message – “Data loading completed. No more data to load.’’ – will appear on the screen.

11. You can either select all the classes or a few specific classes for syncing. You

can also search and select a specific class for syncing by using the Search option.

NOTE: We have used the Select All option in this example.

12. Next, you need to click on the Sync button. It will initiate the syncing process.

You will also get a confirmation message – Sync process started. – on the screen.

13. The syncing process will end with the message – Syncing process completed.

14. If you want to see the sync status, you need to click on the View Sync Status

button. The sync status will thus appear on your screen.

15. Once the syncing is successfully completed, go to the Content tab. > Select the Category of content on the left pane. > Select the Title you want to assign. > Click on Class.

NOTE: The content is being assigned to a class in this example.

16. Select the Class you want to assign the content from the dropdown list. > Check the View option box if you want to restrict view of the content to teachers only. > Select the Order No. > Click on Distribute.

17. Click on Users aligned to the title for assigning content to users.

18. Check the Boxes against the users you want to assign the content to.> Select

the Order No. > Click on Distribute.

19. The content has now been successfully assigned to the class as well as the users.

20. Go to the Google Classroom now. > Click on the Stream tab. > Check if anything new has been posted there. > Click on the More options icon against the post you want to announce to the users. > Select the Platform the new post can be accessed from.

Google Classroom URL:http://classroom.google.com

Accessing a New Post on the Reader

1. Navigate to the Kitaboo Reader URL. > Sign in with your Google Classroom

credentials.

Kitaboo Reader URL: qaread.kitaboo.com/reader

2. Check if there is any notification for a new post.

3. You can see the new title on the Reader, if there is any.

4. You can also read through the new title on the Reader.

Deactivating a Customer

Sometimes you may need to deactivate a customer on account of several reasons, like violation of the privacy policy, breach of confidentiality agreement, or violation of the business terms & conditions. Kitaboo Studio allows you to deactivate such customer(s).

1. Sign in with your Enterprise Admin credentials.

2. Click on the More Options (three vertical dots) icon against the customer you want to deactivate.

3. Click on the Deactivate option.

4. Click on Yes, Deactivate it.

NOTE: Remember that this action is irreversible. Once deactivated, you cannot restore the customer account.

5. The highlighted customer is now deactivated.

NOTE: Once you deactivate the customer account, the end user and access code of that account will not be functional. Users will see an empty bookshelf in that case.

Editing a Customer

The Kitaboo Studio portal also allows you to update the details of your customer like the address details, customer logo, onboarding type, administrator’s details etc. You can do so in three simple steps.

1. Sign in with your Enterprise Admin credentials.

2. Click on the More Options (three vertical dots) icon against the customer you want to edit.

3. Click on the Edit option.

4. Do the desired edit(s). Click on Update.

NOTE: In this example, the contact number has been updated.

Issuing Licenses

To grant access to the digital content to your customers, you need to grant them the access rights. Kitaboo Studio empowers you to issue licenses (access rights) to your customers. You can also define the period till a license will remain valid as well as set the number of devices the content can be downloaded to. The portal also empowers you to track the usage of licenses you have issued to a customer.

1. Sign in with your Enterprise Admin credentials.

2. Click on the Issue Licenses button against the institution (customer) you want to issue licenses to.

3. Select the titles from the list by checking the boxes. > Click on Next.

4. Define License count > Device limit > Set the Validity period > Click on Issue

Licenses.

NOTE: In this example, the license will be valid for 100 days after activation.

5. Alternatively, you can also define the Start date and the End date for the licenses to be issued.

Remember that:

● If you want a license for a title to expire on a specific date, you should define the Start and End dates.

● If you want the title to expire after a certain number of days, select Upon Activation and also define the number of days you want to give access to the title.

● If you want to give unlimited access to a title(s), select Perpetual. In this case, there would be no end date.

Searching a Customer

Kitaboo portal also lets you search your customers having something in common, like institute name, institution email ID etc.

1. Sign in with your Enterprise Admin credentials.

2. Enter the name of the item you want to search in the Search field. > Press the

Enter key.

Adding a Group

At times you may need to club your customers having something in common into a group. It will save you from performing a similar set of activities for individual customers, and also save your time and energy. Remember that there should at least be two customers to create a group. You may treat the group one customer, and enter the required details like group name, email ID, onboarding type, etc.

1. Sign in with your Enterprise Admin credentials.

2. Click on + Group for adding a group

3. Enter the group details like Group Name, Description, Email ID, Group ID, and Onboarding Type. > Select Customers from the list.

NOTE: Some of the customers on the list are grayed out. This is because they are already part of another group. Hence they cannot be selected.

4. Click on Select Cover to upload a cover image, if any or go by the default

selection. > Click on Save. > Click on Add.

5. If you want to view the group you’ve recently added: Click on the Customers filter. > Select Groups.

6. If you want to edit any of the group information:

Click on Edit. > Do the desired edits. > Click on Update.

NOTE: A group’s email ID cannot be edited once it has been added to the Kitaboo system.

7. If you want to deactivate a group as a whole:

Click on Deactivate. > Confirm your action on the pop up. > Click on Update.

8. If you want to edit information related to a particular customer of a group:

Select the Group. > Click on the More icon against the customer you want to edit. > Select Edit. > Do the desired edits. > Click on Update.

9. If you want to deactivate a particular customer of a group:

Select the Group. > Click on the More icon against the customer you want to

edit. > Select Deactivate. > Confirm your action in the pop up message. > Click on Update.

Syncing Data with OneRoster

Let’s see how to create and add a group, and sync it with OneRoster.

1. Sign in with your Enterprise Admin credentials.

2. Click on + Group for adding a group.

3. Enter the group details like Group Name, Description, Email ID, and Client Group ID. > Select OneRoster1.1 or OneRoster 1.2 from the SSO Source/Onboarding Type

dropdown menu.

NOTE: The moment you select OneRoster as the Onboarding type, a new field by the name Sync Type with Sync With API as a default sync type will appear. The other fields that you will find there are – Sync Frequency, Client Partner ID, Consumer Key, Secret Key, URL, and Path. If you are selecting the OneRoster 1.1 then you can see the Authorization Option there you can select OAuth1.0 or OAuth 2.0.

4. The other Sync Type options are: SFTP and Zip Upload. We have continued with the default option, i.e., Sync With API in this example.

● If you select the Sync With API option, OneRoster will do an API call and pull the

required data from the service. It will then create a partner, class, and a user. You can sync the OneRoster data by using the Sync with OneRoster hyperlink. You can also delete the OneRoster data on the server. The data will also get deleted from your system once you use the Update option.

● If you select the SFTP option as the sync type, the OneRoster file would not be uploaded automatically. You will have to provide the SFTP where you have placed your CSV file.

The server will then pick the OneRoster file from the SFTP you provide and create a

partner, class and a user.You can then assign the content to the desired class and user.

● If you select the Zip Upload option as the sync type, the user will be able to upload the OneRoster zip file to the server. The LMS will then create a class, and user aligned to the Partner ID you use. You can then assign the content to the desired class and user.

NOTE

There are two Sync Frequency options – Manual and Auto. Here Manual means you will have to manually sync the data. And, Auto means the system will automatically sync the data.

If you select the Auto data syncing option, you will have to define how frequently you want the system to sync the data. Currently, there are six options available.

5. We have selected Auto as the Sync Frequency option, and Weekly as the

Period for sync frequency in this example.

6. Enter details in the Customer Key, Secret Key, and URL fields.

7. Select Customers from the list. > Click on Select Cover for providing a cover

image to your group. > Click on Add.

NOTE

Some of the customers on the list are greyed out. This is because they

are already part of another group. Hence they cannot be selected.

Finally, you will get a confirmation message: Sync up request is accepted.

Syncing Data with PowerSchool

Let’s see how to create and add a group, and sync it with PowerSchool.

1. Sign in with your Enterprise Admin credentials.

2. Click on + Group for adding a group.

3. Enter the group details like Group Name, Description, Email ID, and Client Group ID. > Select PowerSchool from the SSO Source/Onboarding Type dropdown menu.

NOTE:

 The moment you select PowerSchool as the Onboarding type, a new field by the

name Sync Type with Sync With API as a default sync type will appear. The other fields that you will find there are – Sync Frequency, Suffix, Access Token URL, URL, Consumer Key, Secret Key.

NOTE

There are two Sync Frequency options – Manual and Auto. Here Manual means

you will have to manually sync the data. And, Auto means the system will automatically sync the data. If you select the Auto data syncing option, you will have to define how frequently you want the system to sync the data. Currently, there are six options available.

4. We have selected Auto as the Sync Frequency option, and Weekly as the Period for sync frequency in this example.

5. Enter details in the Access Token URL, Customer Key, Secret Key, and URL fields.

6. Select Customers from the list. > Click on Select Cover for providing a cover image to your group. > Click on Add.

NOTE: Some of the customers on the list are greyed out. This is because they

are already part of another group. Hence they cannot be selected.

Finally, you will get a confirmation message: Sync up request is accepted.

Selective Oneroster Sync with API/ZIP/SFTP

1. Once you create an Oneroster Group with all configuration like API/ZIP/SFTP. Search for your group name under the group tab.

2. Once you click on the group you will find a dropdown menu with the name “Sync All Data-API/ZIP/SFTP”, “Selective sync”, “Check last sync status”.

3. Now click on “Selective sync” depending on the account configuration you will get the option to upload Zip or you will get the data from SFTP/API on the screen.

4. After successful data fetch it will show you the list of Schools. You can now either

Select All or Select the desired Schools from the list.

5. If there are a large number of Schools, you have an option to download the complete list of schools in a spreadsheet.

6. Open the downloaded spreadsheet with the name Org and fill “Yes” in the column

named sync. If you keep it “Blank” or fill it “No” those schools will not get selected for rostering.

7. After you finalize the sheet and save the changes, then upload it via the upload icon.

8. After successful data fetch it will show you the list of Classes. You can now either

Select All or Select the desired Classes from the list.

9. If there are a large number of Classes, you have an option to download the complete list of classes in a spreadsheet.

10. Open the downloaded spreadsheet with the name Classes and fill “Yes” in the

column named sync. If you keep it “Blank” or fill it “No” those classes will not get

selected for rostering.

11. After you finalize the sheet and save the changes, then upload it via the upload icon.

12. After successful data fetch it will show you the list of Users with status like Active, Inactive, Deleted and Blank.

13. You need to select the user’s type depending on the status in order to sync the data on the platform. Click on the sync button.(Note: Success message will appear)

14. After a successful sync, you can view the status of the on-going or completed roster sync in the oneroster drop down menu.

15. You can also find the status of the oneroster sync, with below parameters like Status, Last sync date, Users, Classes, Orgs, Enrollments and Download log.

16. In the Download Log, you get all the sync reports in detail.

Syncing Data with Clever

Let’s see how to create and add a group, and sync it with Clever.

Sign in with your Enterprise Admin credentials.

Click on + Group for adding a group.

Enter the group details like Group Name, Description, Email ID, and Client Group ID. > Select Clever from the SSO Source/Onboarding Type also Clever dropdown menu.

NOTE: The moment you select PowerSchool as the Onboarding type, a new field by the name Sync Type with Sync With API as a default sync type will appear. The other fields that you will find there are – Sync Frequency, Match with (either Email or Source ID), District ID, Auth Token, URL, Client ID, Secret Key.

NOTE: There are two Sync Frequency options – Manual and Auto. Here Manual means you will have to manually sync the data. And, Auto means the system will automatically sync the data. If you select the Auto data syncing option, you will have to define how frequently you want the system to sync the data. Currently, there is only one option which is Daily.

We have selected Auto as the Sync Frequency option, and Daily as the Period for sync frequency in this example.

Enter details in the Access Token URL, Customer Key, Secret Key, and URL fields.

Select Customers from the list. > Click on Select Cover for providing a cover image to your group. > Click on Add.

NOTE: Some of the customers on the list are greyed out. This is because they are already part of another group. Hence they cannot be selected.

Sync Data:

1. Return to the Customer tab.

2. Filter the data by Group and select the recently created district from the list.

3. Click on Sync all data-API. To track the synchronization status, check the Status option.

Generate Licenses: After the data is properly synced, you can generate licenses for

specific schools.

Distribute Content: District/School administrators can now log in and distribute

content to users.

Configure Redirection URL on Clever Site: On the Clever site, configure the

redirection URL as follows: URL, i.e.

(https://microservices.kitaboo.com/v1/clever management/clever/KITABOO_CLIENT_I D/CLEVER_CLIENT_ID/CLEVER_CLIENT_SECRET/clever/redirect)

Access Content: Copy the Instant Login URL and provide it to students and teachers to access all assigned content.

API Endpoints Used:

● /v3.0/schools

● /schools/{schools_ID}/sections

● /schools/{schools_ID}/users?role=teacher

● /schools/{schools_ID}/users?role=student