Google Classroom
App · Courses · 20 actions
Manage Google Classroom classes: create and update courses, read rosters, invite students and teachers, post announcements and materials, set assignments with due dates, and read and grade student work.
Actions
| Action | What it does |
|---|---|
| Create assignment | Create an assignment or a question in a class, with instructions, a due date, a point value, a topic and attached links. |
| Create class | Create a Google Classroom class owned by the connected account. |
| Create topic | Create a topic in a class, so assignments and materials can be grouped under it on the Classwork page. |
| Delete assignment | Delete an assignment or question, along with every student submission for it. |
| Delete class | Permanently delete a class and everything in it. |
| Get class | Read one class in full, including its enrollment code, its Classroom link, and the Calendar and Google Group it owns. |
| Get user profile | Look up a Classroom user's name, email address and photo by their user ID or email address. |
| Grade submission | Grade one student's submission and, by default, return it so the student can see the grade. |
| Invite someone to a class | Invite someone to join a class as a student, a teacher, or its owner. |
| List announcements | List the announcements posted to a class's stream, most recently updated first. |
| List assignments | List the assignments and questions in a class, with their due dates and point values. |
| List classes | List the Google Classroom classes the connected account can see. |
| List materials | List the materials posted to a class: reading, links and resources with nothing to hand in and no grade. |
| List student submissions | List every student's submission for one assignment, with its state, whether it was late, and the grades on it. |
| List students | List the students enrolled in a class, with each one's name and email address. |
| List teachers | List the teachers of a class, with each one's name and email address. |
| List topics | List the topics in a class: the headings that assignments and materials are grouped under on the Classwork page. |
| Post announcement | Post an announcement to a class's stream, optionally with links attached, and optionally scheduled to publish later. |
| Post material | Post material to a class (reading, links or resources with nothing to hand in and no grade), optionally filed under a topic. |
| Update class | Change a class's name, section, subject, description, room or state. |
Create assignment
Create an assignment or a question in a class, with instructions, a due date, a point value, a topic and attached links. Classroom creates one submission per student as soon as it is published.
Inputs
- Course
course_idtextRequired - The class to work with.
- Title
titletextRequired - Title of the assignment.
- Instructions
descriptiontext - Instructions shown to students.
- Type
work_typetext - What kind of work students hand in.One of:
ASSIGNMENT,SHORT_ANSWER_QUESTION(Short-answer question),MULTIPLE_CHOICE_QUESTION(Multiple-choice question). Default:ASSIGNMENT. - Publish or save as draft
statetext - Publish it to the class now, or save it as a draft only teachers can see.One of:
PUBLISHED(Publish to the class),DRAFT(Save as a draft). Default:PUBLISHED. - Points
max_pointsnumber - What the assignment is out of, as a whole number. Use 0, or leave empty, for ungraded work.From 0 to 1000.
- Due
due_atdate and time - When the assignment is due. Leave empty for no due date.
- Topic
topic_idtext - File this under an existing topic in the class. Leave empty for none.
- Attachment links
link_urlslist - Web addresses to attach, one per entry. A YouTube link is attached as a playable video; anything else (including a Google Docs or Drive link) is attached as a link card. Up to 20.
- Publish at
scheduled_timedate and time - Hold the assignment until this date and time. Leave empty to publish it right away.
Outputs
alternate_linktext- Link to the assignment in Google Classroom
course_idtext- ID of the class
creation_timetext- When it was created
creator_user_idtext- User ID of the teacher who created it
descriptiontext- Instructions
due_attext- When it is due, as a UTC timestamp; empty if no due date
idtext- Assignment ID. Use this with the submission actions.
materialslist- Attachments on the post
max_pointsnumber- Points the assignment is out of; 0 means ungraded, and null means no point value was set
scheduled_timetext- When it is scheduled to publish, if it is scheduled
statetext- PUBLISHED, DRAFT or DELETED
titletext- Assignment title
topic_idtext- ID of the topic it is filed under
update_timetext- When it was last changed
work_typetext- ASSIGNMENT, SHORT_ANSWER_QUESTION or MULTIPLE_CHOICE_QUESTION
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/a/NzQ1MjkxMDM5MjIy",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:12:33.006Z",
"creator_user_id": "108372910384729103847",
"description": "Write up Tuesday's potato-core experiment.",
"due_at": "2026-09-04T23:59:00Z",
"id": "745291039222",
"materials": [],
"max_points": 100,
"scheduled_time": "",
"state": "PUBLISHED",
"title": "Lab report: osmosis",
"topic_id": "745291038999",
"update_time": "2026-08-21T14:12:33.006Z",
"work_type": "ASSIGNMENT"
}Create class
Create a Google Classroom class owned by the connected account. The result includes the enrollment code students use to join.
Inputs
- Class name
nametextRequired - Name of the class.
- Section
sectiontext - Section of the class, e.g. 'Period 3'.
- Subject
description_headingtext - Short subject line shown under the class name.
- Description
descriptiontext - Longer description of the class.
- Room
roomtext - Room the class meets in.
- Class state
course_statetext - Active classes are visible to students right away. Provisioned classes stay hidden until you activate them.One of:
ACTIVE,PROVISIONED(Provisioned (hidden for now)). Default:ACTIVE.
Outputs
alternate_linktext- Link to the class in Google Classroom
calendar_idtext- Google Calendar ID for the class, once it is active
course_group_emailtext- Google Group address for everyone in the class, if any
course_statetext- ACTIVE, ARCHIVED, PROVISIONED, DECLINED or SUSPENDED
creation_timetext- When the class was created
descriptiontext- Class description
description_headingtext- Description heading
enrollment_codetext- Code students use to join the class
idtext- Course ID. Use this with the other actions.
nametext- Class name
owner_idtext- User ID of the teacher who owns the class
roomtext- Room
sectiontext- Section, e.g. 'Period 2'
update_timetext- When the class was last changed
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy",
"calendar_id": "classroom1234567890@group.calendar.google.com",
"course_group_email": "ap_biology_a1b2c3@classroom.google.com",
"course_state": "ACTIVE",
"creation_time": "2026-08-14T16:02:11.735Z",
"description": "Cells, genetics, evolution and ecology.",
"description_heading": "AP Biology",
"enrollment_code": "k7m2xqa",
"id": "745291038472",
"name": "AP Biology",
"owner_id": "108372910384729103847",
"room": "Lab 2",
"section": "Period 3",
"update_time": "2026-08-20T09:41:52.118Z"
}Create topic
Create a topic in a class, so assignments and materials can be grouped under it on the Classwork page.
Inputs
- Course
course_idtextRequired - The class to work with.
- Topic name
nametextRequired - Name of the topic.
Outputs
course_idtext- ID of the class
nametext- Topic name
topic_idtext- Topic ID. Use this when creating an assignment or material.
update_timetext- When the topic was last changed
Example output
{
"course_id": "745291038472",
"name": "Unit 1: Cell structure",
"topic_id": "745291038999",
"update_time": "2026-08-20T09:41:52.118Z"
}Delete assignment
Delete an assignment or question, along with every student submission for it.
Inputs
- Course
course_idtextRequired - The class to work with.
- Assignment
course_work_idtextRequired - The assignment or question to work with.
Outputs
course_idtext- ID of the class
deletedtext- Always 'true' when the assignment was deleted
idtext- ID of the deleted assignment
Example output
{
"course_id": "745291038472",
"deleted": "true",
"id": "745291039222"
}Delete class
Permanently delete a class and everything in it. Classroom only deletes an archived class, so an active one is archived first.
Inputs
- Course
course_idtextRequired - The class to work with.
Outputs
archived_firsttext- 'true' if the class had to be archived before deleting
deletedtext- Always 'true' when the class was deleted
idtext- ID of the deleted class
Example output
{
"archived_first": "true",
"deleted": "true",
"id": "745291038472"
}Get class
Read one class in full, including its enrollment code, its Classroom link, and the Calendar and Google Group it owns.
Inputs
- Course
course_idtextRequired - The class to work with.
Outputs
alternate_linktext- Link to the class in Google Classroom
calendar_idtext- Google Calendar ID for the class, once it is active
course_group_emailtext- Google Group address for everyone in the class, if any
course_statetext- ACTIVE, ARCHIVED, PROVISIONED, DECLINED or SUSPENDED
creation_timetext- When the class was created
descriptiontext- Class description
description_headingtext- Description heading
enrollment_codetext- Code students use to join the class
idtext- Course ID. Use this with the other actions.
nametext- Class name
owner_idtext- User ID of the teacher who owns the class
roomtext- Room
sectiontext- Section, e.g. 'Period 2'
update_timetext- When the class was last changed
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy",
"calendar_id": "classroom1234567890@group.calendar.google.com",
"course_group_email": "ap_biology_a1b2c3@classroom.google.com",
"course_state": "ACTIVE",
"creation_time": "2026-08-14T16:02:11.735Z",
"description": "Cells, genetics, evolution and ecology.",
"description_heading": "AP Biology",
"enrollment_code": "k7m2xqa",
"id": "745291038472",
"name": "AP Biology",
"owner_id": "108372910384729103847",
"room": "Lab 2",
"section": "Period 3",
"update_time": "2026-08-20T09:41:52.118Z"
}Get user profile
Look up a Classroom user's name, email address and photo by their user ID or email address. Leave it as 'me' for the connected account.
Inputs
- User
user_idtext - Email address or Classroom user ID. Use 'me' for the connected account.Default:
me.
Outputs
email_addresstext- Email address
family_nametext- Last name
full_nametext- Full name
given_nametext- First name
photo_urltext- Profile photo URL
user_idtext- Classroom user ID. Use this with 'Get user profile'.
Example output
{
"email_address": "jordan.alvarez@example.edu",
"family_name": "Alvarez",
"full_name": "Jordan Alvarez",
"given_name": "Jordan",
"photo_url": "//lh3.googleusercontent.com/a/default-user",
"user_id": "114829301847293018472"
}Grade submission
Grade one student's submission and, by default, return it so the student can see the grade. Turn returning off to leave the grade as a draft only teachers can see.
Inputs
- Course
course_idtextRequired - The class to work with.
- Assignment
course_work_idtextRequired - The assignment or question to work with.
- Submission
submission_idtextRequired - The student submission to grade.
- Grade
gradenumberRequired - Points to award, out of the assignment's total. Decimals are rounded to two places.From 0 to 1000.
- Return to the student
return_to_studenttrue/false - Hand the work back so the student sees the grade. Turn this off to keep it as a draft grade.Default:
true.
Outputs
alternate_linktext- Link to the submission in Google Classroom
assigned_gradenumber- Grade the student can see; null when not yet returned
course_idtext- ID of the class
course_work_idtext- ID of the assignment
course_work_typetext- Type of the assignment this answers
creation_timetext- When it was created
draft_gradenumber- Grade only the teacher can see; null when ungraded
idtext- Submission ID. Use this with 'Grade submission'.
latetrue/false- Whether it was handed in late
returned_to_studenttrue/false- Whether the work was returned to the student
statetext- NEW, CREATED, TURNED_IN, RETURNED or RECLAIMED_BY_STUDENT
update_timetext- When it was last changed
user_idtext- User ID of the student the submission belongs to
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/a/NzQ1MjkxMDM5MjIy/submissions/by-status/and-sort-last-name/student/MTE0ODI5",
"assigned_grade": 92,
"course_id": "745291038472",
"course_work_id": "745291039222",
"course_work_type": "ASSIGNMENT",
"creation_time": "2026-08-21T14:12:34.220Z",
"draft_grade": 92,
"id": "Cg4I2LqbnpUQEO_hxr7VEA",
"late": false,
"returned_to_student": true,
"state": "RETURNED",
"update_time": "2026-09-03T18:30:02.774Z",
"user_id": "114829301847293018472"
}Invite someone to a class
Invite someone to join a class as a student, a teacher, or its owner. They join once they accept the invitation in Classroom.
Inputs
- Course
course_idtextRequired - The class to work with.
- Email address
user_idtextRequired - Email address of the person to invite (their Classroom user ID also works).
- Role
roletext - What to invite them as.One of:
STUDENT,TEACHER,OWNER(Owner (hands over the class)). Default:STUDENT.
Outputs
course_idtext- ID of the class
idtext- Invitation ID
roletext- STUDENT, TEACHER or OWNER
user_idtext- Who was invited, as Classroom resolved them
Example output
{
"course_id": "745291038472",
"id": "Y2xhc3Nyb29tL2ludml0YXRpb24vNzQ1MjkxMDM4NDcy",
"role": "STUDENT",
"user_id": "114829301847293018472"
}List announcements
List the announcements posted to a class's stream, most recently updated first.
Inputs
- Course
course_idtextRequired - The class to work with.
- States
announcement_stateslist - Only return items in these states. Leave empty for published and draft items.One or more of:
PUBLISHED,DRAFT,DELETED(Deleted (not yet purged)). - Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
announcementslist- List of announcements
Example output
{
"announcements": [
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/p/NzQ1MjkxMDM5MTAx",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:05:00.412Z",
"creator_user_id": "108372910384729103847",
"id": "745291039101",
"materials": [
{
"title": "Lab safety checklist",
"type": "link",
"url": "https://example.edu/lab-safety"
}
],
"scheduled_time": "",
"state": "PUBLISHED",
"text": "Reminder: bring your lab notebooks on Thursday.",
"update_time": "2026-08-21T14:05:00.412Z"
}
]
}List assignments
List the assignments and questions in a class, with their due dates and point values. Sort by due date to see what is next.
Inputs
- Course
course_idtextRequired - The class to work with.
- States
course_work_stateslist - Only return items in these states. Leave empty for published and draft items.One or more of:
PUBLISHED,DRAFT,DELETED(Deleted (not yet purged)). - Sort by
order_bytext - What order to return the assignments in.One of:
updateTime desc(Recently changed first),updateTime asc(Least recently changed first),dueDate asc(Due soonest first),dueDate desc(Due latest first). Default:updateTime desc. - Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
course_worklist- List of assignments and questions
Example output
{
"course_work": [
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/a/NzQ1MjkxMDM5MjIy",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:12:33.006Z",
"creator_user_id": "108372910384729103847",
"description": "Write up Tuesday's potato-core experiment.",
"due_at": "2026-09-04T23:59:00Z",
"id": "745291039222",
"materials": [],
"max_points": 100,
"scheduled_time": "",
"state": "PUBLISHED",
"title": "Lab report: osmosis",
"topic_id": "745291038999",
"update_time": "2026-08-21T14:12:33.006Z",
"work_type": "ASSIGNMENT"
}
]
}List classes
List the Google Classroom classes the connected account can see. Narrow to the ones you teach or the ones you are enrolled in, and filter by state.
Inputs
- My role
roletext - Which classes to return, by your role in them.One of:
any(Any class I can see),teacher(Classes I teach),student(Classes I'm enrolled in). Default:any. - Class states
course_stateslist - Only return classes in these states. Leave empty for all.One or more of:
ACTIVE,ARCHIVED,PROVISIONED(Provisioned (created, not yet accepted)),DECLINED,SUSPENDED. - Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
courseslist- List of classes
Example output
{
"courses": [
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy",
"calendar_id": "classroom1234567890@group.calendar.google.com",
"course_group_email": "ap_biology_a1b2c3@classroom.google.com",
"course_state": "ACTIVE",
"creation_time": "2026-08-14T16:02:11.735Z",
"description": "Cells, genetics, evolution and ecology.",
"description_heading": "AP Biology",
"enrollment_code": "k7m2xqa",
"id": "745291038472",
"name": "AP Biology",
"owner_id": "108372910384729103847",
"room": "Lab 2",
"section": "Period 3",
"update_time": "2026-08-20T09:41:52.118Z"
}
]
}List materials
List the materials posted to a class: reading, links and resources with nothing to hand in and no grade.
Inputs
- Course
course_idtextRequired - The class to work with.
- States
material_stateslist - Only return items in these states. Leave empty for published and draft items.One or more of:
PUBLISHED,DRAFT,DELETED(Deleted (not yet purged)). - Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
course_materialslist- List of materials
Example output
{
"course_materials": [
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/m/NzQ1MjkxMDM5MzMz",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:20:07.901Z",
"creator_user_id": "108372910384729103847",
"description": "Chapters 1-4, plus the two optional papers.",
"id": "745291039333",
"materials": [
{
"title": "Osmosis explained",
"type": "youtube_video",
"url": "https://www.youtube.com/watch?v=aBcDeFgHiJk"
}
],
"scheduled_time": "",
"state": "PUBLISHED",
"title": "Unit 1 reading list",
"topic_id": "745291038999",
"update_time": "2026-08-21T14:20:07.901Z"
}
]
}List student submissions
List every student's submission for one assignment, with its state, whether it was late, and the grades on it. Classroom creates a submission per student when the assignment is published, so filtering by state answers 'who hasn't handed in'.
Inputs
- Course
course_idtextRequired - The class to work with.
- Assignment
course_work_idtextRequired - The assignment or question to work with.
- Submission states
stateslist - Only return submissions in these states. Leave empty for all of them.One or more of:
NEW(New (never opened)),CREATED(In progress),TURNED_IN(Turned in),RETURNED(Returned to the student),RECLAIMED_BY_STUDENT(Reclaimed by the student). - Timeliness
latetext - Whether to return only late or only on-time work.One of:
any(Late and on time),late(Late only),on_time(On time only). Default:any. - Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
student_submissionslist- List of student submissions
Example output
{
"student_submissions": [
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/a/NzQ1MjkxMDM5MjIy/submissions/by-status/and-sort-last-name/student/MTE0ODI5",
"assigned_grade": null,
"course_id": "745291038472",
"course_work_id": "745291039222",
"course_work_type": "ASSIGNMENT",
"creation_time": "2026-08-21T14:12:34.220Z",
"draft_grade": null,
"id": "Cg4I2LqbnpUQEO_hxr7VEA",
"late": false,
"state": "TURNED_IN",
"update_time": "2026-09-03T18:30:02.774Z",
"user_id": "114829301847293018472"
}
]
}List students
List the students enrolled in a class, with each one's name and email address. This is the class roster.
Inputs
- Course
course_idtextRequired - The class to work with.
- Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
studentslist- List of students
Example output
{
"students": [
{
"course_id": "745291038472",
"email_address": "jordan.alvarez@example.edu",
"family_name": "Alvarez",
"full_name": "Jordan Alvarez",
"given_name": "Jordan",
"photo_url": "//lh3.googleusercontent.com/a/default-user",
"user_id": "114829301847293018472"
}
]
}List teachers
List the teachers of a class, with each one's name and email address.
Inputs
- Course
course_idtextRequired - The class to work with.
- Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
teacherslist- List of teachers
Example output
{
"teachers": [
{
"course_id": "745291038472",
"email_address": "jordan.alvarez@example.edu",
"family_name": "Alvarez",
"full_name": "Jordan Alvarez",
"given_name": "Jordan",
"photo_url": "//lh3.googleusercontent.com/a/default-user",
"user_id": "114829301847293018472"
}
]
}List topics
List the topics in a class: the headings that assignments and materials are grouped under on the Classwork page.
Inputs
- Course
course_idtextRequired - The class to work with.
- Maximum results
max_resultsnumber - How many items to return, at most (1-500). Defaults to 50.From 1 to 500. Default:
50.
Outputs
topicslist- List of topics
Example output
{
"topics": [
{
"course_id": "745291038472",
"name": "Unit 1: Cell structure",
"topic_id": "745291038999",
"update_time": "2026-08-20T09:41:52.118Z"
}
]
}Post announcement
Post an announcement to a class's stream, optionally with links attached, and optionally scheduled to publish later.
Inputs
- Course
course_idtextRequired - The class to work with.
- Announcement
texttextRequired - What the announcement says.
- Publish or save as draft
statetext - Publish it to the class now, or save it as a draft only teachers can see.One of:
PUBLISHED(Publish to the class),DRAFT(Save as a draft). Default:PUBLISHED. - Attachment links
link_urlslist - Web addresses to attach, one per entry. A YouTube link is attached as a playable video; anything else (including a Google Docs or Drive link) is attached as a link card. Up to 20.
- Publish at
scheduled_timedate and time - Hold the announcement until this date and time. Leave empty to post it right away.
Outputs
alternate_linktext- Link to the announcement in Google Classroom
course_idtext- ID of the class
creation_timetext- When it was created
creator_user_idtext- User ID of whoever posted it
idtext- Announcement ID
materialslist- Attachments on the post
scheduled_timetext- When it is scheduled to publish, if it is scheduled
statetext- PUBLISHED, DRAFT or DELETED
texttext- Announcement text
update_timetext- When it was last changed
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/p/NzQ1MjkxMDM5MTAx",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:05:00.412Z",
"creator_user_id": "108372910384729103847",
"id": "745291039101",
"materials": [
{
"title": "Lab safety checklist",
"type": "link",
"url": "https://example.edu/lab-safety"
}
],
"scheduled_time": "",
"state": "PUBLISHED",
"text": "Reminder: bring your lab notebooks on Thursday.",
"update_time": "2026-08-21T14:05:00.412Z"
}Post material
Post material to a class (reading, links or resources with nothing to hand in and no grade), optionally filed under a topic.
Inputs
- Course
course_idtextRequired - The class to work with.
- Title
titletextRequired - Title of the material.
- Description
descriptiontext - Description shown to students.
- Publish or save as draft
statetext - Publish it to the class now, or save it as a draft only teachers can see.One of:
PUBLISHED(Publish to the class),DRAFT(Save as a draft). Default:PUBLISHED. - Topic
topic_idtext - File this under an existing topic in the class. Leave empty for none.
- Attachment links
link_urlslist - Web addresses to attach, one per entry. A YouTube link is attached as a playable video; anything else (including a Google Docs or Drive link) is attached as a link card. Up to 20.
Outputs
alternate_linktext- Link to the material in Google Classroom
course_idtext- ID of the class
creation_timetext- When it was created
creator_user_idtext- User ID of the teacher who posted it
descriptiontext- Material description
idtext- Material ID
materialslist- Attachments on the post
scheduled_timetext- When it is scheduled to publish, if it is scheduled
statetext- PUBLISHED, DRAFT or DELETED
titletext- Material title
topic_idtext- ID of the topic it is filed under
update_timetext- When it was last changed
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy/m/NzQ1MjkxMDM5MzMz",
"course_id": "745291038472",
"creation_time": "2026-08-21T14:20:07.901Z",
"creator_user_id": "108372910384729103847",
"description": "Chapters 1-4, plus the two optional papers.",
"id": "745291039333",
"materials": [
{
"title": "Osmosis explained",
"type": "youtube_video",
"url": "https://www.youtube.com/watch?v=aBcDeFgHiJk"
}
],
"scheduled_time": "",
"state": "PUBLISHED",
"title": "Unit 1 reading list",
"topic_id": "745291038999",
"update_time": "2026-08-21T14:20:07.901Z"
}Update class
Change a class's name, section, subject, description, room or state. Only the fields you fill in are changed; set the state to Archived to close a class out at the end of a term.
Inputs
- Course
course_idtextRequired - The class to work with.
- Class name
nametext - New name for the class. Leave empty to keep it.
- Section
sectiontext - New section. Leave empty to keep it.
- Subject
description_headingtext - New subject line. Leave empty to keep it.
- Description
descriptiontext - New description. Leave empty to keep it.
- Room
roomtext - New room. Leave empty to keep it.
- Class state
course_statetext - New state for the class. Leave empty to keep it.One of:
ACTIVE,ARCHIVED,PROVISIONED(Provisioned (created, not yet accepted)),DECLINED,SUSPENDED.
Outputs
alternate_linktext- Link to the class in Google Classroom
calendar_idtext- Google Calendar ID for the class, once it is active
course_group_emailtext- Google Group address for everyone in the class, if any
course_statetext- ACTIVE, ARCHIVED, PROVISIONED, DECLINED or SUSPENDED
creation_timetext- When the class was created
descriptiontext- Class description
description_headingtext- Description heading
enrollment_codetext- Code students use to join the class
idtext- Course ID. Use this with the other actions.
nametext- Class name
owner_idtext- User ID of the teacher who owns the class
roomtext- Room
sectiontext- Section, e.g. 'Period 2'
update_timetext- When the class was last changed
Example output
{
"alternate_link": "https://classroom.google.com/c/NzQ1MjkxMDM4NDcy",
"calendar_id": "classroom1234567890@group.calendar.google.com",
"course_group_email": "ap_biology_a1b2c3@classroom.google.com",
"course_state": "ACTIVE",
"creation_time": "2026-08-14T16:02:11.735Z",
"description": "Cells, genetics, evolution and ecology.",
"description_heading": "AP Biology",
"enrollment_code": "k7m2xqa",
"id": "745291038472",
"name": "AP Biology",
"owner_id": "108372910384729103847",
"room": "Lab 2",
"section": "Period 3",
"update_time": "2026-08-20T09:41:52.118Z"
}