Integration with Google Classroom is done through its API. The API gives developers a wide range of data that is used to increase interoperability between third-party content and Google Classroom. Below we'll discuss what data can be retrieved, modified, and created through the API, as well as what the API cannot do.

Roster and Course Information

The Google Classroom API allows developers to pull roster information for a specific class, including its list of teachers and students. The API can also retrieve the user profiles of the users in the course roster, which contains information such as the user's name, email address, and profile picture. Furthermore, when the user logs in via single sign-on (SSO), the API can recognize what organization (e.g. school) the user is coming from.

All roster and course data can also be changed, updated, or removed via the API. You can perform functions, such as adding a student to a course or creating a new course, through a third-party application that has been integrated with the Google Classroom API.

Assignments, Submissions, and Grades

Assignments, such as quizzes and homework, can be retrieved, created, updated, or deleted using the API. Additionally, the API can be used to create and update submissions for students who received the assignments. When creating an assignment through the API, a value can be set to define the maximum amount of points that can be given to a submission. Likewise, the API can also assign a grade value to the student submission.

Share to Classroom

If you simply want to allow teachers an easy method of linking to your content, Google offers you the ability to add a "Share to Classroom" button to your website. Users who want are viewing your website and want to share it with their course can do so by clicking the "Share to Classroom" button. A resource will be created in the user's course that provides a link to your website that all students of the course will see.

What Can't the API Do?

The Google Classroom API does not expose any data beyond that which a logged in user can view. For example, a teacher who logs in can see the list of their courses that they teach, but not of any other courses that other teachers at their school teach. Likewise, a list of users can be retrieved for a specific course that the logged-in user has access too, but the list of all users enrolled at the school cannot be viewed. Thus, the API cannot see a school's full list of users, courses, or enrollments.

Google Classroom also limits the type of resources that can be created. Content posted to a course in Google Classroom has to be in Google's proprietary format. Hence, you cannot create or import objects that use file types such as Rich Text Format, HTML, or Common Cartridge®.

Additionally, Google classroom has no modular structure. Other LMS's, such as Schoology or Canvas, allow sections to be created within a course. Google Classroom does not allow this and does not offer features such as a resource library.

Interested in Learning More?

If you'd like to learn more about Google Classroom integration, we would love you to check out Edlink! We have tremendous amounts of experience with the Google Classroom API and can get your app integrated in no time. If you'd like to learn more, please email us at

Common Cartridge® is a trademark of the IMS Global Learning Consortium, Inc. (