diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`0.1.1`
+`0.2.0`
 
 
 ## Description
diff --git a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Append.hs b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Append.hs
--- a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Append.hs
+++ b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Append.hs
@@ -53,7 +53,10 @@
     , svaInsertDataOption
     , svaBearerToken
     , svaRange
+    , svaIncludeValuesInResponse
+    , svaResponseDateTimeRenderOption
     , svaCallback
+    , svaResponseValueRenderOption
     ) where
 
 import           Network.Google.Prelude
@@ -75,10 +78,15 @@
                          QueryParam "valueInputOption" Text :>
                            QueryParam "insertDataOption" Text :>
                              QueryParam "bearer_token" Text :>
-                               QueryParam "callback" Text :>
-                                 QueryParam "alt" AltJSON :>
-                                   ReqBody '[JSON] ValueRange :>
-                                     Post '[JSON] AppendValuesResponse
+                               QueryParam "includeValuesInResponse" Bool :>
+                                 QueryParam "responseDateTimeRenderOption" Text
+                                   :>
+                                   QueryParam "callback" Text :>
+                                     QueryParam "responseValueRenderOption" Text
+                                       :>
+                                       QueryParam "alt" AltJSON :>
+                                         ReqBody '[JSON] ValueRange :>
+                                           Post '[JSON] AppendValuesResponse
 
 -- | Appends values to a spreadsheet. The input range is used to search for
 -- existing data and find a \"table\" within that range. Values will be
@@ -93,18 +101,21 @@
 --
 -- /See:/ 'spreadsheetsValuesAppend' smart constructor.
 data SpreadsheetsValuesAppend = SpreadsheetsValuesAppend'
-    { _svaXgafv            :: !(Maybe Xgafv)
-    , _svaUploadProtocol   :: !(Maybe Text)
-    , _svaPp               :: !Bool
-    , _svaAccessToken      :: !(Maybe Text)
-    , _svaSpreadsheetId    :: !Text
-    , _svaUploadType       :: !(Maybe Text)
-    , _svaValueInputOption :: !(Maybe Text)
-    , _svaPayload          :: !ValueRange
-    , _svaInsertDataOption :: !(Maybe Text)
-    , _svaBearerToken      :: !(Maybe Text)
-    , _svaRange            :: !Text
-    , _svaCallback         :: !(Maybe Text)
+    { _svaXgafv                        :: !(Maybe Xgafv)
+    , _svaUploadProtocol               :: !(Maybe Text)
+    , _svaPp                           :: !Bool
+    , _svaAccessToken                  :: !(Maybe Text)
+    , _svaSpreadsheetId                :: !Text
+    , _svaUploadType                   :: !(Maybe Text)
+    , _svaValueInputOption             :: !(Maybe Text)
+    , _svaPayload                      :: !ValueRange
+    , _svaInsertDataOption             :: !(Maybe Text)
+    , _svaBearerToken                  :: !(Maybe Text)
+    , _svaRange                        :: !Text
+    , _svaIncludeValuesInResponse      :: !(Maybe Bool)
+    , _svaResponseDateTimeRenderOption :: !(Maybe Text)
+    , _svaCallback                     :: !(Maybe Text)
+    , _svaResponseValueRenderOption    :: !(Maybe Text)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'SpreadsheetsValuesAppend' with the minimum fields required to make a request.
@@ -133,7 +144,13 @@
 --
 -- * 'svaRange'
 --
+-- * 'svaIncludeValuesInResponse'
+--
+-- * 'svaResponseDateTimeRenderOption'
+--
 -- * 'svaCallback'
+--
+-- * 'svaResponseValueRenderOption'
 spreadsheetsValuesAppend
     :: Text -- ^ 'svaSpreadsheetId'
     -> ValueRange -- ^ 'svaPayload'
@@ -152,7 +169,10 @@
     , _svaInsertDataOption = Nothing
     , _svaBearerToken = Nothing
     , _svaRange = pSvaRange_
+    , _svaIncludeValuesInResponse = Nothing
+    , _svaResponseDateTimeRenderOption = Nothing
     , _svaCallback = Nothing
+    , _svaResponseValueRenderOption = Nothing
     }
 
 -- | V1 error format.
@@ -215,11 +235,35 @@
 svaRange :: Lens' SpreadsheetsValuesAppend Text
 svaRange = lens _svaRange (\ s a -> s{_svaRange = a})
 
+-- | Determines if the update response should include the values of the cells
+-- that were appended. By default, responses do not include the updated
+-- values.
+svaIncludeValuesInResponse :: Lens' SpreadsheetsValuesAppend (Maybe Bool)
+svaIncludeValuesInResponse
+  = lens _svaIncludeValuesInResponse
+      (\ s a -> s{_svaIncludeValuesInResponse = a})
+
+-- | Determines how dates, times, and durations in the response should be
+-- rendered. This is ignored if response_value_render_option is
+-- FORMATTED_VALUE. The default dateTime render option is
+-- [DateTimeRenderOption.SERIAL_NUMBER].
+svaResponseDateTimeRenderOption :: Lens' SpreadsheetsValuesAppend (Maybe Text)
+svaResponseDateTimeRenderOption
+  = lens _svaResponseDateTimeRenderOption
+      (\ s a -> s{_svaResponseDateTimeRenderOption = a})
+
 -- | JSONP
 svaCallback :: Lens' SpreadsheetsValuesAppend (Maybe Text)
 svaCallback
   = lens _svaCallback (\ s a -> s{_svaCallback = a})
 
+-- | Determines how values in the response should be rendered. The default
+-- render option is ValueRenderOption.FORMATTED_VALUE.
+svaResponseValueRenderOption :: Lens' SpreadsheetsValuesAppend (Maybe Text)
+svaResponseValueRenderOption
+  = lens _svaResponseValueRenderOption
+      (\ s a -> s{_svaResponseValueRenderOption = a})
+
 instance GoogleRequest SpreadsheetsValuesAppend where
         type Rs SpreadsheetsValuesAppend =
              AppendValuesResponse
@@ -235,7 +279,10 @@
               _svaValueInputOption
               _svaInsertDataOption
               _svaBearerToken
+              _svaIncludeValuesInResponse
+              _svaResponseDateTimeRenderOption
               _svaCallback
+              _svaResponseValueRenderOption
               (Just AltJSON)
               _svaPayload
               sheetsService
diff --git a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/BatchGet.hs b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/BatchGet.hs
--- a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/BatchGet.hs
+++ b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/BatchGet.hs
@@ -142,7 +142,8 @@
 svbgXgafv
   = lens _svbgXgafv (\ s a -> s{_svbgXgafv = a})
 
--- | How values should be represented in the output.
+-- | How values should be represented in the output. The default render
+-- option is ValueRenderOption.FORMATTED_VALUE.
 svbgValueRenderOption :: Lens' SpreadsheetsValuesBatchGet (Maybe Text)
 svbgValueRenderOption
   = lens _svbgValueRenderOption
@@ -190,7 +191,8 @@
       (\ s a -> s{_svbgBearerToken = a})
 
 -- | How dates, times, and durations should be represented in the output.
--- This is ignored if value_render_option is FORMATTED_VALUE.
+-- This is ignored if value_render_option is FORMATTED_VALUE. The default
+-- dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].
 svbgDateTimeRenderOption :: Lens' SpreadsheetsValuesBatchGet (Maybe Text)
 svbgDateTimeRenderOption
   = lens _svbgDateTimeRenderOption
diff --git a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Get.hs b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Get.hs
--- a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Get.hs
+++ b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Get.hs
@@ -142,7 +142,8 @@
 svgXgafv :: Lens' SpreadsheetsValuesGet (Maybe Xgafv)
 svgXgafv = lens _svgXgafv (\ s a -> s{_svgXgafv = a})
 
--- | How values should be represented in the output.
+-- | How values should be represented in the output. The default render
+-- option is ValueRenderOption.FORMATTED_VALUE.
 svgValueRenderOption :: Lens' SpreadsheetsValuesGet (Maybe Text)
 svgValueRenderOption
   = lens _svgValueRenderOption
@@ -187,7 +188,8 @@
 svgRange = lens _svgRange (\ s a -> s{_svgRange = a})
 
 -- | How dates, times, and durations should be represented in the output.
--- This is ignored if value_render_option is FORMATTED_VALUE.
+-- This is ignored if value_render_option is FORMATTED_VALUE. The default
+-- dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].
 svgDateTimeRenderOption :: Lens' SpreadsheetsValuesGet (Maybe Text)
 svgDateTimeRenderOption
   = lens _svgDateTimeRenderOption
diff --git a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Update.hs b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Update.hs
--- a/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Update.hs
+++ b/gen/Network/Google/Resource/Sheets/Spreadsheets/Values/Update.hs
@@ -44,7 +44,10 @@
     , svuPayload
     , svuBearerToken
     , svuRange
+    , svuIncludeValuesInResponse
+    , svuResponseDateTimeRenderOption
     , svuCallback
+    , svuResponseValueRenderOption
     ) where
 
 import           Network.Google.Prelude
@@ -65,27 +68,34 @@
                        QueryParam "uploadType" Text :>
                          QueryParam "valueInputOption" Text :>
                            QueryParam "bearer_token" Text :>
-                             QueryParam "callback" Text :>
-                               QueryParam "alt" AltJSON :>
-                                 ReqBody '[JSON] ValueRange :>
-                                   Put '[JSON] UpdateValuesResponse
+                             QueryParam "includeValuesInResponse" Bool :>
+                               QueryParam "responseDateTimeRenderOption" Text :>
+                                 QueryParam "callback" Text :>
+                                   QueryParam "responseValueRenderOption" Text
+                                     :>
+                                     QueryParam "alt" AltJSON :>
+                                       ReqBody '[JSON] ValueRange :>
+                                         Put '[JSON] UpdateValuesResponse
 
 -- | Sets values in a range of a spreadsheet. The caller must specify the
 -- spreadsheet ID, range, and a valueInputOption.
 --
 -- /See:/ 'spreadsheetsValuesUpdate' smart constructor.
 data SpreadsheetsValuesUpdate = SpreadsheetsValuesUpdate'
-    { _svuXgafv            :: !(Maybe Xgafv)
-    , _svuUploadProtocol   :: !(Maybe Text)
-    , _svuPp               :: !Bool
-    , _svuAccessToken      :: !(Maybe Text)
-    , _svuSpreadsheetId    :: !Text
-    , _svuUploadType       :: !(Maybe Text)
-    , _svuValueInputOption :: !(Maybe Text)
-    , _svuPayload          :: !ValueRange
-    , _svuBearerToken      :: !(Maybe Text)
-    , _svuRange            :: !Text
-    , _svuCallback         :: !(Maybe Text)
+    { _svuXgafv                        :: !(Maybe Xgafv)
+    , _svuUploadProtocol               :: !(Maybe Text)
+    , _svuPp                           :: !Bool
+    , _svuAccessToken                  :: !(Maybe Text)
+    , _svuSpreadsheetId                :: !Text
+    , _svuUploadType                   :: !(Maybe Text)
+    , _svuValueInputOption             :: !(Maybe Text)
+    , _svuPayload                      :: !ValueRange
+    , _svuBearerToken                  :: !(Maybe Text)
+    , _svuRange                        :: !Text
+    , _svuIncludeValuesInResponse      :: !(Maybe Bool)
+    , _svuResponseDateTimeRenderOption :: !(Maybe Text)
+    , _svuCallback                     :: !(Maybe Text)
+    , _svuResponseValueRenderOption    :: !(Maybe Text)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'SpreadsheetsValuesUpdate' with the minimum fields required to make a request.
@@ -112,7 +122,13 @@
 --
 -- * 'svuRange'
 --
+-- * 'svuIncludeValuesInResponse'
+--
+-- * 'svuResponseDateTimeRenderOption'
+--
 -- * 'svuCallback'
+--
+-- * 'svuResponseValueRenderOption'
 spreadsheetsValuesUpdate
     :: Text -- ^ 'svuSpreadsheetId'
     -> ValueRange -- ^ 'svuPayload'
@@ -130,7 +146,10 @@
     , _svuPayload = pSvuPayload_
     , _svuBearerToken = Nothing
     , _svuRange = pSvuRange_
+    , _svuIncludeValuesInResponse = Nothing
+    , _svuResponseDateTimeRenderOption = Nothing
     , _svuCallback = Nothing
+    , _svuResponseValueRenderOption = Nothing
     }
 
 -- | V1 error format.
@@ -186,11 +205,37 @@
 svuRange :: Lens' SpreadsheetsValuesUpdate Text
 svuRange = lens _svuRange (\ s a -> s{_svuRange = a})
 
+-- | Determines if the update response should include the values of the cells
+-- that were updated. By default, responses do not include the updated
+-- values. If the range to write was larger than than the range actually
+-- written, the response will include all values in the requested range
+-- (excluding trailing empty rows and columns).
+svuIncludeValuesInResponse :: Lens' SpreadsheetsValuesUpdate (Maybe Bool)
+svuIncludeValuesInResponse
+  = lens _svuIncludeValuesInResponse
+      (\ s a -> s{_svuIncludeValuesInResponse = a})
+
+-- | Determines how dates, times, and durations in the response should be
+-- rendered. This is ignored if response_value_render_option is
+-- FORMATTED_VALUE. The default dateTime render option is
+-- [DateTimeRenderOption.SERIAL_NUMBER].
+svuResponseDateTimeRenderOption :: Lens' SpreadsheetsValuesUpdate (Maybe Text)
+svuResponseDateTimeRenderOption
+  = lens _svuResponseDateTimeRenderOption
+      (\ s a -> s{_svuResponseDateTimeRenderOption = a})
+
 -- | JSONP
 svuCallback :: Lens' SpreadsheetsValuesUpdate (Maybe Text)
 svuCallback
   = lens _svuCallback (\ s a -> s{_svuCallback = a})
 
+-- | Determines how values in the response should be rendered. The default
+-- render option is ValueRenderOption.FORMATTED_VALUE.
+svuResponseValueRenderOption :: Lens' SpreadsheetsValuesUpdate (Maybe Text)
+svuResponseValueRenderOption
+  = lens _svuResponseValueRenderOption
+      (\ s a -> s{_svuResponseValueRenderOption = a})
+
 instance GoogleRequest SpreadsheetsValuesUpdate where
         type Rs SpreadsheetsValuesUpdate =
              UpdateValuesResponse
@@ -205,7 +250,10 @@
               _svuUploadType
               _svuValueInputOption
               _svuBearerToken
+              _svuIncludeValuesInResponse
+              _svuResponseDateTimeRenderOption
               _svuCallback
+              _svuResponseValueRenderOption
               (Just AltJSON)
               _svuPayload
               sheetsService
diff --git a/gen/Network/Google/Sheets.hs b/gen/Network/Google/Sheets.hs
--- a/gen/Network/Google/Sheets.hs
+++ b/gen/Network/Google/Sheets.hs
@@ -113,6 +113,9 @@
     , batchClearValuesRequest
     , bcvrRanges
 
+    -- ** DeleteRangeRequestShiftDimension
+    , DeleteRangeRequestShiftDimension (..)
+
     -- ** BasicChartSeriesTargetAxis
     , BasicChartSeriesTargetAxis (..)
 
@@ -150,6 +153,9 @@
     , ssSortOrder
     , ssDimensionIndex
 
+    -- ** BatchUpdateValuesRequestResponseDateTimeRenderOption
+    , BatchUpdateValuesRequestResponseDateTimeRenderOption (..)
+
     -- ** CopyPasteRequest
     , CopyPasteRequest
     , copyPasteRequest
@@ -189,12 +195,19 @@
     , autoResizeDimensionsRequest
     , ardrDimensions
 
+    -- ** DeleteRangeRequest
+    , DeleteRangeRequest
+    , deleteRangeRequest
+    , drrShiftDimension
+    , drrRange
+
     -- ** Sheet
     , Sheet
     , sheet
     , sData
     , sMerges
     , sProtectedRanges
+    , sBandedRanges
     , sCharts
     , sBasicFilter
     , sConditionalFormats
@@ -289,6 +302,9 @@
     , avrUpdates
     , avrTableRange
 
+    -- ** BatchUpdateValuesRequestResponseValueRenderOption
+    , BatchUpdateValuesRequestResponseValueRenderOption (..)
+
     -- ** DataValidationRule
     , DataValidationRule
     , dataValidationRule
@@ -423,6 +439,7 @@
     , rUpdateConditionalFormatRule
     , rAddNamedRange
     , rAddChart
+    , rAddBanding
     , rDuplicateSheet
 
     -- ** FilterCriteria
@@ -507,6 +524,7 @@
     , sprSheets
     , sprNamedRanges
     , sprSpreadsheetId
+    , sprSpreadsheetURL
     , sprProperties
 
     -- ** InsertDimensionRequest
@@ -582,6 +600,11 @@
     , basicFilterCriteria
     , bfcAddtional
 
+    -- ** AddBandingRequest
+    , AddBandingRequest
+    , addBandingRequest
+    , abrBandedRange
+
     -- ** UpdateDimensionPropertiesRequest
     , UpdateDimensionPropertiesRequest
     , updateDimensionPropertiesRequest
@@ -622,6 +645,9 @@
     , batchUpdateValuesRequest
     , buvrData
     , buvrValueInputOption
+    , buvrIncludeValuesInResponse
+    , buvrResponseDateTimeRenderOption
+    , buvrResponseValueRenderOption
 
     -- ** AddChartRequest
     , AddChartRequest
@@ -720,6 +746,14 @@
     -- ** BooleanConditionType
     , BooleanConditionType (..)
 
+    -- ** BandedRange
+    , BandedRange
+    , bandedRange
+    , brBandedRangeId
+    , brRowProperties
+    , brRange
+    , brColumnProperties
+
     -- ** UpdateBOrdersRequest
     , UpdateBOrdersRequest
     , updateBOrdersRequest
@@ -802,7 +836,10 @@
     -- ** BatchUpdateSpreadsheetRequest
     , BatchUpdateSpreadsheetRequest
     , batchUpdateSpreadsheetRequest
+    , busrResponseIncludeGridData
+    , busrResponseRanges
     , busrRequests
+    , busrIncludeSpreadsheetInResponse
 
     -- ** PasteDataRequestType
     , PasteDataRequestType (..)
@@ -814,6 +851,7 @@
     , uvrSpreadsheetId
     , uvrUpdatedRows
     , uvrUpdatedRange
+    , uvrUpdatedData
     , uvrUpdatedColumns
 
     -- ** CopySheetToAnotherSpreadsheetRequest
@@ -915,6 +953,7 @@
     , batchUpdateSpreadsheetResponse
     , busrSpreadsheetId
     , busrReplies
+    , busrUpdatedSpreadsheet
 
     -- ** SetDataValidationRequest
     , SetDataValidationRequest
@@ -922,6 +961,14 @@
     , sdvrRule
     , sdvrRange
 
+    -- ** BandingProperties
+    , BandingProperties
+    , bandingProperties
+    , bpSecondBandColor
+    , bpHeaderColor
+    , bpFooterColor
+    , bpFirstBandColor
+
     -- ** ChartSpecHiddenDimensionStrategy
     , ChartSpecHiddenDimensionStrategy (..)
 
@@ -942,6 +989,11 @@
     , pgShowTotals
     , pgValueBucket
 
+    -- ** AddBandingResponse
+    , AddBandingResponse
+    , addBandingResponse
+    , aBandedRange
+
     -- ** CutPasteRequestPasteType
     , CutPasteRequestPasteType (..)
 
@@ -1010,6 +1062,15 @@
     -- ** TextToColumnsRequestDelimiterType
     , TextToColumnsRequestDelimiterType (..)
 
+    -- ** InsertRangeRequest
+    , InsertRangeRequest
+    , insertRangeRequest
+    , irrShiftDimension
+    , irrRange
+
+    -- ** InsertRangeRequestShiftDimension
+    , InsertRangeRequestShiftDimension (..)
+
     -- ** Padding
     , Padding
     , padding
@@ -1033,12 +1094,23 @@
     , dpPixelSize
     , dpHiddenByUser
 
+    -- ** UpdateBandingRequest
+    , UpdateBandingRequest
+    , updateBandingRequest
+    , ubrBandedRange
+    , ubrFields
+
     -- ** BatchGetValuesResponse
     , BatchGetValuesResponse
     , batchGetValuesResponse
     , bgvrSpreadsheetId
     , bgvrValueRanges
 
+    -- ** DeleteBandingRequest
+    , DeleteBandingRequest
+    , deleteBandingRequest
+    , dbrBandedRangeId
+
     -- ** Request'
     , Request'
     , request'
@@ -1051,10 +1123,14 @@
     , reqSortRange
     , reqUpdateNamedRange
     , reqDeleteNamedRange
+    , reqInsertRange
+    , reqDeleteBanding
+    , reqUpdateBanding
     , reqClearBasicFilter
     , reqAppendCells
     , reqPasteData
     , reqUpdateEmbeddedObjectPosition
+    , reqDeleteRange
     , reqCopyPaste
     , reqAutoResizeDimensions
     , reqAddSheet
@@ -1074,6 +1150,7 @@
     , reqMergeCells
     , reqAddNamedRange
     , reqAddChart
+    , reqAddBanding
     , reqDuplicateSheet
     , reqAutoFill
     , reqUpdateDimensionProperties
diff --git a/gen/Network/Google/Sheets/Types.hs b/gen/Network/Google/Sheets/Types.hs
--- a/gen/Network/Google/Sheets/Types.hs
+++ b/gen/Network/Google/Sheets/Types.hs
@@ -71,6 +71,9 @@
     , batchClearValuesRequest
     , bcvrRanges
 
+    -- * DeleteRangeRequestShiftDimension
+    , DeleteRangeRequestShiftDimension (..)
+
     -- * BasicChartSeriesTargetAxis
     , BasicChartSeriesTargetAxis (..)
 
@@ -108,6 +111,9 @@
     , ssSortOrder
     , ssDimensionIndex
 
+    -- * BatchUpdateValuesRequestResponseDateTimeRenderOption
+    , BatchUpdateValuesRequestResponseDateTimeRenderOption (..)
+
     -- * CopyPasteRequest
     , CopyPasteRequest
     , copyPasteRequest
@@ -147,12 +153,19 @@
     , autoResizeDimensionsRequest
     , ardrDimensions
 
+    -- * DeleteRangeRequest
+    , DeleteRangeRequest
+    , deleteRangeRequest
+    , drrShiftDimension
+    , drrRange
+
     -- * Sheet
     , Sheet
     , sheet
     , sData
     , sMerges
     , sProtectedRanges
+    , sBandedRanges
     , sCharts
     , sBasicFilter
     , sConditionalFormats
@@ -247,6 +260,9 @@
     , avrUpdates
     , avrTableRange
 
+    -- * BatchUpdateValuesRequestResponseValueRenderOption
+    , BatchUpdateValuesRequestResponseValueRenderOption (..)
+
     -- * DataValidationRule
     , DataValidationRule
     , dataValidationRule
@@ -381,6 +397,7 @@
     , rUpdateConditionalFormatRule
     , rAddNamedRange
     , rAddChart
+    , rAddBanding
     , rDuplicateSheet
 
     -- * FilterCriteria
@@ -465,6 +482,7 @@
     , sprSheets
     , sprNamedRanges
     , sprSpreadsheetId
+    , sprSpreadsheetURL
     , sprProperties
 
     -- * InsertDimensionRequest
@@ -540,6 +558,11 @@
     , basicFilterCriteria
     , bfcAddtional
 
+    -- * AddBandingRequest
+    , AddBandingRequest
+    , addBandingRequest
+    , abrBandedRange
+
     -- * UpdateDimensionPropertiesRequest
     , UpdateDimensionPropertiesRequest
     , updateDimensionPropertiesRequest
@@ -580,6 +603,9 @@
     , batchUpdateValuesRequest
     , buvrData
     , buvrValueInputOption
+    , buvrIncludeValuesInResponse
+    , buvrResponseDateTimeRenderOption
+    , buvrResponseValueRenderOption
 
     -- * AddChartRequest
     , AddChartRequest
@@ -678,6 +704,14 @@
     -- * BooleanConditionType
     , BooleanConditionType (..)
 
+    -- * BandedRange
+    , BandedRange
+    , bandedRange
+    , brBandedRangeId
+    , brRowProperties
+    , brRange
+    , brColumnProperties
+
     -- * UpdateBOrdersRequest
     , UpdateBOrdersRequest
     , updateBOrdersRequest
@@ -760,7 +794,10 @@
     -- * BatchUpdateSpreadsheetRequest
     , BatchUpdateSpreadsheetRequest
     , batchUpdateSpreadsheetRequest
+    , busrResponseIncludeGridData
+    , busrResponseRanges
     , busrRequests
+    , busrIncludeSpreadsheetInResponse
 
     -- * PasteDataRequestType
     , PasteDataRequestType (..)
@@ -772,6 +809,7 @@
     , uvrSpreadsheetId
     , uvrUpdatedRows
     , uvrUpdatedRange
+    , uvrUpdatedData
     , uvrUpdatedColumns
 
     -- * CopySheetToAnotherSpreadsheetRequest
@@ -873,6 +911,7 @@
     , batchUpdateSpreadsheetResponse
     , busrSpreadsheetId
     , busrReplies
+    , busrUpdatedSpreadsheet
 
     -- * SetDataValidationRequest
     , SetDataValidationRequest
@@ -880,6 +919,14 @@
     , sdvrRule
     , sdvrRange
 
+    -- * BandingProperties
+    , BandingProperties
+    , bandingProperties
+    , bpSecondBandColor
+    , bpHeaderColor
+    , bpFooterColor
+    , bpFirstBandColor
+
     -- * ChartSpecHiddenDimensionStrategy
     , ChartSpecHiddenDimensionStrategy (..)
 
@@ -900,6 +947,11 @@
     , pgShowTotals
     , pgValueBucket
 
+    -- * AddBandingResponse
+    , AddBandingResponse
+    , addBandingResponse
+    , aBandedRange
+
     -- * CutPasteRequestPasteType
     , CutPasteRequestPasteType (..)
 
@@ -968,6 +1020,15 @@
     -- * TextToColumnsRequestDelimiterType
     , TextToColumnsRequestDelimiterType (..)
 
+    -- * InsertRangeRequest
+    , InsertRangeRequest
+    , insertRangeRequest
+    , irrShiftDimension
+    , irrRange
+
+    -- * InsertRangeRequestShiftDimension
+    , InsertRangeRequestShiftDimension (..)
+
     -- * Padding
     , Padding
     , padding
@@ -991,12 +1052,23 @@
     , dpPixelSize
     , dpHiddenByUser
 
+    -- * UpdateBandingRequest
+    , UpdateBandingRequest
+    , updateBandingRequest
+    , ubrBandedRange
+    , ubrFields
+
     -- * BatchGetValuesResponse
     , BatchGetValuesResponse
     , batchGetValuesResponse
     , bgvrSpreadsheetId
     , bgvrValueRanges
 
+    -- * DeleteBandingRequest
+    , DeleteBandingRequest
+    , deleteBandingRequest
+    , dbrBandedRangeId
+
     -- * Request'
     , Request'
     , request'
@@ -1009,10 +1081,14 @@
     , reqSortRange
     , reqUpdateNamedRange
     , reqDeleteNamedRange
+    , reqInsertRange
+    , reqDeleteBanding
+    , reqUpdateBanding
     , reqClearBasicFilter
     , reqAppendCells
     , reqPasteData
     , reqUpdateEmbeddedObjectPosition
+    , reqDeleteRange
     , reqCopyPaste
     , reqAutoResizeDimensions
     , reqAddSheet
@@ -1032,6 +1108,7 @@
     , reqMergeCells
     , reqAddNamedRange
     , reqAddChart
+    , reqAddBanding
     , reqDuplicateSheet
     , reqAutoFill
     , reqUpdateDimensionProperties
diff --git a/gen/Network/Google/Sheets/Types/Product.hs b/gen/Network/Google/Sheets/Types/Product.hs
--- a/gen/Network/Google/Sheets/Types/Product.hs
+++ b/gen/Network/Google/Sheets/Types/Product.hs
@@ -959,6 +959,56 @@
           = object
               (catMaybes [("dimensions" .=) <$> _ardrDimensions])
 
+-- | Deletes a range of cells, shifting other cells into the deleted area.
+--
+-- /See:/ 'deleteRangeRequest' smart constructor.
+data DeleteRangeRequest = DeleteRangeRequest'
+    { _drrShiftDimension :: !(Maybe DeleteRangeRequestShiftDimension)
+    , _drrRange          :: !(Maybe GridRange)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'DeleteRangeRequest' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'drrShiftDimension'
+--
+-- * 'drrRange'
+deleteRangeRequest
+    :: DeleteRangeRequest
+deleteRangeRequest =
+    DeleteRangeRequest'
+    { _drrShiftDimension = Nothing
+    , _drrRange = Nothing
+    }
+
+-- | The dimension from which deleted cells will be replaced with. If ROWS,
+-- existing cells will be shifted upward to replace the deleted cells. If
+-- COLUMNS, existing cells will be shifted left to replace the deleted
+-- cells.
+drrShiftDimension :: Lens' DeleteRangeRequest (Maybe DeleteRangeRequestShiftDimension)
+drrShiftDimension
+  = lens _drrShiftDimension
+      (\ s a -> s{_drrShiftDimension = a})
+
+-- | The range of cells to delete.
+drrRange :: Lens' DeleteRangeRequest (Maybe GridRange)
+drrRange = lens _drrRange (\ s a -> s{_drrRange = a})
+
+instance FromJSON DeleteRangeRequest where
+        parseJSON
+          = withObject "DeleteRangeRequest"
+              (\ o ->
+                 DeleteRangeRequest' <$>
+                   (o .:? "shiftDimension") <*> (o .:? "range"))
+
+instance ToJSON DeleteRangeRequest where
+        toJSON DeleteRangeRequest'{..}
+          = object
+              (catMaybes
+                 [("shiftDimension" .=) <$> _drrShiftDimension,
+                  ("range" .=) <$> _drrRange])
+
 -- | A sheet in a spreadsheet.
 --
 -- /See:/ 'sheet' smart constructor.
@@ -966,6 +1016,7 @@
     { _sData               :: !(Maybe [GridData])
     , _sMerges             :: !(Maybe [GridRange])
     , _sProtectedRanges    :: !(Maybe [ProtectedRange])
+    , _sBandedRanges       :: !(Maybe [BandedRange])
     , _sCharts             :: !(Maybe [EmbeddedChart])
     , _sBasicFilter        :: !(Maybe BasicFilter)
     , _sConditionalFormats :: !(Maybe [ConditionalFormatRule])
@@ -983,6 +1034,8 @@
 --
 -- * 'sProtectedRanges'
 --
+-- * 'sBandedRanges'
+--
 -- * 'sCharts'
 --
 -- * 'sBasicFilter'
@@ -999,6 +1052,7 @@
     { _sData = Nothing
     , _sMerges = Nothing
     , _sProtectedRanges = Nothing
+    , _sBandedRanges = Nothing
     , _sCharts = Nothing
     , _sBasicFilter = Nothing
     , _sConditionalFormats = Nothing
@@ -1033,6 +1087,14 @@
       . _Default
       . _Coerce
 
+-- | The banded (i.e. alternating colors) ranges on this sheet.
+sBandedRanges :: Lens' Sheet [BandedRange]
+sBandedRanges
+  = lens _sBandedRanges
+      (\ s a -> s{_sBandedRanges = a})
+      . _Default
+      . _Coerce
+
 -- | The specifications of every chart on this sheet.
 sCharts :: Lens' Sheet [EmbeddedChart]
 sCharts
@@ -1072,6 +1134,7 @@
                    (o .:? "data" .!= mempty) <*>
                      (o .:? "merges" .!= mempty)
                      <*> (o .:? "protectedRanges" .!= mempty)
+                     <*> (o .:? "bandedRanges" .!= mempty)
                      <*> (o .:? "charts" .!= mempty)
                      <*> (o .:? "basicFilter")
                      <*> (o .:? "conditionalFormats" .!= mempty)
@@ -1084,6 +1147,7 @@
               (catMaybes
                  [("data" .=) <$> _sData, ("merges" .=) <$> _sMerges,
                   ("protectedRanges" .=) <$> _sProtectedRanges,
+                  ("bandedRanges" .=) <$> _sBandedRanges,
                   ("charts" .=) <$> _sCharts,
                   ("basicFilter" .=) <$> _sBasicFilter,
                   ("conditionalFormats" .=) <$> _sConditionalFormats,
@@ -2825,6 +2889,7 @@
     , _rUpdateConditionalFormatRule  :: !(Maybe UpdateConditionalFormatRuleResponse)
     , _rAddNamedRange                :: !(Maybe AddNamedRangeResponse)
     , _rAddChart                     :: !(Maybe AddChartResponse)
+    , _rAddBanding                   :: !(Maybe AddBandingResponse)
     , _rDuplicateSheet               :: !(Maybe DuplicateSheetResponse)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
@@ -2852,6 +2917,8 @@
 --
 -- * 'rAddChart'
 --
+-- * 'rAddBanding'
+--
 -- * 'rDuplicateSheet'
 response
     :: Response
@@ -2867,6 +2934,7 @@
     , _rUpdateConditionalFormatRule = Nothing
     , _rAddNamedRange = Nothing
     , _rAddChart = Nothing
+    , _rAddBanding = Nothing
     , _rDuplicateSheet = Nothing
     }
 
@@ -2927,6 +2995,11 @@
 rAddChart
   = lens _rAddChart (\ s a -> s{_rAddChart = a})
 
+-- | A reply from adding a banded range.
+rAddBanding :: Lens' Response (Maybe AddBandingResponse)
+rAddBanding
+  = lens _rAddBanding (\ s a -> s{_rAddBanding = a})
+
 -- | A reply from duplicating a sheet.
 rDuplicateSheet :: Lens' Response (Maybe DuplicateSheetResponse)
 rDuplicateSheet
@@ -2948,6 +3021,7 @@
                      <*> (o .:? "updateConditionalFormatRule")
                      <*> (o .:? "addNamedRange")
                      <*> (o .:? "addChart")
+                     <*> (o .:? "addBanding")
                      <*> (o .:? "duplicateSheet"))
 
 instance ToJSON Response where
@@ -2967,6 +3041,7 @@
                     _rUpdateConditionalFormatRule,
                   ("addNamedRange" .=) <$> _rAddNamedRange,
                   ("addChart" .=) <$> _rAddChart,
+                  ("addBanding" .=) <$> _rAddBanding,
                   ("duplicateSheet" .=) <$> _rDuplicateSheet])
 
 -- | Criteria for showing\/hiding rows in a filter or filter view.
@@ -3412,7 +3487,13 @@
 
 -- | The index of the sheet within the spreadsheet. When adding or updating
 -- sheet properties, if this field is excluded then the sheet will be added
--- or moved to the end of the sheet list.
+-- or moved to the end of the sheet list. When updating sheet indices or
+-- inserting sheets, movement is considered in \"before the move\" indexes.
+-- For example, if there were 3 sheets (S1, S2, S3) in order to move S1
+-- ahead of S2 the index would have to be set to 2. A sheet index update
+-- request will be ignored if the requested index is identical to the
+-- sheets current index or if the requested new index is equal to the
+-- current sheet index + 1.
 sIndex :: Lens' SheetProperties (Maybe Int32)
 sIndex
   = lens _sIndex (\ s a -> s{_sIndex = a}) .
@@ -3641,10 +3722,11 @@
 --
 -- /See:/ 'spreadsheet' smart constructor.
 data Spreadsheet = Spreadsheet'
-    { _sprSheets        :: !(Maybe [Sheet])
-    , _sprNamedRanges   :: !(Maybe [NamedRange])
-    , _sprSpreadsheetId :: !(Maybe Text)
-    , _sprProperties    :: !(Maybe SpreadsheetProperties)
+    { _sprSheets         :: !(Maybe [Sheet])
+    , _sprNamedRanges    :: !(Maybe [NamedRange])
+    , _sprSpreadsheetId  :: !(Maybe Text)
+    , _sprSpreadsheetURL :: !(Maybe Text)
+    , _sprProperties     :: !(Maybe SpreadsheetProperties)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'Spreadsheet' with the minimum fields required to make a request.
@@ -3657,6 +3739,8 @@
 --
 -- * 'sprSpreadsheetId'
 --
+-- * 'sprSpreadsheetURL'
+--
 -- * 'sprProperties'
 spreadsheet
     :: Spreadsheet
@@ -3665,6 +3749,7 @@
     { _sprSheets = Nothing
     , _sprNamedRanges = Nothing
     , _sprSpreadsheetId = Nothing
+    , _sprSpreadsheetURL = Nothing
     , _sprProperties = Nothing
     }
 
@@ -3689,6 +3774,12 @@
   = lens _sprSpreadsheetId
       (\ s a -> s{_sprSpreadsheetId = a})
 
+-- | The url of the spreadsheet. This field is read-only.
+sprSpreadsheetURL :: Lens' Spreadsheet (Maybe Text)
+sprSpreadsheetURL
+  = lens _sprSpreadsheetURL
+      (\ s a -> s{_sprSpreadsheetURL = a})
+
 -- | Overall properties of a spreadsheet.
 sprProperties :: Lens' Spreadsheet (Maybe SpreadsheetProperties)
 sprProperties
@@ -3703,6 +3794,7 @@
                    (o .:? "sheets" .!= mempty) <*>
                      (o .:? "namedRanges" .!= mempty)
                      <*> (o .:? "spreadsheetId")
+                     <*> (o .:? "spreadsheetUrl")
                      <*> (o .:? "properties"))
 
 instance ToJSON Spreadsheet where
@@ -3712,6 +3804,7 @@
                  [("sheets" .=) <$> _sprSheets,
                   ("namedRanges" .=) <$> _sprNamedRanges,
                   ("spreadsheetId" .=) <$> _sprSpreadsheetId,
+                  ("spreadsheetUrl" .=) <$> _sprSpreadsheetURL,
                   ("properties" .=) <$> _sprProperties])
 
 -- | Inserts rows or columns in a sheet at a particular index.
@@ -4310,6 +4403,43 @@
 instance ToJSON BasicFilterCriteria where
         toJSON = toJSON . _bfcAddtional
 
+-- | Adds a new banded range to the spreadsheet.
+--
+-- /See:/ 'addBandingRequest' smart constructor.
+newtype AddBandingRequest = AddBandingRequest'
+    { _abrBandedRange :: Maybe BandedRange
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'AddBandingRequest' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'abrBandedRange'
+addBandingRequest
+    :: AddBandingRequest
+addBandingRequest =
+    AddBandingRequest'
+    { _abrBandedRange = Nothing
+    }
+
+-- | The banded range to add. The bandedRangeId 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.)
+abrBandedRange :: Lens' AddBandingRequest (Maybe BandedRange)
+abrBandedRange
+  = lens _abrBandedRange
+      (\ s a -> s{_abrBandedRange = a})
+
+instance FromJSON AddBandingRequest where
+        parseJSON
+          = withObject "AddBandingRequest"
+              (\ o -> AddBandingRequest' <$> (o .:? "bandedRange"))
+
+instance ToJSON AddBandingRequest where
+        toJSON AddBandingRequest'{..}
+          = object
+              (catMaybes [("bandedRange" .=) <$> _abrBandedRange])
+
 -- | Updates properties of dimensions within the specified range.
 --
 -- /See:/ 'updateDimensionPropertiesRequest' smart constructor.
@@ -4593,8 +4723,11 @@
 --
 -- /See:/ 'batchUpdateValuesRequest' smart constructor.
 data BatchUpdateValuesRequest = BatchUpdateValuesRequest'
-    { _buvrData             :: !(Maybe [ValueRange])
-    , _buvrValueInputOption :: !(Maybe BatchUpdateValuesRequestValueInputOption)
+    { _buvrData                         :: !(Maybe [ValueRange])
+    , _buvrValueInputOption             :: !(Maybe BatchUpdateValuesRequestValueInputOption)
+    , _buvrIncludeValuesInResponse      :: !(Maybe Bool)
+    , _buvrResponseDateTimeRenderOption :: !(Maybe BatchUpdateValuesRequestResponseDateTimeRenderOption)
+    , _buvrResponseValueRenderOption    :: !(Maybe BatchUpdateValuesRequestResponseValueRenderOption)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'BatchUpdateValuesRequest' with the minimum fields required to make a request.
@@ -4604,12 +4737,21 @@
 -- * 'buvrData'
 --
 -- * 'buvrValueInputOption'
+--
+-- * 'buvrIncludeValuesInResponse'
+--
+-- * 'buvrResponseDateTimeRenderOption'
+--
+-- * 'buvrResponseValueRenderOption'
 batchUpdateValuesRequest
     :: BatchUpdateValuesRequest
 batchUpdateValuesRequest =
     BatchUpdateValuesRequest'
     { _buvrData = Nothing
     , _buvrValueInputOption = Nothing
+    , _buvrIncludeValuesInResponse = Nothing
+    , _buvrResponseDateTimeRenderOption = Nothing
+    , _buvrResponseValueRenderOption = Nothing
     }
 
 -- | The new values to apply to the spreadsheet.
@@ -4625,20 +4767,57 @@
   = lens _buvrValueInputOption
       (\ s a -> s{_buvrValueInputOption = a})
 
+-- | Determines if the update response should include the values of the cells
+-- that were updated. By default, responses do not include the updated
+-- values. The \`updatedData\` field within each of the
+-- BatchUpdateValuesResponse.responses will contain the updated values. If
+-- the range to write was larger than than the range actually written, the
+-- response will include all values in the requested range (excluding
+-- trailing empty rows and columns).
+buvrIncludeValuesInResponse :: Lens' BatchUpdateValuesRequest (Maybe Bool)
+buvrIncludeValuesInResponse
+  = lens _buvrIncludeValuesInResponse
+      (\ s a -> s{_buvrIncludeValuesInResponse = a})
+
+-- | Determines how dates, times, and durations in the response should be
+-- rendered. This is ignored if response_value_render_option is
+-- FORMATTED_VALUE. The default dateTime render option is
+-- [DateTimeRenderOption.SERIAL_NUMBER].
+buvrResponseDateTimeRenderOption :: Lens' BatchUpdateValuesRequest (Maybe BatchUpdateValuesRequestResponseDateTimeRenderOption)
+buvrResponseDateTimeRenderOption
+  = lens _buvrResponseDateTimeRenderOption
+      (\ s a -> s{_buvrResponseDateTimeRenderOption = a})
+
+-- | Determines how values in the response should be rendered. The default
+-- render option is ValueRenderOption.FORMATTED_VALUE.
+buvrResponseValueRenderOption :: Lens' BatchUpdateValuesRequest (Maybe BatchUpdateValuesRequestResponseValueRenderOption)
+buvrResponseValueRenderOption
+  = lens _buvrResponseValueRenderOption
+      (\ s a -> s{_buvrResponseValueRenderOption = a})
+
 instance FromJSON BatchUpdateValuesRequest where
         parseJSON
           = withObject "BatchUpdateValuesRequest"
               (\ o ->
                  BatchUpdateValuesRequest' <$>
                    (o .:? "data" .!= mempty) <*>
-                     (o .:? "valueInputOption"))
+                     (o .:? "valueInputOption")
+                     <*> (o .:? "includeValuesInResponse")
+                     <*> (o .:? "responseDateTimeRenderOption")
+                     <*> (o .:? "responseValueRenderOption"))
 
 instance ToJSON BatchUpdateValuesRequest where
         toJSON BatchUpdateValuesRequest'{..}
           = object
               (catMaybes
                  [("data" .=) <$> _buvrData,
-                  ("valueInputOption" .=) <$> _buvrValueInputOption])
+                  ("valueInputOption" .=) <$> _buvrValueInputOption,
+                  ("includeValuesInResponse" .=) <$>
+                    _buvrIncludeValuesInResponse,
+                  ("responseDateTimeRenderOption" .=) <$>
+                    _buvrResponseDateTimeRenderOption,
+                  ("responseValueRenderOption" .=) <$>
+                    _buvrResponseValueRenderOption])
 
 -- | Adds a chart to a sheet in the spreadsheet.
 --
@@ -5367,6 +5546,82 @@
         toJSON DeleteSheetRequest'{..}
           = object (catMaybes [("sheetId" .=) <$> _dsrSheetId])
 
+-- | A banded (alternating colors) range in a sheet.
+--
+-- /See:/ 'bandedRange' smart constructor.
+data BandedRange = BandedRange'
+    { _brBandedRangeId    :: !(Maybe (Textual Int32))
+    , _brRowProperties    :: !(Maybe BandingProperties)
+    , _brRange            :: !(Maybe GridRange)
+    , _brColumnProperties :: !(Maybe BandingProperties)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'BandedRange' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'brBandedRangeId'
+--
+-- * 'brRowProperties'
+--
+-- * 'brRange'
+--
+-- * 'brColumnProperties'
+bandedRange
+    :: BandedRange
+bandedRange =
+    BandedRange'
+    { _brBandedRangeId = Nothing
+    , _brRowProperties = Nothing
+    , _brRange = Nothing
+    , _brColumnProperties = Nothing
+    }
+
+-- | The id of the banded range.
+brBandedRangeId :: Lens' BandedRange (Maybe Int32)
+brBandedRangeId
+  = lens _brBandedRangeId
+      (\ s a -> s{_brBandedRangeId = a})
+      . mapping _Coerce
+
+-- | Properties for row bands. These properties will be applied on a
+-- row-by-row basis throughout all the rows in the range. At least one of
+-- row_properties or column_properties must be specified.
+brRowProperties :: Lens' BandedRange (Maybe BandingProperties)
+brRowProperties
+  = lens _brRowProperties
+      (\ s a -> s{_brRowProperties = a})
+
+-- | The range over which these properties are applied.
+brRange :: Lens' BandedRange (Maybe GridRange)
+brRange = lens _brRange (\ s a -> s{_brRange = a})
+
+-- | Properties for column bands. These properties will be applied on a
+-- column- by-column basis throughout all the columns in the range. At
+-- least one of row_properties or column_properties must be specified.
+brColumnProperties :: Lens' BandedRange (Maybe BandingProperties)
+brColumnProperties
+  = lens _brColumnProperties
+      (\ s a -> s{_brColumnProperties = a})
+
+instance FromJSON BandedRange where
+        parseJSON
+          = withObject "BandedRange"
+              (\ o ->
+                 BandedRange' <$>
+                   (o .:? "bandedRangeId") <*> (o .:? "rowProperties")
+                     <*> (o .:? "range")
+                     <*> (o .:? "columnProperties"))
+
+instance ToJSON BandedRange where
+        toJSON BandedRange'{..}
+          = object
+              (catMaybes
+                 [("bandedRangeId" .=) <$> _brBandedRangeId,
+                  ("rowProperties" .=) <$> _brRowProperties,
+                  ("range" .=) <$> _brRange,
+                  ("columnProperties" .=) <$> _brColumnProperties])
+
 -- | Updates the borders of a range. If a field is not set in the request,
 -- that means the border remains as-is. For example, with two subsequent
 -- UpdateBordersRequest: 1. range: A1:A5 \`{ top: RED, bottom: WHITE }\` 2.
@@ -5919,22 +6174,51 @@
 -- | The request for updating any aspect of a spreadsheet.
 --
 -- /See:/ 'batchUpdateSpreadsheetRequest' smart constructor.
-newtype BatchUpdateSpreadsheetRequest = BatchUpdateSpreadsheetRequest'
-    { _busrRequests :: Maybe [Request']
+data BatchUpdateSpreadsheetRequest = BatchUpdateSpreadsheetRequest'
+    { _busrResponseIncludeGridData      :: !(Maybe Bool)
+    , _busrResponseRanges               :: !(Maybe [Text])
+    , _busrRequests                     :: !(Maybe [Request'])
+    , _busrIncludeSpreadsheetInResponse :: !(Maybe Bool)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'BatchUpdateSpreadsheetRequest' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'busrResponseIncludeGridData'
+--
+-- * 'busrResponseRanges'
+--
 -- * 'busrRequests'
+--
+-- * 'busrIncludeSpreadsheetInResponse'
 batchUpdateSpreadsheetRequest
     :: BatchUpdateSpreadsheetRequest
 batchUpdateSpreadsheetRequest =
     BatchUpdateSpreadsheetRequest'
-    { _busrRequests = Nothing
+    { _busrResponseIncludeGridData = Nothing
+    , _busrResponseRanges = Nothing
+    , _busrRequests = Nothing
+    , _busrIncludeSpreadsheetInResponse = Nothing
     }
 
+-- | True if grid data should be returned. Meaningful only if if
+-- include_spreadsheet_response is \'true\'. This parameter is ignored if a
+-- field mask was set in the request.
+busrResponseIncludeGridData :: Lens' BatchUpdateSpreadsheetRequest (Maybe Bool)
+busrResponseIncludeGridData
+  = lens _busrResponseIncludeGridData
+      (\ s a -> s{_busrResponseIncludeGridData = a})
+
+-- | Limits the ranges included in the response spreadsheet. Meaningful only
+-- if include_spreadsheet_response is \'true\'.
+busrResponseRanges :: Lens' BatchUpdateSpreadsheetRequest [Text]
+busrResponseRanges
+  = lens _busrResponseRanges
+      (\ s a -> s{_busrResponseRanges = a})
+      . _Default
+      . _Coerce
+
 -- | A list of updates to apply to the spreadsheet.
 busrRequests :: Lens' BatchUpdateSpreadsheetRequest [Request']
 busrRequests
@@ -5942,17 +6226,33 @@
       . _Default
       . _Coerce
 
+-- | Determines if the update response should include the spreadsheet
+-- resource.
+busrIncludeSpreadsheetInResponse :: Lens' BatchUpdateSpreadsheetRequest (Maybe Bool)
+busrIncludeSpreadsheetInResponse
+  = lens _busrIncludeSpreadsheetInResponse
+      (\ s a -> s{_busrIncludeSpreadsheetInResponse = a})
+
 instance FromJSON BatchUpdateSpreadsheetRequest where
         parseJSON
           = withObject "BatchUpdateSpreadsheetRequest"
               (\ o ->
                  BatchUpdateSpreadsheetRequest' <$>
-                   (o .:? "requests" .!= mempty))
+                   (o .:? "responseIncludeGridData") <*>
+                     (o .:? "responseRanges" .!= mempty)
+                     <*> (o .:? "requests" .!= mempty)
+                     <*> (o .:? "includeSpreadsheetInResponse"))
 
 instance ToJSON BatchUpdateSpreadsheetRequest where
         toJSON BatchUpdateSpreadsheetRequest'{..}
           = object
-              (catMaybes [("requests" .=) <$> _busrRequests])
+              (catMaybes
+                 [("responseIncludeGridData" .=) <$>
+                    _busrResponseIncludeGridData,
+                  ("responseRanges" .=) <$> _busrResponseRanges,
+                  ("requests" .=) <$> _busrRequests,
+                  ("includeSpreadsheetInResponse" .=) <$>
+                    _busrIncludeSpreadsheetInResponse])
 
 -- | The response when updating a range of values in a spreadsheet.
 --
@@ -5962,6 +6262,7 @@
     , _uvrSpreadsheetId  :: !(Maybe Text)
     , _uvrUpdatedRows    :: !(Maybe (Textual Int32))
     , _uvrUpdatedRange   :: !(Maybe Text)
+    , _uvrUpdatedData    :: !(Maybe ValueRange)
     , _uvrUpdatedColumns :: !(Maybe (Textual Int32))
     } deriving (Eq,Show,Data,Typeable,Generic)
 
@@ -5977,6 +6278,8 @@
 --
 -- * 'uvrUpdatedRange'
 --
+-- * 'uvrUpdatedData'
+--
 -- * 'uvrUpdatedColumns'
 updateValuesResponse
     :: UpdateValuesResponse
@@ -5986,6 +6289,7 @@
     , _uvrSpreadsheetId = Nothing
     , _uvrUpdatedRows = Nothing
     , _uvrUpdatedRange = Nothing
+    , _uvrUpdatedData = Nothing
     , _uvrUpdatedColumns = Nothing
     }
 
@@ -6015,6 +6319,14 @@
   = lens _uvrUpdatedRange
       (\ s a -> s{_uvrUpdatedRange = a})
 
+-- | The values of the cells after updates were applied. This is only
+-- included if the request\'s \`includeValuesInResponse\` field was
+-- \`true\`.
+uvrUpdatedData :: Lens' UpdateValuesResponse (Maybe ValueRange)
+uvrUpdatedData
+  = lens _uvrUpdatedData
+      (\ s a -> s{_uvrUpdatedData = a})
+
 -- | The number of columns where at least one cell in the column was updated.
 uvrUpdatedColumns :: Lens' UpdateValuesResponse (Maybe Int32)
 uvrUpdatedColumns
@@ -6030,6 +6342,7 @@
                    (o .:? "updatedCells") <*> (o .:? "spreadsheetId")
                      <*> (o .:? "updatedRows")
                      <*> (o .:? "updatedRange")
+                     <*> (o .:? "updatedData")
                      <*> (o .:? "updatedColumns"))
 
 instance ToJSON UpdateValuesResponse where
@@ -6040,6 +6353,7 @@
                   ("spreadsheetId" .=) <$> _uvrSpreadsheetId,
                   ("updatedRows" .=) <$> _uvrUpdatedRows,
                   ("updatedRange" .=) <$> _uvrUpdatedRange,
+                  ("updatedData" .=) <$> _uvrUpdatedData,
                   ("updatedColumns" .=) <$> _uvrUpdatedColumns])
 
 -- | The request to copy a sheet across spreadsheets.
@@ -6850,8 +7164,9 @@
 --
 -- /See:/ 'batchUpdateSpreadsheetResponse' smart constructor.
 data BatchUpdateSpreadsheetResponse = BatchUpdateSpreadsheetResponse'
-    { _busrSpreadsheetId :: !(Maybe Text)
-    , _busrReplies       :: !(Maybe [Response])
+    { _busrSpreadsheetId      :: !(Maybe Text)
+    , _busrReplies            :: !(Maybe [Response])
+    , _busrUpdatedSpreadsheet :: !(Maybe Spreadsheet)
     } deriving (Eq,Show,Data,Typeable,Generic)
 
 -- | Creates a value of 'BatchUpdateSpreadsheetResponse' with the minimum fields required to make a request.
@@ -6861,12 +7176,15 @@
 -- * 'busrSpreadsheetId'
 --
 -- * 'busrReplies'
+--
+-- * 'busrUpdatedSpreadsheet'
 batchUpdateSpreadsheetResponse
     :: BatchUpdateSpreadsheetResponse
 batchUpdateSpreadsheetResponse =
     BatchUpdateSpreadsheetResponse'
     { _busrSpreadsheetId = Nothing
     , _busrReplies = Nothing
+    , _busrUpdatedSpreadsheet = Nothing
     }
 
 -- | The spreadsheet the updates were applied to.
@@ -6883,6 +7201,14 @@
       _Default
       . _Coerce
 
+-- | The spreadsheet after updates were applied. This is only set if
+-- [BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is
+-- \`true\`.
+busrUpdatedSpreadsheet :: Lens' BatchUpdateSpreadsheetResponse (Maybe Spreadsheet)
+busrUpdatedSpreadsheet
+  = lens _busrUpdatedSpreadsheet
+      (\ s a -> s{_busrUpdatedSpreadsheet = a})
+
 instance FromJSON BatchUpdateSpreadsheetResponse
          where
         parseJSON
@@ -6890,14 +7216,17 @@
               (\ o ->
                  BatchUpdateSpreadsheetResponse' <$>
                    (o .:? "spreadsheetId") <*>
-                     (o .:? "replies" .!= mempty))
+                     (o .:? "replies" .!= mempty)
+                     <*> (o .:? "updatedSpreadsheet"))
 
 instance ToJSON BatchUpdateSpreadsheetResponse where
         toJSON BatchUpdateSpreadsheetResponse'{..}
           = object
               (catMaybes
                  [("spreadsheetId" .=) <$> _busrSpreadsheetId,
-                  ("replies" .=) <$> _busrReplies])
+                  ("replies" .=) <$> _busrReplies,
+                  ("updatedSpreadsheet" .=) <$>
+                    _busrUpdatedSpreadsheet])
 
 -- | Sets a data validation rule to every cell in the range. To clear
 -- validation in a range, call this with no rule specified.
@@ -6947,6 +7276,96 @@
                  [("rule" .=) <$> _sdvrRule,
                   ("range" .=) <$> _sdvrRange])
 
+-- | Properties referring a single dimension (either row or column). If both
+-- BandedRange.row_properties and BandedRange.column_properties are set,
+-- the fill colors are applied to cells according to the following rules: *
+-- header_color and footer_color take priority over band colors. *
+-- first_band_color takes priority over second_band_color. * row_properties
+-- takes priority over column_properties. For example, the first row color
+-- takes priority over the first column color, but the first column color
+-- takes priority over the second row color. Similarly, the row header
+-- takes priority over the column header in the top left cell, but the
+-- column header takes priority over the first row color if the row header
+-- is not set.
+--
+-- /See:/ 'bandingProperties' smart constructor.
+data BandingProperties = BandingProperties'
+    { _bpSecondBandColor :: !(Maybe Color)
+    , _bpHeaderColor     :: !(Maybe Color)
+    , _bpFooterColor     :: !(Maybe Color)
+    , _bpFirstBandColor  :: !(Maybe Color)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'BandingProperties' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'bpSecondBandColor'
+--
+-- * 'bpHeaderColor'
+--
+-- * 'bpFooterColor'
+--
+-- * 'bpFirstBandColor'
+bandingProperties
+    :: BandingProperties
+bandingProperties =
+    BandingProperties'
+    { _bpSecondBandColor = Nothing
+    , _bpHeaderColor = Nothing
+    , _bpFooterColor = Nothing
+    , _bpFirstBandColor = Nothing
+    }
+
+-- | The second color that is alternating. (Required)
+bpSecondBandColor :: Lens' BandingProperties (Maybe Color)
+bpSecondBandColor
+  = lens _bpSecondBandColor
+      (\ s a -> s{_bpSecondBandColor = a})
+
+-- | The color of the first row or column. If this field is set, the first
+-- row or column will be filled with this color and the colors will
+-- alternate between first_band_color and second_band_color starting from
+-- the second row or column. Otherwise, the first row or column will be
+-- filled with first_band_color and the colors will proceed to alternate as
+-- they normally would.
+bpHeaderColor :: Lens' BandingProperties (Maybe Color)
+bpHeaderColor
+  = lens _bpHeaderColor
+      (\ s a -> s{_bpHeaderColor = a})
+
+-- | The color of the last row or column. If this field is not set, the last
+-- row or column will be filled with either first_band_color or
+-- second_band_color, depending on the color of the previous row or column.
+bpFooterColor :: Lens' BandingProperties (Maybe Color)
+bpFooterColor
+  = lens _bpFooterColor
+      (\ s a -> s{_bpFooterColor = a})
+
+-- | The first color that is alternating. (Required)
+bpFirstBandColor :: Lens' BandingProperties (Maybe Color)
+bpFirstBandColor
+  = lens _bpFirstBandColor
+      (\ s a -> s{_bpFirstBandColor = a})
+
+instance FromJSON BandingProperties where
+        parseJSON
+          = withObject "BandingProperties"
+              (\ o ->
+                 BandingProperties' <$>
+                   (o .:? "secondBandColor") <*> (o .:? "headerColor")
+                     <*> (o .:? "footerColor")
+                     <*> (o .:? "firstBandColor"))
+
+instance ToJSON BandingProperties where
+        toJSON BandingProperties'{..}
+          = object
+              (catMaybes
+                 [("secondBandColor" .=) <$> _bpSecondBandColor,
+                  ("headerColor" .=) <$> _bpHeaderColor,
+                  ("footerColor" .=) <$> _bpFooterColor,
+                  ("firstBandColor" .=) <$> _bpFirstBandColor])
+
 -- | Duplicates a particular filter view.
 --
 -- /See:/ 'duplicateFilterViewRequest' smart constructor.
@@ -7073,6 +7492,41 @@
                   ("showTotals" .=) <$> _pgShowTotals,
                   ("valueBucket" .=) <$> _pgValueBucket])
 
+-- | The result of adding a banded range.
+--
+-- /See:/ 'addBandingResponse' smart constructor.
+newtype AddBandingResponse = AddBandingResponse'
+    { _aBandedRange :: Maybe BandedRange
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'AddBandingResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'aBandedRange'
+addBandingResponse
+    :: AddBandingResponse
+addBandingResponse =
+    AddBandingResponse'
+    { _aBandedRange = Nothing
+    }
+
+-- | The banded range that was added.
+aBandedRange :: Lens' AddBandingResponse (Maybe BandedRange)
+aBandedRange
+  = lens _aBandedRange (\ s a -> s{_aBandedRange = a})
+
+instance FromJSON AddBandingResponse where
+        parseJSON
+          = withObject "AddBandingResponse"
+              (\ o ->
+                 AddBandingResponse' <$> (o .:? "bandedRange"))
+
+instance ToJSON AddBandingResponse where
+        toJSON AddBandingResponse'{..}
+          = object
+              (catMaybes [("bandedRange" .=) <$> _aBandedRange])
+
 -- | A rule describing a conditional format.
 --
 -- /See:/ 'conditionalFormatRule' smart constructor.
@@ -7517,6 +7971,55 @@
         toJSON BasicChartDomain'{..}
           = object (catMaybes [("domain" .=) <$> _bcdDomain])
 
+-- | Inserts cells into a range, shifting the existing cells over or down.
+--
+-- /See:/ 'insertRangeRequest' smart constructor.
+data InsertRangeRequest = InsertRangeRequest'
+    { _irrShiftDimension :: !(Maybe InsertRangeRequestShiftDimension)
+    , _irrRange          :: !(Maybe GridRange)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'InsertRangeRequest' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'irrShiftDimension'
+--
+-- * 'irrRange'
+insertRangeRequest
+    :: InsertRangeRequest
+insertRangeRequest =
+    InsertRangeRequest'
+    { _irrShiftDimension = Nothing
+    , _irrRange = Nothing
+    }
+
+-- | The dimension which will be shifted when inserting cells. If ROWS,
+-- existing cells will be shifted down. If COLUMNS, existing cells will be
+-- shifted right.
+irrShiftDimension :: Lens' InsertRangeRequest (Maybe InsertRangeRequestShiftDimension)
+irrShiftDimension
+  = lens _irrShiftDimension
+      (\ s a -> s{_irrShiftDimension = a})
+
+-- | The range to insert new cells into.
+irrRange :: Lens' InsertRangeRequest (Maybe GridRange)
+irrRange = lens _irrRange (\ s a -> s{_irrRange = a})
+
+instance FromJSON InsertRangeRequest where
+        parseJSON
+          = withObject "InsertRangeRequest"
+              (\ o ->
+                 InsertRangeRequest' <$>
+                   (o .:? "shiftDimension") <*> (o .:? "range"))
+
+instance ToJSON InsertRangeRequest where
+        toJSON InsertRangeRequest'{..}
+          = object
+              (catMaybes
+                 [("shiftDimension" .=) <$> _irrShiftDimension,
+                  ("range" .=) <$> _irrRange])
+
 -- | The amount of padding around the cell, in pixels. When updating padding,
 -- every field must be specified.
 --
@@ -7721,6 +8224,56 @@
                   ("pixelSize" .=) <$> _dpPixelSize,
                   ("hiddenByUser" .=) <$> _dpHiddenByUser])
 
+-- | Updates properties of the supplied banded range.
+--
+-- /See:/ 'updateBandingRequest' smart constructor.
+data UpdateBandingRequest = UpdateBandingRequest'
+    { _ubrBandedRange :: !(Maybe BandedRange)
+    , _ubrFields      :: !(Maybe FieldMask)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'UpdateBandingRequest' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ubrBandedRange'
+--
+-- * 'ubrFields'
+updateBandingRequest
+    :: UpdateBandingRequest
+updateBandingRequest =
+    UpdateBandingRequest'
+    { _ubrBandedRange = Nothing
+    , _ubrFields = Nothing
+    }
+
+-- | The banded range to update with the new properties.
+ubrBandedRange :: Lens' UpdateBandingRequest (Maybe BandedRange)
+ubrBandedRange
+  = lens _ubrBandedRange
+      (\ s a -> s{_ubrBandedRange = a})
+
+-- | The fields that should be updated. At least one field must be specified.
+-- The root \`bandedRange\` is implied and should not be specified. A
+-- single \`\"*\"\` can be used as short-hand for listing every field.
+ubrFields :: Lens' UpdateBandingRequest (Maybe FieldMask)
+ubrFields
+  = lens _ubrFields (\ s a -> s{_ubrFields = a})
+
+instance FromJSON UpdateBandingRequest where
+        parseJSON
+          = withObject "UpdateBandingRequest"
+              (\ o ->
+                 UpdateBandingRequest' <$>
+                   (o .:? "bandedRange") <*> (o .:? "fields"))
+
+instance ToJSON UpdateBandingRequest where
+        toJSON UpdateBandingRequest'{..}
+          = object
+              (catMaybes
+                 [("bandedRange" .=) <$> _ubrBandedRange,
+                  ("fields" .=) <$> _ubrFields])
+
 -- | The response when retrieving more than one range of values in a
 -- spreadsheet.
 --
@@ -7775,6 +8328,44 @@
                  [("spreadsheetId" .=) <$> _bgvrSpreadsheetId,
                   ("valueRanges" .=) <$> _bgvrValueRanges])
 
+-- | Removes the banded range with the given ID from the spreadsheet.
+--
+-- /See:/ 'deleteBandingRequest' smart constructor.
+newtype DeleteBandingRequest = DeleteBandingRequest'
+    { _dbrBandedRangeId :: Maybe (Textual Int32)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'DeleteBandingRequest' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dbrBandedRangeId'
+deleteBandingRequest
+    :: DeleteBandingRequest
+deleteBandingRequest =
+    DeleteBandingRequest'
+    { _dbrBandedRangeId = Nothing
+    }
+
+-- | The ID of the banded range to delete.
+dbrBandedRangeId :: Lens' DeleteBandingRequest (Maybe Int32)
+dbrBandedRangeId
+  = lens _dbrBandedRangeId
+      (\ s a -> s{_dbrBandedRangeId = a})
+      . mapping _Coerce
+
+instance FromJSON DeleteBandingRequest where
+        parseJSON
+          = withObject "DeleteBandingRequest"
+              (\ o ->
+                 DeleteBandingRequest' <$> (o .:? "bandedRangeId"))
+
+instance ToJSON DeleteBandingRequest where
+        toJSON DeleteBandingRequest'{..}
+          = object
+              (catMaybes
+                 [("bandedRangeId" .=) <$> _dbrBandedRangeId])
+
 -- | A single kind of update to apply to a spreadsheet.
 --
 -- /See:/ 'request'' smart constructor.
@@ -7788,10 +8379,14 @@
     , _reqSortRange                    :: !(Maybe SortRangeRequest)
     , _reqUpdateNamedRange             :: !(Maybe UpdateNamedRangeRequest)
     , _reqDeleteNamedRange             :: !(Maybe DeleteNamedRangeRequest)
+    , _reqInsertRange                  :: !(Maybe InsertRangeRequest)
+    , _reqDeleteBanding                :: !(Maybe DeleteBandingRequest)
+    , _reqUpdateBanding                :: !(Maybe UpdateBandingRequest)
     , _reqClearBasicFilter             :: !(Maybe ClearBasicFilterRequest)
     , _reqAppendCells                  :: !(Maybe AppendCellsRequest)
     , _reqPasteData                    :: !(Maybe PasteDataRequest)
     , _reqUpdateEmbeddedObjectPosition :: !(Maybe UpdateEmbeddedObjectPositionRequest)
+    , _reqDeleteRange                  :: !(Maybe DeleteRangeRequest)
     , _reqCopyPaste                    :: !(Maybe CopyPasteRequest)
     , _reqAutoResizeDimensions         :: !(Maybe AutoResizeDimensionsRequest)
     , _reqAddSheet                     :: !(Maybe AddSheetRequest)
@@ -7811,6 +8406,7 @@
     , _reqMergeCells                   :: !(Maybe MergeCellsRequest)
     , _reqAddNamedRange                :: !(Maybe AddNamedRangeRequest)
     , _reqAddChart                     :: !(Maybe AddChartRequest)
+    , _reqAddBanding                   :: !(Maybe AddBandingRequest)
     , _reqDuplicateSheet               :: !(Maybe DuplicateSheetRequest)
     , _reqAutoFill                     :: !(Maybe AutoFillRequest)
     , _reqUpdateDimensionProperties    :: !(Maybe UpdateDimensionPropertiesRequest)
@@ -7847,6 +8443,12 @@
 --
 -- * 'reqDeleteNamedRange'
 --
+-- * 'reqInsertRange'
+--
+-- * 'reqDeleteBanding'
+--
+-- * 'reqUpdateBanding'
+--
 -- * 'reqClearBasicFilter'
 --
 -- * 'reqAppendCells'
@@ -7855,6 +8457,8 @@
 --
 -- * 'reqUpdateEmbeddedObjectPosition'
 --
+-- * 'reqDeleteRange'
+--
 -- * 'reqCopyPaste'
 --
 -- * 'reqAutoResizeDimensions'
@@ -7893,6 +8497,8 @@
 --
 -- * 'reqAddChart'
 --
+-- * 'reqAddBanding'
+--
 -- * 'reqDuplicateSheet'
 --
 -- * 'reqAutoFill'
@@ -7929,10 +8535,14 @@
     , _reqSortRange = Nothing
     , _reqUpdateNamedRange = Nothing
     , _reqDeleteNamedRange = Nothing
+    , _reqInsertRange = Nothing
+    , _reqDeleteBanding = Nothing
+    , _reqUpdateBanding = Nothing
     , _reqClearBasicFilter = Nothing
     , _reqAppendCells = Nothing
     , _reqPasteData = Nothing
     , _reqUpdateEmbeddedObjectPosition = Nothing
+    , _reqDeleteRange = Nothing
     , _reqCopyPaste = Nothing
     , _reqAutoResizeDimensions = Nothing
     , _reqAddSheet = Nothing
@@ -7952,6 +8562,7 @@
     , _reqMergeCells = Nothing
     , _reqAddNamedRange = Nothing
     , _reqAddChart = Nothing
+    , _reqAddBanding = Nothing
     , _reqDuplicateSheet = Nothing
     , _reqAutoFill = Nothing
     , _reqUpdateDimensionProperties = Nothing
@@ -8019,6 +8630,24 @@
   = lens _reqDeleteNamedRange
       (\ s a -> s{_reqDeleteNamedRange = a})
 
+-- | Inserts new cells in a sheet, shifting the existing cells.
+reqInsertRange :: Lens' Request' (Maybe InsertRangeRequest)
+reqInsertRange
+  = lens _reqInsertRange
+      (\ s a -> s{_reqInsertRange = a})
+
+-- | Removes a banded range
+reqDeleteBanding :: Lens' Request' (Maybe DeleteBandingRequest)
+reqDeleteBanding
+  = lens _reqDeleteBanding
+      (\ s a -> s{_reqDeleteBanding = a})
+
+-- | Updates a banded range
+reqUpdateBanding :: Lens' Request' (Maybe UpdateBandingRequest)
+reqUpdateBanding
+  = lens _reqUpdateBanding
+      (\ s a -> s{_reqUpdateBanding = a})
+
 -- | Clears the basic filter on a sheet.
 reqClearBasicFilter :: Lens' Request' (Maybe ClearBasicFilterRequest)
 reqClearBasicFilter
@@ -8042,6 +8671,12 @@
   = lens _reqUpdateEmbeddedObjectPosition
       (\ s a -> s{_reqUpdateEmbeddedObjectPosition = a})
 
+-- | Deletes a range of cells from a sheet, shifting the remaining cells.
+reqDeleteRange :: Lens' Request' (Maybe DeleteRangeRequest)
+reqDeleteRange
+  = lens _reqDeleteRange
+      (\ s a -> s{_reqDeleteRange = a})
+
 -- | Copies data from one area and pastes it to another.
 reqCopyPaste :: Lens' Request' (Maybe CopyPasteRequest)
 reqCopyPaste
@@ -8153,6 +8788,12 @@
 reqAddChart
   = lens _reqAddChart (\ s a -> s{_reqAddChart = a})
 
+-- | Adds a new banded range
+reqAddBanding :: Lens' Request' (Maybe AddBandingRequest)
+reqAddBanding
+  = lens _reqAddBanding
+      (\ s a -> s{_reqAddBanding = a})
+
 -- | Duplicates a sheet.
 reqDuplicateSheet :: Lens' Request' (Maybe DuplicateSheetRequest)
 reqDuplicateSheet
@@ -8238,10 +8879,14 @@
                      <*> (o .:? "sortRange")
                      <*> (o .:? "updateNamedRange")
                      <*> (o .:? "deleteNamedRange")
+                     <*> (o .:? "insertRange")
+                     <*> (o .:? "deleteBanding")
+                     <*> (o .:? "updateBanding")
                      <*> (o .:? "clearBasicFilter")
                      <*> (o .:? "appendCells")
                      <*> (o .:? "pasteData")
                      <*> (o .:? "updateEmbeddedObjectPosition")
+                     <*> (o .:? "deleteRange")
                      <*> (o .:? "copyPaste")
                      <*> (o .:? "autoResizeDimensions")
                      <*> (o .:? "addSheet")
@@ -8261,6 +8906,7 @@
                      <*> (o .:? "mergeCells")
                      <*> (o .:? "addNamedRange")
                      <*> (o .:? "addChart")
+                     <*> (o .:? "addBanding")
                      <*> (o .:? "duplicateSheet")
                      <*> (o .:? "autoFill")
                      <*> (o .:? "updateDimensionProperties")
@@ -8291,11 +8937,15 @@
                   ("sortRange" .=) <$> _reqSortRange,
                   ("updateNamedRange" .=) <$> _reqUpdateNamedRange,
                   ("deleteNamedRange" .=) <$> _reqDeleteNamedRange,
+                  ("insertRange" .=) <$> _reqInsertRange,
+                  ("deleteBanding" .=) <$> _reqDeleteBanding,
+                  ("updateBanding" .=) <$> _reqUpdateBanding,
                   ("clearBasicFilter" .=) <$> _reqClearBasicFilter,
                   ("appendCells" .=) <$> _reqAppendCells,
                   ("pasteData" .=) <$> _reqPasteData,
                   ("updateEmbeddedObjectPosition" .=) <$>
                     _reqUpdateEmbeddedObjectPosition,
+                  ("deleteRange" .=) <$> _reqDeleteRange,
                   ("copyPaste" .=) <$> _reqCopyPaste,
                   ("autoResizeDimensions" .=) <$>
                     _reqAutoResizeDimensions,
@@ -8320,6 +8970,7 @@
                   ("mergeCells" .=) <$> _reqMergeCells,
                   ("addNamedRange" .=) <$> _reqAddNamedRange,
                   ("addChart" .=) <$> _reqAddChart,
+                  ("addBanding" .=) <$> _reqAddBanding,
                   ("duplicateSheet" .=) <$> _reqDuplicateSheet,
                   ("autoFill" .=) <$> _reqAutoFill,
                   ("updateDimensionProperties" .=) <$>
diff --git a/gen/Network/Google/Sheets/Types/Sum.hs b/gen/Network/Google/Sheets/Types/Sum.hs
--- a/gen/Network/Google/Sheets/Types/Sum.hs
+++ b/gen/Network/Google/Sheets/Types/Sum.hs
@@ -114,6 +114,43 @@
 instance ToJSON BasicChartAxisPosition where
     toJSON = toJSONText
 
+-- | The dimension from which deleted cells will be replaced with. If ROWS,
+-- existing cells will be shifted upward to replace the deleted cells. If
+-- COLUMNS, existing cells will be shifted left to replace the deleted
+-- cells.
+data DeleteRangeRequestShiftDimension
+    = DimensionUnspecified
+      -- ^ @DIMENSION_UNSPECIFIED@
+      -- The default value, do not use.
+    | Rows
+      -- ^ @ROWS@
+      -- Operates on the rows of a sheet.
+    | Columns
+      -- ^ @COLUMNS@
+      -- Operates on the columns of a sheet.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable DeleteRangeRequestShiftDimension
+
+instance FromHttpApiData DeleteRangeRequestShiftDimension where
+    parseQueryParam = \case
+        "DIMENSION_UNSPECIFIED" -> Right DimensionUnspecified
+        "ROWS" -> Right Rows
+        "COLUMNS" -> Right Columns
+        x -> Left ("Unable to parse DeleteRangeRequestShiftDimension from: " <> x)
+
+instance ToHttpApiData DeleteRangeRequestShiftDimension where
+    toQueryParam = \case
+        DimensionUnspecified -> "DIMENSION_UNSPECIFIED"
+        Rows -> "ROWS"
+        Columns -> "COLUMNS"
+
+instance FromJSON DeleteRangeRequestShiftDimension where
+    parseJSON = parseJSONText "DeleteRangeRequestShiftDimension"
+
+instance ToJSON DeleteRangeRequestShiftDimension where
+    toJSON = toJSONText
+
 -- | The minor axis that will specify the range of values for this series.
 -- For example, if charting stocks over time, the \"Volume\" series may
 -- want to be pinned to the right with the prices pinned to the left,
@@ -161,15 +198,55 @@
 instance ToJSON BasicChartSeriesTargetAxis where
     toJSON = toJSONText
 
+-- | Determines how dates, times, and durations in the response should be
+-- rendered. This is ignored if response_value_render_option is
+-- FORMATTED_VALUE. The default dateTime render option is
+-- [DateTimeRenderOption.SERIAL_NUMBER].
+data BatchUpdateValuesRequestResponseDateTimeRenderOption
+    = SerialNumber
+      -- ^ @SERIAL_NUMBER@
+      -- Instructs date, time, datetime, and duration fields to be output as
+      -- doubles in \"serial number\" format, as popularized by Lotus 1-2-3. Days
+      -- are counted from December 31st 1899 and are incremented by 1, and times
+      -- are fractions of a day. For example, January 1st 1900 at noon would be
+      -- 1.5, 1 because it\'s 1 day offset from December 31st 1899, and .5
+      -- because noon is half a day. February 1st 1900 at 3pm would be 32.625.
+      -- This correctly treats the year 1900 as not a leap year.
+    | FormattedString
+      -- ^ @FORMATTED_STRING@
+      -- Instructs date, time, datetime, and duration fields to be output as
+      -- strings in their given number format (which is dependent on the
+      -- spreadsheet locale).
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable BatchUpdateValuesRequestResponseDateTimeRenderOption
+
+instance FromHttpApiData BatchUpdateValuesRequestResponseDateTimeRenderOption where
+    parseQueryParam = \case
+        "SERIAL_NUMBER" -> Right SerialNumber
+        "FORMATTED_STRING" -> Right FormattedString
+        x -> Left ("Unable to parse BatchUpdateValuesRequestResponseDateTimeRenderOption from: " <> x)
+
+instance ToHttpApiData BatchUpdateValuesRequestResponseDateTimeRenderOption where
+    toQueryParam = \case
+        SerialNumber -> "SERIAL_NUMBER"
+        FormattedString -> "FORMATTED_STRING"
+
+instance FromJSON BatchUpdateValuesRequestResponseDateTimeRenderOption where
+    parseJSON = parseJSONText "BatchUpdateValuesRequestResponseDateTimeRenderOption"
+
+instance ToJSON BatchUpdateValuesRequestResponseDateTimeRenderOption where
+    toJSON = toJSONText
+
 -- | Whether rows or columns should be appended.
 data AppendDimensionRequestDimension
-    = DimensionUnspecified
+    = ADRDDimensionUnspecified
       -- ^ @DIMENSION_UNSPECIFIED@
       -- The default value, do not use.
-    | Rows
+    | ADRDRows
       -- ^ @ROWS@
       -- Operates on the rows of a sheet.
-    | Columns
+    | ADRDColumns
       -- ^ @COLUMNS@
       -- Operates on the columns of a sheet.
       deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
@@ -178,16 +255,16 @@
 
 instance FromHttpApiData AppendDimensionRequestDimension where
     parseQueryParam = \case
-        "DIMENSION_UNSPECIFIED" -> Right DimensionUnspecified
-        "ROWS" -> Right Rows
-        "COLUMNS" -> Right Columns
+        "DIMENSION_UNSPECIFIED" -> Right ADRDDimensionUnspecified
+        "ROWS" -> Right ADRDRows
+        "COLUMNS" -> Right ADRDColumns
         x -> Left ("Unable to parse AppendDimensionRequestDimension from: " <> x)
 
 instance ToHttpApiData AppendDimensionRequestDimension where
     toQueryParam = \case
-        DimensionUnspecified -> "DIMENSION_UNSPECIFIED"
-        Rows -> "ROWS"
-        Columns -> "COLUMNS"
+        ADRDDimensionUnspecified -> "DIMENSION_UNSPECIFIED"
+        ADRDRows -> "ROWS"
+        ADRDColumns -> "COLUMNS"
 
 instance FromJSON AppendDimensionRequestDimension where
     parseJSON = parseJSONText "AppendDimensionRequestDimension"
@@ -358,6 +435,49 @@
 instance ToJSON BatchUpdateValuesRequestValueInputOption where
     toJSON = toJSONText
 
+-- | Determines how values in the response should be rendered. The default
+-- render option is ValueRenderOption.FORMATTED_VALUE.
+data BatchUpdateValuesRequestResponseValueRenderOption
+    = FormattedValue
+      -- ^ @FORMATTED_VALUE@
+      -- Values will be calculated & formatted in the reply according to the
+      -- cell\'s formatting. Formatting is based on the spreadsheet\'s locale,
+      -- not the requesting user\'s locale. For example, if \`A1\` is \`1.23\`
+      -- and \`A2\` is \`=A1\` and formatted as currency, then \`A2\` would
+      -- return \`\"$1.23\"\`.
+    | UnformattedValue
+      -- ^ @UNFORMATTED_VALUE@
+      -- Values will be calculated, but not formatted in the reply. For example,
+      -- if \`A1\` is \`1.23\` and \`A2\` is \`=A1\` and formatted as currency,
+      -- then \`A2\` would return the number \`1.23\`.
+    | Formula
+      -- ^ @FORMULA@
+      -- Values will not be calculated. The reply will include the formulas. For
+      -- example, if \`A1\` is \`1.23\` and \`A2\` is \`=A1\` and formatted as
+      -- currency, then A2 would return \`\"=A1\"\`.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable BatchUpdateValuesRequestResponseValueRenderOption
+
+instance FromHttpApiData BatchUpdateValuesRequestResponseValueRenderOption where
+    parseQueryParam = \case
+        "FORMATTED_VALUE" -> Right FormattedValue
+        "UNFORMATTED_VALUE" -> Right UnformattedValue
+        "FORMULA" -> Right Formula
+        x -> Left ("Unable to parse BatchUpdateValuesRequestResponseValueRenderOption from: " <> x)
+
+instance ToHttpApiData BatchUpdateValuesRequestResponseValueRenderOption where
+    toQueryParam = \case
+        FormattedValue -> "FORMATTED_VALUE"
+        UnformattedValue -> "UNFORMATTED_VALUE"
+        Formula -> "FORMULA"
+
+instance FromJSON BatchUpdateValuesRequestResponseValueRenderOption where
+    parseJSON = parseJSONText "BatchUpdateValuesRequestResponseValueRenderOption"
+
+instance ToJSON BatchUpdateValuesRequestResponseValueRenderOption where
+    toJSON = toJSONText
+
 -- | Where the legend of the pie chart should be drawn.
 data PieChartSpecLegendPosition
     = PieChartLegendPositionUnspecified
@@ -1840,4 +1960,40 @@
     parseJSON = parseJSONText "TextToColumnsRequestDelimiterType"
 
 instance ToJSON TextToColumnsRequestDelimiterType where
+    toJSON = toJSONText
+
+-- | The dimension which will be shifted when inserting cells. If ROWS,
+-- existing cells will be shifted down. If COLUMNS, existing cells will be
+-- shifted right.
+data InsertRangeRequestShiftDimension
+    = IRRSDDimensionUnspecified
+      -- ^ @DIMENSION_UNSPECIFIED@
+      -- The default value, do not use.
+    | IRRSDRows
+      -- ^ @ROWS@
+      -- Operates on the rows of a sheet.
+    | IRRSDColumns
+      -- ^ @COLUMNS@
+      -- Operates on the columns of a sheet.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable InsertRangeRequestShiftDimension
+
+instance FromHttpApiData InsertRangeRequestShiftDimension where
+    parseQueryParam = \case
+        "DIMENSION_UNSPECIFIED" -> Right IRRSDDimensionUnspecified
+        "ROWS" -> Right IRRSDRows
+        "COLUMNS" -> Right IRRSDColumns
+        x -> Left ("Unable to parse InsertRangeRequestShiftDimension from: " <> x)
+
+instance ToHttpApiData InsertRangeRequestShiftDimension where
+    toQueryParam = \case
+        IRRSDDimensionUnspecified -> "DIMENSION_UNSPECIFIED"
+        IRRSDRows -> "ROWS"
+        IRRSDColumns -> "COLUMNS"
+
+instance FromJSON InsertRangeRequestShiftDimension where
+    parseJSON = parseJSONText "InsertRangeRequestShiftDimension"
+
+instance ToJSON InsertRangeRequestShiftDimension where
     toJSON = toJSONText
diff --git a/gogol-sheets.cabal b/gogol-sheets.cabal
--- a/gogol-sheets.cabal
+++ b/gogol-sheets.cabal
@@ -1,5 +1,5 @@
 name:                  gogol-sheets
-version:               0.1.1
+version:               0.2.0
 synopsis:              Google Sheets SDK.
 homepage:              https://github.com/brendanhay/gogol
 bug-reports:           https://github.com/brendanhay/gogol/issues
@@ -52,5 +52,5 @@
         , Network.Google.Sheets.Types.Sum
 
     build-depends:
-          gogol-core == 0.1.1.*
+          gogol-core == 0.2.0.*
         , base       >= 4.7 && < 5
