Each learning management system (LMS) offers a wide variety of methods to integrate outside content. Google Classroom is different in this regard as it only offers API integration. While many LMS's have API's that can be used for integration, each work differently. Integrating with Google Classroom requires specific knowledge of how the API and the Google Cloud Platform work.

What is API integration and how is it different?

API's allow programs to make requests to an endpoint that will execute a specified action. The types of requests that are possible are typically defined in the API's documentation. A program that integrates using an API is coded so that it can communicate requests between itself and the system it's sending the request to (in this case, the system is an LMS). Requests that are possible through an API include creating resources, deleting resources, and retrieving data from the source system. In the case of an LMS's API, the resources can include teachers, students, and course data.

API integration is different than other methods of integration because it allows programs to retrieve, create, update, and delete data directly from the source system. Other methods of integration that are common with LMS's, such as LTI®, are much more limited in their ability to modify or retrieve data from the source system. For example, a program that integrates using LTI cannot create new items, such as assignments, in the LMS. Meanwhile, a program that integrates using an API can manipulate, create, and delete assignments directly within the LMS.

What does integration in Google Classroom look like?

The Google Classroom API allows developers to make requests that read, create, update, and delete user and course data. Specifically, the API allows third-party programs to read or modify the following information in Google Classroom:

  • Assignments: Assignments in Google Classroom can be created via the Google Classroom API. The API can also turn in submissions to an assignment on behalf of a student.
  • Grades: Grades totals for assignments and assigned grades for individual students can be created via the API.
  • Rosters: The API can retrieve a list of students and teachers for a specific course. The API can also add or invite new teachers or students to a course and remove existing ones.
  • Courses: Individual courses can be retrieved, created, updated, or deleted using the API. Information about the course, such as announcements and topics within the course, can also be created, modified, or removed.

Developers should note that, in Google Classroom, the data that the API allows a program to access is restricted to the specific user that is logged in. For example, a teacher can see information only about their course and their students.

Can I integrate with LTI?

No. Google Classroom is the only prominent LMS that does not support the Learning Tools Interoperability® (LTI®) standard. This means that anyone wishing to integrate with Google Classroom must do so via their its API.

How can I get started integrating with Google Classroom?

To start integrating with Google Classroom, you will need to create a Google Developer account to access the Google Cloud Platform. The Google Cloud platform allows you to retrieve API keys that will allow your application to securely make requests to Google Classroom and G Suite.

In order for your clients to actually log in and and use your application, you will need to select scopes to define what specific data you will need to access. Depending on the selected scopes, you may need to prove to Google why your application needs access to certain types of user data. This approval process can take up to several weeks. Once your account is created and your application is approved by Google, you'll be able to write your integrations. The documentation for the Google Classroom API can be found here.

Additionally, you'll have to onboard schools. This involves using the API to recognize what organization the user is coming from and verifying that they should have access to your product. Ensuring that your users have easy and proper access to your content is vital to a successful integration.

Is there an easier solution?

In fact, there is. Edlink offers Google Classroom integration that can be easily deployed within your own application or platform. Our team takes care of the many challenges of integration so your developers can focus on improving the core functionality of your own product. Edlink saves time, money, and headaches for both you and your clients. If you would like to learn more, please contact us. We would love to show you how we can help you integrate with Google Classroom and other LMS's.

Learning Tools Interoperability® (LTI®) is a trademark of the IMS Global Learning Consortium, Inc. (www.imsglobal.org)