Google Classroom Integration

Google Classroom Integration enables you to connect your classroom content with Tutor LMS. You can import announcements about assignments, quizzes, and shared resources. 

The best feature is that you can sync Google Classroom students with Tutor LMS. We also have a feature to send Google Classroom invitations to the students already enrolled in Tutor LMS.

To make use of Google Classroom integration, you will need these two plugins installed and enabled: 

Configuring App Credentials

To connect with Google Classroom, we need to create Google Credentials. We can do that by visiting Google Developer Console

Step 1: From the top left corner, select a project to use for credentials. If you do not have a project created, please follow along. If you have a project already, please skip to Step 3.

Step 2: Give the project a name, and if needed, select an organization

Step 3: After creating it, it will be selected as your project. From the Dashboard, click on Enable APIs and Services. Then, from the search field that appears, search for Google Classroom API.

Step 4: Enable Google Classroom API for this project. 

Step 5: Then, from the Google Classroom API dashboard, go to Credentials, and then click on “Configure Consent Screen”. 

Step 6: From user type, select External, and then click Create to finalize the consent screen. 

Step 7: Back in the Credentials tab, we can now create our credentials for the app. We’ll select the type as OAuth Client ID.

Step 8: After that, we can select the Application Type. If you are creating an API just for testing on a local machine, make sure to select Desktop App. But if you are planning to deploy on a live server, select Web Application

Step 9: From there, if you have chosen Web Applications, you will have to fill out some necessary information for authentication. Make sure that your Authorized Redirect URIs are set in this format: https://yourDomainName.com/tutor-google-classroom-callback/

Step 10: After creating the credentials, you can then download the JSON file from the credentials dashboard. Simply click on the download icon to continue. 

Connecting to Google Classroom

After you have access to your JSON file, you can connect Tutor LMS to Google Classroom easily. From the backend of your WordPress website, go to Tutor LMS > Addons and enable Google Classroom addon.

Enable Google Classroom addon

Then, from Tutor LMS > Google Classroom, you can upload your JSON file by dragging and dropping it.

While allowing permission, if you encounter the “Google hasn’t verified this app” warning screen, click on the “Advanced” link, and then click on the bottom link to proceed. 

Google Classroom authentication for Tutor LMS integration

This will authenticate your website with the API credentials. Once you click on Load Credentials, the system will take you through the permissions process, all of which you have to allow. 

Once done, you will be redirected to the dashboard page with all Google Classrooms on that specific account. You can easily import these classrooms into courses and you can perform batch actions to automate imports as well. 

Import Students

When you import a course from Google Classroom, along with all the data from it, you will also be able to import the students from there. After you click Import on the classroom, there will be a prompt asking you whether you want to import student enrollment as well.

We recommend NOT auto-enrolling students into a paid course as this will skip the payment process altogether.

The system will automatically fetch the email addresses of the students enrolled in the classroom and register them to your WordPress website. The system will also send an email to all students notifying them of the registration, and also giving them the credentials they need to log in to your Tutor LMS powered site. All the student needs to do is set a password for their account.

Password Reset Mails Might End Up In SPAM folder!
If you have not configured DKIM and SPF records properly, then the password reset emails might land in spam. If you do not know what is DKIM and SPF, please read this article.

Course Listing

This integration also gives you access to a shortcode [tutor_gc_classes] which will allow you to list all Google Classroom courses anywhere on your website. You can also change the layout’s column number by using this shortcode [tutor_gc_classes max-column=3]. Supported column size range from 1 to 6.

Specific Settings for Imported Courses

When you import a course from Google Classroom, some new settings will appear on the Course Builder (Both backend and frontend).

Course interface after importing courses from Google classroom
  • Enable Google Classroom Stream: This will show the Google Classroom stream on the single course page for enrolled students
  • Show Google Classroom Files in Stream: This will show files that you upload on Google Classroom on the stream tab as well.
  • Include Google Classroom Files in Resources: This will show Google Classroom files on the resources tab along with your own files uploaded to the WordPress system. 

A Known Issue with Local Servers

As stated before, if you are using a local server for testing purposes, you might face an issue while loading the JSON credential file to the Tutor LMS system. This is due to a missing SSL file which you have to manually place. To do so, please download this PEM file from this link, and place it here:

C:\MAMP\bin\php\php7.4.0\extras\ssl\cacert.pem

After that, please locate your php.ini file from this path:

C:\MAMP\conf\php7.4.0\php.ini

After locating, insert this piece of code anywhere in the file

[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo = "C:\MAMP\bin\php\php7.4.0\extras\ssl\cacert.pem"
Please note that this is for MAMP’s file system. If you are using a different local server environment, or have it installed in a different location, make sure to change the paths accordingly. You should also change the PHP versions of the code and path if you are running a different version of PHP.

Was this helpful?