Skip to main content

Google Classroom Onboarding Steps

This article is to guide Google Workspace admins of a school/district on how to set up a web client with the correct configuration and permissions, and how to generate keys for the web client to enable SSO and synchronisation with Kira Learning.

Updated yesterday

Pre-requisites:


1. The user who sets up the account needs to have access to the Google Cloud Console within the school/district workspace. They must be part of the organization for which they wish to set up the web client. You can check this permission by visiting Google Cloud console and logging in with your workspace account. You will be able to see that you are part of a workspace on the top right corner, like so

2. While not absolutely necessary, it's preferable that the user setting up the web client, permissions, and scopes has admin access. This will make personal branding and submissions for review more straightforward in the future.

Creation of the Project and the Web Client

A project within Google APIs contains all the settings, configurations, and permissions that are necessary for communicating with other applications (in our case, with Kira)

A web client can be thought of as a “container” that can speak with the Google Classroom setup in your workspace and allow it to talk with Kira Learning and its services. It lives within a project and helps the project securely communicate with Kira.

  1. First, let’s create a new project.

  2. Next, we will be presented with this setup message where we can click on Get started

  3. Enter the App information (this will be visible to the users from your school that connect with Kira learning, make sure you name this something trustworthy) and then click on Next. Please name it after your organization if possible. For example, if your school is Acme International High, name the project as “Acme International High for Kira.”

  4. Make sure you mark your app as internal. This will make sure that the app is more secure and that it is available for immediate use without the need for submission for verification and audit.

  5. Enter the contact information of the admin in charge.

  6. Read and agree with the user data policy. And finally, click on Create.

  7. Next, we will set up the Web Client. Go to the Clients tab in the left panel.

  8. Click on “+ Create client” button

  9. Pick “Web application” from the presented list

  10. Name it something simple and identifiable

  11. Under “Authorized JavaScript origins” click on + Add URI button and paste https://kira-learning.com under URIs 1, click on the Add URI button again and paste https://app.kira-learning.com under URIs 2.

  12. Under “Authorized redirect URIs” click on + Add URI button and paste https://kira-learning.com/api/auth/callback/google-classroom under URIs 1, click on the Add URI button again, and paste https://app.kira-learning.com/api/auth/callback/google-classroom under URIs 2.

  13. Click on create, and you will be presented with a screen like this, with your Client ID and Client secret clearly visible. Make a note of these.

Setting up Data Access Scopes

  1. Navigate to the Data Access tab within the left panel

  2. Click on Add or Remove Scopes

  3. Scroll down on the right-hand tab, paste the list given below, click on “Add to table”, and then click on “Update”.

    List to be pasted:

    <https://www.googleapis.com/auth/classroom.rosters.readonly> <https://www.googleapis.com/auth/userinfo.email> <https://www.googleapis.com/auth/userinfo.profile>

  4. This completes our setting up of scopes.

Enabling Google Classroom within your project

  1. Click on the top Search tab on the cloud console (or click on “/”)

  2. Search for “Google Classroom API” and click on it

  3. Click on Enable on the Google Classroom API page

  4. Now that the Google Classroom API is enabled and the scopes are set, we are ready to onboard the workspace of your school to Kira!

Collection of the keys

Reach your customer success contact and give the following information:

  1. Developer API Client ID.

  2. Developer API Client secret.

Did this answer your question?