Google Classroom logo

Integrate Google Classroom with your AI CRM

Google Classroom is a free web service developed by Google for schools that aims to simplify creating, distributing, and grading assignments

Explore Triggers and Actions

Accept Invitation

Accept an invitation as the invited user, joining its course as a teacher or student. Removes the invitation on success. Only the invited user may accept it.

ActionTry it

Add Course Teacher

Directly add a teacher to a course as a domain administrator. Domain administrators can add users within their domain to courses within their domain. Non-admin users should send an invitation instead. Fails if the user is already a teacher or student in the course.

ActionTry it

Add Student Group Member

Add a student to an existing student group in a course. Fails if the member already exists, the group is full, or the caller lacks access.

ActionTry it

Add Student to Course

Tool to add a student to a course. Use when enrolling a user as a student in a course. Domain administrators can directly enroll users; students can self-enroll with an enrollment code.

ActionTry it

Create Announcement

Tool to create an announcement in a course. Use after confirming the course ID is valid.

ActionTry it

Create Announcement Add-on Attachment

Create an add-on attachment on an announcement. The add-on must have permission to create attachments on the parent post.

ActionTry it

Create Course

Tool to create a new course. Use when a teacher needs to establish a Classroom course before enrollment.

ActionTry it

Create Course Alias

Tool to create an alias for a course. Use when you need to add an alternative identifier to a course after confirming the course ID.

ActionTry it

Create Course Topic

Tool to create a course topic. Use when you need to organize course content into named sections.

ActionTry it

Create Course Work Material

Tool to create course work material. Use when adding resources or notes to a course.

ActionTry it

Create CourseWork

Tool to create a CourseWork item in a course. Use when you need to assign an assignment or question to students immediately or on a schedule.

ActionTry it

Create Coursework Add-on Attachment

Create an add-on attachment on course work. The add-on must have permission to create attachments on the parent post.

ActionTry it

Create Invitation

Tool to create an invitation for a user to a course. Use after confirming the course ID is valid.

ActionTry it

Create Material Add-on Attachment

Create an add-on attachment on a course work material. The add-on must have permission to create attachments on the parent post.

ActionTry it

Create Registration

Tool to create a registration for push notifications from Google Classroom. Use when you need to set up notifications from a specific feed to a Cloud Pub/Sub topic. Requires the OAuth scope https://www.googleapis.com/auth/classroom.push-notifications.

ActionTry it

Create Rubric

Create a rubric for course work using criteria or a formatted spreadsheet. The requesting user and course owner need rubric creation capabilities and the required license. Use the OAuth developer project that created the parent course work item. Spreadsheet imports also require a Google Sheets scope.

ActionTry it

Create Student Group

Create a student group for a course. Fails if the caller lacks access or the course has reached its maximum number of student groups.

ActionTry it

Delete Add-on Attachment

Tool to delete an add-on attachment from a course announcement. Requires the add-on to have been the original creator of the attachment.

ActionTry it

Delete Add-on Attachment

Tool to delete an add-on attachment from course work. Use when the add-on needs to remove an attachment it originally created. Requires the add-on to have been the original creator of the attachment.

ActionTry it

Delete Announcement

Tool to delete an announcement. Use after confirming the announcement ID.

ActionTry it

Delete Course

Tool to delete a course. Use when you need to remove a course after confirming the course ID.

ActionTry it

Delete Course Alias

Tool to delete an alias of a course. Use when you need to remove an alias from a course after confirming the course ID and alias name.

ActionTry it

Delete Course Student

Tool to delete a student from a course. Use when you need to remove a student's enrollment from a specific course. This revokes their access to course materials and participation.

ActionTry it

Delete Course Teacher

Tool to delete a teacher from a course. Use when you need to remove a teacher's enrollment from a specific course. This revokes their teaching access to the course.

ActionTry it

Delete Course Topic

Tool to delete a course topic. Use when you need to remove a topic from a course after confirming the course and topic IDs.

ActionTry it

Delete Course Work Material

Tool to delete a course work material. Use after confirming the course work material ID and course ID.

ActionTry it

Delete CourseWork

Tool to delete a specific CourseWork. Use when you need to remove a coursework item from a course after confirming the IDs.

ActionTry it

Delete Invitation

Tool to delete an invitation. Use when you need to remove an invitation after confirming the invitation ID.

ActionTry it

Delete Material Add-on Attachment

Delete an add-on attachment from a course work material using its identifiers. Requires the calling add-on to have originally created the attachment.

ActionTry it

Delete Registration

Delete a notification registration, stopping Classroom notifications for it. Use when notifications for an existing registration are no longer needed.

ActionTry it

Delete Rubric

Delete a rubric before grading has started using its course and work IDs. The requesting user and course owner must have rubric creation capabilities. The request must use the developer project that created the rubric.

ActionTry it

Delete Student Group

Delete a student group from a course using its course and student group IDs. Use when an existing student group is no longer needed.

ActionTry it

Delete Student Guardian

Delete a student's guardian to stop their guardian notifications. Use after confirming the student and guardian IDs. The guardian will no longer receive guardian notifications or be accessible through the API.

ActionTry it

Get Add-on Attachment

Tool to get an add-on attachment from an announcement. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator.

ActionTry it

Get Add-on Attachment Submission

Retrieve a student's submission for a course work add-on attachment using the course, course work, attachment, and submission IDs.

ActionTry it

Get Add-on Context for Announcement

Tool to get metadata for Classroom add-ons in the context of a specific announcement post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

ActionTry it

Get Add-on Context for Course Work

Tool to get metadata for Classroom add-ons in the context of a specific course work. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

ActionTry it

Get Add-on Context for Course Work Material

Tool to get metadata for Classroom add-ons in the context of a specific course work material. Use when validating query parameters for add-ons loading in an iframe. Returns course/item identifiers and role-specific context.

ActionTry it

Get Add-on Context for Post

Tool to get metadata for Classroom add-ons in the context of a specific post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

ActionTry it

Get Announcement

Tool to get an announcement. Use when you need to fetch an announcement by course and announcement ID.

ActionTry it

Get Course

Tool to get details for a specific course. Use when you need full course information by ID.

ActionTry it

Get Course Student

Tool to retrieve a specific student of a course. Use when you need to get detailed information about a student enrolled in a course by courseId and userId.

ActionTry it

Get Course Topic

Tool to get a course topic. Use when you need to retrieve details of a specific course topic by ID after confirming the course and topic IDs.

ActionTry it

Get CourseWork

Tool to get details of a specific coursework. Use when detailed information about a particular assignment is needed.

ActionTry it

Get CourseWork Add-on Attachment

Tool to get an add-on attachment from course work. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator.

ActionTry it

Get Coursework Material

Tool to get a coursework material. Use when you need to retrieve details of a specific coursework material by course and material ID.

ActionTry it

Get Grading Period Settings

Tool to retrieve grading period settings for a course. Use when you need to access the grading periods configured in a course.

ActionTry it

Get Guardian Invitation

Retrieve a specific guardian invitation for a student by invitation ID. Requires permission to view the student's guardian invitations and guardians to be enabled for the domain. The invited email is visible only to domain administrators.

ActionTry it

Get Invitation

Tool to retrieve an invitation by its identifier. Use when you need to view invitation details.

ActionTry it

Get Material Add-on Attachment

Retrieve an add-on attachment on a course work material by its IDs. The requesting add-on must be the attachment's original creator.

ActionTry it

Get Rubric

Retrieve a rubric's criteria, scoring levels, and timestamps using its course, course work, and rubric IDs.

ActionTry it

Get Student Guardian

Retrieve a specific guardian relationship for a student using the guardian ID. Requires permission to view the student's guardian information and guardians to be enabled for the domain.

ActionTry it

Get Student Submission

Retrieve one student's submission by course, course work, and submission ID, including available answers, attachments, grades, and history.

ActionTry it

Get Teacher

Tool to get teacher enrollment. Use when you need to retrieve a specific teacher in a course by courseId and userId.

ActionTry it

Get User Profile

Tool to retrieve a user profile by user ID. Use when you need to get information about a specific user including their name, email, photo, and permissions.

ActionTry it

Invite Student Guardian

Invite a student's guardian by email to receive guardian notifications. Requires permission to manage guardians and guardians enabled for the domain. Sends an email asking the guardian to confirm their relationship to the student. Fails if the guardian already exists or a matching invitation is pending.

ActionTry it

List Add-on Attachment Submissions

List one page of student submissions the requester may view for a course work add-on attachment. Use nextPageToken as pageToken to retrieve subsequent pages.

ActionTry it

List Add-on Attachments

Lists a page of add-on attachments under an announcement. Requires the add-on to have active attachments on the post or permission to create new attachments.

ActionTry it

List Add-on Attachments on Course Work Material

Tool to list all add-on attachments under a course work material post. Use when you need to retrieve attachments created by an add-on. Requires the add-on to have active attachments or permission to create new attachments on the post.

ActionTry it

List Announcements

Tool to list announcements in a course. Use after you have the course ID to page through announcements.

ActionTry it

List Course Aliases

List a page of aliases for a specified course, with optional page size and page token. A next-page token may be returned for retrieving further aliases.

ActionTry it

List Course Student Groups

Tool to list student groups in a course. Use when you need to retrieve groups within a specific course.

ActionTry it

List Course Students

Tool to list students in a course. Use after you have the course ID to page through enrolled students.

ActionTry it

List Course Teachers

Tool to list teachers in a course. Use after you have the course ID to page through enrolled teachers.

ActionTry it

List Course Topics

Tool to list topics in a course. Use when you have confirmed the courseId and need to retrieve its topics.

ActionTry it

List Course Work Rubrics

Tool to list rubrics for a specific coursework. Use when you need to retrieve grading rubrics that the requester has permission to view.

ActionTry it

List Courses

Tool to list all courses accessible to the authenticated user. Use when you need a paginated list of courses.

ActionTry it

List CourseWork

Tool to list coursework in a course. Use after verifying courseId.

ActionTry it

List CourseWork Add-on Attachments

Tool to list all add-on attachments created by an add-on under a course work. Use when you need to retrieve attachments added by an add-on to course work.

ActionTry it

List CourseWorkMaterials

Tool to list course work materials in a course. Use when you need to retrieve and paginate materials for a given courseId.

ActionTry it

List Guardian Invitations

List one page of guardian invitations for a student, or use studentId '-' as a domain administrator to list all accessible students' invitations. Guardians must be enabled for the domain and the caller must have permission to view invitations. Defaults to PENDING invitations; use states to filter and nextPageToken for subsequent pages.

ActionTry it

List Invitations

Tool to list invitations that the requesting user is permitted to view. At least one of userId or courseId must be supplied.

ActionTry it

List Post Add-on Attachments

Tool to list all add-on attachments created under a post. Use when you need to retrieve attachments added by an add-on. Requires the add-on to have active attachments on the post or permission to create new attachments.

ActionTry it

List Student Group Members

List one page of students in a course's student group. Use nextPageToken to retrieve subsequent pages. Fails if the course or student group does not exist.

ActionTry it

List Student Guardians

Tool to list guardians of a student in a course. Use when you need to retrieve and paginate guardians for a given student in a course.

ActionTry it

List Student Guardians

List one page of guardians for a student, or use studentId '-' as a domain administrator to list all accessible students' guardians. Guardians must be enabled for the domain and the caller must have permission to view them. Use nextPageToken for subsequent pages.

ActionTry it

List Student Submissions

Tool to list student submissions for a specific coursework. Use when you need to fetch or paginate student submissions by course and coursework, optionally filtering by user, state, or timeliness.

ActionTry it

Modify Announcement Assignees

Tool to modify assignee mode and options of an announcement. Use when you need to change who can view an announcement, either making it visible to all students or to specific students only.

ActionTry it

Modify CourseWork Assignees

Tool to modify assignee mode and options of coursework. Use when you need to change who can view coursework, either making it visible to all students or to specific students only.

ActionTry it

Modify Student Submission Attachments

Add attachments to an ASSIGNMENT student submission and return the updated submission. Form attachments are unsupported. The OAuth client must belong to the Developer Console project that created the course work or an add-on attachment on it.

ActionTry it

Patch Announcement

Tool to update fields of an announcement. Use when you need to modify specific details of an existing announcement after confirming which fields to update.

ActionTry it

Patch Course

Tool to update one or more fields of a Classroom course. Use after retrieving course details and confirming fields to update.

ActionTry it

Patch Course Topic

Tool to update fields of a course topic. Use when you need to rename a topic after confirming its current details.

ActionTry it

Patch Course Work

Tool to update one or more fields of a course work. Use when you need to modify specific details of an existing course work after confirming which fields to update.

ActionTry it

Patch Course Work Material

Tool to update fields of a course work material. Use when you need to modify specific details of an existing course work material after confirming which fields to update.

ActionTry it

Reclaim Student Submission

Tool to reclaim a student submission for editing. Use after a student requests to edit their turned-in submission, resetting its state to CREATED.

ActionTry it

Remove Student Group Member

Remove a student from a specific student group using the course, group, and user IDs. Use to remove group membership without removing the student from the course.

ActionTry it

Return Student Submission

Return a student submission, transferring attached Drive files to the student. May also update the submission state; does not copy draftGrade to assignedGrade. Only a teacher of the course may call this method. The OAuth client must belong to the Developer Console project that created the course work or an add-on attachment on that course work. Returns an empty response on success.

ActionTry it

Turn In Student Submission

Turn in a student submission, transferring attached Drive files to the teacher. May also update the submission state. Only the student who owns the submission may call this method. The OAuth client must belong to the Developer Console project that created the course work or an add-on attachment on that course work. Returns an empty response on success.

ActionTry it

Update Add-on Attachment Submission

Update a student's add-on attachment grade on course work using a field mask. The requesting add-on must have created the attachment, and the attachment must have a positive max_points value. Teachers may update points_earned.

ActionTry it

Update Announcement Add-on Attachment

Update an add-on attachment on an announcement using a field mask. The requesting add-on must be the attachment's original creator. Only the documented teacher-editable fields may appear in updateMask.

ActionTry it

Update Course

Tool to update a course. Use when you need to modify course details like name, description, or state. This performs a full update (PUT) of the course.

ActionTry it

Update Coursework Add-on Attachment

Update an add-on attachment on course work using a field mask. The requesting add-on must be the attachment's original creator. Only the documented teacher-editable fields may appear in updateMask.

ActionTry it

Update Coursework Rubric

Update a course work rubric, replacing selected criteria or importing a spreadsheet. Omitted criteria and levels are deleted when replacing criteria. The requesting user and course owner need rubric creation capabilities and the required license. Use the OAuth developer project that created the parent course work. Updates are limited once grading starts.

ActionTry it

Update Grading Period Settings

Update a course's grading period settings. The requesting user and course owner must meet Classroom's grading period licensing requirements. Updating grading_periods replaces the entire list, deleting omitted periods. Preserve existing period IDs to edit periods; omit IDs only for new periods.

ActionTry it

Update Material Add-on Attachment

Update an add-on attachment on a course work material using a field mask. The requesting add-on must be the attachment's original creator. Only the documented teacher-editable fields may appear in updateMask.

ActionTry it

Update Rubric

Update a rubric by ID, replacing criteria or importing a formatted spreadsheet. Replacing criteria deletes omitted criteria and levels. The requesting user and course owner need rubric creation capabilities and the required license. Use the OAuth developer project that created the parent course work. Updates are limited once grading has started.

ActionTry it

Update Student Group

Update a student group's title as a teacher using the required updateMask. Fails if the group is inaccessible or missing, or if the mask is invalid.

ActionTry it

Update Student Submission

Update a student submission's draft or assigned grade as a teacher. The OAuth developer project must have created the course work or a Grade Sync-enabled add-on attachment on it. Only draft_grade and assigned_grade are supported updateMask fields; use ModifyAttachments for attachments.

ActionTry it

Withdraw Guardian Invitation

Withdraw a pending guardian invitation by setting state to COMPLETE with updateMask=state. Only the PENDING to COMPLETE transition is permitted. Requires permission to manage guardians and guardians enabled for the domain; fails for non-pending invitations, invalid updates, or missing students or invitations.

ActionTry it

How the Google Classroom integration works

The Google Classroom integration connects your Dench AI CRM directly to Google Classroom, so agents can read and act on your Google Classroom data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.

100 actions are available for agents to invoke on your behalf. Every call runs through Google Classroom's own authorization, scoped to the account you connect.

Set up Google Classroom in Dench

  1. 1

    Sign in to your Dench workspace and open Integrations.

  2. 2

    Find Google Classroom and click Connect — you'll authorize access through Google Classroom's own sign-in flow. No API keys or code required.

  3. 3

    Ask an agent to use Google Classroom in chat, or call it from an automation.

  4. 4

    Manage or disconnect the connection any time from workspace settings.

Frequently asked questions

How does the Google Classroom integration work with Dench?

The Dench Google Classroom integration connects your AI CRM to Google Classroom, so AI agents can work with your Google Classroom data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.

What actions can AI agents perform with Google Classroom via Dench?

The Google Classroom integration currently exposes 100 actions, including Accept Invitation, Add Course Teacher, Add Student Group Member, Add Student to Course, Create Announcement, and Create Announcement Add-on Attachment. Agents invoke them on your behalf from chat or from automations.

Do I need to write code to connect Google Classroom to Dench?

No. You connect Google Classroom from your Dench workspace using Google Classroom's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.

Is the Google Classroom integration secure?

Connections are authorized through Google Classroom's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the Google Classroom connection from your workspace settings at any time.

Google Classroom | Dench AI CRM