Updated docs
diff --git a/docs/dyn/classroom_v1.courses.html b/docs/dyn/classroom_v1.courses.html
index 24d450f..0c0451f 100644
--- a/docs/dyn/classroom_v1.courses.html
+++ b/docs/dyn/classroom_v1.courses.html
@@ -91,29 +91,29 @@
 
 <p class="toc_element">
   <code><a href="#create">create(body, x__xgafv=None)</a></code></p>
-<p class="firstline">Creates a course. The user specified as the primary teacher in `primary_teacher_id` is the owner of the created course and added as a teacher. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to create courses. * `NOT_FOUND` if the primary teacher is not a valid user. * `ALREADY_EXISTS` if an alias was specified and already exists.</p>
+<p class="firstline">Creates a course. The user specified in `ownerId` is the owner of the created course and added as a teacher. 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: * UserGroupsMembershipLimitReached * `ALREADY_EXISTS` if an alias was specified in the `id` and already exists.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(id, x__xgafv=None)</a></code></p>
-<p class="firstline">Deletes a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to delete the requested course. * `NOT_FOUND` if no course exists with the requested ID.</p>
+<p class="firstline">Deletes a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to delete the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID.</p>
 <p class="toc_element">
   <code><a href="#get">get(id, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course. * `NOT_FOUND` if no course exists with the requested ID.</p>
+<p class="firstline">Returns a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID.</p>
 <p class="toc_element">
   <code><a href="#list">list(studentId=None, pageSize=None, teacherId=None, pageToken=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a list of courses that the requesting user is permitted to view, restricted to those that match the request. This method returns the following error codes: * `INVALID_ARGUMENT` if the query argument is malformed. * `NOT_FOUND` if any users specified in the query arguments do not exist.</p>
+<p class="firstline">Returns a list of courses that the requesting user is permitted to view, restricted to those that match the request. This method returns the following error codes: * `PERMISSION_DENIED` for access errors. * `INVALID_ARGUMENT` if the query argument is malformed. * `NOT_FOUND` if any users specified in the query arguments do not exist.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
 <p class="toc_element">
   <code><a href="#patch">patch(id, body, updateMask=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Updates one or more fields a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course. * `NOT_FOUND` if no course exists with the requested ID. * `INVALID_ARGUMENT` if invalid fields are specified in the update mask or if no update mask is supplied.</p>
+<p class="firstline">Updates one or more fields in a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID. * `INVALID_ARGUMENT` if invalid fields are specified in the update mask or if no update mask is supplied. * `FAILED_PRECONDITION` for the following request errors: * CourseNotModifiable</p>
 <p class="toc_element">
   <code><a href="#update">update(id, body, x__xgafv=None)</a></code></p>
-<p class="firstline">Updates a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course. * `NOT_FOUND` if no course exists with the requested ID.</p>
+<p class="firstline">Updates a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID. * `FAILED_PRECONDITION` for the following request errors: * CourseNotModifiable</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="create">create(body, x__xgafv=None)</code>
-  <pre>Creates a course. The user specified as the primary teacher in `primary_teacher_id` is the owner of the created course and added as a teacher. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to create courses. * `NOT_FOUND` if the primary teacher is not a valid user. * `ALREADY_EXISTS` if an alias was specified and already exists.
+  <pre>Creates a course. The user specified in `ownerId` is the owner of the created course and added as a teacher. 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: * UserGroupsMembershipLimitReached * `ALREADY_EXISTS` if an alias was specified in the `id` and already exists.
 
 Args:
   body: object, The request body. (required)
@@ -121,17 +121,17 @@
 
 { # A Course in Classroom.
   "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "description": "A String", # Optional description. For example, "We'll be learning about 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.
+  "description": "A String", # 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.
   "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
   "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "section": "A 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.
+  "section": "A 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.
   "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-  "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-  "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-  "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-  "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-  "descriptionHeading": "A 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.
-  "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+  "name": "A 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.
+  "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+  "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+  "id": "A 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 will result in an error.
+  "descriptionHeading": "A 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.
+  "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
 }
 
   x__xgafv: string, V1 error format.
@@ -141,26 +141,26 @@
 
     { # A Course in Classroom.
     "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "description": "A String", # Optional description. For example, "We'll be learning about 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.
+    "description": "A String", # 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.
     "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
     "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "section": "A 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.
+    "section": "A 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.
     "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-    "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-    "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-    "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-    "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-    "descriptionHeading": "A 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.
-    "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+    "name": "A 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.
+    "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+    "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+    "id": "A 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 will result in an error.
+    "descriptionHeading": "A 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.
+    "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="delete">delete(id, x__xgafv=None)</code>
-  <pre>Deletes a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to delete the requested course. * `NOT_FOUND` if no course exists with the requested ID.
+  <pre>Deletes a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to delete the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID.
 
 Args:
-  id: string, Identifier of the course to delete. This may either be the Classroom-assigned identifier or an [alias][google.classroom.v1.CourseAlias]. (required)
+  id: string, Identifier of the course to delete. This identifier can be either the Classroom-assigned identifier or an alias. (required)
   x__xgafv: string, V1 error format.
 
 Returns:
@@ -172,10 +172,10 @@
 
 <div class="method">
     <code class="details" id="get">get(id, x__xgafv=None)</code>
-  <pre>Returns a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course. * `NOT_FOUND` if no course exists with the requested ID.
+  <pre>Returns a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID.
 
 Args:
-  id: string, Identifier of the course to return. This may either be the Classroom-assigned identifier or an [alias][google.classroom.v1.CourseAlias]. (required)
+  id: string, Identifier of the course to return. This identifier can be either the Classroom-assigned identifier or an alias. (required)
   x__xgafv: string, V1 error format.
 
 Returns:
@@ -183,29 +183,29 @@
 
     { # A Course in Classroom.
     "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "description": "A String", # Optional description. For example, "We'll be learning about 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.
+    "description": "A String", # 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.
     "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
     "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "section": "A 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.
+    "section": "A 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.
     "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-    "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-    "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-    "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-    "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-    "descriptionHeading": "A 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.
-    "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+    "name": "A 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.
+    "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+    "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+    "id": "A 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 will result in an error.
+    "descriptionHeading": "A 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.
+    "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="list">list(studentId=None, pageSize=None, teacherId=None, pageToken=None, x__xgafv=None)</code>
-  <pre>Returns a list of courses that the requesting user is permitted to view, restricted to those that match the request. This method returns the following error codes: * `INVALID_ARGUMENT` if the query argument is malformed. * `NOT_FOUND` if any users specified in the query arguments do not exist.
+  <pre>Returns a list of courses that the requesting user is permitted to view, restricted to those that match the request. This method returns the following error codes: * `PERMISSION_DENIED` for access errors. * `INVALID_ARGUMENT` if the query argument is malformed. * `NOT_FOUND` if any users specified in the query arguments do not exist.
 
 Args:
-  studentId: string, Restricts returned courses to those having a student with the specified identifier, or an alias that identifies a student. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user
+  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
   pageSize: integer, 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.
-  teacherId: string, Restricts returned courses to those having a teacher with the specified identifier, or an alias that identifies a teacher. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user
-  pageToken: string, [nextPageToken][google.classroom.v1.ListCoursesResponse.next_page_token] value returned from a previous [list][google.classroom.v1.Courses.ListCourses] call, indicating that the subsequent page of results should be returned. The [list][google.classroom.v1.Courses.ListCourses] request must be identical to the one which resulted in this token.
+  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
+  pageToken: string, nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token.
   x__xgafv: string, V1 error format.
 
 Returns:
@@ -213,20 +213,20 @@
 
     { # Response when listing courses.
     "nextPageToken": "A String", # Token identifying the next page of results to return. If empty, no further results are available.
-    "courses": [ # Courses that match the request.
+    "courses": [ # Courses that match the list request.
       { # A Course in Classroom.
         "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-        "description": "A String", # Optional description. For example, "We'll be learning about 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.
+        "description": "A String", # 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.
         "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
         "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-        "section": "A 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.
+        "section": "A 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.
         "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-        "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-        "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-        "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-        "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-        "descriptionHeading": "A 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.
-        "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+        "name": "A 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.
+        "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+        "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+        "id": "A 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 will result in an error.
+        "descriptionHeading": "A 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.
+        "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
       },
     ],
   }</pre>
@@ -248,29 +248,29 @@
 
 <div class="method">
     <code class="details" id="patch">patch(id, body, updateMask=None, x__xgafv=None)</code>
-  <pre>Updates one or more fields a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course. * `NOT_FOUND` if no course exists with the requested ID. * `INVALID_ARGUMENT` if invalid fields are specified in the update mask or if no update mask is supplied.
+  <pre>Updates one or more fields in a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID. * `INVALID_ARGUMENT` if invalid fields are specified in the update mask or if no update mask is supplied. * `FAILED_PRECONDITION` for the following request errors: * CourseNotModifiable
 
 Args:
-  id: string, Identifier of the course to update. This may either be the Classroom-assigned identifier or an [alias][google.classroom.v1.CourseAlias]. (required)
+  id: string, Identifier of the course to update. This identifier can be either the Classroom-assigned identifier or an alias. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
 { # A Course in Classroom.
   "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "description": "A String", # Optional description. For example, "We'll be learning about 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.
+  "description": "A String", # 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.
   "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
   "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "section": "A 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.
+  "section": "A 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.
   "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-  "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-  "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-  "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-  "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-  "descriptionHeading": "A 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.
-  "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+  "name": "A 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.
+  "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+  "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+  "id": "A 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 will result in an error.
+  "descriptionHeading": "A 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.
+  "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
 }
 
-  updateMask: string, Mask which identifies which fields on the course to update. This field is required to do an update. The update will fail if invalid fields are specified. Valid fields are listed below: * `name` * `section` * `descriptionHeading` * `description` * `room` * `courseState` When set in a query parameter, this should be specified as `updateMask=,,...`
+  updateMask: string, Mask that identifies which fields on the course to update. This field is required to do an update. The update will fail if invalid fields are specified. The following fields are valid: * `name` * `section` * `descriptionHeading` * `description` * `room` * `courseState` When set in a query parameter, this field should be specified as `updateMask=,,...`
   x__xgafv: string, V1 error format.
 
 Returns:
@@ -278,42 +278,42 @@
 
     { # A Course in Classroom.
     "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "description": "A String", # Optional description. For example, "We'll be learning about 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.
+    "description": "A String", # 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.
     "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
     "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "section": "A 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.
+    "section": "A 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.
     "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-    "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-    "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-    "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-    "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-    "descriptionHeading": "A 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.
-    "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+    "name": "A 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.
+    "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+    "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+    "id": "A 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 will result in an error.
+    "descriptionHeading": "A 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.
+    "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="update">update(id, body, x__xgafv=None)</code>
-  <pre>Updates a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course. * `NOT_FOUND` if no course exists with the requested ID.
+  <pre>Updates a course. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to modify the requested course or for access errors. * `NOT_FOUND` if no course exists with the requested ID. * `FAILED_PRECONDITION` for the following request errors: * CourseNotModifiable
 
 Args:
-  id: string, Identifier of the course to update. This may either be the Classroom-assigned identifier or an [alias][google.classroom.v1.CourseAlias]. (required)
+  id: string, Identifier of the course to update. This identifier can be either the Classroom-assigned identifier or an alias. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
 { # A Course in Classroom.
   "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "description": "A String", # Optional description. For example, "We'll be learning about 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.
+  "description": "A String", # 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.
   "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
   "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-  "section": "A 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.
+  "section": "A 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.
   "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-  "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-  "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-  "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-  "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-  "descriptionHeading": "A 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.
-  "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+  "name": "A 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.
+  "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+  "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+  "id": "A 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 will result in an error.
+  "descriptionHeading": "A 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.
+  "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
 }
 
   x__xgafv: string, V1 error format.
@@ -323,17 +323,17 @@
 
     { # A Course in Classroom.
     "updateTime": "A String", # Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "description": "A String", # Optional description. For example, "We'll be learning about 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.
+    "description": "A String", # 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.
     "alternateLink": "A String", # Absolute link to this course in the Classroom web UI. Read-only.
     "enrollmentCode": "A String", # Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
-    "section": "A 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.
+    "section": "A 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.
     "creationTime": "A String", # Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
-    "name": "A String", # Name of the course. For example, "10th Grade Biology". This is required and must be between 1 and 750 characters and a valid UTF-8 string.
-    "courseState": "A String", # State of the course. If unspecified, the default state will be `PROVISIONED`.
-    "ownerId": "A String", # The identifier of the owner (and primary teacher) of a course. When specified as a parameter of CreateCourseRequest, this field is required. It may be the numeric identifier for the user, or an alias that identifies the owner. The following aliases are supported: * the e-mail address of the user * the string literal `"me"`, indicating that the requesting user This must be set in a CreateRequest; specifying this field in a course update mask will result in an error.
-    "id": "A String", # Unique identifier for this course assigned by Classroom. You may optionally set this to an [alias string][google.classroom.v1.CourseAlias] as part of [creating a course][google.classroom.v1.Courses.CreateCourse], creating a corresponding alias. The `ID` cannot be updated after a course is created. Specifying this field in a course update mask will result in an error.
-    "descriptionHeading": "A 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.
-    "room": "A String", # Optional room location. For example, "301" If set, this field must be a valid UTF-8 string and no longer than 650 characters.
+    "name": "A 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.
+    "courseState": "A String", # State of the course. If unspecified, the default state is `PROVISIONED`.
+    "ownerId": "A 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. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error.
+    "id": "A 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 will result in an error.
+    "descriptionHeading": "A 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.
+    "room": "A String", # Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
   }</pre>
 </div>