Google Classroom API

Manages classes, rosters, and invitations in Google Classroom.

Service: classroom.googleapis.com

All URIs below are relative to https://classroom.googleapis.com

This service provides the following discovery document:

REST Resource: v1.courses

Methods
create POST /v1/courses
Creates a course.
delete DELETE /v1/courses/{id}
Deletes a course.
get GET /v1/courses/{id}
Returns a course.
list GET /v1/courses
Returns a list of courses that the requesting user is permitted to view, restricted to those that match the request.
patch PATCH /v1/courses/{id}
Updates one or more fields in a course.
update PUT /v1/courses/{id}
Updates a course.

REST Resource: v1.courses.aliases

Methods
create POST /v1/courses/{courseId}/aliases
Creates an alias for a course.
delete DELETE /v1/courses/{courseId}/aliases/{alias}
Deletes an alias of a course.
list GET /v1/courses/{courseId}/aliases
Returns a list of aliases for a course.

REST Resource: v1.courses.announcements

Methods
create POST /v1/courses/{courseId}/announcements
Creates an announcement.
delete DELETE /v1/courses/{courseId}/announcements/{id}
Deletes an announcement.
get GET /v1/courses/{courseId}/announcements/{id}
Returns an announcement.
list GET /v1/courses/{courseId}/announcements
Returns a list of announcements that the requester is permitted to view.
modifyAssignees POST /v1/courses/{courseId}/announcements/{id}:modifyAssignees
Modifies assignee mode and options of an announcement.
patch PATCH /v1/courses/{courseId}/announcements/{id}
Updates one or more fields of an announcement.

REST Resource: v1.courses.courseWork

Methods
create POST /v1/courses/{courseId}/courseWork
Creates course work.
delete DELETE /v1/courses/{courseId}/courseWork/{id}
Deletes a course work.
get GET /v1/courses/{courseId}/courseWork/{id}
Returns course work.
list GET /v1/courses/{courseId}/courseWork
Returns a list of course work that the requester is permitted to view.
modifyAssignees POST /v1/courses/{courseId}/courseWork/{id}:modifyAssignees
Modifies assignee mode and options of a coursework.
patch PATCH /v1/courses/{courseId}/courseWork/{id}
Updates one or more fields of a course work.

REST Resource: v1.courses.courseWork.studentSubmissions

Methods
get GET /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}
Returns a student submission.
list GET /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions
Returns a list of student submissions that the requester is permitted to view, factoring in the OAuth scopes of the request.
modifyAttachments POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments
Modifies attachments of student submission.
patch PATCH /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}
Updates one or more fields of a student submission.
reclaim POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim
Reclaims a student submission on behalf of the student that owns it.
return POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return
Returns a student submission.
turnIn POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn
Turns in a student submission.

REST Resource: v1.courses.students

Methods
create POST /v1/courses/{courseId}/students
Adds a user as a student of a course.
delete DELETE /v1/courses/{courseId}/students/{userId}
Deletes a student of a course.
get GET /v1/courses/{courseId}/students/{userId}
Returns a student of a course.
list GET /v1/courses/{courseId}/students
Returns a list of students of this course that the requester is permitted to view.

REST Resource: v1.courses.teachers

Methods
create POST /v1/courses/{courseId}/teachers
Creates a teacher of a course.
delete DELETE /v1/courses/{courseId}/teachers/{userId}
Deletes a teacher of a course.
get GET /v1/courses/{courseId}/teachers/{userId}
Returns a teacher of a course.
list GET /v1/courses/{courseId}/teachers
Returns a list of teachers of this course that the requester is permitted to view.

REST Resource: v1.invitations

Methods
accept POST /v1/invitations/{id}:accept
Accepts an invitation, removing it and adding the invited user to the teachers or students (as appropriate) of the specified course.
create POST /v1/invitations
Creates an invitation.
delete DELETE /v1/invitations/{id}
Deletes an invitation.
get GET /v1/invitations/{id}
Returns an invitation.
list GET /v1/invitations
Returns a list of invitations that the requesting user is permitted to view, restricted to those that match the list request.

REST Resource: v1.registrations

Methods
create POST /v1/registrations
Creates a Registration, causing Classroom to start sending notifications from the provided feed to the destination provided in cloudPubSubTopic.
delete DELETE /v1/registrations/{registrationId}
Deletes a Registration, causing Classroom to stop sending notifications for that Registration.

REST Resource: v1.userProfiles

Methods
get GET /v1/userProfiles/{userId}
Returns a user profile.

REST Resource: v1.userProfiles.guardianInvitations

Methods
create POST /v1/userProfiles/{guardianInvitation.studentId}/guardianInvitations
Creates a guardian invitation, and sends an email to the guardian asking them to confirm that they are the student's guardian.
get GET /v1/userProfiles/{studentId}/guardianInvitations/{invitationId}
Returns a specific guardian invitation.
list GET /v1/userProfiles/{studentId}/guardianInvitations
Returns a list of guardian invitations that the requesting user is permitted to view, filtered by the parameters provided.
patch PATCH /v1/userProfiles/{studentId}/guardianInvitations/{invitationId}
Modifies a guardian invitation.

REST Resource: v1.userProfiles.guardians

Methods
delete DELETE /v1/userProfiles/{studentId}/guardians/{guardianId}
Deletes a guardian.
get GET /v1/userProfiles/{studentId}/guardians/{guardianId}
Returns a specific guardian.
list GET /v1/userProfiles/{studentId}/guardians
Returns a list of guardians that the requesting user is permitted to view, restricted to those that match the request.

Send feedback about...

Classroom API
Classroom API
Need help? Visit our support page.