v1

latestOpenAPI 3.0.0Creative Commons Attribution 3.02026-07-1310484273.7 KB
courses

Creates a course. The user specified in ownerId is the owner of the created course and added as a teacher. A non-admin requesting user can only create a course with themselves as the owner. Domain admins can create courses owned by any user within their domain. This method returns the following error codes: * PERMISSION_DENIED if the requesting user is not permitted to create courses or for access errors. * NOT_FOUND if the primary teacher is not a valid user. * FAILED_PRECONDITION if the course owner's account is disabled or for the following request errors: * UserCannotOwnCourse * UserGroupsMembershipLimitReached * CourseTitleCannotContainUrl * ALREADY_EXISTS if an alias was specified in the id and already exists.

post/v1/courses

Request body

descriptionHeadingstring

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.

calendarIdstring

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.

idstring

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.

teacherGroupEmailstring

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.

creationTimestring google-datetime

Creation time of the course. Specifying this field in a course update mask results in an error. Read-only.

enrollmentCodestring

Enrollment code to use when joining this course. Specifying this field in a course update mask results in an error. Read-only.

courseGroupEmailstring

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.

guardiansEnabledboolean

Whether or not guardian notifications are enabled for this course. Read-only.

roomstring

Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.

subjectstring

Optional. The subject of the course.

sectionstring

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.

descriptionstring

Optional description. For example, "We'll be learning about the structure of living creatures from a combination of textbooks, guest lectures, and lab work. Expect to be excited!" If set, this field must be a valid UTF-8 string and no longer than 30,000 characters.

levelsstring

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.

courseState'COURSE_STATE_UNSPECIFIED' | 'ACTIVE' | 'ARCHIVED' | 'PROVISIONED' | 'DECLINED' | 'SUSPENDED'

State of the course. If unspecified, the default state is PROVISIONED.

updateTimestring google-datetime

Time of the most recent update to this course. Specifying this field in a course update mask results in an error. Read-only.

namestring

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.

alternateLinkstring

Absolute link to this course in the Classroom web UI. Read-only.

ownerIdstring

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.

Response

Successful response