Update documentation
diff --git a/docs/dyn/sheets_v4.spreadsheets.html b/docs/dyn/sheets_v4.spreadsheets.html
index 9aee20a..b6fdd6f 100644
--- a/docs/dyn/sheets_v4.spreadsheets.html
+++ b/docs/dyn/sheets_v4.spreadsheets.html
@@ -92,7 +92,7 @@
 <p class="firstline">Creates a spreadsheet, returning the newly created spreadsheet.</p>
 <p class="toc_element">
   <code><a href="#get">get(spreadsheetId, ranges=None, x__xgafv=None, includeGridData=None)</a></code></p>
-<p class="firstline">Returns the spreadsheet at the given id.</p>
+<p class="firstline">Returns the spreadsheet at the given ID.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="batchUpdate">batchUpdate(spreadsheetId, body, x__xgafv=None)</code>
@@ -104,15 +104,15 @@
 
 Some requests have replies to
 give you some information about how
-they applied. The replies will mirror the requests.  For example,
+they are applied. The replies will mirror the requests.  For example,
 if you applied 4 updates and the 3rd one had a reply, then the
 response will have 2 empty replies, the actual reply, and another empty
 reply, in that order.
 
 Due to the collaborative nature of spreadsheets, it is not guaranteed that
 the spreadsheet will reflect exactly your changes after this completes,
-however it is guaranteed that all the updates in the request will be
-applied atomically. Your changes may be altered with respect to
+however it is guaranteed that the updates in the request will be
+applied together atomically. Your changes may be altered with respect to
 collaborator changes. If there are no collaborators, the spreadsheet
 should reflect your changes.
 
@@ -134,24 +134,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -182,7 +182,7 @@
                 # is chosen for you. Used only when writing.
             "sheetId": 42, # The sheet this is on. Set only if the embedded object
                 # is on its own sheet. Must be non-negative.
-            "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+            "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
               "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                   # All indexes are zero-based.
                 "rowIndex": 42, # The row index of the coordinate.
@@ -197,20 +197,20 @@
               "heightPixels": 42, # The height of the object, in pixels. Defaults to 371.
             },
           },
-          "fields": "A String", # The fields of OverlayPosition that should be updated when
-              # setting a new position. Used only if
+          "fields": "A String", # The fields of OverlayPosition
+              # that should be updated when setting a new position. Used only if
               # newPosition.overlayPosition
               # is set, in which case at least one field must
               # be specified.  The root `newPosition.overlayPosition` is implied and
               # should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
-          "objectId": 42, # The id of the object to moved.
+          "objectId": 42, # The ID of the object to moved.
         },
         "updateConditionalFormatRule": { # Updates a conditional format rule at the given index, # Updates an existing conditional format rule.
             # or moves a conditional format rule to another index.
           "index": 42, # The zero-based index of the rule that should be replaced or moved.
           "newIndex": 42, # The zero-based new index the rule should end up at.
-          "sheetId": 42, # The sheet of the rule to move.  Required if newIndex is set,
+          "sheetId": 42, # The sheet of the rule to move.  Required if new_index is set,
               # unused otherwise.
           "rule": { # A rule describing a conditional format. # The rule that should replace the rule at the given index.
             "ranges": [ # The ranges that will be formatted if the condition is true.
@@ -221,24 +221,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -285,9 +285,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -297,7 +298,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -427,7 +428,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -699,7 +700,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -833,7 +834,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -967,7 +968,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -1101,7 +1102,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -1112,7 +1113,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -1249,7 +1250,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -1386,7 +1387,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -1531,10 +1532,7 @@
           "fields": "A String", # The fields that should be updated.  At least one field must be specified.
               # The root `protectedRange` is implied and should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
-          "protectedRange": { # A protected range. # The protected range to update with the new properties. If a nonzero
-              # protectedRangeId is
-              # specified, the protected range will use that ID. (It is an error to
-              # specify the ID of a protected range that already exists.)
+          "protectedRange": { # A protected range. # The protected range to update with the new properties.
             "unprotectedRanges": [ # The list of unprotected ranges within a protected sheet.
                 # Unprotected ranges are only supported on protected sheets.
               { # A range on a sheet.
@@ -1543,24 +1541,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -1579,12 +1577,12 @@
             "description": "A String", # The description of this protected range.
             "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                 # This field is only visible to users with edit access to the protected
                 # range and the document.
-                # Editors are not supported with warningOnly protection.
+                # Editors are not supported with warning_only protection.
               "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                   # range.  Domain protection is only supported on documents within a domain.
               "users": [ # The email addresses of users with edit access to the protected range.
@@ -1596,12 +1594,12 @@
             },
             "protectedRangeId": 42, # The ID of the protected range.
                 # This field is read-only.
-            "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+            "warningOnly": True or False, # True if this protected range will show a warning when editing.
                 # Warning-based protection means that every user can edit data in the
                 # protected range, except editing will prompt a warning asking the user
                 # to confirm the edit.
                 #
-                # When warning: if this field is true, then editors is ignored.
+                # When writing: if this field is true, then editors is ignored.
                 # Additionally, if this field is changed from true to false and the
                 # `editors` field is not set (nor included in the field mask), then
                 # the editors will be set to all the editors in the document.
@@ -1609,31 +1607,31 @@
                 # The range may be fully unbounded, in which case this is considered
                 # a protected sheet.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -1660,7 +1658,10 @@
           },
         },
         "addProtectedRange": { # Adds a new protected range. # Adds a protected range.
-          "protectedRange": { # A protected range. # The protected range to be added.
+          "protectedRange": { # A protected range. # The protected range to be added. The
+              # protectedRangeId field is optional; if
+              # one is not set, an id will be randomly generated. (It is an error to
+              # specify the ID of a range that already exists.)
             "unprotectedRanges": [ # The list of unprotected ranges within a protected sheet.
                 # Unprotected ranges are only supported on protected sheets.
               { # A range on a sheet.
@@ -1669,24 +1670,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -1705,12 +1706,12 @@
             "description": "A String", # The description of this protected range.
             "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                 # This field is only visible to users with edit access to the protected
                 # range and the document.
-                # Editors are not supported with warningOnly protection.
+                # Editors are not supported with warning_only protection.
               "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                   # range.  Domain protection is only supported on documents within a domain.
               "users": [ # The email addresses of users with edit access to the protected range.
@@ -1722,12 +1723,12 @@
             },
             "protectedRangeId": 42, # The ID of the protected range.
                 # This field is read-only.
-            "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+            "warningOnly": True or False, # True if this protected range will show a warning when editing.
                 # Warning-based protection means that every user can edit data in the
                 # protected range, except editing will prompt a warning asking the user
                 # to confirm the edit.
                 #
-                # When warning: if this field is true, then editors is ignored.
+                # When writing: if this field is true, then editors is ignored.
                 # Additionally, if this field is changed from true to false and the
                 # `editors` field is not set (nor included in the field mask), then
                 # the editors will be set to all the editors in the document.
@@ -1735,31 +1736,31 @@
                 # The range may be fully unbounded, in which case this is considered
                 # a protected sheet.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -1788,7 +1789,7 @@
           "html": True or False, # True if the data is HTML.
           "data": "A String", # The data to insert.
         },
-        "appendCells": { # Adds new cells to the last row with data in a sheet, # Appends cells to the last row with data in a sheet.
+        "appendCells": { # Adds new cells after the last row with data in a sheet, # Appends cells after the last row with data in a sheet.
             # inserting new rows into the sheet if necessary.
           "fields": "A String", # The fields of CellData that should be updated.
               # At least one field must be specified.
@@ -1800,9 +1801,9 @@
                 { # Data about a specific cell.
                   "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                       # is computed dynamically based on its data, grouping, filters, values,
-                      # etc... Only the top-left cell of the pivot table contains the pivot table
+                      # etc. Only the top-left cell of the pivot table contains the pivot table
                       # definition. The other cells will contain the calculated values of the
-                      # results of the pivot in their effectiveValue fields.
+                      # results of the pivot in their effective_value fields.
                     "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                         # or vertically (as rows).
                     "rows": [ # Each row grouping in the pivot table.
@@ -1861,13 +1862,13 @@
                               },
                             },
                           ],
-                          "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                          "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                               # grouping should be sorted by.
                         },
                         "sortOrder": "A String", # The order the values in this group should be sorted.
                         "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this group refers to column `C`, whereas the offset `1` would refer
                             # to column `D`.
                       },
@@ -1878,24 +1879,24 @@
                         # and the end index is exclusive -- [start_index, end_index).
                         # Missing indexes indicate the range is unbounded on that side.
                         #
-                        # For example, if "Sheet1" is grid ID 0, then:
+                        # For example, if `"Sheet1"` is sheet ID 0, then:
                         #
-                        #   Sheet1!A1:A1 == sheet_id: 0,
+                        #   `Sheet1!A1:A1 == sheet_id: 0,
                         #                   start_row_index: 0, end_row_index: 1,
-                        #                   start_column_index: 0, end_column_index: 1
+                        #                   start_column_index: 0, end_column_index: 1`
                         #
-                        #   Sheet1!A3:B4 == sheet_id: 0,
+                        #   `Sheet1!A3:B4 == sheet_id: 0,
                         #                   start_row_index: 2, end_row_index: 4,
-                        #                   start_column_index: 0, end_column_index: 2
+                        #                   start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A:B == sheet_id: 0,
-                        #                 start_column_index: 0, end_column_index: 2
+                        #   `Sheet1!A:B == sheet_id: 0,
+                        #                 start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A5:B == sheet_id: 0,
+                        #   `Sheet1!A5:B == sheet_id: 0,
                         #                  start_row_index: 4,
-                        #                  start_column_index: 0, end_column_index: 2
+                        #                  start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1 == sheet_id:0
+                        #   `Sheet1 == sheet_id:0`
                         #
                         # The start index must always be less than or equal to the end index.
                         # If the start index equals the end index, then the range is empty.
@@ -1919,7 +1920,7 @@
                             # is not supported.
                         "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this value refers to column `C`, whereas the offset `1` would
                             # refer to column `D`.
                         "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -1932,7 +1933,7 @@
                         # The map's key is the column offset of the source range that you want to
                         # filter, and the value is the criteria for that column.
                         #
-                        # For example, if the source was `C10:E15', a key of `0` will have the filter
+                        # For example, if the source was `C10:E15`, a key of `0` will have the filter
                         # for column `C`, whereas the key `1` is for column `D`.
                       "a_key": { # Criteria for showing/hiding rows in a pivot table.
                         "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -1996,13 +1997,13 @@
                               },
                             },
                           ],
-                          "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                          "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                               # grouping should be sorted by.
                         },
                         "sortOrder": "A String", # The order the values in this group should be sorted.
                         "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this group refers to column `C`, whereas the offset `1` would refer
                             # to column `D`.
                       },
@@ -2060,9 +2061,10 @@
                       # not be written.
                       # This field is read-only.
                     "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                        # When updating, all fields must be set.
-                      "pattern": "A String", # Pattern string used for formatting.
+                      "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                          # the user's locale will be used if necessary for the given type.
                       "type": "A String", # The type of the number format.
+                          # When writing, this field must be set.
                     },
                     "textDirection": "A String", # The direction of the text in the cell.
                     "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -2072,7 +2074,7 @@
                       "bottom": 42, # The bottom padding of the cell.
                       "left": 42, # The left padding of the cell.
                     },
-                    "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                    "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                     "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                         # for simplicity of conversion to/from color representations in various
                         # languages over compactness; for example, the fields of this representation
@@ -2202,7 +2204,7 @@
                       "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
-                    "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                    "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                     "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                         # Absent values indicate that the field isn't specified.
                       "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -2474,7 +2476,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "right": { # A border along a cell. # The right border of the cell.
@@ -2608,7 +2610,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -2742,7 +2744,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "left": { # A border along a cell. # The left border of the cell.
@@ -2876,7 +2878,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                     },
@@ -2886,9 +2888,10 @@
                       #
                       # When writing, the new format will be merged with the existing format.
                     "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                        # When updating, all fields must be set.
-                      "pattern": "A String", # Pattern string used for formatting.
+                      "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                          # the user's locale will be used if necessary for the given type.
                       "type": "A String", # The type of the number format.
+                          # When writing, this field must be set.
                     },
                     "textDirection": "A String", # The direction of the text in the cell.
                     "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -2898,7 +2901,7 @@
                       "bottom": 42, # The bottom padding of the cell.
                       "left": 42, # The left padding of the cell.
                     },
-                    "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                    "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                     "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                         # for simplicity of conversion to/from color representations in various
                         # languages over compactness; for example, the fields of this representation
@@ -3028,7 +3031,7 @@
                       "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
-                    "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                    "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                     "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                         # Absent values indicate that the field isn't specified.
                       "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -3300,7 +3303,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "right": { # A border along a cell. # The right border of the cell.
@@ -3434,7 +3437,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -3568,7 +3571,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "left": { # A border along a cell. # The left border of the cell.
@@ -3702,7 +3705,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                     },
@@ -3741,15 +3744,17 @@
                       ],
                     },
                   },
-                  "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+                  "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                      # on user entered strings, not formulas, bools, or numbers.
                       # Runs start at specific indexes in the text and continue until the next
                       # run. Properties of a run will continue unless explicitly changed
                       # in a subsequent run (and properties of the first run will continue
                       # the properties of the cell unless explicitly changed).
                       #
-                      # When writing, the new runs will overwrite any prior runs.
-                    { # A run of a text format. The format of this run continues until explicitly
-                        # overridden in the next run.
+                      # When writing, the new runs will overwrite any prior runs.  When writing a
+                      # new user_entered_value, previous runs will be erased.
+                    { # A run of a text format. The format of this run continues until the start
+                        # index of the next run.
                         # When updating, all fields must be set.
                       "startIndex": 42, # The character index where this run starts.
                       "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.
@@ -3909,7 +3914,6 @@
         },
         "updateSheetProperties": { # Updates properties of the sheet with the specified # Updates a sheet's properties.
             # sheetId.
-            # It is an error to specify read only fields in the field mask.
           "fields": "A String", # The fields that should be updated.  At least one field must be specified.
               # The root `properties` is implied and should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
@@ -4068,14 +4072,16 @@
         },
         "addChart": { # Adds a chart to a sheet in the spreadsheet. # Adds a chart.
           "chart": { # A chart embedded in a sheet. # The chart that should be added to the spreadsheet, including the position
-              # where it should be placed.
+              # where it should be placed. The chartId
+              # field is optional; if one is not set, an id will be randomly generated. (It
+              # is an error to specify the ID of a chart that already exists.)
             "chartId": 42, # The ID of the chart.
             "position": { # The position of an embedded object such as a chart. # The position of the chart.
               "newSheet": True or False, # If true, the embedded object will be put on a new sheet whose ID
                   # is chosen for you. Used only when writing.
               "sheetId": 42, # The sheet this is on. Set only if the embedded object
                   # is on its own sheet. Must be non-negative.
-              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
                 "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                     # All indexes are zero-based.
                   "rowIndex": 42, # The row index of the coordinate.
@@ -4092,9 +4098,6 @@
             },
             "spec": { # The specifications of a chart. # The specification of the chart.
               "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                  # This value is only meaningful if the
-                  # ChartData.sourceRange
-                  # is used for a domain or series.
               "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
                 "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                   "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -4121,24 +4124,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -4178,24 +4181,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -4215,7 +4218,8 @@
                 "pieHole": 3.14, # The size of the hole in the pie chart.
               },
               "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                  # See BasicChartType for the list of all charts this supports.
+                  # See BasicChartType for the list of all
+                  # charts this supports.
                   # of charts this supports.
                 "headerCount": 42, # The number of rows or columns in the data that are "headers".
                     # If not set, Google Sheets will guess how many rows are headers based
@@ -4252,24 +4256,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -4305,7 +4309,7 @@
                   { # The domain of a chart.
                       # For example, if charting stock prices over time, this would be the date.
                     "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                        # this be the data representing the dates.
+                        # this is the data representing the dates.
                       "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                         "sources": [ # The ranges of data for a series or domain.
                             # Exactly one dimension must have a length of 1,
@@ -4330,24 +4334,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -4530,24 +4534,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -4594,9 +4598,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -4606,7 +4611,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -4736,7 +4741,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -5008,7 +5013,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -5142,7 +5147,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -5276,7 +5281,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -5410,7 +5415,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -5421,7 +5426,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -5558,7 +5563,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -5695,7 +5700,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -5846,14 +5851,14 @@
             # C2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.
             #
             # To keep the formula's ranges static, use the `$` indicator.
-            # For example, using the formula was `=$A$1`, neither
-            # the row nor column would increment.
+            # For example, use the formula `=$A$1` to prevent both the row and the
+            # column from incrementing.
           "cell": { # Data about a specific cell. # The data to write.
             "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                 # is computed dynamically based on its data, grouping, filters, values,
-                # etc... Only the top-left cell of the pivot table contains the pivot table
+                # etc. Only the top-left cell of the pivot table contains the pivot table
                 # definition. The other cells will contain the calculated values of the
-                # results of the pivot in their effectiveValue fields.
+                # results of the pivot in their effective_value fields.
               "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                   # or vertically (as rows).
               "rows": [ # Each row grouping in the pivot table.
@@ -5912,13 +5917,13 @@
                         },
                       },
                     ],
-                    "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                    "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                         # grouping should be sorted by.
                   },
                   "sortOrder": "A String", # The order the values in this group should be sorted.
                   "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                       #
-                      # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                      # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                       # means this group refers to column `C`, whereas the offset `1` would refer
                       # to column `D`.
                 },
@@ -5929,24 +5934,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -5970,7 +5975,7 @@
                       # is not supported.
                   "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                       #
-                      # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                      # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                       # means this value refers to column `C`, whereas the offset `1` would
                       # refer to column `D`.
                   "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -5983,7 +5988,7 @@
                   # The map's key is the column offset of the source range that you want to
                   # filter, and the value is the criteria for that column.
                   #
-                  # For example, if the source was `C10:E15', a key of `0` will have the filter
+                  # For example, if the source was `C10:E15`, a key of `0` will have the filter
                   # for column `C`, whereas the key `1` is for column `D`.
                 "a_key": { # Criteria for showing/hiding rows in a pivot table.
                   "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -6047,13 +6052,13 @@
                         },
                       },
                     ],
-                    "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                    "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                         # grouping should be sorted by.
                   },
                   "sortOrder": "A String", # The order the values in this group should be sorted.
                   "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                       #
-                      # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                      # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                       # means this group refers to column `C`, whereas the offset `1` would refer
                       # to column `D`.
                 },
@@ -6111,9 +6116,10 @@
                 # not be written.
                 # This field is read-only.
               "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                  # When updating, all fields must be set.
-                "pattern": "A String", # Pattern string used for formatting.
+                "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                    # the user's locale will be used if necessary for the given type.
                 "type": "A String", # The type of the number format.
+                    # When writing, this field must be set.
               },
               "textDirection": "A String", # The direction of the text in the cell.
               "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -6123,7 +6129,7 @@
                 "bottom": 42, # The bottom padding of the cell.
                 "left": 42, # The left padding of the cell.
               },
-              "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+              "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
               "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                   # for simplicity of conversion to/from color representations in various
                   # languages over compactness; for example, the fields of this representation
@@ -6253,7 +6259,7 @@
                 "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
-              "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+              "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
               "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                   # Absent values indicate that the field isn't specified.
                 "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -6525,7 +6531,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "right": { # A border along a cell. # The right border of the cell.
@@ -6659,7 +6665,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -6793,7 +6799,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "left": { # A border along a cell. # The left border of the cell.
@@ -6927,7 +6933,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
               },
@@ -6937,9 +6943,10 @@
                 #
                 # When writing, the new format will be merged with the existing format.
               "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                  # When updating, all fields must be set.
-                "pattern": "A String", # Pattern string used for formatting.
+                "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                    # the user's locale will be used if necessary for the given type.
                 "type": "A String", # The type of the number format.
+                    # When writing, this field must be set.
               },
               "textDirection": "A String", # The direction of the text in the cell.
               "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -6949,7 +6956,7 @@
                 "bottom": 42, # The bottom padding of the cell.
                 "left": 42, # The left padding of the cell.
               },
-              "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+              "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
               "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                   # for simplicity of conversion to/from color representations in various
                   # languages over compactness; for example, the fields of this representation
@@ -7079,7 +7086,7 @@
                 "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
-              "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+              "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
               "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                   # Absent values indicate that the field isn't specified.
                 "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -7351,7 +7358,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "right": { # A border along a cell. # The right border of the cell.
@@ -7485,7 +7492,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -7619,7 +7626,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "left": { # A border along a cell. # The left border of the cell.
@@ -7753,7 +7760,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
               },
@@ -7792,15 +7799,17 @@
                 ],
               },
             },
-            "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+            "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                # on user entered strings, not formulas, bools, or numbers.
                 # Runs start at specific indexes in the text and continue until the next
                 # run. Properties of a run will continue unless explicitly changed
                 # in a subsequent run (and properties of the first run will continue
                 # the properties of the cell unless explicitly changed).
                 #
-                # When writing, the new runs will overwrite any prior runs.
-              { # A run of a text format. The format of this run continues until explicitly
-                  # overridden in the next run.
+                # When writing, the new runs will overwrite any prior runs.  When writing a
+                # new user_entered_value, previous runs will be erased.
+              { # A run of a text format. The format of this run continues until the start
+                  # index of the next run.
                   # When updating, all fields must be set.
                 "startIndex": 42, # The character index where this run starts.
                 "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.
@@ -7953,24 +7962,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -7983,7 +7992,7 @@
             "endColumnIndex": 42, # The end column (exclusive) of the range, or not set if unbounded.
           },
         },
-        "findReplace": { # Finds and replaces data in cells over a range, sheet, or all sheets. # Finds and replace occurrences of some text with other text.
+        "findReplace": { # Finds and replaces data in cells over a range, sheet, or all sheets. # Finds and replaces occurrences of some text with other text.
           "includeFormulas": True or False, # True if the search should include cells with formulas.
               # False to skip cells with formulas.
           "matchEntireCell": True or False, # True if the find value should match the entire cell.
@@ -7996,24 +8005,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -8029,10 +8038,10 @@
               # The regular expression and replacement should follow Java regex rules
               # at https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.
               # The replacement string is allowed to refer to capturing groups.
-              # For example, if one cell has the contents "`Google Sheets`" and another
-              # has "`Google Docs`", then searching for `"o.* (.*)"` with a replacement of
-              # `"$1 Rocks`"` would change the contents of the cells to
-              # "`GSheets Rocks`" and "`GDocs Rocks`" respectively.
+              # For example, if one cell has the contents `"Google Sheets"` and another
+              # has `"Google Docs"`, then searching for `"o.* (.*)"` with a replacement of
+              # `"$1 Rocks"` would change the contents of the cells to
+              # `"GSheets Rocks"` and `"GDocs Rocks"` respectively.
           "find": "A String", # The value to search.
           "replacement": "A String", # The value to use as the replacement.
         },
@@ -8044,24 +8053,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -8083,7 +8092,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -8119,28 +8128,32 @@
           },
         },
         "updateSpreadsheetProperties": { # Updates properties of a spreadsheet. # Updates the spreadsheet's properties.
-            # It is an error to specify read only fields in the field mask.
           "fields": "A String", # The fields that should be updated.  At least one field must be specified.
               # The root 'properties' is implied and should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
           "properties": { # Properties of a spreadsheet. # The properties to update.
             "locale": "A String", # The locale of the spreadsheet in one of the following formats:
+                #
                 # * an ISO 639-1 language code such as `en`
+                #
                 # * an ISO 639-2 language code such as `fil`, if no 639-1 code exists
+                #
                 # * a combination of the ISO language code and country code, such as `en_US`
+                #
                 # Note: when updating this field, not all locales/languages are supported.
             "timeZone": "A String", # The time zone of the spreadsheet, in CLDR format such as
                 # `America/New_York`. If the time zone isn't recognized, this may
                 # be a custom time zone such as `GMT-07:00`.
             "autoRecalc": "A String", # The amount of time to wait before volatile functions are recalculated.
             "defaultFormat": { # The format of a cell. # The default format of all cells in the spreadsheet.
-                # CellData.effectiveFormat will not be set if the cell's format is equal
-                # to this default format.
+                # CellData.effectiveFormat will not be set if the
+                # cell's format is equal to this default format.
                 # This field is read-only.
               "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                  # When updating, all fields must be set.
-                "pattern": "A String", # Pattern string used for formatting.
+                "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                    # the user's locale will be used if necessary for the given type.
                 "type": "A String", # The type of the number format.
+                    # When writing, this field must be set.
               },
               "textDirection": "A String", # The direction of the text in the cell.
               "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -8150,7 +8163,7 @@
                 "bottom": 42, # The bottom padding of the cell.
                 "left": 42, # The left padding of the cell.
               },
-              "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+              "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
               "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                   # for simplicity of conversion to/from color representations in various
                   # languages over compactness; for example, the fields of this representation
@@ -8280,7 +8293,7 @@
                 "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
-              "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+              "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
               "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                   # Absent values indicate that the field isn't specified.
                 "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -8552,7 +8565,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "right": { # A border along a cell. # The right border of the cell.
@@ -8686,7 +8699,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -8820,7 +8833,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
                 "left": { # A border along a cell. # The left border of the cell.
@@ -8954,7 +8967,7 @@
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
                   "width": 42, # The width of the border, in pixels.
-                      # Border widths must be between 0 and 3 pixels.
+                      # Border widths must be between 0 and 3 pixels, inclusive.
                   "style": "A String", # The style of the border.
                 },
               },
@@ -8977,24 +8990,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -9012,9 +9025,9 @@
                 { # Data about a specific cell.
                   "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                       # is computed dynamically based on its data, grouping, filters, values,
-                      # etc... Only the top-left cell of the pivot table contains the pivot table
+                      # etc. Only the top-left cell of the pivot table contains the pivot table
                       # definition. The other cells will contain the calculated values of the
-                      # results of the pivot in their effectiveValue fields.
+                      # results of the pivot in their effective_value fields.
                     "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                         # or vertically (as rows).
                     "rows": [ # Each row grouping in the pivot table.
@@ -9073,13 +9086,13 @@
                               },
                             },
                           ],
-                          "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                          "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                               # grouping should be sorted by.
                         },
                         "sortOrder": "A String", # The order the values in this group should be sorted.
                         "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this group refers to column `C`, whereas the offset `1` would refer
                             # to column `D`.
                       },
@@ -9090,24 +9103,24 @@
                         # and the end index is exclusive -- [start_index, end_index).
                         # Missing indexes indicate the range is unbounded on that side.
                         #
-                        # For example, if "Sheet1" is grid ID 0, then:
+                        # For example, if `"Sheet1"` is sheet ID 0, then:
                         #
-                        #   Sheet1!A1:A1 == sheet_id: 0,
+                        #   `Sheet1!A1:A1 == sheet_id: 0,
                         #                   start_row_index: 0, end_row_index: 1,
-                        #                   start_column_index: 0, end_column_index: 1
+                        #                   start_column_index: 0, end_column_index: 1`
                         #
-                        #   Sheet1!A3:B4 == sheet_id: 0,
+                        #   `Sheet1!A3:B4 == sheet_id: 0,
                         #                   start_row_index: 2, end_row_index: 4,
-                        #                   start_column_index: 0, end_column_index: 2
+                        #                   start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A:B == sheet_id: 0,
-                        #                 start_column_index: 0, end_column_index: 2
+                        #   `Sheet1!A:B == sheet_id: 0,
+                        #                 start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A5:B == sheet_id: 0,
+                        #   `Sheet1!A5:B == sheet_id: 0,
                         #                  start_row_index: 4,
-                        #                  start_column_index: 0, end_column_index: 2
+                        #                  start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1 == sheet_id:0
+                        #   `Sheet1 == sheet_id:0`
                         #
                         # The start index must always be less than or equal to the end index.
                         # If the start index equals the end index, then the range is empty.
@@ -9131,7 +9144,7 @@
                             # is not supported.
                         "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this value refers to column `C`, whereas the offset `1` would
                             # refer to column `D`.
                         "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -9144,7 +9157,7 @@
                         # The map's key is the column offset of the source range that you want to
                         # filter, and the value is the criteria for that column.
                         #
-                        # For example, if the source was `C10:E15', a key of `0` will have the filter
+                        # For example, if the source was `C10:E15`, a key of `0` will have the filter
                         # for column `C`, whereas the key `1` is for column `D`.
                       "a_key": { # Criteria for showing/hiding rows in a pivot table.
                         "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -9208,13 +9221,13 @@
                               },
                             },
                           ],
-                          "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                          "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                               # grouping should be sorted by.
                         },
                         "sortOrder": "A String", # The order the values in this group should be sorted.
                         "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                             #
-                            # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                            # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                             # means this group refers to column `C`, whereas the offset `1` would refer
                             # to column `D`.
                       },
@@ -9272,9 +9285,10 @@
                       # not be written.
                       # This field is read-only.
                     "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                        # When updating, all fields must be set.
-                      "pattern": "A String", # Pattern string used for formatting.
+                      "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                          # the user's locale will be used if necessary for the given type.
                       "type": "A String", # The type of the number format.
+                          # When writing, this field must be set.
                     },
                     "textDirection": "A String", # The direction of the text in the cell.
                     "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -9284,7 +9298,7 @@
                       "bottom": 42, # The bottom padding of the cell.
                       "left": 42, # The left padding of the cell.
                     },
-                    "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                    "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                     "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                         # for simplicity of conversion to/from color representations in various
                         # languages over compactness; for example, the fields of this representation
@@ -9414,7 +9428,7 @@
                       "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
-                    "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                    "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                     "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                         # Absent values indicate that the field isn't specified.
                       "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -9686,7 +9700,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "right": { # A border along a cell. # The right border of the cell.
@@ -9820,7 +9834,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -9954,7 +9968,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "left": { # A border along a cell. # The left border of the cell.
@@ -10088,7 +10102,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                     },
@@ -10098,9 +10112,10 @@
                       #
                       # When writing, the new format will be merged with the existing format.
                     "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                        # When updating, all fields must be set.
-                      "pattern": "A String", # Pattern string used for formatting.
+                      "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                          # the user's locale will be used if necessary for the given type.
                       "type": "A String", # The type of the number format.
+                          # When writing, this field must be set.
                     },
                     "textDirection": "A String", # The direction of the text in the cell.
                     "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -10110,7 +10125,7 @@
                       "bottom": 42, # The bottom padding of the cell.
                       "left": 42, # The left padding of the cell.
                     },
-                    "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                    "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                     "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                         # for simplicity of conversion to/from color representations in various
                         # languages over compactness; for example, the fields of this representation
@@ -10240,7 +10255,7 @@
                       "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
-                    "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                    "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                     "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                         # Absent values indicate that the field isn't specified.
                       "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -10512,7 +10527,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "right": { # A border along a cell. # The right border of the cell.
@@ -10646,7 +10661,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -10780,7 +10795,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                       "left": { # A border along a cell. # The left border of the cell.
@@ -10914,7 +10929,7 @@
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
                         "width": 42, # The width of the border, in pixels.
-                            # Border widths must be between 0 and 3 pixels.
+                            # Border widths must be between 0 and 3 pixels, inclusive.
                         "style": "A String", # The style of the border.
                       },
                     },
@@ -10953,15 +10968,17 @@
                       ],
                     },
                   },
-                  "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+                  "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                      # on user entered strings, not formulas, bools, or numbers.
                       # Runs start at specific indexes in the text and continue until the next
                       # run. Properties of a run will continue unless explicitly changed
                       # in a subsequent run (and properties of the first run will continue
                       # the properties of the cell unless explicitly changed).
                       #
-                      # When writing, the new runs will overwrite any prior runs.
-                    { # A run of a text format. The format of this run continues until explicitly
-                        # overridden in the next run.
+                      # When writing, the new runs will overwrite any prior runs.  When writing a
+                      # new user_entered_value, previous runs will be erased.
+                    { # A run of a text format. The format of this run continues until the start
+                        # index of the next run.
                         # When updating, all fields must be set.
                       "startIndex": 42, # The character index where this run starts.
                       "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.
@@ -11128,24 +11145,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -11166,24 +11183,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -11223,7 +11240,6 @@
           },
         },
         "updateDimensionProperties": { # Updates properties of dimensions within the specified range. # Updates dimensions' properties.
-            # It is an error to specify read only fields in the field mask.
           "fields": "A String", # The fields that should be updated.  At least one field must be specified.
               # The root `properties` is implied and should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
@@ -11253,24 +11269,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -11291,24 +11307,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -11357,10 +11373,9 @@
           "sheetId": 42, # The sheet ID on which the basic filter should be cleared.
         },
         "addNamedRange": { # Adds a named range to the spreadsheet. # Adds a named range.
-          "namedRange": { # A named range. # The named range to add. If a non-empty
-              # namedRangeId is specified, the named range
-              # will use that ID. (It is an error to specify the ID of a named
-              # range that already exists.)
+          "namedRange": { # A named range. # The named range to add. The namedRangeId
+              # field is optional; if one is not set, an id will be randomly generated. (It
+              # is an error to specify the ID of a range that already exists.)
             "namedRangeId": "A String", # The ID of the named range.
             "range": { # A range on a sheet. # The range this represents.
                 # All indexes are zero-based.
@@ -11368,24 +11383,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -11406,9 +11421,6 @@
           "chartId": 42, # The ID of the chart to update.
           "spec": { # The specifications of a chart. # The specification to apply to the chart.
             "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                # This value is only meaningful if the
-                # ChartData.sourceRange
-                # is used for a domain or series.
             "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
               "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                 "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -11435,24 +11447,24 @@
                         # and the end index is exclusive -- [start_index, end_index).
                         # Missing indexes indicate the range is unbounded on that side.
                         #
-                        # For example, if "Sheet1" is grid ID 0, then:
+                        # For example, if `"Sheet1"` is sheet ID 0, then:
                         #
-                        #   Sheet1!A1:A1 == sheet_id: 0,
+                        #   `Sheet1!A1:A1 == sheet_id: 0,
                         #                   start_row_index: 0, end_row_index: 1,
-                        #                   start_column_index: 0, end_column_index: 1
+                        #                   start_column_index: 0, end_column_index: 1`
                         #
-                        #   Sheet1!A3:B4 == sheet_id: 0,
+                        #   `Sheet1!A3:B4 == sheet_id: 0,
                         #                   start_row_index: 2, end_row_index: 4,
-                        #                   start_column_index: 0, end_column_index: 2
+                        #                   start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A:B == sheet_id: 0,
-                        #                 start_column_index: 0, end_column_index: 2
+                        #   `Sheet1!A:B == sheet_id: 0,
+                        #                 start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A5:B == sheet_id: 0,
+                        #   `Sheet1!A5:B == sheet_id: 0,
                         #                  start_row_index: 4,
-                        #                  start_column_index: 0, end_column_index: 2
+                        #                  start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1 == sheet_id:0
+                        #   `Sheet1 == sheet_id:0`
                         #
                         # The start index must always be less than or equal to the end index.
                         # If the start index equals the end index, then the range is empty.
@@ -11492,24 +11504,24 @@
                         # and the end index is exclusive -- [start_index, end_index).
                         # Missing indexes indicate the range is unbounded on that side.
                         #
-                        # For example, if "Sheet1" is grid ID 0, then:
+                        # For example, if `"Sheet1"` is sheet ID 0, then:
                         #
-                        #   Sheet1!A1:A1 == sheet_id: 0,
+                        #   `Sheet1!A1:A1 == sheet_id: 0,
                         #                   start_row_index: 0, end_row_index: 1,
-                        #                   start_column_index: 0, end_column_index: 1
+                        #                   start_column_index: 0, end_column_index: 1`
                         #
-                        #   Sheet1!A3:B4 == sheet_id: 0,
+                        #   `Sheet1!A3:B4 == sheet_id: 0,
                         #                   start_row_index: 2, end_row_index: 4,
-                        #                   start_column_index: 0, end_column_index: 2
+                        #                   start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A:B == sheet_id: 0,
-                        #                 start_column_index: 0, end_column_index: 2
+                        #   `Sheet1!A:B == sheet_id: 0,
+                        #                 start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1!A5:B == sheet_id: 0,
+                        #   `Sheet1!A5:B == sheet_id: 0,
                         #                  start_row_index: 4,
-                        #                  start_column_index: 0, end_column_index: 2
+                        #                  start_column_index: 0, end_column_index: 2`
                         #
-                        #   Sheet1 == sheet_id:0
+                        #   `Sheet1 == sheet_id:0`
                         #
                         # The start index must always be less than or equal to the end index.
                         # If the start index equals the end index, then the range is empty.
@@ -11529,7 +11541,8 @@
               "pieHole": 3.14, # The size of the hole in the pie chart.
             },
             "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                # See BasicChartType for the list of all charts this supports.
+                # See BasicChartType for the list of all
+                # charts this supports.
                 # of charts this supports.
               "headerCount": 42, # The number of rows or columns in the data that are "headers".
                   # If not set, Google Sheets will guess how many rows are headers based
@@ -11566,24 +11579,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -11619,7 +11632,7 @@
                 { # The domain of a chart.
                     # For example, if charting stock prices over time, this would be the date.
                   "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                      # this be the data representing the dates.
+                      # this is the data representing the dates.
                     "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                       "sources": [ # The ranges of data for a series or domain.
                           # Exactly one dimension must have a length of 1,
@@ -11644,24 +11657,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -11850,8 +11863,8 @@
               # the data may end up in a different index than specified.
               #
               # For example, given `A1..A5` of `0, 1, 2, 3, 4` and wanting to move
-              # "`1`" and "`2`" to between "`3`" and "`4`", the source would be
-              # `ROWS [1..3)`,and the destination index would be "`4`"
+              # `"1"` and `"2"` to between `"3"` and `"4"`, the source would be
+              # `ROWS [1..3)`,and the destination index would be `"4"`
               # (the zero-based index of row 5).
               # The end result would be `A1..A5` of `0, 3, 1, 2, 4`.
         },
@@ -11863,24 +11876,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -11906,24 +11919,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -11937,44 +11950,46 @@
           },
           "mergeType": "A String", # How the cells should be merged.
         },
-        "deleteProtectedRange": { # Deletes the protected range with the given id. # Deletes a protected range.
+        "deleteProtectedRange": { # Deletes the protected range with the given ID. # Deletes a protected range.
           "protectedRangeId": 42, # The ID of the protected range to delete.
         },
         "addFilterView": { # Adds a filter view. # Adds a filter view.
-          "filter": { # A filter view. # The filter to add.
+          "filter": { # A filter view. # The filter to add. The filterViewId
+              # field is optional; if one is not set, an id will be randomly generated. (It
+              # is an error to specify the ID of a filter that already exists.)
             "title": "A String", # The name of the filter view.
             "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "filterViewId": 42, # The ID of the filter view.
             "range": { # A range on a sheet. # The range this filter view covers.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -11996,7 +12011,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -12176,7 +12191,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "bottom": { # A border along a cell. # The border to put at the bottom of the range.
@@ -12310,7 +12325,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "top": { # A border along a cell. # The border to put at the top of the range.
@@ -12444,7 +12459,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "innerHorizontal": { # A border along a cell. # The horizontal border to put within the range.
@@ -12578,7 +12593,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "range": { # A range on a sheet. # The range whose borders should be updated.
@@ -12587,24 +12602,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -12747,7 +12762,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "left": { # A border along a cell. # The border to put at the left of the range.
@@ -12881,7 +12896,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
         },
@@ -12894,24 +12909,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -12938,24 +12953,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -12977,24 +12992,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -13011,12 +13026,14 @@
         "addSheet": { # Adds a new sheet. # Adds a sheet.
             # When a sheet is added at a given index,
             # all subsequent sheets' indexes are incremented.
-            # To add an object sheet, use AddChartRequest instead.
+            # To add an object sheet, use AddChartRequest instead and specify
+            # EmbeddedObjectPosition.sheetId or
+            # EmbeddedObjectPosition.newSheet.
           "properties": { # Properties of a sheet. # The properties the new sheet should have.
               # All properties are optional.
-              # If a sheetId
-              # is specified, the sheet will use that ID.
-              # (It is an error to specify the ID of a sheet that already exists.)
+              # The sheetId field is optional; if one is not
+              # set, an id will be randomly generated. (It is an error to specify the ID
+              # of a sheet that already exists.)
             "sheetType": "A String", # The type of sheet. Defaults to GRID.
                 # This field cannot be changed once set.
             "index": 42, # The index of the sheet within the spreadsheet.
@@ -13174,7 +13191,6 @@
         },
         "updateNamedRange": { # Updates properties of the named range with the specified # Updates a named range.
             # namedRangeId.
-            # It is an error to specify read only fields in the field mask.
           "fields": "A String", # The fields that should be updated.  At least one field must be specified.
               # The root `namedRange` is implied and should not be specified.
               # A single `"*"` can be used as short-hand for listing every field.
@@ -13186,24 +13202,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -13230,7 +13246,7 @@
               # either the green or red background.  If `inheritFromBefore` is true,
               # the two new rows will be red (because the row before the insertion point
               # was red), whereas if `inheritFromBefore` is false, the two new rows will
-              # be green (because the rows after the insertion point were green).
+              # be green (because the row after the insertion point was green).
           "range": { # A range along a single dimension on a sheet. # The dimensions to insert.  Both the start and end indexes must be bounded.
               # All indexes are zero-based.
               # Indexes are half open: the start index is inclusive
@@ -13247,36 +13263,36 @@
             "title": "A String", # The name of the filter view.
             "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "filterViewId": 42, # The ID of the filter view.
             "range": { # A range on a sheet. # The range this filter view covers.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -13298,7 +13314,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -13363,36 +13379,36 @@
             "title": "A String", # The name of the filter view.
             "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "filterViewId": 42, # The ID of the filter view.
             "range": { # A range on a sheet. # The range this filter view covers.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -13414,7 +13430,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -13609,7 +13625,7 @@
                 # is chosen for you. Used only when writing.
             "sheetId": 42, # The sheet this is on. Set only if the embedded object
                 # is on its own sheet. Must be non-negative.
-            "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+            "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
               "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                   # All indexes are zero-based.
                 "rowIndex": 42, # The row index of the coordinate.
@@ -13633,7 +13649,7 @@
                   # is chosen for you. Used only when writing.
               "sheetId": 42, # The sheet this is on. Set only if the embedded object
                   # is on its own sheet. Must be non-negative.
-              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
                 "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                     # All indexes are zero-based.
                   "rowIndex": 42, # The row index of the coordinate.
@@ -13650,9 +13666,6 @@
             },
             "spec": { # The specifications of a chart. # The specification of the chart.
               "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                  # This value is only meaningful if the
-                  # ChartData.sourceRange
-                  # is used for a domain or series.
               "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
                 "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                   "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -13679,24 +13692,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -13736,24 +13749,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -13773,7 +13786,8 @@
                 "pieHole": 3.14, # The size of the hole in the pie chart.
               },
               "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                  # See BasicChartType for the list of all charts this supports.
+                  # See BasicChartType for the list of all
+                  # charts this supports.
                   # of charts this supports.
                 "headerCount": 42, # The number of rows or columns in the data that are "headers".
                     # If not set, Google Sheets will guess how many rows are headers based
@@ -13810,24 +13824,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -13863,7 +13877,7 @@
                   { # The domain of a chart.
                       # For example, if charting stock prices over time, this would be the date.
                     "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                        # this be the data representing the dates.
+                        # this is the data representing the dates.
                       "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                         "sources": [ # The ranges of data for a series or domain.
                             # Exactly one dimension must have a length of 1,
@@ -13888,24 +13902,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -14078,10 +14092,10 @@
         },
         "updateConditionalFormatRule": { # The result of updating a conditional format rule. # A reply from updating a conditional format rule.
           "oldIndex": 42, # The old index of the rule. Not set if a rule was replaced
-              # (because it is the same as newIndex).
+              # (because it is the same as new_index).
           "newIndex": 42, # The index of the new rule.
           "oldRule": { # A rule describing a conditional format. # The old (deleted) rule. Not set if a rule was moved
-              # (because it is the same as newRule).
+              # (because it is the same as new_rule).
             "ranges": [ # The ranges that will be formatted if the condition is true.
                 # All the ranges must be on the same grid.
               { # A range on a sheet.
@@ -14090,24 +14104,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -14154,9 +14168,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -14166,7 +14181,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -14296,7 +14311,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -14568,7 +14583,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -14702,7 +14717,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -14836,7 +14851,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -14970,7 +14985,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -14981,7 +14996,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -15118,7 +15133,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -15255,7 +15270,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -15404,24 +15419,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -15468,9 +15483,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -15480,7 +15496,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -15610,7 +15626,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -15882,7 +15898,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -16016,7 +16032,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -16150,7 +16166,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -16284,7 +16300,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -16295,7 +16311,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -16432,7 +16448,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -16569,7 +16585,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -16865,8 +16881,8 @@
         },
         "findReplace": { # The result of the find/replace. # A reply from doing a find/replace.
           "occurrencesChanged": 42, # The number of occurrences (possibly multiple within a cell) changed.
-              # For example, if replacing "`e`" with "`o`" in "`Google Sheets`", this would
-              # be "`3`" because "`Google Sheets`" -> "`Googlo Shoots`".
+              # For example, if replacing `"e"` with `"o"` in `"Google Sheets"`, this would
+              # be `"3"` because `"Google Sheets"` -> `"Googlo Shoots"`.
           "sheetsChanged": 42, # The number of sheets changed.
           "rowsChanged": 42, # The number of rows changed.
           "valuesChanged": 42, # The number of non-formula cells changed.
@@ -16881,24 +16897,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -16923,24 +16939,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -16959,12 +16975,12 @@
             "description": "A String", # The description of this protected range.
             "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                 # This field is only visible to users with edit access to the protected
                 # range and the document.
-                # Editors are not supported with warningOnly protection.
+                # Editors are not supported with warning_only protection.
               "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                   # range.  Domain protection is only supported on documents within a domain.
               "users": [ # The email addresses of users with edit access to the protected range.
@@ -16976,12 +16992,12 @@
             },
             "protectedRangeId": 42, # The ID of the protected range.
                 # This field is read-only.
-            "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+            "warningOnly": True or False, # True if this protected range will show a warning when editing.
                 # Warning-based protection means that every user can edit data in the
                 # protected range, except editing will prompt a warning asking the user
                 # to confirm the edit.
                 #
-                # When warning: if this field is true, then editors is ignored.
+                # When writing: if this field is true, then editors is ignored.
                 # Additionally, if this field is changed from true to false and the
                 # `editors` field is not set (nor included in the field mask), then
                 # the editors will be set to all the editors in the document.
@@ -16989,31 +17005,31 @@
                 # The range may be fully unbounded, in which case this is considered
                 # a protected sheet.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -17037,24 +17053,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -17101,9 +17117,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -17113,7 +17130,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -17243,7 +17260,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -17515,7 +17532,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -17649,7 +17666,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -17783,7 +17800,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -17917,7 +17934,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -17928,7 +17945,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -18065,7 +18082,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -18202,7 +18219,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -18347,36 +18364,36 @@
             "title": "A String", # The name of the filter view.
             "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "filterViewId": 42, # The ID of the filter view.
             "range": { # A range on a sheet. # The range this filter view covers.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -18398,7 +18415,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -18458,24 +18475,24 @@
             # and the end index is exclusive -- [start_index, end_index).
             # Missing indexes indicate the range is unbounded on that side.
             #
-            # For example, if "Sheet1" is grid ID 0, then:
+            # For example, if `"Sheet1"` is sheet ID 0, then:
             #
-            #   Sheet1!A1:A1 == sheet_id: 0,
+            #   `Sheet1!A1:A1 == sheet_id: 0,
             #                   start_row_index: 0, end_row_index: 1,
-            #                   start_column_index: 0, end_column_index: 1
+            #                   start_column_index: 0, end_column_index: 1`
             #
-            #   Sheet1!A3:B4 == sheet_id: 0,
+            #   `Sheet1!A3:B4 == sheet_id: 0,
             #                   start_row_index: 2, end_row_index: 4,
-            #                   start_column_index: 0, end_column_index: 2
+            #                   start_column_index: 0, end_column_index: 2`
             #
-            #   Sheet1!A:B == sheet_id: 0,
-            #                 start_column_index: 0, end_column_index: 2
+            #   `Sheet1!A:B == sheet_id: 0,
+            #                 start_column_index: 0, end_column_index: 2`
             #
-            #   Sheet1!A5:B == sheet_id: 0,
+            #   `Sheet1!A5:B == sheet_id: 0,
             #                  start_row_index: 4,
-            #                  start_column_index: 0, end_column_index: 2
+            #                  start_column_index: 0, end_column_index: 2`
             #
-            #   Sheet1 == sheet_id:0
+            #   `Sheet1 == sheet_id:0`
             #
             # The start index must always be less than or equal to the end index.
             # If the start index equals the end index, then the range is empty.
@@ -18492,22 +18509,27 @@
     ],
     "properties": { # Properties of a spreadsheet. # Overall properties of a spreadsheet.
       "locale": "A String", # The locale of the spreadsheet in one of the following formats:
+          #
           # * an ISO 639-1 language code such as `en`
+          #
           # * an ISO 639-2 language code such as `fil`, if no 639-1 code exists
+          #
           # * a combination of the ISO language code and country code, such as `en_US`
+          #
           # Note: when updating this field, not all locales/languages are supported.
       "timeZone": "A String", # The time zone of the spreadsheet, in CLDR format such as
           # `America/New_York`. If the time zone isn't recognized, this may
           # be a custom time zone such as `GMT-07:00`.
       "autoRecalc": "A String", # The amount of time to wait before volatile functions are recalculated.
       "defaultFormat": { # The format of a cell. # The default format of all cells in the spreadsheet.
-          # CellData.effectiveFormat will not be set if the cell's format is equal
-          # to this default format.
+          # CellData.effectiveFormat will not be set if the
+          # cell's format is equal to this default format.
           # This field is read-only.
         "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-            # When updating, all fields must be set.
-          "pattern": "A String", # Pattern string used for formatting.
+          "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+              # the user's locale will be used if necessary for the given type.
           "type": "A String", # The type of the number format.
+              # When writing, this field must be set.
         },
         "textDirection": "A String", # The direction of the text in the cell.
         "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -18517,7 +18539,7 @@
           "bottom": 42, # The bottom padding of the cell.
           "left": 42, # The left padding of the cell.
         },
-        "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+        "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
         "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
             # for simplicity of conversion to/from color representations in various
             # languages over compactness; for example, the fields of this representation
@@ -18647,7 +18669,7 @@
           "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
         },
-        "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+        "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
         "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
             # Absent values indicate that the field isn't specified.
           "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -18919,7 +18941,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "right": { # A border along a cell. # The right border of the cell.
@@ -19053,7 +19075,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -19187,7 +19209,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
           "left": { # A border along a cell. # The left border of the cell.
@@ -19321,7 +19343,7 @@
               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
             },
             "width": 42, # The width of the border, in pixels.
-                # Border widths must be between 0 and 3 pixels.
+                # Border widths must be between 0 and 3 pixels, inclusive.
             "style": "A String", # The style of the border.
           },
         },
@@ -19341,24 +19363,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -19405,9 +19427,10 @@
                   # foreground color &
                   # background color.
                 "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                    # When updating, all fields must be set.
-                  "pattern": "A String", # Pattern string used for formatting.
+                  "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                      # the user's locale will be used if necessary for the given type.
                   "type": "A String", # The type of the number format.
+                      # When writing, this field must be set.
                 },
                 "textDirection": "A String", # The direction of the text in the cell.
                 "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -19417,7 +19440,7 @@
                   "bottom": 42, # The bottom padding of the cell.
                   "left": 42, # The left padding of the cell.
                 },
-                "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                 "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                     # for simplicity of conversion to/from color representations in various
                     # languages over compactness; for example, the fields of this representation
@@ -19547,7 +19570,7 @@
                   "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                   "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                 },
-                "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                 "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                     # Absent values indicate that the field isn't specified.
                   "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -19819,7 +19842,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "right": { # A border along a cell. # The right border of the cell.
@@ -19953,7 +19976,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -20087,7 +20110,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                   "left": { # A border along a cell. # The left border of the cell.
@@ -20221,7 +20244,7 @@
                       "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                     },
                     "width": 42, # The width of the border, in pixels.
-                        # Border widths must be between 0 and 3 pixels.
+                        # Border widths must be between 0 and 3 pixels, inclusive.
                     "style": "A String", # The style of the border.
                   },
                 },
@@ -20232,7 +20255,7 @@
                 # the interpolation points listed. The format of a cell will vary
                 # based on its contents as compared to the values of the interpolation
                 # points.
-              "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+              "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -20369,7 +20392,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+              "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -20506,7 +20529,7 @@
                     # Unused if type is MIN or
                     # MAX.
               },
-              "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+              "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                   # These pin the gradient color scale according to the color,
                   # type and value chosen.
                 "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -20653,24 +20676,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -20690,24 +20713,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -20729,7 +20752,7 @@
           "criteria": { # The criteria for showing/hiding values per column.
               # The map's key is the column index, and the value is the criteria for
               # that column.
-            "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+            "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
               "hiddenValues": [ # Values that should be hidden.
                 "A String",
               ],
@@ -20771,7 +20794,7 @@
                   # is chosen for you. Used only when writing.
               "sheetId": 42, # The sheet this is on. Set only if the embedded object
                   # is on its own sheet. Must be non-negative.
-              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+              "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
                 "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                     # All indexes are zero-based.
                   "rowIndex": 42, # The row index of the coordinate.
@@ -20788,9 +20811,6 @@
             },
             "spec": { # The specifications of a chart. # The specification of the chart.
               "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                  # This value is only meaningful if the
-                  # ChartData.sourceRange
-                  # is used for a domain or series.
               "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
                 "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                   "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -20817,24 +20837,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -20874,24 +20894,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -20911,7 +20931,8 @@
                 "pieHole": 3.14, # The size of the hole in the pie chart.
               },
               "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                  # See BasicChartType for the list of all charts this supports.
+                  # See BasicChartType for the list of all
+                  # charts this supports.
                   # of charts this supports.
                 "headerCount": 42, # The number of rows or columns in the data that are "headers".
                     # If not set, Google Sheets will guess how many rows are headers based
@@ -20948,24 +20969,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -21001,7 +21022,7 @@
                   { # The domain of a chart.
                       # For example, if charting stock prices over time, this would be the date.
                     "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                        # this be the data representing the dates.
+                        # this is the data representing the dates.
                       "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                         "sources": [ # The ranges of data for a series or domain.
                             # Exactly one dimension must have a length of 1,
@@ -21026,24 +21047,24 @@
                               # and the end index is exclusive -- [start_index, end_index).
                               # Missing indexes indicate the range is unbounded on that side.
                               #
-                              # For example, if "Sheet1" is grid ID 0, then:
+                              # For example, if `"Sheet1"` is sheet ID 0, then:
                               #
-                              #   Sheet1!A1:A1 == sheet_id: 0,
+                              #   `Sheet1!A1:A1 == sheet_id: 0,
                               #                   start_row_index: 0, end_row_index: 1,
-                              #                   start_column_index: 0, end_column_index: 1
+                              #                   start_column_index: 0, end_column_index: 1`
                               #
-                              #   Sheet1!A3:B4 == sheet_id: 0,
+                              #   `Sheet1!A3:B4 == sheet_id: 0,
                               #                   start_row_index: 2, end_row_index: 4,
-                              #                   start_column_index: 0, end_column_index: 2
+                              #                   start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A:B == sheet_id: 0,
-                              #                 start_column_index: 0, end_column_index: 2
+                              #   `Sheet1!A:B == sheet_id: 0,
+                              #                 start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1!A5:B == sheet_id: 0,
+                              #   `Sheet1!A5:B == sheet_id: 0,
                               #                  start_row_index: 4,
-                              #                  start_column_index: 0, end_column_index: 2
+                              #                  start_column_index: 0, end_column_index: 2`
                               #
-                              #   Sheet1 == sheet_id:0
+                              #   `Sheet1 == sheet_id:0`
                               #
                               # The start index must always be less than or equal to the end index.
                               # If the start index equals the end index, then the range is empty.
@@ -21219,36 +21240,36 @@
             "title": "A String", # The name of the filter view.
             "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "filterViewId": 42, # The ID of the filter view.
             "range": { # A range on a sheet. # The range this filter view covers.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -21270,7 +21291,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -21315,24 +21336,24 @@
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -21351,12 +21372,12 @@
             "description": "A String", # The description of this protected range.
             "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
             "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                 # This field is only visible to users with edit access to the protected
                 # range and the document.
-                # Editors are not supported with warningOnly protection.
+                # Editors are not supported with warning_only protection.
               "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                   # range.  Domain protection is only supported on documents within a domain.
               "users": [ # The email addresses of users with edit access to the protected range.
@@ -21368,12 +21389,12 @@
             },
             "protectedRangeId": 42, # The ID of the protected range.
                 # This field is read-only.
-            "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+            "warningOnly": True or False, # True if this protected range will show a warning when editing.
                 # Warning-based protection means that every user can edit data in the
                 # protected range, except editing will prompt a warning asking the user
                 # to confirm the edit.
                 #
-                # When warning: if this field is true, then editors is ignored.
+                # When writing: if this field is true, then editors is ignored.
                 # Additionally, if this field is changed from true to false and the
                 # `editors` field is not set (nor included in the field mask), then
                 # the editors will be set to all the editors in the document.
@@ -21381,31 +21402,31 @@
                 # The range may be fully unbounded, in which case this is considered
                 # a protected sheet.
                 #
-                # When writing, only one of range or namedRangeId
+                # When writing, only one of range or named_range_id
                 # may be set.
                 # All indexes are zero-based.
                 # Indexes are half open, e.g the start index is inclusive
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -21430,7 +21451,7 @@
           { # Data in the grid, as well as metadata about the dimensions.
             "startRow": 42, # The first row this GridData refers to, zero-based.
             "rowMetadata": [ # Metadata about the requested rows in the grid, starting with the row
-                # in startRow.
+                # in start_row.
               { # Properties about a dimension.
                 "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                 "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -21440,7 +21461,7 @@
             ],
             "startColumn": 42, # The first column this GridData refers to, zero-based.
             "columnMetadata": [ # Metadata about the requested columns in the grid, starting with the column
-                # in startColumn.
+                # in start_column.
               { # Properties about a dimension.
                 "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                 "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -21451,15 +21472,15 @@
             "rowData": [ # The data in the grid, one entry per row,
                 # starting with the row in startRow.
                 # The values in RowData will correspond to columns starting
-                # at startColumn.
+                # at start_column.
               { # Data about each cell in a row.
                 "values": [ # The values in the row, one per column.
                   { # Data about a specific cell.
                     "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                         # is computed dynamically based on its data, grouping, filters, values,
-                        # etc... Only the top-left cell of the pivot table contains the pivot table
+                        # etc. Only the top-left cell of the pivot table contains the pivot table
                         # definition. The other cells will contain the calculated values of the
-                        # results of the pivot in their effectiveValue fields.
+                        # results of the pivot in their effective_value fields.
                       "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                           # or vertically (as rows).
                       "rows": [ # Each row grouping in the pivot table.
@@ -21518,13 +21539,13 @@
                                 },
                               },
                             ],
-                            "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                            "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                 # grouping should be sorted by.
                           },
                           "sortOrder": "A String", # The order the values in this group should be sorted.
                           "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                               #
-                              # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                              # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                               # means this group refers to column `C`, whereas the offset `1` would refer
                               # to column `D`.
                         },
@@ -21535,24 +21556,24 @@
                           # and the end index is exclusive -- [start_index, end_index).
                           # Missing indexes indicate the range is unbounded on that side.
                           #
-                          # For example, if "Sheet1" is grid ID 0, then:
+                          # For example, if `"Sheet1"` is sheet ID 0, then:
                           #
-                          #   Sheet1!A1:A1 == sheet_id: 0,
+                          #   `Sheet1!A1:A1 == sheet_id: 0,
                           #                   start_row_index: 0, end_row_index: 1,
-                          #                   start_column_index: 0, end_column_index: 1
+                          #                   start_column_index: 0, end_column_index: 1`
                           #
-                          #   Sheet1!A3:B4 == sheet_id: 0,
+                          #   `Sheet1!A3:B4 == sheet_id: 0,
                           #                   start_row_index: 2, end_row_index: 4,
-                          #                   start_column_index: 0, end_column_index: 2
+                          #                   start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A:B == sheet_id: 0,
-                          #                 start_column_index: 0, end_column_index: 2
+                          #   `Sheet1!A:B == sheet_id: 0,
+                          #                 start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1!A5:B == sheet_id: 0,
+                          #   `Sheet1!A5:B == sheet_id: 0,
                           #                  start_row_index: 4,
-                          #                  start_column_index: 0, end_column_index: 2
+                          #                  start_column_index: 0, end_column_index: 2`
                           #
-                          #   Sheet1 == sheet_id:0
+                          #   `Sheet1 == sheet_id:0`
                           #
                           # The start index must always be less than or equal to the end index.
                           # If the start index equals the end index, then the range is empty.
@@ -21576,7 +21597,7 @@
                               # is not supported.
                           "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                               #
-                              # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                              # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                               # means this value refers to column `C`, whereas the offset `1` would
                               # refer to column `D`.
                           "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -21589,7 +21610,7 @@
                           # The map's key is the column offset of the source range that you want to
                           # filter, and the value is the criteria for that column.
                           #
-                          # For example, if the source was `C10:E15', a key of `0` will have the filter
+                          # For example, if the source was `C10:E15`, a key of `0` will have the filter
                           # for column `C`, whereas the key `1` is for column `D`.
                         "a_key": { # Criteria for showing/hiding rows in a pivot table.
                           "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -21653,13 +21674,13 @@
                                 },
                               },
                             ],
-                            "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                            "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                 # grouping should be sorted by.
                           },
                           "sortOrder": "A String", # The order the values in this group should be sorted.
                           "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                               #
-                              # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                              # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                               # means this group refers to column `C`, whereas the offset `1` would refer
                               # to column `D`.
                         },
@@ -21717,9 +21738,10 @@
                         # not be written.
                         # This field is read-only.
                       "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                          # When updating, all fields must be set.
-                        "pattern": "A String", # Pattern string used for formatting.
+                        "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                            # the user's locale will be used if necessary for the given type.
                         "type": "A String", # The type of the number format.
+                            # When writing, this field must be set.
                       },
                       "textDirection": "A String", # The direction of the text in the cell.
                       "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -21729,7 +21751,7 @@
                         "bottom": 42, # The bottom padding of the cell.
                         "left": 42, # The left padding of the cell.
                       },
-                      "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                      "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                       "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                           # for simplicity of conversion to/from color representations in various
                           # languages over compactness; for example, the fields of this representation
@@ -21859,7 +21881,7 @@
                         "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
-                      "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                      "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                       "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                           # Absent values indicate that the field isn't specified.
                         "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -22131,7 +22153,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "right": { # A border along a cell. # The right border of the cell.
@@ -22265,7 +22287,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -22399,7 +22421,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "left": { # A border along a cell. # The left border of the cell.
@@ -22533,7 +22555,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                       },
@@ -22543,9 +22565,10 @@
                         #
                         # When writing, the new format will be merged with the existing format.
                       "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                          # When updating, all fields must be set.
-                        "pattern": "A String", # Pattern string used for formatting.
+                        "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                            # the user's locale will be used if necessary for the given type.
                         "type": "A String", # The type of the number format.
+                            # When writing, this field must be set.
                       },
                       "textDirection": "A String", # The direction of the text in the cell.
                       "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -22555,7 +22578,7 @@
                         "bottom": 42, # The bottom padding of the cell.
                         "left": 42, # The left padding of the cell.
                       },
-                      "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                      "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                       "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                           # for simplicity of conversion to/from color representations in various
                           # languages over compactness; for example, the fields of this representation
@@ -22685,7 +22708,7 @@
                         "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
-                      "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                      "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                       "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                           # Absent values indicate that the field isn't specified.
                         "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -22957,7 +22980,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "right": { # A border along a cell. # The right border of the cell.
@@ -23091,7 +23114,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -23225,7 +23248,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                         "left": { # A border along a cell. # The left border of the cell.
@@ -23359,7 +23382,7 @@
                             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                           },
                           "width": 42, # The width of the border, in pixels.
-                              # Border widths must be between 0 and 3 pixels.
+                              # Border widths must be between 0 and 3 pixels, inclusive.
                           "style": "A String", # The style of the border.
                         },
                       },
@@ -23398,15 +23421,17 @@
                         ],
                       },
                     },
-                    "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+                    "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                        # on user entered strings, not formulas, bools, or numbers.
                         # Runs start at specific indexes in the text and continue until the next
                         # run. Properties of a run will continue unless explicitly changed
                         # in a subsequent run (and properties of the first run will continue
                         # the properties of the cell unless explicitly changed).
                         #
-                        # When writing, the new runs will overwrite any prior runs.
-                      { # A run of a text format. The format of this run continues until explicitly
-                          # overridden in the next run.
+                        # When writing, the new runs will overwrite any prior runs.  When writing a
+                        # new user_entered_value, previous runs will be erased.
+                      { # A run of a text format. The format of this run continues until the start
+                          # index of the next run.
                           # When updating, all fields must be set.
                         "startIndex": 42, # The character index where this run starts.
                         "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.
@@ -23731,24 +23756,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -23765,22 +23790,27 @@
       ],
       "properties": { # Properties of a spreadsheet. # Overall properties of a spreadsheet.
         "locale": "A String", # The locale of the spreadsheet in one of the following formats:
+            #
             # * an ISO 639-1 language code such as `en`
+            #
             # * an ISO 639-2 language code such as `fil`, if no 639-1 code exists
+            #
             # * a combination of the ISO language code and country code, such as `en_US`
+            #
             # Note: when updating this field, not all locales/languages are supported.
         "timeZone": "A String", # The time zone of the spreadsheet, in CLDR format such as
             # `America/New_York`. If the time zone isn't recognized, this may
             # be a custom time zone such as `GMT-07:00`.
         "autoRecalc": "A String", # The amount of time to wait before volatile functions are recalculated.
         "defaultFormat": { # The format of a cell. # The default format of all cells in the spreadsheet.
-            # CellData.effectiveFormat will not be set if the cell's format is equal
-            # to this default format.
+            # CellData.effectiveFormat will not be set if the
+            # cell's format is equal to this default format.
             # This field is read-only.
           "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-              # When updating, all fields must be set.
-            "pattern": "A String", # Pattern string used for formatting.
+            "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                # the user's locale will be used if necessary for the given type.
             "type": "A String", # The type of the number format.
+                # When writing, this field must be set.
           },
           "textDirection": "A String", # The direction of the text in the cell.
           "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -23790,7 +23820,7 @@
             "bottom": 42, # The bottom padding of the cell.
             "left": 42, # The left padding of the cell.
           },
-          "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+          "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
           "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
               # for simplicity of conversion to/from color representations in various
               # languages over compactness; for example, the fields of this representation
@@ -23920,7 +23950,7 @@
             "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
           },
-          "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+          "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
           "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
               # Absent values indicate that the field isn't specified.
             "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -24192,7 +24222,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "right": { # A border along a cell. # The right border of the cell.
@@ -24326,7 +24356,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -24460,7 +24490,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "left": { # A border along a cell. # The left border of the cell.
@@ -24594,7 +24624,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
           },
@@ -24614,24 +24644,24 @@
                     # and the end index is exclusive -- [start_index, end_index).
                     # Missing indexes indicate the range is unbounded on that side.
                     #
-                    # For example, if "Sheet1" is grid ID 0, then:
+                    # For example, if `"Sheet1"` is sheet ID 0, then:
                     #
-                    #   Sheet1!A1:A1 == sheet_id: 0,
+                    #   `Sheet1!A1:A1 == sheet_id: 0,
                     #                   start_row_index: 0, end_row_index: 1,
-                    #                   start_column_index: 0, end_column_index: 1
+                    #                   start_column_index: 0, end_column_index: 1`
                     #
-                    #   Sheet1!A3:B4 == sheet_id: 0,
+                    #   `Sheet1!A3:B4 == sheet_id: 0,
                     #                   start_row_index: 2, end_row_index: 4,
-                    #                   start_column_index: 0, end_column_index: 2
+                    #                   start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A:B == sheet_id: 0,
-                    #                 start_column_index: 0, end_column_index: 2
+                    #   `Sheet1!A:B == sheet_id: 0,
+                    #                 start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A5:B == sheet_id: 0,
+                    #   `Sheet1!A5:B == sheet_id: 0,
                     #                  start_row_index: 4,
-                    #                  start_column_index: 0, end_column_index: 2
+                    #                  start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1 == sheet_id:0
+                    #   `Sheet1 == sheet_id:0`
                     #
                     # The start index must always be less than or equal to the end index.
                     # If the start index equals the end index, then the range is empty.
@@ -24678,9 +24708,10 @@
                     # foreground color &
                     # background color.
                   "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                      # When updating, all fields must be set.
-                    "pattern": "A String", # Pattern string used for formatting.
+                    "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                        # the user's locale will be used if necessary for the given type.
                     "type": "A String", # The type of the number format.
+                        # When writing, this field must be set.
                   },
                   "textDirection": "A String", # The direction of the text in the cell.
                   "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -24690,7 +24721,7 @@
                     "bottom": 42, # The bottom padding of the cell.
                     "left": 42, # The left padding of the cell.
                   },
-                  "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                  "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                   "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                       # for simplicity of conversion to/from color representations in various
                       # languages over compactness; for example, the fields of this representation
@@ -24820,7 +24851,7 @@
                     "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
-                  "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                  "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                   "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                       # Absent values indicate that the field isn't specified.
                     "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -25092,7 +25123,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "right": { # A border along a cell. # The right border of the cell.
@@ -25226,7 +25257,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -25360,7 +25391,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "left": { # A border along a cell. # The left border of the cell.
@@ -25494,7 +25525,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                   },
@@ -25505,7 +25536,7 @@
                   # the interpolation points listed. The format of a cell will vary
                   # based on its contents as compared to the values of the interpolation
                   # points.
-                "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+                "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -25642,7 +25673,7 @@
                       # Unused if type is MIN or
                       # MAX.
                 },
-                "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+                "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -25779,7 +25810,7 @@
                       # Unused if type is MIN or
                       # MAX.
                 },
-                "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+                "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -25926,24 +25957,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -25963,24 +25994,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -26002,7 +26033,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -26044,7 +26075,7 @@
                     # is chosen for you. Used only when writing.
                 "sheetId": 42, # The sheet this is on. Set only if the embedded object
                     # is on its own sheet. Must be non-negative.
-                "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+                "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
                   "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                       # All indexes are zero-based.
                     "rowIndex": 42, # The row index of the coordinate.
@@ -26061,9 +26092,6 @@
               },
               "spec": { # The specifications of a chart. # The specification of the chart.
                 "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                    # This value is only meaningful if the
-                    # ChartData.sourceRange
-                    # is used for a domain or series.
                 "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
                   "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                     "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -26090,24 +26118,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -26147,24 +26175,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -26184,7 +26212,8 @@
                   "pieHole": 3.14, # The size of the hole in the pie chart.
                 },
                 "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                    # See BasicChartType for the list of all charts this supports.
+                    # See BasicChartType for the list of all
+                    # charts this supports.
                     # of charts this supports.
                   "headerCount": 42, # The number of rows or columns in the data that are "headers".
                       # If not set, Google Sheets will guess how many rows are headers based
@@ -26221,24 +26250,24 @@
                                 # and the end index is exclusive -- [start_index, end_index).
                                 # Missing indexes indicate the range is unbounded on that side.
                                 #
-                                # For example, if "Sheet1" is grid ID 0, then:
+                                # For example, if `"Sheet1"` is sheet ID 0, then:
                                 #
-                                #   Sheet1!A1:A1 == sheet_id: 0,
+                                #   `Sheet1!A1:A1 == sheet_id: 0,
                                 #                   start_row_index: 0, end_row_index: 1,
-                                #                   start_column_index: 0, end_column_index: 1
+                                #                   start_column_index: 0, end_column_index: 1`
                                 #
-                                #   Sheet1!A3:B4 == sheet_id: 0,
+                                #   `Sheet1!A3:B4 == sheet_id: 0,
                                 #                   start_row_index: 2, end_row_index: 4,
-                                #                   start_column_index: 0, end_column_index: 2
+                                #                   start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A:B == sheet_id: 0,
-                                #                 start_column_index: 0, end_column_index: 2
+                                #   `Sheet1!A:B == sheet_id: 0,
+                                #                 start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A5:B == sheet_id: 0,
+                                #   `Sheet1!A5:B == sheet_id: 0,
                                 #                  start_row_index: 4,
-                                #                  start_column_index: 0, end_column_index: 2
+                                #                  start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1 == sheet_id:0
+                                #   `Sheet1 == sheet_id:0`
                                 #
                                 # The start index must always be less than or equal to the end index.
                                 # If the start index equals the end index, then the range is empty.
@@ -26274,7 +26303,7 @@
                     { # The domain of a chart.
                         # For example, if charting stock prices over time, this would be the date.
                       "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                          # this be the data representing the dates.
+                          # this is the data representing the dates.
                         "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                           "sources": [ # The ranges of data for a series or domain.
                               # Exactly one dimension must have a length of 1,
@@ -26299,24 +26328,24 @@
                                 # and the end index is exclusive -- [start_index, end_index).
                                 # Missing indexes indicate the range is unbounded on that side.
                                 #
-                                # For example, if "Sheet1" is grid ID 0, then:
+                                # For example, if `"Sheet1"` is sheet ID 0, then:
                                 #
-                                #   Sheet1!A1:A1 == sheet_id: 0,
+                                #   `Sheet1!A1:A1 == sheet_id: 0,
                                 #                   start_row_index: 0, end_row_index: 1,
-                                #                   start_column_index: 0, end_column_index: 1
+                                #                   start_column_index: 0, end_column_index: 1`
                                 #
-                                #   Sheet1!A3:B4 == sheet_id: 0,
+                                #   `Sheet1!A3:B4 == sheet_id: 0,
                                 #                   start_row_index: 2, end_row_index: 4,
-                                #                   start_column_index: 0, end_column_index: 2
+                                #                   start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A:B == sheet_id: 0,
-                                #                 start_column_index: 0, end_column_index: 2
+                                #   `Sheet1!A:B == sheet_id: 0,
+                                #                 start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A5:B == sheet_id: 0,
+                                #   `Sheet1!A5:B == sheet_id: 0,
                                 #                  start_row_index: 4,
-                                #                  start_column_index: 0, end_column_index: 2
+                                #                  start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1 == sheet_id:0
+                                #   `Sheet1 == sheet_id:0`
                                 #
                                 # The start index must always be less than or equal to the end index.
                                 # If the start index equals the end index, then the range is empty.
@@ -26492,36 +26521,36 @@
               "title": "A String", # The name of the filter view.
               "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
               "filterViewId": 42, # The ID of the filter view.
               "range": { # A range on a sheet. # The range this filter view covers.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
                   # All indexes are zero-based.
                   # Indexes are half open, e.g the start index is inclusive
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -26543,7 +26572,7 @@
               "criteria": { # The criteria for showing/hiding values per column.
                   # The map's key is the column index, and the value is the criteria for
                   # that column.
-                "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+                "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                   "hiddenValues": [ # Values that should be hidden.
                     "A String",
                   ],
@@ -26588,24 +26617,24 @@
                     # and the end index is exclusive -- [start_index, end_index).
                     # Missing indexes indicate the range is unbounded on that side.
                     #
-                    # For example, if "Sheet1" is grid ID 0, then:
+                    # For example, if `"Sheet1"` is sheet ID 0, then:
                     #
-                    #   Sheet1!A1:A1 == sheet_id: 0,
+                    #   `Sheet1!A1:A1 == sheet_id: 0,
                     #                   start_row_index: 0, end_row_index: 1,
-                    #                   start_column_index: 0, end_column_index: 1
+                    #                   start_column_index: 0, end_column_index: 1`
                     #
-                    #   Sheet1!A3:B4 == sheet_id: 0,
+                    #   `Sheet1!A3:B4 == sheet_id: 0,
                     #                   start_row_index: 2, end_row_index: 4,
-                    #                   start_column_index: 0, end_column_index: 2
+                    #                   start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A:B == sheet_id: 0,
-                    #                 start_column_index: 0, end_column_index: 2
+                    #   `Sheet1!A:B == sheet_id: 0,
+                    #                 start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A5:B == sheet_id: 0,
+                    #   `Sheet1!A5:B == sheet_id: 0,
                     #                  start_row_index: 4,
-                    #                  start_column_index: 0, end_column_index: 2
+                    #                  start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1 == sheet_id:0
+                    #   `Sheet1 == sheet_id:0`
                     #
                     # The start index must always be less than or equal to the end index.
                     # If the start index equals the end index, then the range is empty.
@@ -26624,12 +26653,12 @@
               "description": "A String", # The description of this protected range.
               "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
               "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                   # This field is only visible to users with edit access to the protected
                   # range and the document.
-                  # Editors are not supported with warningOnly protection.
+                  # Editors are not supported with warning_only protection.
                 "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                     # range.  Domain protection is only supported on documents within a domain.
                 "users": [ # The email addresses of users with edit access to the protected range.
@@ -26641,12 +26670,12 @@
               },
               "protectedRangeId": 42, # The ID of the protected range.
                   # This field is read-only.
-              "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+              "warningOnly": True or False, # True if this protected range will show a warning when editing.
                   # Warning-based protection means that every user can edit data in the
                   # protected range, except editing will prompt a warning asking the user
                   # to confirm the edit.
                   #
-                  # When warning: if this field is true, then editors is ignored.
+                  # When writing: if this field is true, then editors is ignored.
                   # Additionally, if this field is changed from true to false and the
                   # `editors` field is not set (nor included in the field mask), then
                   # the editors will be set to all the editors in the document.
@@ -26654,31 +26683,31 @@
                   # The range may be fully unbounded, in which case this is considered
                   # a protected sheet.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
                   # All indexes are zero-based.
                   # Indexes are half open, e.g the start index is inclusive
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -26703,7 +26732,7 @@
             { # Data in the grid, as well as metadata about the dimensions.
               "startRow": 42, # The first row this GridData refers to, zero-based.
               "rowMetadata": [ # Metadata about the requested rows in the grid, starting with the row
-                  # in startRow.
+                  # in start_row.
                 { # Properties about a dimension.
                   "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                   "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -26713,7 +26742,7 @@
               ],
               "startColumn": 42, # The first column this GridData refers to, zero-based.
               "columnMetadata": [ # Metadata about the requested columns in the grid, starting with the column
-                  # in startColumn.
+                  # in start_column.
                 { # Properties about a dimension.
                   "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                   "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -26724,15 +26753,15 @@
               "rowData": [ # The data in the grid, one entry per row,
                   # starting with the row in startRow.
                   # The values in RowData will correspond to columns starting
-                  # at startColumn.
+                  # at start_column.
                 { # Data about each cell in a row.
                   "values": [ # The values in the row, one per column.
                     { # Data about a specific cell.
                       "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                           # is computed dynamically based on its data, grouping, filters, values,
-                          # etc... Only the top-left cell of the pivot table contains the pivot table
+                          # etc. Only the top-left cell of the pivot table contains the pivot table
                           # definition. The other cells will contain the calculated values of the
-                          # results of the pivot in their effectiveValue fields.
+                          # results of the pivot in their effective_value fields.
                         "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                             # or vertically (as rows).
                         "rows": [ # Each row grouping in the pivot table.
@@ -26791,13 +26820,13 @@
                                   },
                                 },
                               ],
-                              "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                              "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                   # grouping should be sorted by.
                             },
                             "sortOrder": "A String", # The order the values in this group should be sorted.
                             "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this group refers to column `C`, whereas the offset `1` would refer
                                 # to column `D`.
                           },
@@ -26808,24 +26837,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -26849,7 +26878,7 @@
                                 # is not supported.
                             "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this value refers to column `C`, whereas the offset `1` would
                                 # refer to column `D`.
                             "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -26862,7 +26891,7 @@
                             # The map's key is the column offset of the source range that you want to
                             # filter, and the value is the criteria for that column.
                             #
-                            # For example, if the source was `C10:E15', a key of `0` will have the filter
+                            # For example, if the source was `C10:E15`, a key of `0` will have the filter
                             # for column `C`, whereas the key `1` is for column `D`.
                           "a_key": { # Criteria for showing/hiding rows in a pivot table.
                             "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -26926,13 +26955,13 @@
                                   },
                                 },
                               ],
-                              "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                              "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                   # grouping should be sorted by.
                             },
                             "sortOrder": "A String", # The order the values in this group should be sorted.
                             "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this group refers to column `C`, whereas the offset `1` would refer
                                 # to column `D`.
                           },
@@ -26990,9 +27019,10 @@
                           # not be written.
                           # This field is read-only.
                         "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                            # When updating, all fields must be set.
-                          "pattern": "A String", # Pattern string used for formatting.
+                          "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                              # the user's locale will be used if necessary for the given type.
                           "type": "A String", # The type of the number format.
+                              # When writing, this field must be set.
                         },
                         "textDirection": "A String", # The direction of the text in the cell.
                         "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -27002,7 +27032,7 @@
                           "bottom": 42, # The bottom padding of the cell.
                           "left": 42, # The left padding of the cell.
                         },
-                        "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                        "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                         "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                             # for simplicity of conversion to/from color representations in various
                             # languages over compactness; for example, the fields of this representation
@@ -27132,7 +27162,7 @@
                           "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
-                        "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                        "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                         "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                             # Absent values indicate that the field isn't specified.
                           "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -27404,7 +27434,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "right": { # A border along a cell. # The right border of the cell.
@@ -27538,7 +27568,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -27672,7 +27702,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "left": { # A border along a cell. # The left border of the cell.
@@ -27806,7 +27836,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                         },
@@ -27816,9 +27846,10 @@
                           #
                           # When writing, the new format will be merged with the existing format.
                         "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                            # When updating, all fields must be set.
-                          "pattern": "A String", # Pattern string used for formatting.
+                          "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                              # the user's locale will be used if necessary for the given type.
                           "type": "A String", # The type of the number format.
+                              # When writing, this field must be set.
                         },
                         "textDirection": "A String", # The direction of the text in the cell.
                         "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -27828,7 +27859,7 @@
                           "bottom": 42, # The bottom padding of the cell.
                           "left": 42, # The left padding of the cell.
                         },
-                        "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                        "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                         "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                             # for simplicity of conversion to/from color representations in various
                             # languages over compactness; for example, the fields of this representation
@@ -27958,7 +27989,7 @@
                           "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
-                        "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                        "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                         "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                             # Absent values indicate that the field isn't specified.
                           "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -28230,7 +28261,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "right": { # A border along a cell. # The right border of the cell.
@@ -28364,7 +28395,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -28498,7 +28529,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "left": { # A border along a cell. # The left border of the cell.
@@ -28632,7 +28663,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                         },
@@ -28671,15 +28702,17 @@
                           ],
                         },
                       },
-                      "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+                      "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                          # on user entered strings, not formulas, bools, or numbers.
                           # Runs start at specific indexes in the text and continue until the next
                           # run. Properties of a run will continue unless explicitly changed
                           # in a subsequent run (and properties of the first run will continue
                           # the properties of the cell unless explicitly changed).
                           #
-                          # When writing, the new runs will overwrite any prior runs.
-                        { # A run of a text format. The format of this run continues until explicitly
-                            # overridden in the next run.
+                          # When writing, the new runs will overwrite any prior runs.  When writing a
+                          # new user_entered_value, previous runs will be erased.
+                        { # A run of a text format. The format of this run continues until the start
+                            # index of the next run.
                             # When updating, all fields must be set.
                           "startIndex": 42, # The character index where this run starts.
                           "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.
@@ -28987,17 +29020,18 @@
 
 <div class="method">
     <code class="details" id="get">get(spreadsheetId, ranges=None, x__xgafv=None, includeGridData=None)</code>
-  <pre>Returns the spreadsheet at the given id.
+  <pre>Returns the spreadsheet at the given ID.
 The caller must specify the spreadsheet ID.
 
 By default, data within grids will not be returned.
-You can include grid data one of two ways: specify a field mask listing
-your desired fields (using the `fields` URL parameter in HTTP,
-or `FieldMaskContext.response_mask` in the request extensions in an RPC),
-or by setting the
-includeGridData URL parameter
-to true.  If a field mask is set, the `includeGridData` parameter is
-ignored.
+You can include grid data one of two ways:
+
+* Specify a field mask listing your desired fields using the `fields` URL
+parameter in HTTP
+
+* Set the includeGridData
+URL parameter to true.  If a field mask is set, the `includeGridData`
+parameter is ignored
 
 For large spreadsheets, it is recommended to retrieve only the specific
 fields of the spreadsheet that you want.
@@ -29033,24 +29067,24 @@
               # and the end index is exclusive -- [start_index, end_index).
               # Missing indexes indicate the range is unbounded on that side.
               #
-              # For example, if "Sheet1" is grid ID 0, then:
+              # For example, if `"Sheet1"` is sheet ID 0, then:
               #
-              #   Sheet1!A1:A1 == sheet_id: 0,
+              #   `Sheet1!A1:A1 == sheet_id: 0,
               #                   start_row_index: 0, end_row_index: 1,
-              #                   start_column_index: 0, end_column_index: 1
+              #                   start_column_index: 0, end_column_index: 1`
               #
-              #   Sheet1!A3:B4 == sheet_id: 0,
+              #   `Sheet1!A3:B4 == sheet_id: 0,
               #                   start_row_index: 2, end_row_index: 4,
-              #                   start_column_index: 0, end_column_index: 2
+              #                   start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A:B == sheet_id: 0,
-              #                 start_column_index: 0, end_column_index: 2
+              #   `Sheet1!A:B == sheet_id: 0,
+              #                 start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1!A5:B == sheet_id: 0,
+              #   `Sheet1!A5:B == sheet_id: 0,
               #                  start_row_index: 4,
-              #                  start_column_index: 0, end_column_index: 2
+              #                  start_column_index: 0, end_column_index: 2`
               #
-              #   Sheet1 == sheet_id:0
+              #   `Sheet1 == sheet_id:0`
               #
               # The start index must always be less than or equal to the end index.
               # If the start index equals the end index, then the range is empty.
@@ -29067,22 +29101,27 @@
       ],
       "properties": { # Properties of a spreadsheet. # Overall properties of a spreadsheet.
         "locale": "A String", # The locale of the spreadsheet in one of the following formats:
+            #
             # * an ISO 639-1 language code such as `en`
+            #
             # * an ISO 639-2 language code such as `fil`, if no 639-1 code exists
+            #
             # * a combination of the ISO language code and country code, such as `en_US`
+            #
             # Note: when updating this field, not all locales/languages are supported.
         "timeZone": "A String", # The time zone of the spreadsheet, in CLDR format such as
             # `America/New_York`. If the time zone isn't recognized, this may
             # be a custom time zone such as `GMT-07:00`.
         "autoRecalc": "A String", # The amount of time to wait before volatile functions are recalculated.
         "defaultFormat": { # The format of a cell. # The default format of all cells in the spreadsheet.
-            # CellData.effectiveFormat will not be set if the cell's format is equal
-            # to this default format.
+            # CellData.effectiveFormat will not be set if the
+            # cell's format is equal to this default format.
             # This field is read-only.
           "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-              # When updating, all fields must be set.
-            "pattern": "A String", # Pattern string used for formatting.
+            "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                # the user's locale will be used if necessary for the given type.
             "type": "A String", # The type of the number format.
+                # When writing, this field must be set.
           },
           "textDirection": "A String", # The direction of the text in the cell.
           "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -29092,7 +29131,7 @@
             "bottom": 42, # The bottom padding of the cell.
             "left": 42, # The left padding of the cell.
           },
-          "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+          "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
           "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
               # for simplicity of conversion to/from color representations in various
               # languages over compactness; for example, the fields of this representation
@@ -29222,7 +29261,7 @@
             "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
             "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
           },
-          "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+          "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
           "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
               # Absent values indicate that the field isn't specified.
             "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -29494,7 +29533,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "right": { # A border along a cell. # The right border of the cell.
@@ -29628,7 +29667,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -29762,7 +29801,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
             "left": { # A border along a cell. # The left border of the cell.
@@ -29896,7 +29935,7 @@
                 "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
               },
               "width": 42, # The width of the border, in pixels.
-                  # Border widths must be between 0 and 3 pixels.
+                  # Border widths must be between 0 and 3 pixels, inclusive.
               "style": "A String", # The style of the border.
             },
           },
@@ -29916,24 +29955,24 @@
                     # and the end index is exclusive -- [start_index, end_index).
                     # Missing indexes indicate the range is unbounded on that side.
                     #
-                    # For example, if "Sheet1" is grid ID 0, then:
+                    # For example, if `"Sheet1"` is sheet ID 0, then:
                     #
-                    #   Sheet1!A1:A1 == sheet_id: 0,
+                    #   `Sheet1!A1:A1 == sheet_id: 0,
                     #                   start_row_index: 0, end_row_index: 1,
-                    #                   start_column_index: 0, end_column_index: 1
+                    #                   start_column_index: 0, end_column_index: 1`
                     #
-                    #   Sheet1!A3:B4 == sheet_id: 0,
+                    #   `Sheet1!A3:B4 == sheet_id: 0,
                     #                   start_row_index: 2, end_row_index: 4,
-                    #                   start_column_index: 0, end_column_index: 2
+                    #                   start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A:B == sheet_id: 0,
-                    #                 start_column_index: 0, end_column_index: 2
+                    #   `Sheet1!A:B == sheet_id: 0,
+                    #                 start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A5:B == sheet_id: 0,
+                    #   `Sheet1!A5:B == sheet_id: 0,
                     #                  start_row_index: 4,
-                    #                  start_column_index: 0, end_column_index: 2
+                    #                  start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1 == sheet_id:0
+                    #   `Sheet1 == sheet_id:0`
                     #
                     # The start index must always be less than or equal to the end index.
                     # If the start index equals the end index, then the range is empty.
@@ -29980,9 +30019,10 @@
                     # foreground color &
                     # background color.
                   "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                      # When updating, all fields must be set.
-                    "pattern": "A String", # Pattern string used for formatting.
+                    "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                        # the user's locale will be used if necessary for the given type.
                     "type": "A String", # The type of the number format.
+                        # When writing, this field must be set.
                   },
                   "textDirection": "A String", # The direction of the text in the cell.
                   "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -29992,7 +30032,7 @@
                     "bottom": 42, # The bottom padding of the cell.
                     "left": 42, # The left padding of the cell.
                   },
-                  "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                  "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                   "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                       # for simplicity of conversion to/from color representations in various
                       # languages over compactness; for example, the fields of this representation
@@ -30122,7 +30162,7 @@
                     "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                     "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                   },
-                  "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                  "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                   "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                       # Absent values indicate that the field isn't specified.
                     "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -30394,7 +30434,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "right": { # A border along a cell. # The right border of the cell.
@@ -30528,7 +30568,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -30662,7 +30702,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                     "left": { # A border along a cell. # The left border of the cell.
@@ -30796,7 +30836,7 @@
                         "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                       },
                       "width": 42, # The width of the border, in pixels.
-                          # Border widths must be between 0 and 3 pixels.
+                          # Border widths must be between 0 and 3 pixels, inclusive.
                       "style": "A String", # The style of the border.
                     },
                   },
@@ -30807,7 +30847,7 @@
                   # the interpolation points listed. The format of a cell will vary
                   # based on its contents as compared to the values of the interpolation
                   # points.
-                "maxpoint": { # A single interpolation point a gradient conditional format. # The final interpolation point.
+                "maxpoint": { # A single interpolation point on a gradient conditional format. # The final interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -30944,7 +30984,7 @@
                       # Unused if type is MIN or
                       # MAX.
                 },
-                "midpoint": { # A single interpolation point a gradient conditional format. # An optional midway interpolation point.
+                "midpoint": { # A single interpolation point on a gradient conditional format. # An optional midway interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -31081,7 +31121,7 @@
                       # Unused if type is MIN or
                       # MAX.
                 },
-                "minpoint": { # A single interpolation point a gradient conditional format. # The starting interpolation point.
+                "minpoint": { # A single interpolation point on a gradient conditional format. # The starting interpolation point.
                     # These pin the gradient color scale according to the color,
                     # type and value chosen.
                   "color": { # Represents a color in the RGBA color space. This representation is designed # The color this interpolation point should use.
@@ -31228,24 +31268,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -31265,24 +31305,24 @@
                 # and the end index is exclusive -- [start_index, end_index).
                 # Missing indexes indicate the range is unbounded on that side.
                 #
-                # For example, if "Sheet1" is grid ID 0, then:
+                # For example, if `"Sheet1"` is sheet ID 0, then:
                 #
-                #   Sheet1!A1:A1 == sheet_id: 0,
+                #   `Sheet1!A1:A1 == sheet_id: 0,
                 #                   start_row_index: 0, end_row_index: 1,
-                #                   start_column_index: 0, end_column_index: 1
+                #                   start_column_index: 0, end_column_index: 1`
                 #
-                #   Sheet1!A3:B4 == sheet_id: 0,
+                #   `Sheet1!A3:B4 == sheet_id: 0,
                 #                   start_row_index: 2, end_row_index: 4,
-                #                   start_column_index: 0, end_column_index: 2
+                #                   start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A:B == sheet_id: 0,
-                #                 start_column_index: 0, end_column_index: 2
+                #   `Sheet1!A:B == sheet_id: 0,
+                #                 start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1!A5:B == sheet_id: 0,
+                #   `Sheet1!A5:B == sheet_id: 0,
                 #                  start_row_index: 4,
-                #                  start_column_index: 0, end_column_index: 2
+                #                  start_column_index: 0, end_column_index: 2`
                 #
-                #   Sheet1 == sheet_id:0
+                #   `Sheet1 == sheet_id:0`
                 #
                 # The start index must always be less than or equal to the end index.
                 # If the start index equals the end index, then the range is empty.
@@ -31304,7 +31344,7 @@
             "criteria": { # The criteria for showing/hiding values per column.
                 # The map's key is the column index, and the value is the criteria for
                 # that column.
-              "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+              "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                 "hiddenValues": [ # Values that should be hidden.
                   "A String",
                 ],
@@ -31346,7 +31386,7 @@
                     # is chosen for you. Used only when writing.
                 "sheetId": 42, # The sheet this is on. Set only if the embedded object
                     # is on its own sheet. Must be non-negative.
-                "overlayPosition": { # The location an object is overlaid on top of a grid. # The position the object is overlaid on top of a grid.
+                "overlayPosition": { # The location an object is overlaid on top of a grid. # The position at which the object is overlaid on top of a grid.
                   "anchorCell": { # A coordinate in a sheet. # The cell the object is anchored to.
                       # All indexes are zero-based.
                     "rowIndex": 42, # The row index of the coordinate.
@@ -31363,9 +31403,6 @@
               },
               "spec": { # The specifications of a chart. # The specification of the chart.
                 "hiddenDimensionStrategy": "A String", # Determines how the charts will use hidden rows or columns.
-                    # This value is only meaningful if the
-                    # ChartData.sourceRange
-                    # is used for a domain or series.
                 "pieChart": { # A <a href="/chart/interactive/docs/gallery/piechart">pie chart</a>. # A pie chart specification.
                   "series": { # The data included in a domain or series. # The data that covers the one and only series of the pie chart.
                     "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
@@ -31392,24 +31429,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -31449,24 +31486,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -31486,7 +31523,8 @@
                   "pieHole": 3.14, # The size of the hole in the pie chart.
                 },
                 "basicChart": { # The specification for a basic chart.  See BasicChartType for the list # A basic chart specification, can be one of many kinds of charts.
-                    # See BasicChartType for the list of all charts this supports.
+                    # See BasicChartType for the list of all
+                    # charts this supports.
                     # of charts this supports.
                   "headerCount": 42, # The number of rows or columns in the data that are "headers".
                       # If not set, Google Sheets will guess how many rows are headers based
@@ -31523,24 +31561,24 @@
                                 # and the end index is exclusive -- [start_index, end_index).
                                 # Missing indexes indicate the range is unbounded on that side.
                                 #
-                                # For example, if "Sheet1" is grid ID 0, then:
+                                # For example, if `"Sheet1"` is sheet ID 0, then:
                                 #
-                                #   Sheet1!A1:A1 == sheet_id: 0,
+                                #   `Sheet1!A1:A1 == sheet_id: 0,
                                 #                   start_row_index: 0, end_row_index: 1,
-                                #                   start_column_index: 0, end_column_index: 1
+                                #                   start_column_index: 0, end_column_index: 1`
                                 #
-                                #   Sheet1!A3:B4 == sheet_id: 0,
+                                #   `Sheet1!A3:B4 == sheet_id: 0,
                                 #                   start_row_index: 2, end_row_index: 4,
-                                #                   start_column_index: 0, end_column_index: 2
+                                #                   start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A:B == sheet_id: 0,
-                                #                 start_column_index: 0, end_column_index: 2
+                                #   `Sheet1!A:B == sheet_id: 0,
+                                #                 start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A5:B == sheet_id: 0,
+                                #   `Sheet1!A5:B == sheet_id: 0,
                                 #                  start_row_index: 4,
-                                #                  start_column_index: 0, end_column_index: 2
+                                #                  start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1 == sheet_id:0
+                                #   `Sheet1 == sheet_id:0`
                                 #
                                 # The start index must always be less than or equal to the end index.
                                 # If the start index equals the end index, then the range is empty.
@@ -31576,7 +31614,7 @@
                     { # The domain of a chart.
                         # For example, if charting stock prices over time, this would be the date.
                       "domain": { # The data included in a domain or series. # The data of the domain. For example, if charting stock prices over time,
-                          # this be the data representing the dates.
+                          # this is the data representing the dates.
                         "sourceRange": { # Source ranges for a chart. # The source ranges of the data.
                           "sources": [ # The ranges of data for a series or domain.
                               # Exactly one dimension must have a length of 1,
@@ -31601,24 +31639,24 @@
                                 # and the end index is exclusive -- [start_index, end_index).
                                 # Missing indexes indicate the range is unbounded on that side.
                                 #
-                                # For example, if "Sheet1" is grid ID 0, then:
+                                # For example, if `"Sheet1"` is sheet ID 0, then:
                                 #
-                                #   Sheet1!A1:A1 == sheet_id: 0,
+                                #   `Sheet1!A1:A1 == sheet_id: 0,
                                 #                   start_row_index: 0, end_row_index: 1,
-                                #                   start_column_index: 0, end_column_index: 1
+                                #                   start_column_index: 0, end_column_index: 1`
                                 #
-                                #   Sheet1!A3:B4 == sheet_id: 0,
+                                #   `Sheet1!A3:B4 == sheet_id: 0,
                                 #                   start_row_index: 2, end_row_index: 4,
-                                #                   start_column_index: 0, end_column_index: 2
+                                #                   start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A:B == sheet_id: 0,
-                                #                 start_column_index: 0, end_column_index: 2
+                                #   `Sheet1!A:B == sheet_id: 0,
+                                #                 start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1!A5:B == sheet_id: 0,
+                                #   `Sheet1!A5:B == sheet_id: 0,
                                 #                  start_row_index: 4,
-                                #                  start_column_index: 0, end_column_index: 2
+                                #                  start_column_index: 0, end_column_index: 2`
                                 #
-                                #   Sheet1 == sheet_id:0
+                                #   `Sheet1 == sheet_id:0`
                                 #
                                 # The start index must always be less than or equal to the end index.
                                 # If the start index equals the end index, then the range is empty.
@@ -31794,36 +31832,36 @@
               "title": "A String", # The name of the filter view.
               "namedRangeId": "A String", # The named range this filter view is backed by, if any.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
               "filterViewId": 42, # The ID of the filter view.
               "range": { # A range on a sheet. # The range this filter view covers.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
                   # All indexes are zero-based.
                   # Indexes are half open, e.g the start index is inclusive
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -31845,7 +31883,7 @@
               "criteria": { # The criteria for showing/hiding values per column.
                   # The map's key is the column index, and the value is the criteria for
                   # that column.
-                "a_key": { # Criteria for showing/hiding rows in a filter, filter view.
+                "a_key": { # Criteria for showing/hiding rows in a filter or filter view.
                   "hiddenValues": [ # Values that should be hidden.
                     "A String",
                   ],
@@ -31890,24 +31928,24 @@
                     # and the end index is exclusive -- [start_index, end_index).
                     # Missing indexes indicate the range is unbounded on that side.
                     #
-                    # For example, if "Sheet1" is grid ID 0, then:
+                    # For example, if `"Sheet1"` is sheet ID 0, then:
                     #
-                    #   Sheet1!A1:A1 == sheet_id: 0,
+                    #   `Sheet1!A1:A1 == sheet_id: 0,
                     #                   start_row_index: 0, end_row_index: 1,
-                    #                   start_column_index: 0, end_column_index: 1
+                    #                   start_column_index: 0, end_column_index: 1`
                     #
-                    #   Sheet1!A3:B4 == sheet_id: 0,
+                    #   `Sheet1!A3:B4 == sheet_id: 0,
                     #                   start_row_index: 2, end_row_index: 4,
-                    #                   start_column_index: 0, end_column_index: 2
+                    #                   start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A:B == sheet_id: 0,
-                    #                 start_column_index: 0, end_column_index: 2
+                    #   `Sheet1!A:B == sheet_id: 0,
+                    #                 start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1!A5:B == sheet_id: 0,
+                    #   `Sheet1!A5:B == sheet_id: 0,
                     #                  start_row_index: 4,
-                    #                  start_column_index: 0, end_column_index: 2
+                    #                  start_column_index: 0, end_column_index: 2`
                     #
-                    #   Sheet1 == sheet_id:0
+                    #   `Sheet1 == sheet_id:0`
                     #
                     # The start index must always be less than or equal to the end index.
                     # If the start index equals the end index, then the range is empty.
@@ -31926,12 +31964,12 @@
               "description": "A String", # The description of this protected range.
               "namedRangeId": "A String", # The named range this protected range is backed by, if any.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
               "editors": { # The editors of a protected range. # The users and groups with edit access to the protected range.
                   # This field is only visible to users with edit access to the protected
                   # range and the document.
-                  # Editors are not supported with warningOnly protection.
+                  # Editors are not supported with warning_only protection.
                 "domainUsersCanEdit": True or False, # True if anyone in the document's domain has edit access to the protected
                     # range.  Domain protection is only supported on documents within a domain.
                 "users": [ # The email addresses of users with edit access to the protected range.
@@ -31943,12 +31981,12 @@
               },
               "protectedRangeId": 42, # The ID of the protected range.
                   # This field is read-only.
-              "warningOnly": True or False, # True if this this protected range will show a warning when editing.
+              "warningOnly": True or False, # True if this protected range will show a warning when editing.
                   # Warning-based protection means that every user can edit data in the
                   # protected range, except editing will prompt a warning asking the user
                   # to confirm the edit.
                   #
-                  # When warning: if this field is true, then editors is ignored.
+                  # When writing: if this field is true, then editors is ignored.
                   # Additionally, if this field is changed from true to false and the
                   # `editors` field is not set (nor included in the field mask), then
                   # the editors will be set to all the editors in the document.
@@ -31956,31 +31994,31 @@
                   # The range may be fully unbounded, in which case this is considered
                   # a protected sheet.
                   #
-                  # When writing, only one of range or namedRangeId
+                  # When writing, only one of range or named_range_id
                   # may be set.
                   # All indexes are zero-based.
                   # Indexes are half open, e.g the start index is inclusive
                   # and the end index is exclusive -- [start_index, end_index).
                   # Missing indexes indicate the range is unbounded on that side.
                   #
-                  # For example, if "Sheet1" is grid ID 0, then:
+                  # For example, if `"Sheet1"` is sheet ID 0, then:
                   #
-                  #   Sheet1!A1:A1 == sheet_id: 0,
+                  #   `Sheet1!A1:A1 == sheet_id: 0,
                   #                   start_row_index: 0, end_row_index: 1,
-                  #                   start_column_index: 0, end_column_index: 1
+                  #                   start_column_index: 0, end_column_index: 1`
                   #
-                  #   Sheet1!A3:B4 == sheet_id: 0,
+                  #   `Sheet1!A3:B4 == sheet_id: 0,
                   #                   start_row_index: 2, end_row_index: 4,
-                  #                   start_column_index: 0, end_column_index: 2
+                  #                   start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A:B == sheet_id: 0,
-                  #                 start_column_index: 0, end_column_index: 2
+                  #   `Sheet1!A:B == sheet_id: 0,
+                  #                 start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1!A5:B == sheet_id: 0,
+                  #   `Sheet1!A5:B == sheet_id: 0,
                   #                  start_row_index: 4,
-                  #                  start_column_index: 0, end_column_index: 2
+                  #                  start_column_index: 0, end_column_index: 2`
                   #
-                  #   Sheet1 == sheet_id:0
+                  #   `Sheet1 == sheet_id:0`
                   #
                   # The start index must always be less than or equal to the end index.
                   # If the start index equals the end index, then the range is empty.
@@ -32005,7 +32043,7 @@
             { # Data in the grid, as well as metadata about the dimensions.
               "startRow": 42, # The first row this GridData refers to, zero-based.
               "rowMetadata": [ # Metadata about the requested rows in the grid, starting with the row
-                  # in startRow.
+                  # in start_row.
                 { # Properties about a dimension.
                   "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                   "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -32015,7 +32053,7 @@
               ],
               "startColumn": 42, # The first column this GridData refers to, zero-based.
               "columnMetadata": [ # Metadata about the requested columns in the grid, starting with the column
-                  # in startColumn.
+                  # in start_column.
                 { # Properties about a dimension.
                   "pixelSize": 42, # The height (if a row) or width (if a column) of the dimension in pixels.
                   "hiddenByUser": True or False, # True if this dimension is explicitly hidden.
@@ -32026,15 +32064,15 @@
               "rowData": [ # The data in the grid, one entry per row,
                   # starting with the row in startRow.
                   # The values in RowData will correspond to columns starting
-                  # at startColumn.
+                  # at start_column.
                 { # Data about each cell in a row.
                   "values": [ # The values in the row, one per column.
                     { # Data about a specific cell.
                       "pivotTable": { # A pivot table. # A pivot table anchored at this cell. The size of pivot table itself
                           # is computed dynamically based on its data, grouping, filters, values,
-                          # etc... Only the top-left cell of the pivot table contains the pivot table
+                          # etc. Only the top-left cell of the pivot table contains the pivot table
                           # definition. The other cells will contain the calculated values of the
-                          # results of the pivot in their effectiveValue fields.
+                          # results of the pivot in their effective_value fields.
                         "valueLayout": "A String", # Whether values should be listed horizontally (as columns)
                             # or vertically (as rows).
                         "rows": [ # Each row grouping in the pivot table.
@@ -32093,13 +32131,13 @@
                                   },
                                 },
                               ],
-                              "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                              "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                   # grouping should be sorted by.
                             },
                             "sortOrder": "A String", # The order the values in this group should be sorted.
                             "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this group refers to column `C`, whereas the offset `1` would refer
                                 # to column `D`.
                           },
@@ -32110,24 +32148,24 @@
                             # and the end index is exclusive -- [start_index, end_index).
                             # Missing indexes indicate the range is unbounded on that side.
                             #
-                            # For example, if "Sheet1" is grid ID 0, then:
+                            # For example, if `"Sheet1"` is sheet ID 0, then:
                             #
-                            #   Sheet1!A1:A1 == sheet_id: 0,
+                            #   `Sheet1!A1:A1 == sheet_id: 0,
                             #                   start_row_index: 0, end_row_index: 1,
-                            #                   start_column_index: 0, end_column_index: 1
+                            #                   start_column_index: 0, end_column_index: 1`
                             #
-                            #   Sheet1!A3:B4 == sheet_id: 0,
+                            #   `Sheet1!A3:B4 == sheet_id: 0,
                             #                   start_row_index: 2, end_row_index: 4,
-                            #                   start_column_index: 0, end_column_index: 2
+                            #                   start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A:B == sheet_id: 0,
-                            #                 start_column_index: 0, end_column_index: 2
+                            #   `Sheet1!A:B == sheet_id: 0,
+                            #                 start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1!A5:B == sheet_id: 0,
+                            #   `Sheet1!A5:B == sheet_id: 0,
                             #                  start_row_index: 4,
-                            #                  start_column_index: 0, end_column_index: 2
+                            #                  start_column_index: 0, end_column_index: 2`
                             #
-                            #   Sheet1 == sheet_id:0
+                            #   `Sheet1 == sheet_id:0`
                             #
                             # The start index must always be less than or equal to the end index.
                             # If the start index equals the end index, then the range is empty.
@@ -32151,7 +32189,7 @@
                                 # is not supported.
                             "sourceColumnOffset": 42, # The column offset of the source range that this value reads from.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this value refers to column `C`, whereas the offset `1` would
                                 # refer to column `D`.
                             "name": "A String", # A name to use for the value. This is only used if formula was set.
@@ -32164,7 +32202,7 @@
                             # The map's key is the column offset of the source range that you want to
                             # filter, and the value is the criteria for that column.
                             #
-                            # For example, if the source was `C10:E15', a key of `0` will have the filter
+                            # For example, if the source was `C10:E15`, a key of `0` will have the filter
                             # for column `C`, whereas the key `1` is for column `D`.
                           "a_key": { # Criteria for showing/hiding rows in a pivot table.
                             "visibleValues": [ # Values that should be included.  Values not listed here are excluded.
@@ -32228,13 +32266,13 @@
                                   },
                                 },
                               ],
-                              "valuesIndex": 42, # The offset in the [PivotTable.values] list which the values in this
+                              "valuesIndex": 42, # The offset in the PivotTable.values list which the values in this
                                   # grouping should be sorted by.
                             },
                             "sortOrder": "A String", # The order the values in this group should be sorted.
                             "sourceColumnOffset": 42, # The column offset of the source range that this grouping is based on.
                                 #
-                                # For example, if the source was `C10:E15', a `sourceColumnOffset` of `0`
+                                # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
                                 # means this group refers to column `C`, whereas the offset `1` would refer
                                 # to column `D`.
                           },
@@ -32292,9 +32330,10 @@
                           # not be written.
                           # This field is read-only.
                         "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                            # When updating, all fields must be set.
-                          "pattern": "A String", # Pattern string used for formatting.
+                          "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                              # the user's locale will be used if necessary for the given type.
                           "type": "A String", # The type of the number format.
+                              # When writing, this field must be set.
                         },
                         "textDirection": "A String", # The direction of the text in the cell.
                         "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -32304,7 +32343,7 @@
                           "bottom": 42, # The bottom padding of the cell.
                           "left": 42, # The left padding of the cell.
                         },
-                        "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                        "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                         "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                             # for simplicity of conversion to/from color representations in various
                             # languages over compactness; for example, the fields of this representation
@@ -32434,7 +32473,7 @@
                           "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
-                        "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                        "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                         "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                             # Absent values indicate that the field isn't specified.
                           "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -32706,7 +32745,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "right": { # A border along a cell. # The right border of the cell.
@@ -32840,7 +32879,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -32974,7 +33013,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "left": { # A border along a cell. # The left border of the cell.
@@ -33108,7 +33147,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                         },
@@ -33118,9 +33157,10 @@
                           #
                           # When writing, the new format will be merged with the existing format.
                         "numberFormat": { # The number format of a cell. # A format describing how number values should be represented to the user.
-                            # When updating, all fields must be set.
-                          "pattern": "A String", # Pattern string used for formatting.
+                          "pattern": "A String", # Pattern string used for formatting.  If not set, a default pattern based on
+                              # the user's locale will be used if necessary for the given type.
                           "type": "A String", # The type of the number format.
+                              # When writing, this field must be set.
                         },
                         "textDirection": "A String", # The direction of the text in the cell.
                         "padding": { # The amount of padding around the cell, in pixels. # The padding of the cell.
@@ -33130,7 +33170,7 @@
                           "bottom": 42, # The bottom padding of the cell.
                           "left": 42, # The left padding of the cell.
                         },
-                        "horizontalAlignment": "A String", # The horizontal alignment of the value in cell.
+                        "horizontalAlignment": "A String", # The horizontal alignment of the value in the cell.
                         "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # The background color of the cell.
                             # for simplicity of conversion to/from color representations in various
                             # languages over compactness; for example, the fields of this representation
@@ -33260,7 +33300,7 @@
                           "green": 3.14, # The amount of green in the color as a value in the interval [0, 1].
                           "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                         },
-                        "verticalAlignment": "A String", # The vertical alignment of the value in cell.
+                        "verticalAlignment": "A String", # The vertical alignment of the value in the cell.
                         "textFormat": { # The format of a run of text in a cell. # The format of the text in the cell (unless overridden by a format run).
                             # Absent values indicate that the field isn't specified.
                           "foregroundColor": { # Represents a color in the RGBA color space. This representation is designed # The foreground color of the text.
@@ -33532,7 +33572,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "right": { # A border along a cell. # The right border of the cell.
@@ -33666,7 +33706,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "bottom": { # A border along a cell. # The bottom border of the cell.
@@ -33800,7 +33840,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                           "left": { # A border along a cell. # The left border of the cell.
@@ -33934,7 +33974,7 @@
                               "red": 3.14, # The amount of red in the color as a value in the interval [0, 1].
                             },
                             "width": 42, # The width of the border, in pixels.
-                                # Border widths must be between 0 and 3 pixels.
+                                # Border widths must be between 0 and 3 pixels, inclusive.
                             "style": "A String", # The style of the border.
                           },
                         },
@@ -33973,15 +34013,17 @@
                           ],
                         },
                       },
-                      "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.
+                      "textFormatRuns": [ # Runs of rich text applied to subsections of the cell.  Runs are only valid
+                          # on user entered strings, not formulas, bools, or numbers.
                           # Runs start at specific indexes in the text and continue until the next
                           # run. Properties of a run will continue unless explicitly changed
                           # in a subsequent run (and properties of the first run will continue
                           # the properties of the cell unless explicitly changed).
                           #
-                          # When writing, the new runs will overwrite any prior runs.
-                        { # A run of a text format. The format of this run continues until explicitly
-                            # overridden in the next run.
+                          # When writing, the new runs will overwrite any prior runs.  When writing a
+                          # new user_entered_value, previous runs will be erased.
+                        { # A run of a text format. The format of this run continues until the start
+                            # index of the next run.
                             # When updating, all fields must be set.
                           "startIndex": 42, # The character index where this run starts.
                           "format": { # The format of a run of text in a cell. # The format of this run.  Absent values inherit the cell's format.