Gcp/classroom
@swamp/gcp/classroomv2026.06.16.1
01README
Google Cloud classroom infrastructure models
02Release Notes
- Updated: courses_coursework_addonattachments_studentsubmissions, courses_posts_addonattachments_studentsubmissions
03Models
@swamp/gcp/classroom/coursesv2026.06.08.1courses.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alternateLink? | string | Absolute link to this course in the Classroom web UI. Read-only. |
| calendarId? | string | The Calendar ID for a calendar that all course members can see, to which Classroom adds events for course work and announcements in the course. The Calendar for a course is created asynchronously when the course is set to `CourseState.ACTIVE` for the first time (at creation time or when it is updated to `ACTIVE` through the UI or the API). The Calendar ID will not be populated until the creation process is completed. Read-only. |
| courseGroupEmail? | string | The email address of a Google group containing all members of the course. This group does not accept email and can only be used for permissions. Read-only. |
| courseState? | enum | State of the course. If unspecified, the default state is `PROVISIONED`. |
| creationTime? | string | Creation time of the course. Specifying this field in a course update mask results in an error. Read-only. |
| description? | string | Optional description. For example, "We\ |
| descriptionHeading? | string | Optional heading for the description. For example, "Welcome to 10th Grade Biology." If set, this field must be a valid UTF-8 string and no longer than 3600 characters. |
| enrollmentCode? | string | Enrollment code to use when joining this course. Specifying this field in a course update mask results in an error. Read-only. |
| gradebookSettings? | object | The gradebook settings for a course. See the [help center article](https://support.google.com/edu/classroom/answer/9184995) for details. |
| guardiansEnabled? | boolean | Whether or not guardian notifications are enabled for this course. Read-only. |
| id? | string | Identifier for this course assigned by Classroom. When creating a course, you may optionally set this identifier to an alias string in the request to create a corresponding alias. The `id` is still assigned by Classroom and cannot be updated after the course is created. Specifying this field in a course update mask results in an error. |
| levels? | string | Optional. Levels for the course. Examples: "9th grade", "Middle school", "4th - 5th", "K-2", "3000". If set, this field must be a valid UTF-8 string and fewer than 1000 characters. This field can only be cleared using the `PatchCourse` method. |
| name? | string | Name of the course. For example, "10th Grade Biology". The name is required. It must be between 1 and 750 characters and a valid UTF-8 string. |
| ownerId? | string | The identifier of the owner of a course. When specified as a parameter of a create course request, this field is required. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user This must be set in a create request. Admins can also specify this field in a patch course request to transfer ownership. In other contexts, it is read-only. |
| room? | string | Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters. |
| section? | string | Section of the course. For example, "Period 2". If set, this field must be a valid UTF-8 string and no longer than 2800 characters. |
| subject? | string | Optional. The subject of the course. |
| teacherFolder? | object | Representation of a Google Drive folder. |
| teacherGroupEmail? | string | The email address of a Google group containing all teachers of the course. This group does not accept email and can only be used for permissions. Read-only. |
| updateTime? | string | Time of the most recent update to this course. Specifying this field in a course update mask results in an error. Read-only. |
fn create()
Create a courses
fn get(identifier: string)
Get a courses
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courses |
fn update()
Update courses attributes
fn delete(identifier: string)
Delete the courses
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courses |
fn sync()
Sync courses state from GCP
fn list(courseStates?: string, pageSize?: number, studentId?: string, teacherId?: string, maxPages?: number)
List courses resources
| Argument | Type | Description |
|---|---|---|
| courseStates? | string | Restricts returned courses to those in one of the specified states. If unspecified, Courses in any state are returned. |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| studentId? | string | Restricts returned courses to those having a student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `teacher_id` must be empty. |
| teacherId? | string | Restricts returned courses to those having a teacher with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user If specified, `student_id` must be empty. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn get_grading_period_settings()
get grading period settings
fn update_grading_period_settings(applyToExistingCoursework?: any, gradingPeriods?: any)
update grading period settings
| Argument | Type | Description |
|---|---|---|
| applyToExistingCoursework? | any | |
| gradingPeriods? | any |
Resources
state(infinite)— A Course in Classroom.
@swamp/gcp/classroom/courses-aliasesv2026.06.08.1courses_aliases.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alias? | string | Alias string. The format of the string indicates the desired alias scoping. * `d:` indicates a domain-scoped alias. Example: `d:math_101` * `p:` indicates a project-scoped alias. Example: `p:abc123` This field has a maximum length of 256 characters. |
| courseId | string | Identifier of the course to alias. This identifier can be either the Classroom-assigned identifier or an alias. |
fn create()
Create a aliases
fn get(identifier: string)
Get a aliases
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the aliases |
fn delete(identifier: string)
Delete the aliases
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the aliases |
fn sync()
Sync aliases state from GCP
fn list(pageSize?: number, maxPages?: number)
List aliases resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— Alternative identifier for a course. An alias uniquely identifies a course. I...
@swamp/gcp/classroom/courses-announcementsv2026.06.08.1courses_announcements.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alternateLink? | string | Absolute link to this announcement in the Classroom web UI. This is only populated if `state` is `PUBLISHED`. Read-only. |
| assigneeMode? | enum | Assignee mode of the announcement. If unspecified, the default value is `ALL_STUDENTS`. |
| courseId? | string | Identifier of the course. Read-only. |
| creationTime? | string | Timestamp when this announcement was created. Read-only. |
| creatorUserId? | string | Identifier for the user that created the announcement. Read-only. |
| id? | string | Classroom-assigned identifier of this announcement, unique per course. Read-only. |
| individualStudentsOptions? | object | Assignee details about a coursework/announcement. This field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`. |
| materials? | array | Additional materials. Announcements must have no more than 20 material items. |
| scheduledTime? | string | Optional timestamp when this announcement is scheduled to be published. |
| state? | enum | Status of this announcement. If unspecified, the default state is `DRAFT`. |
| text? | string | Description of this announcement. The text must be a valid UTF-8 string containing no more than 30,000 characters. |
| updateTime? | string | Timestamp of the most recent change to this announcement. Read-only. |
fn create()
Create a announcements
fn get(identifier: string)
Get a announcements
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the announcements |
fn update()
Update announcements attributes
fn delete(identifier: string)
Delete the announcements
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the announcements |
fn sync()
Sync announcements state from GCP
fn list(announcementStates?: string, orderBy?: string, pageSize?: number, maxPages?: number)
List announcements resources
| Argument | Type | Description |
|---|---|---|
| announcementStates? | string | Restriction on the `state` of announcements returned. If this argument is left unspecified, the default value is `PUBLISHED`. |
| orderBy? | string | Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported field is `updateTime`. Supported direction keywords are `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `updateTime asc`, `updateTime` |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn get_add_on_context()
get add on context
fn modify_assignees(assigneeMode?: any, modifyIndividualStudentsOptions?: any)
modify assignees
| Argument | Type | Description |
|---|---|---|
| assigneeMode? | any | |
| modifyIndividualStudentsOptions? | any |
Resources
state(infinite)— Announcement created by a teacher for students of the course
@swamp/gcp/classroom/courses-announcements-addonattachmentsv2026.06.08.1courses_announcements_addonattachments.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Immutable. Identifier of the course. |
| dueDate? | object | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). R |
| dueTime? | object | Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. |
| id? | string | Immutable. Classroom-assigned identifier for this attachment, unique per post. |
| itemId? | string | Immutable. Identifier of the `Announcement`, `CourseWork`, or `CourseWorkMaterial` under which the attachment is attached. Unique per course. |
| maxPoints? | number | Maximum grade for this attachment. Can only be set if `studentWorkReviewUri` is set. Set to a non-zero value to indicate that the attachment supports grade passback. If set, this must be a non-negative integer value. When set to zero, the attachment will not support grade passback. |
| studentViewUri? | object | URI to be iframed after being populated with query parameters. |
| studentWorkReviewUri? | object | URI to be iframed after being populated with query parameters. |
| teacherViewUri? | object | URI to be iframed after being populated with query parameters. |
| title? | string | Required. Title of this attachment. The title must be between 1 and 1000 characters. |
| addOnToken? | string | Optional. Token that authorizes the request. The token is passed as a query parameter when the user is redirected from Classroom to the add-on's URL. This authorization token is required for in-Classroom attachment creation but optional for partner-first attachment creation. Returns an error if not provided for partner-first attachment creation and the developer projects that created the attachment and its parent stream item do not match. |
fn create()
Create a addOnAttachments
fn get(identifier: string)
Get a addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn update()
Update addOnAttachments attributes
fn delete(identifier: string)
Delete the addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn sync()
Sync addOnAttachments state from GCP
fn list(pageSize?: number, maxPages?: number)
List addOnAttachments resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | The maximum number of attachments to return. The service may return fewer than this value. If unspecified, at most 20 attachments will be returned. The maximum value is 20; values above 20 will be coerced to 20. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— An add-on attachment on a post.
@swamp/gcp/classroom/courses-courseworkv2026.06.08.1courses_coursework.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alternateLink? | string | Absolute link to this course work in the Classroom web UI. This is only populated if `state` is `PUBLISHED`. Read-only. |
| assigneeMode? | enum | Assignee mode of the coursework. If unspecified, the default value is `ALL_STUDENTS`. |
| assignment? | object | Additional details for assignments. |
| associatedWithDeveloper? | boolean | Whether this course work item is associated with the Developer Console project making the request. See CreateCourseWork for more details. Read-only. |
| courseId? | string | Identifier of the course. Read-only. |
| creationTime? | string | Timestamp when this course work was created. Read-only. |
| creatorUserId? | string | Identifier for the user that created the coursework. Read-only. |
| description? | string | Optional description of this course work. If set, the description must be a valid UTF-8 string containing no more than 30,000 characters. |
| dueDate? | object | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). R |
| dueTime? | object | Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. |
| gradeCategory? | object | Details for a grade category in a course. Coursework may have zero or one grade category, and the category may be used in computing the overall grade. See the [help center article](https://support.google.com/edu/classroom/answer/9184995) for details. |
| gradingPeriodId? | string | Identifier of the grading period associated with the coursework. * At creation, if unspecified, the grading period ID will be set based on the `dueDate` (or `scheduledTime` if no `dueDate` is set). * To indicate no association to any grading period, set this field to an empty string (""). * If specified, it must match an existing grading period ID in the course. |
| id? | string | Classroom-assigned identifier of this course work, unique per course. Read-only. |
| individualStudentsOptions? | object | Assignee details about a coursework/announcement. This field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`. |
| materials? | array | Additional materials. CourseWork must have no more than 20 material items. |
| maxPoints? | number | Maximum grade for this course work. If zero or unspecified, this assignment is considered ungraded. This must be a non-negative integer value. |
| multipleChoiceQuestion? | object | Additional details for multiple-choice questions. |
| scheduledTime? | string | Optional timestamp when this course work is scheduled to be published. |
| state? | enum | Status of this course work. If unspecified, the default state is `DRAFT`. |
| submissionModificationMode? | enum | Setting to determine when students are allowed to modify submissions. If unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`. |
| title? | string | Title of this course work. The title must be a valid UTF-8 string containing between 1 and 3000 characters. |
| topicId? | string | Identifier for the topic that this coursework is associated with. Must match an existing topic in the course. |
| updateTime? | string | Timestamp of the most recent change to this course work. Read-only. |
| workType? | enum | Type of this course work. The type is set when the course work is created and cannot be changed. |
fn create()
Create a courseWork
fn get(identifier: string)
Get a courseWork
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courseWork |
fn update()
Update courseWork attributes
fn delete(identifier: string)
Delete the courseWork
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courseWork |
fn sync()
Sync courseWork state from GCP
fn list(courseWorkStates?: string, orderBy?: string, pageSize?: number, maxPages?: number)
List courseWork resources
| Argument | Type | Description |
|---|---|---|
| courseWorkStates? | string | Restriction on the work status to return. Only courseWork that matches is returned. If unspecified, items with a work status of `PUBLISHED` is returned. |
| orderBy? | string | Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported fields are `updateTime` and `dueDate`. Supported direction keywords are `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc` |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn get_add_on_context()
get add on context
fn modify_assignees(assigneeMode?: any, modifyIndividualStudentsOptions?: any)
modify assignees
| Argument | Type | Description |
|---|---|---|
| assigneeMode? | any | |
| modifyIndividualStudentsOptions? | any |
fn update_rubric(courseId?: any, courseWorkId?: any, creationTime?: any, criteria?: any, id?: any, sourceSpreadsheetId?: any, updateTime?: any)
update rubric
| Argument | Type | Description |
|---|---|---|
| courseId? | any | |
| courseWorkId? | any | |
| creationTime? | any | |
| criteria? | any | |
| id? | any | |
| sourceSpreadsheetId? | any | |
| updateTime? | any |
Resources
state(infinite)— Course work created by a teacher for students of the course.
@swamp/gcp/classroom/courses-coursework-addonattachmentsv2026.06.08.1courses_coursework_addonattachments.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Immutable. Identifier of the course. |
| dueDate? | object | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). R |
| dueTime? | object | Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. |
| id? | string | Immutable. Classroom-assigned identifier for this attachment, unique per post. |
| itemId? | string | Immutable. Identifier of the `Announcement`, `CourseWork`, or `CourseWorkMaterial` under which the attachment is attached. Unique per course. |
| maxPoints? | number | Maximum grade for this attachment. Can only be set if `studentWorkReviewUri` is set. Set to a non-zero value to indicate that the attachment supports grade passback. If set, this must be a non-negative integer value. When set to zero, the attachment will not support grade passback. |
| studentViewUri? | object | URI to be iframed after being populated with query parameters. |
| studentWorkReviewUri? | object | URI to be iframed after being populated with query parameters. |
| teacherViewUri? | object | URI to be iframed after being populated with query parameters. |
| title? | string | Required. Title of this attachment. The title must be between 1 and 1000 characters. |
| addOnToken? | string | Optional. Token that authorizes the request. The token is passed as a query parameter when the user is redirected from Classroom to the add-on's URL. This authorization token is required for in-Classroom attachment creation but optional for partner-first attachment creation. Returns an error if not provided for partner-first attachment creation and the developer projects that created the attachment and its parent stream item do not match. |
fn create()
Create a addOnAttachments
fn get(identifier: string)
Get a addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn update()
Update addOnAttachments attributes
fn delete(identifier: string)
Delete the addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn sync()
Sync addOnAttachments state from GCP
fn list(pageSize?: number, maxPages?: number)
List addOnAttachments resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | The maximum number of attachments to return. The service may return fewer than this value. If unspecified, at most 20 attachments will be returned. The maximum value is 20; values above 20 will be coerced to 20. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— An add-on attachment on a post.
@swamp/gcp/classroom/courses-coursework-addonattachments-studentsubmissionsv2026.06.16.1courses_coursework_addonattachments_studentsubmissions.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseWorkSubmissionId? | string | Output only. Identifier of the course work submission under which this attachment submission was made. |
| id? | string | Output only. Classroom-assigned identifier for this student submission. This is unique among submissions for the relevant course work and add-on attachment combination. |
| pointsEarned? | number | Student grade on this attachment. If unset, no grade was set. |
| postSubmissionState? | enum | Submission state of add-on attachment's parent post (i.e. assignment). |
| userId? | string | Identifier for the student that owns this submission. Requires the user to be a teacher in the course and have permission to read student submissions. See [`courseWork.studentSubmissions.get`](/workspace/classroom/reference/rest/v1/courses.courseWork.studentSubmissions/get#authorization-scopes) for the list of acceptable OAuth scopes for this field. Read-only. |
fn get(identifier: string)
Get a studentSubmissions
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentSubmissions |
fn update()
Update studentSubmissions attributes
fn sync()
Sync studentSubmissions state from GCP
Resources
state(infinite)— Payload for grade update requests.
@swamp/gcp/classroom/courses-coursework-rubricsv2026.06.08.1courses_coursework_rubrics.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Identifier of the course. Read-only. |
| courseWorkId? | string | Identifier for the course work this corresponds to. Read-only. |
| criteria? | array | List of criteria. Each criterion is a dimension on which performance is rated. |
| id? | string | Classroom-assigned identifier for the rubric. This is unique among rubrics for the relevant course work. Read-only. |
| sourceSpreadsheetId? | string | Input only. Immutable. Google Sheets ID of the spreadsheet. This spreadsheet must contain formatted rubric settings. See [Create or reuse a rubric for an assignment](https://support.google.com/edu/classroom/answer/9335069). Use of this field requires the `https://www.googleapis.com/auth/spreadsheets.readonly` or `https://www.googleapis.com/auth/spreadsheets` scope. |
fn create()
Create a rubrics
fn get(identifier: string)
Get a rubrics
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the rubrics |
fn update()
Update rubrics attributes
fn delete(identifier: string)
Delete the rubrics
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the rubrics |
fn sync()
Sync rubrics state from GCP
fn list(pageSize?: number, maxPages?: number)
List rubrics resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | The maximum number of rubrics to return. If unspecified, at most 1 rubric is returned. The maximum value is 1; values above 1 are coerced to 1. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— The rubric of the course work. A rubric is a scoring guide used to evaluate s...
@swamp/gcp/classroom/courses-coursework-studentsubmissionsv2026.06.08.1courses_coursework_studentsubmissions.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alternateLink? | string | Absolute link to the submission in the Classroom web UI. Read-only. |
| assignedGrade? | number | Optional grade. If unset, no grade was set. This value must be non-negative. Decimal (that is, non-integer) values are allowed, but are rounded to two decimal places. This may be modified only by course teachers. |
| assignedRubricGrades? | record | Assigned rubric grades based on the rubric's Criteria. This map is empty if there is no rubric attached to this course work or if a rubric is attached, but no grades have been set on any Criteria. Entries are only populated for grades that have been set. Key: The rubric's criterion ID. Read-only. |
| assignmentSubmission? | object | Student work for an assignment. |
| associatedWithDeveloper? | boolean | Whether this student submission is associated with the Developer Console project making the request. See CreateCourseWork for more details. Read-only. |
| courseId? | string | Identifier of the course. Read-only. |
| courseWorkId? | string | Identifier for the course work this corresponds to. Read-only. |
| courseWorkType? | enum | Type of course work this submission is for. Read-only. |
| creationTime? | string | Creation time of this submission. This may be unset if the student has not accessed this item. Read-only. |
| draftGrade? | number | Optional pending grade. If unset, no grade was set. This value must be non-negative. Decimal (that is, non-integer) values are allowed, but are rounded to two decimal places. This is only visible to and modifiable by course teachers. |
| draftRubricGrades? | record | Pending rubric grades based on the rubric's criteria. This map is empty if there is no rubric attached to this course work or if a rubric is attached, but no grades have been set on any criteria. Entries are only populated for grades that have been set. Key: The rubric's criterion ID. Read-only. |
| id? | string | Classroom-assigned Identifier for the student submission. This is unique among submissions for the relevant course work. Read-only. |
| late? | boolean | Whether this submission is late. Read-only. |
| multipleChoiceSubmission? | object | Student work for a multiple-choice question. |
| shortAnswerSubmission? | object | Student work for a short answer question. |
| state? | enum | State of this submission. Read-only. |
| submissionHistory? | array | The history of the submission (includes state and grade histories). Read-only. |
| updateTime? | string | Last update time of this submission. This may be unset if the student has not accessed this item. Read-only. |
| userId? | string | Identifier for the student that owns this submission. Read-only. |
fn get(identifier: string)
Get a studentSubmissions
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the studentSubmissions |
fn update()
Update studentSubmissions attributes
fn sync()
Sync studentSubmissions state from GCP
fn list(late?: string, pageSize?: number, states?: string, userId?: string, maxPages?: number)
List studentSubmissions resources
| Argument | Type | Description |
|---|---|---|
| late? | string | Requested lateness value. If specified, returned student submissions are restricted by the requested value. If unspecified, submissions are returned regardless of `late` value. |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| states? | string | Requested submission states. If specified, returned student submissions match one of the specified submission states. |
| userId? | string | Optional argument to restrict returned student work to those owned by the student with the specified identifier. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn modify_attachments(addAttachments?: any)
modify attachments
| Argument | Type | Description |
|---|---|---|
| addAttachments? | any |
fn reclaim()
reclaim
fn return()
return
fn turn_in()
turn in
Resources
state(infinite)— Student submission for course work. `StudentSubmission` items are generated w...
@swamp/gcp/classroom/courses-courseworkmaterialsv2026.06.08.1courses_courseworkmaterials.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| alternateLink? | string | Absolute link to this course work material in the Classroom web UI. This is only populated if `state` is `PUBLISHED`. Read-only. |
| assigneeMode? | enum | Assignee mode of the course work material. If unspecified, the default value is `ALL_STUDENTS`. |
| courseId? | string | Identifier of the course. Read-only. |
| creationTime? | string | Timestamp when this course work material was created. Read-only. |
| creatorUserId? | string | Identifier for the user that created the course work material. Read-only. |
| description? | string | Optional description of this course work material. The text must be a valid UTF-8 string containing no more than 30,000 characters. |
| id? | string | Classroom-assigned identifier of this course work material, unique per course. Read-only. |
| individualStudentsOptions? | object | Assignee details about a coursework/announcement. This field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`. |
| materials? | array | Additional materials. A course work material must have no more than 20 material items. |
| scheduledTime? | string | Optional timestamp when this course work material is scheduled to be published. |
| state? | enum | Status of this course work material. If unspecified, the default state is `DRAFT`. |
| title? | string | Title of this course work material. The title must be a valid UTF-8 string containing between 1 and 3000 characters. |
| topicId? | string | Identifier for the topic that this course work material is associated with. Must match an existing topic in the course. |
| updateTime? | string | Timestamp of the most recent change to this course work material. Read-only. |
fn create()
Create a courseWorkMaterials
fn get(identifier: string)
Get a courseWorkMaterials
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courseWorkMaterials |
fn update()
Update courseWorkMaterials attributes
fn delete(identifier: string)
Delete the courseWorkMaterials
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the courseWorkMaterials |
fn sync()
Sync courseWorkMaterials state from GCP
fn list(courseWorkMaterialStates?: string, materialDriveId?: string, materialLink?: string, orderBy?: string, pageSize?: number, maxPages?: number)
List courseWorkMaterials resources
| Argument | Type | Description |
|---|---|---|
| courseWorkMaterialStates? | string | Restriction on the work status to return. Only course work material that matches is returned. If unspecified, items with a work status of `PUBLISHED` is returned. |
| materialDriveId? | string | Optional filtering for course work material with at least one Drive material whose ID matches the provided string. If `material_link` is also specified, course work material must have materials matching both filters. |
| materialLink? | string | Optional filtering for course work material with at least one link material whose URL partially matches the provided string. |
| orderBy? | string | Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported field is `updateTime`. Supported direction keywords are `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `updateTime asc`, `updateTime` |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn get_add_on_context()
get add on context
Resources
state(infinite)— Course work material created by a teacher for students of the course
@swamp/gcp/classroom/courses-courseworkmaterials-addonattachmentsv2026.06.08.1courses_courseworkmaterials_addonattachments.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Immutable. Identifier of the course. |
| dueDate? | object | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). R |
| dueTime? | object | Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. |
| id? | string | Immutable. Classroom-assigned identifier for this attachment, unique per post. |
| itemId? | string | Immutable. Identifier of the `Announcement`, `CourseWork`, or `CourseWorkMaterial` under which the attachment is attached. Unique per course. |
| maxPoints? | number | Maximum grade for this attachment. Can only be set if `studentWorkReviewUri` is set. Set to a non-zero value to indicate that the attachment supports grade passback. If set, this must be a non-negative integer value. When set to zero, the attachment will not support grade passback. |
| studentViewUri? | object | URI to be iframed after being populated with query parameters. |
| studentWorkReviewUri? | object | URI to be iframed after being populated with query parameters. |
| teacherViewUri? | object | URI to be iframed after being populated with query parameters. |
| title? | string | Required. Title of this attachment. The title must be between 1 and 1000 characters. |
| addOnToken? | string | Optional. Token that authorizes the request. The token is passed as a query parameter when the user is redirected from Classroom to the add-on's URL. This authorization token is required for in-Classroom attachment creation but optional for partner-first attachment creation. Returns an error if not provided for partner-first attachment creation and the developer projects that created the attachment and its parent stream item do not match. |
fn create()
Create a addOnAttachments
fn get(identifier: string)
Get a addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn update()
Update addOnAttachments attributes
fn delete(identifier: string)
Delete the addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn sync()
Sync addOnAttachments state from GCP
fn list(pageSize?: number, maxPages?: number)
List addOnAttachments resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | The maximum number of attachments to return. The service may return fewer than this value. If unspecified, at most 20 attachments will be returned. The maximum value is 20; values above 20 will be coerced to 20. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— An add-on attachment on a post.
@swamp/gcp/classroom/courses-posts-addonattachmentsv2026.06.08.1courses_posts_addonattachments.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Immutable. Identifier of the course. |
| dueDate? | object | Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). R |
| dueTime? | object | Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. |
| id? | string | Immutable. Classroom-assigned identifier for this attachment, unique per post. |
| itemId? | string | Immutable. Identifier of the `Announcement`, `CourseWork`, or `CourseWorkMaterial` under which the attachment is attached. Unique per course. |
| maxPoints? | number | Maximum grade for this attachment. Can only be set if `studentWorkReviewUri` is set. Set to a non-zero value to indicate that the attachment supports grade passback. If set, this must be a non-negative integer value. When set to zero, the attachment will not support grade passback. |
| studentViewUri? | object | URI to be iframed after being populated with query parameters. |
| studentWorkReviewUri? | object | URI to be iframed after being populated with query parameters. |
| teacherViewUri? | object | URI to be iframed after being populated with query parameters. |
| title? | string | Required. Title of this attachment. The title must be between 1 and 1000 characters. |
| addOnToken? | string | Optional. Token that authorizes the request. The token is passed as a query parameter when the user is redirected from Classroom to the add-on's URL. This authorization token is required for in-Classroom attachment creation but optional for partner-first attachment creation. Returns an error if not provided for partner-first attachment creation and the developer projects that created the attachment and its parent stream item do not match. |
fn create()
Create a addOnAttachments
fn get(identifier: string)
Get a addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn update()
Update addOnAttachments attributes
fn delete(identifier: string)
Delete the addOnAttachments
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the addOnAttachments |
fn sync()
Sync addOnAttachments state from GCP
fn list(itemId?: string, pageSize?: number, maxPages?: number)
List addOnAttachments resources
| Argument | Type | Description |
|---|---|---|
| itemId? | string | Identifier of the `Announcement`, `CourseWork`, or `CourseWorkMaterial` whose attachments should be enumerated. This field is required, but is not marked as such while we are migrating from post_id. |
| pageSize? | number | The maximum number of attachments to return. The service may return fewer than this value. If unspecified, at most 20 attachments will be returned. The maximum value is 20; values above 20 will be coerced to 20. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— An add-on attachment on a post.
@swamp/gcp/classroom/courses-posts-addonattachments-studentsubmissionsv2026.06.16.1courses_posts_addonattachments_studentsubmissions.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseWorkSubmissionId? | string | Output only. Identifier of the course work submission under which this attachment submission was made. |
| id? | string | Output only. Classroom-assigned identifier for this student submission. This is unique among submissions for the relevant course work and add-on attachment combination. |
| pointsEarned? | number | Student grade on this attachment. If unset, no grade was set. |
| postSubmissionState? | enum | Submission state of add-on attachment's parent post (i.e. assignment). |
| userId? | string | Identifier for the student that owns this submission. Requires the user to be a teacher in the course and have permission to read student submissions. See [`courseWork.studentSubmissions.get`](/workspace/classroom/reference/rest/v1/courses.courseWork.studentSubmissions/get#authorization-scopes) for the list of acceptable OAuth scopes for this field. Read-only. |
fn get(identifier: string)
Get a studentSubmissions
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentSubmissions |
fn update()
Update studentSubmissions attributes
fn sync()
Sync studentSubmissions state from GCP
Resources
state(infinite)— Payload for grade update requests.
@swamp/gcp/classroom/courses-studentgroupsv2026.06.08.1courses_studentgroups.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | The identifier of the course. |
| id? | string | The identifier of the student group. |
| title? | string | The title of the student group. |
fn create()
Create a studentGroups
fn get(identifier: string)
Get a studentGroups
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentGroups |
fn update()
Update studentGroups attributes
fn delete(identifier: string)
Delete the studentGroups
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentGroups |
fn sync()
Sync studentGroups state from GCP
fn list(pageSize?: number, maxPages?: number)
List studentGroups resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum, which is currently set to 75 items. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— A student group in a course.
@swamp/gcp/classroom/courses-studentgroups-studentgroupmembersv2026.06.08.1courses_studentgroups_studentgroupmembers.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | The identifier of the course. |
| studentGroupId? | string | The identifier of the student group. |
| userId? | string | Identifier of the student. |
fn create()
Create a studentGroupMembers
fn get(identifier: string)
Get a studentGroupMembers
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentGroupMembers |
fn delete(identifier: string)
Delete the studentGroupMembers
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the studentGroupMembers |
fn sync()
Sync studentGroupMembers state from GCP
fn list(pageSize?: number, maxPages?: number)
List studentGroupMembers resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— A student member in a student group.
@swamp/gcp/classroom/courses-studentsv2026.06.08.1courses_students.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Identifier of the course. Read-only. |
| profile? | object | Global information for a user. |
| studentWorkFolder? | object | Representation of a Google Drive folder. |
| userId? | string | Identifier of the user. When specified as a parameter of a request, this identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user |
| enrollmentCode? | string | Enrollment code of the course to create the student in. This code is required if userId corresponds to the requesting user; it may be omitted if the requesting user has administrative permissions to create students for any user. |
fn create()
Create a students
fn get(identifier: string)
Get a students
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the students |
fn delete(identifier: string)
Delete the students
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the students |
fn sync()
Sync students state from GCP
fn list(pageSize?: number, maxPages?: number)
List students resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. The default is 30 if unspecified or `0`. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— Student in a course.
@swamp/gcp/classroom/courses-teachersv2026.06.08.1courses_teachers.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Identifier of the course. Read-only. |
| profile? | object | Global information for a user. |
| userId? | string | Identifier of the user. When specified as a parameter of a request, this identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user |
fn create()
Create a teachers
fn get(identifier: string)
Get a teachers
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the teachers |
fn delete(identifier: string)
Delete the teachers
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the teachers |
fn sync()
Sync teachers state from GCP
fn list(pageSize?: number, maxPages?: number)
List teachers resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. The default is 30 if unspecified or `0`. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— Teacher of a course.
@swamp/gcp/classroom/courses-topicsv2026.06.08.1courses_topics.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Identifier of the course. Read-only. |
| name? | string | The name of the topic, generated by the user. Leading and trailing whitespaces, if any, are trimmed. Also, multiple consecutive whitespaces are collapsed into one inside the name. The result must be a non-empty string. Topic names are case sensitive, and must be no longer than 100 characters. |
| topicId? | string | Unique identifier for the topic. Read-only. |
| updateTime? | string | The time the topic was last updated by the system. Read-only. |
fn create()
Create a topics
fn get(identifier: string)
Get a topics
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the topics |
fn update()
Update topics attributes
fn delete(identifier: string)
Delete the topics
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the topics |
fn sync()
Sync topics state from GCP
fn list(pageSize?: number, maxPages?: number)
List topics resources
| Argument | Type | Description |
|---|---|---|
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— Topic created by a teacher for the course
@swamp/gcp/classroom/invitationsv2026.06.08.1invitations.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| courseId? | string | Identifier of the course to invite the user to. |
| id? | string | Identifier assigned by Classroom. Read-only. |
| role? | enum | Role to invite the user to have. Must not be `COURSE_ROLE_UNSPECIFIED`. |
| userId? | string | Identifier of the invited user. When specified as a parameter of a request, this identifier can be set to one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user |
fn create()
Create a invitations
fn get(identifier: string)
Get a invitations
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the invitations |
fn delete(identifier: string)
Delete the invitations
| Argument | Type | Description |
|---|---|---|
| identifier | string | The id of the invitations |
fn sync()
Sync invitations state from GCP
fn list(courseId?: string, pageSize?: number, userId?: string, maxPages?: number)
List invitations resources
| Argument | Type | Description |
|---|---|---|
| courseId? | string | Restricts returned invitations to those for a course with the specified identifier. |
| pageSize? | number | Maximum number of items to return. The default is 500 if unspecified or `0`. The server may return fewer than the specified number of results. |
| userId? | string | Restricts returned invitations to those for a specific user. The identifier can be one of the following: * the numeric identifier for the user * the email address of the user * the string literal `"me"`, indicating the requesting user |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
fn accept()
accept
Resources
state(infinite)— An invitation to join a course.
@swamp/gcp/classroom/userprofilesv2026.06.08.1userprofiles.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
fn get(identifier: string)
Get a userProfiles
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the userProfiles |
fn sync()
Sync userProfiles state from GCP
Resources
state(infinite)— Global information for a user.
@swamp/gcp/classroom/userprofiles-guardianinvitationsv2026.06.08.1userprofiles_guardianinvitations.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
| creationTime? | string | The time that this invitation was created. Read-only. |
| invitationId? | string | Unique identifier for this invitation. Read-only. |
| invitedEmailAddress? | string | Email address that the invitation was sent to. This field is only visible to domain administrators. |
| state? | enum | The state that this invitation is in. |
| studentId? | string | ID of the student (in standard format) |
fn create()
Create a guardianInvitations
fn get(identifier: string)
Get a guardianInvitations
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the guardianInvitations |
fn update()
Update guardianInvitations attributes
fn sync()
Sync guardianInvitations state from GCP
fn list(invitedEmailAddress?: string, pageSize?: number, states?: string, maxPages?: number)
List guardianInvitations resources
| Argument | Type | Description |
|---|---|---|
| invitedEmailAddress? | string | If specified, only results with the specified `invited_email_address` are returned. |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| states? | string | If specified, only results with the specified `state` values are returned. Otherwise, results with a `state` of `PENDING` are returned. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— An invitation to become the guardian of a specified user, sent to a specified...
@swamp/gcp/classroom/userprofiles-guardiansv2026.06.08.1userprofiles_guardians.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| name | string | Instance name for this resource (used as the unique identifier in the factory pattern) |
| accessToken? | string | GCP OAuth2 access token; overrides GCP_ACCESS_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| credentialsJson? | string | GCP service account JSON credentials; overrides GOOGLE_APPLICATION_CREDENTIALS_JSON environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| project? | string | GCP project ID; overrides GCP_PROJECT / GOOGLE_CLOUD_PROJECT environment variables. |
fn get(identifier: string)
Get a guardians
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the guardians |
fn delete(identifier: string)
Delete the guardians
| Argument | Type | Description |
|---|---|---|
| identifier | string | The name of the guardians |
fn sync()
Sync guardians state from GCP
fn list(invitedEmailAddress?: string, pageSize?: number, maxPages?: number)
List guardians resources
| Argument | Type | Description |
|---|---|---|
| invitedEmailAddress? | string | Filter results by the email address that the original invitation was sent to, resulting in this guardian link. This filter can only be used by domain administrators. |
| pageSize? | number | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results. |
| maxPages? | number | Maximum number of pages to fetch (default: 10) |
Resources
state(infinite)— Association between a student and a guardian of that student. The guardian ma...
04Previous Versions
2026.06.08.2Jun 8, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.06.07.1Jun 7, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.05.26.1May 26, 2026
- Updated: courses, courses_coursework_addonattachments_studentsubmissions, courses_posts_addonattachments_studentsubmissions
2026.05.25.2May 25, 2026
- Updated: courses, invitations
Modified 19 models
2026.05.24.1May 24, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.05.21.2May 21, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.05.21.1May 21, 2026
2026.05.20.1May 20, 2026
- Updated: courses, courses_coursework_addonattachments_studentsubmissions, courses_posts_addonattachments_studentsubmissions
2026.05.19.2May 19, 2026
2026.05.19.1May 19, 2026
2026.05.18.2May 18, 2026
2026.05.14.1May 14, 2026
- Updated: courses_coursework_addonattachments_studentsubmissions, courses_posts_addonattachments_studentsubmissions
2026.05.09.1May 9, 2026
- Updated: courses
2026.04.23.1Apr 23, 2026
2026.04.04.1Apr 4, 2026
- Updated: courses
2026.04.03.3Apr 3, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.04.03.1Apr 3, 2026
- Updated: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
2026.04.02.2Apr 2, 2026
2026.03.27.1Mar 27, 2026
- Added: courses, courses_aliases, courses_announcements, courses_announcements_addonattachments, courses_coursework, courses_coursework_addonattachments, courses_coursework_addonattachments_studentsubmissions, courses_coursework_rubrics, courses_coursework_studentsubmissions, courses_courseworkmaterials, courses_courseworkmaterials_addonattachments, courses_posts_addonattachments, courses_posts_addonattachments_studentsubmissions, courses_studentgroups, courses_studentgroups_studentgroupmembers, courses_students, courses_teachers, courses_topics, invitations, userprofiles, userprofiles_guardianinvitations, userprofiles_guardians
05Stats
A
100 / 100
Downloads
0
Archive size
243.9 KB
Verified by Swamp
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License declared1/1earned
- Verified public repository2/2earned
06Platforms
07Labels