For Agents
Manage Google Classroom courses, rosters, coursework, announcements, and submissions across teacher and student flows.
Get started with Google Classroom API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"create a Google Classroom assignment"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Google Classroom API API.
Create and update Classroom courses and manage course aliases for SIS sync
Enroll, list, and remove students and teachers in a course
Post announcements and coursework with attached materials and due dates
Read and grade student submissions and return assignments to students
GET STARTED
Use for: Create a new Google Classroom course, List all students in a Classroom course, Post an announcement to a Classroom course, Create a Classroom assignment with a due date
Not supported: Does not host video meetings, manage Workspace user accounts, or store attachment file contents — use for Google Classroom course, roster, coursework, and submission operations only.
The Google Classroom API gives schools, education-tech vendors, and content publishers programmatic access to courses, rosters, coursework, announcements, submissions, grades, and add-on attachments inside Google Classroom. It supports both teacher and student perspectives via OAuth, manages course aliases for SIS sync, and exposes coursework state transitions including turn-in, return, and reclaim. It is the backbone for SIS-Classroom integrations and add-ons that embed inside the Classroom stream.
Manage add-on attachments that surface third-party content inside the Classroom stream
List, mark, and reclaim coursework on behalf of students
Patterns agents use Google Classroom API API for, with concrete tasks.
★ SIS-to-Classroom Roster Sync
School districts sync rosters from a Student Information System into Google Classroom by creating courses with stable course aliases and reconciling student and teacher membership nightly. The aliases endpoints let the SIS use its own ids while keeping Classroom in sync. Most integrations use a service account with domain-wide delegation to act on behalf of teachers.
Create a course with id stub via POST /v1/courses, then POST /v1/courses/{courseId}/aliases with alias=d:district_id_12345 and add a teacher via /v1/courses/{courseId}/teachers.
Curriculum Publishing
Education-tech vendors push pre-built lessons, quizzes, and reading assignments into a teacher's Classroom course as coursework with attached Drive resources or YouTube links. The API supports scheduled publication and per-student materials. This eliminates teachers re-creating content manually each term.
POST /v1/courses/{courseId}/courseWork with title="Week 3 Reading", workType=ASSIGNMENT, dueDate, and a Drive attachment.
Grading and Feedback Loops
Schools build grading dashboards that read student submissions, set assigned grades, and return work to students at scale. The submissions endpoints expose state transitions (TURNED_IN, RETURNED, RECLAIMED) and allow updates to draftGrade and assignedGrade with patch masks. Teachers see results immediately in their Classroom UI.
PATCH /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id} with assignedGrade=85 then POST :return.
AI Agent Teaching Assistant via Jentic
An AI agent through Jentic acts as a teaching assistant — listing pending submissions, suggesting feedback drafts for the teacher to review, posting announcements, and creating follow-up assignments. Jentic isolates the Workspace OAuth credentials so the agent never holds the teacher's refresh token directly.
Through Jentic, search classroom_courses_announcements_create, load schema, and execute it for course 12345 with text "Reminder: project due Friday".
95 endpoints — the google classroom api gives schools, education-tech vendors, and content publishers programmatic access to courses, rosters, coursework, announcements, submissions, grades, and add-on attachments inside google classroom.
METHOD
PATH
DESCRIPTION
/v1/courses
Create a Classroom course
/v1/courses
List courses for the caller
/v1/courses/{courseId}/aliases
Create an external alias for a course
/v1/courses/{courseId}/announcements
Post an announcement to a course
/v1/courses/{courseId}/courseWork
Create coursework (assignment, material, or question)
/v1/courses/{courseId}/announcements
List announcements in a course
/v1/courses
Create a Classroom course
/v1/courses
List courses for the caller
/v1/courses/{courseId}/aliases
Create an external alias for a course
/v1/courses/{courseId}/announcements
Post an announcement to a course
/v1/courses/{courseId}/courseWork
Create coursework (assignment, material, or question)
Three things that make agents converge on Jentic-routed access.
Credential isolation
Google Workspace OAuth credentials and service account keys with classroom.* scopes are stored encrypted in the Jentic vault (MAXsystem). Agents receive short-lived access tokens — refresh tokens and service account JSON never enter the agent context.
Intent-based discovery
Agents search Jentic by intent (e.g. 'create a Classroom assignment') and Jentic returns the courses.courseWork.create operation with its parameter schema, including workType and submissionModificationMode enums.
Time to first call
Direct integration: 3-5 days for OAuth setup, scope review, admin approval, and pagination handling across courses and submissions. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Google Drive API
Store the documents and resources attached to Classroom coursework.
Use Drive to upload or share the file; use Classroom to attach it to coursework or an announcement.
Google Calendar API
Schedule lessons and due dates that surface alongside Classroom coursework.
Use Calendar for scheduling; use Classroom for coursework, rosters, and submissions.
Google Forms API
Build quizzes that can be attached as Classroom coursework.
Use Forms to author the quiz; use Classroom to assign it and grade results.
Specific to using Google Classroom API API through Jentic.
What authentication does the Google Classroom API use?
It uses OAuth 2.0 with one or more classroom.* scopes, scoped per resource (courses, rosters, coursework, announcements). Service accounts with domain-wide delegation are common for SIS sync. Through Jentic, the credential is stored encrypted in the Jentic vault and the agent receives only short-lived scoped access tokens.
Can I create a Classroom course via the API?
Yes. POST /v1/courses with name, ownerId, and optionally description and section. Add a stable external id by POSTing /v1/courses/{courseId}/aliases with an alias starting with d: for domain-scoped aliases or p: for project-scoped aliases.
What are the rate limits for the Google Classroom API?
Google enforces per-project quotas (typically thousands of read requests per minute and hundreds of writes) and per-user limits to prevent abuse. Coursework creation and submission patch operations sit under the lower per-user quota, so batch where possible and back off on 429.
How do I post an announcement through Jentic?
Use the Jentic search query "post announcement to Google Classroom" to discover the courses.announcements.create operation, load its schema, and execute it with the courseId and the text body. Run pip install jentic to get started.
Can the API grade and return assignments?
Yes. PATCH a studentSubmission with assignedGrade and an updateMask, then POST :return on the submission to push the grade and feedback back to the student. The student sees the result in the Classroom UI immediately.
Is the Google Classroom API free?
It is free for Google Workspace for Education customers. There is no per-call charge from Google, though some scopes require admin approval before they can be used by third-party apps.
/v1/courses/{courseId}/announcements
List announcements in a course