diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`0.3.0`
+`0.5.0`
 
 
 ## Description
diff --git a/gen/Network/Google/DriveActivity.hs b/gen/Network/Google/DriveActivity.hs
--- a/gen/Network/Google/DriveActivity.hs
+++ b/gen/Network/Google/DriveActivity.hs
@@ -40,6 +40,13 @@
     , suggestion
     , sSubtype
 
+    -- ** Drive
+    , Drive
+    , drive
+    , dRoot
+    , dName
+    , dTitle
+
     -- ** Impersonation
     , Impersonation
     , impersonation
@@ -64,6 +71,12 @@
     , adDelete
     , adMove
 
+    -- ** DriveReference
+    , DriveReference
+    , driveReference
+    , drName
+    , drTitle
+
     -- ** PermissionRole
     , PermissionRole (..)
 
@@ -73,6 +86,10 @@
     , gEmail
     , gTitle
 
+    -- ** DriveFile
+    , DriveFile
+    , driveFile
+
     -- ** TimeRange
     , TimeRange
     , timeRange
@@ -82,6 +99,9 @@
     -- ** RestrictionChangeNewRestriction
     , RestrictionChangeNewRestriction (..)
 
+    -- ** DriveFolderType
+    , DriveFolderType (..)
+
     -- ** QueryDriveActivityRequest
     , QueryDriveActivityRequest
     , queryDriveActivityRequest
@@ -95,8 +115,10 @@
     -- ** DriveItemReference
     , DriveItemReference
     , driveItemReference
+    , dirDriveFile
     , dirFolder
     , dirName
+    , dirDriveFolder
     , dirTitle
     , dirFile
 
@@ -109,6 +131,7 @@
     -- ** TargetReference
     , TargetReference
     , targetReference
+    , trDrive
     , trTeamDrive
     , trDriveItem
 
@@ -142,8 +165,8 @@
     -- ** Domain
     , Domain
     , domain
-    , dLegacyId
-    , dName
+    , domLegacyId
+    , domName
 
     -- ** Administrator
     , Administrator
@@ -194,6 +217,7 @@
     -- ** Owner
     , Owner
     , owner
+    , oDrive
     , oDomain
     , oTeamDrive
     , oUser
@@ -256,6 +280,11 @@
     , AnonymousUser
     , anonymousUser
 
+    -- ** DriveFolder
+    , DriveFolder
+    , driveFolder
+    , dfType
+
     -- ** Anyone
     , Anyone
     , anyone
@@ -344,6 +373,7 @@
     -- ** Target
     , Target
     , target
+    , tDrive
     , tTeamDrive
     , tFileComment
     , tDriveItem
@@ -370,10 +400,12 @@
     -- ** DriveItem
     , DriveItem
     , driveItem
+    , diDriveFile
     , diFolder
     , diOwner
     , diMimeType
     , diName
+    , diDriveFolder
     , diTitle
     , diFile
 
diff --git a/gen/Network/Google/DriveActivity/Types.hs b/gen/Network/Google/DriveActivity/Types.hs
--- a/gen/Network/Google/DriveActivity/Types.hs
+++ b/gen/Network/Google/DriveActivity/Types.hs
@@ -28,6 +28,13 @@
     , suggestion
     , sSubtype
 
+    -- * Drive
+    , Drive
+    , drive
+    , dRoot
+    , dName
+    , dTitle
+
     -- * Impersonation
     , Impersonation
     , impersonation
@@ -52,6 +59,12 @@
     , adDelete
     , adMove
 
+    -- * DriveReference
+    , DriveReference
+    , driveReference
+    , drName
+    , drTitle
+
     -- * PermissionRole
     , PermissionRole (..)
 
@@ -61,6 +74,10 @@
     , gEmail
     , gTitle
 
+    -- * DriveFile
+    , DriveFile
+    , driveFile
+
     -- * TimeRange
     , TimeRange
     , timeRange
@@ -70,6 +87,9 @@
     -- * RestrictionChangeNewRestriction
     , RestrictionChangeNewRestriction (..)
 
+    -- * DriveFolderType
+    , DriveFolderType (..)
+
     -- * QueryDriveActivityRequest
     , QueryDriveActivityRequest
     , queryDriveActivityRequest
@@ -83,8 +103,10 @@
     -- * DriveItemReference
     , DriveItemReference
     , driveItemReference
+    , dirDriveFile
     , dirFolder
     , dirName
+    , dirDriveFolder
     , dirTitle
     , dirFile
 
@@ -97,6 +119,7 @@
     -- * TargetReference
     , TargetReference
     , targetReference
+    , trDrive
     , trTeamDrive
     , trDriveItem
 
@@ -130,8 +153,8 @@
     -- * Domain
     , Domain
     , domain
-    , dLegacyId
-    , dName
+    , domLegacyId
+    , domName
 
     -- * Administrator
     , Administrator
@@ -182,6 +205,7 @@
     -- * Owner
     , Owner
     , owner
+    , oDrive
     , oDomain
     , oTeamDrive
     , oUser
@@ -244,6 +268,11 @@
     , AnonymousUser
     , anonymousUser
 
+    -- * DriveFolder
+    , DriveFolder
+    , driveFolder
+    , dfType
+
     -- * Anyone
     , Anyone
     , anyone
@@ -332,6 +361,7 @@
     -- * Target
     , Target
     , target
+    , tDrive
     , tTeamDrive
     , tFileComment
     , tDriveItem
@@ -358,10 +388,12 @@
     -- * DriveItem
     , DriveItem
     , driveItem
+    , diDriveFile
     , diFolder
     , diOwner
     , diMimeType
     , diName
+    , diDriveFolder
     , diTitle
     , diFile
 
@@ -383,8 +415,8 @@
 
 -- | View the activity record of files in your Google Drive
 driveActivityReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/drive.activity.readonly"]
-driveActivityReadOnlyScope = Proxy;
+driveActivityReadOnlyScope = Proxy
 
 -- | View and add to the activity record of files in your Google Drive
 driveActivityScope :: Proxy '["https://www.googleapis.com/auth/drive.activity"]
-driveActivityScope = Proxy;
+driveActivityScope = Proxy
diff --git a/gen/Network/Google/DriveActivity/Types/Product.hs b/gen/Network/Google/DriveActivity/Types/Product.hs
--- a/gen/Network/Google/DriveActivity/Types/Product.hs
+++ b/gen/Network/Google/DriveActivity/Types/Product.hs
@@ -23,10 +23,13 @@
 -- | A suggestion.
 --
 -- /See:/ 'suggestion' smart constructor.
-newtype Suggestion = Suggestion'
+newtype Suggestion =
+  Suggestion'
     { _sSubtype :: Maybe SuggestionSubtype
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Suggestion' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -34,11 +37,9 @@
 -- * 'sSubtype'
 suggestion
     :: Suggestion
-suggestion =
-    Suggestion'
-    { _sSubtype = Nothing
-    }
+suggestion = Suggestion' {_sSubtype = Nothing}
 
+
 -- | The sub-type of this event.
 sSubtype :: Lens' Suggestion (Maybe SuggestionSubtype)
 sSubtype = lens _sSubtype (\ s a -> s{_sSubtype = a})
@@ -52,14 +53,72 @@
         toJSON Suggestion'{..}
           = object (catMaybes [("subtype" .=) <$> _sSubtype])
 
+-- | Information about a shared drive.
+--
+-- /See:/ 'drive' smart constructor.
+data Drive =
+  Drive'
+    { _dRoot  :: !(Maybe DriveItem)
+    , _dName  :: !(Maybe Text)
+    , _dTitle :: !(Maybe Text)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'Drive' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dRoot'
+--
+-- * 'dName'
+--
+-- * 'dTitle'
+drive
+    :: Drive
+drive = Drive' {_dRoot = Nothing, _dName = Nothing, _dTitle = Nothing}
+
+
+-- | The root of this shared drive.
+dRoot :: Lens' Drive (Maybe DriveItem)
+dRoot = lens _dRoot (\ s a -> s{_dRoot = a})
+
+-- | The resource name of the shared drive. The format is
+-- \"COLLECTION_ID\/DRIVE_ID\". Clients should not assume a specific
+-- collection ID for this resource name.
+dName :: Lens' Drive (Maybe Text)
+dName = lens _dName (\ s a -> s{_dName = a})
+
+-- | The title of the shared drive.
+dTitle :: Lens' Drive (Maybe Text)
+dTitle = lens _dTitle (\ s a -> s{_dTitle = a})
+
+instance FromJSON Drive where
+        parseJSON
+          = withObject "Drive"
+              (\ o ->
+                 Drive' <$>
+                   (o .:? "root") <*> (o .:? "name") <*>
+                     (o .:? "title"))
+
+instance ToJSON Drive where
+        toJSON Drive'{..}
+          = object
+              (catMaybes
+                 [("root" .=) <$> _dRoot, ("name" .=) <$> _dName,
+                  ("title" .=) <$> _dTitle])
+
 -- | Information about an impersonation, where an admin acts on behalf of an
 -- end user. Information about the acting admin is not currently available.
 --
 -- /See:/ 'impersonation' smart constructor.
-newtype Impersonation = Impersonation'
+newtype Impersonation =
+  Impersonation'
     { _iImpersonatedUser :: Maybe User
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Impersonation' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -67,11 +126,9 @@
 -- * 'iImpersonatedUser'
 impersonation
     :: Impersonation
-impersonation =
-    Impersonation'
-    { _iImpersonatedUser = Nothing
-    }
+impersonation = Impersonation' {_iImpersonatedUser = Nothing}
 
+
 -- | The impersonated user.
 iImpersonatedUser :: Lens' Impersonation (Maybe User)
 iImpersonatedUser
@@ -94,15 +151,17 @@
 --
 -- /See:/ 'edit' smart constructor.
 data Edit =
-    Edit'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  Edit'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Edit' with the minimum fields required to make a request.
 --
 edit
     :: Edit
 edit = Edit'
 
+
 instance FromJSON Edit where
         parseJSON = withObject "Edit" (\ o -> pure Edit')
 
@@ -112,7 +171,8 @@
 -- | Data describing the type and additional information of an action.
 --
 -- /See:/ 'actionDetail' smart constructor.
-data ActionDetail = ActionDetail'
+data ActionDetail =
+  ActionDetail'
     { _adEdit             :: !(Maybe Edit)
     , _adPermissionChange :: !(Maybe PermissionChange)
     , _adRestore          :: !(Maybe Restore)
@@ -124,8 +184,10 @@
     , _adDlpChange        :: !(Maybe DataLeakPreventionChange)
     , _adDelete           :: !(Maybe Delete')
     , _adMove             :: !(Maybe Move)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ActionDetail' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -154,7 +216,7 @@
 actionDetail
     :: ActionDetail
 actionDetail =
-    ActionDetail'
+  ActionDetail'
     { _adEdit = Nothing
     , _adPermissionChange = Nothing
     , _adRestore = Nothing
@@ -168,6 +230,7 @@
     , _adMove = Nothing
     }
 
+
 -- | An object was edited.
 adEdit :: Lens' ActionDetail (Maybe Edit)
 adEdit = lens _adEdit (\ s a -> s{_adEdit = a})
@@ -252,14 +315,63 @@
                   ("delete" .=) <$> _adDelete,
                   ("move" .=) <$> _adMove])
 
+-- | A lightweight reference to a shared drive.
+--
+-- /See:/ 'driveReference' smart constructor.
+data DriveReference =
+  DriveReference'
+    { _drName  :: !(Maybe Text)
+    , _drTitle :: !(Maybe Text)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DriveReference' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'drName'
+--
+-- * 'drTitle'
+driveReference
+    :: DriveReference
+driveReference = DriveReference' {_drName = Nothing, _drTitle = Nothing}
+
+
+-- | The resource name of the shared drive. The format is
+-- \"COLLECTION_ID\/DRIVE_ID\". Clients should not assume a specific
+-- collection ID for this resource name.
+drName :: Lens' DriveReference (Maybe Text)
+drName = lens _drName (\ s a -> s{_drName = a})
+
+-- | The title of the shared drive.
+drTitle :: Lens' DriveReference (Maybe Text)
+drTitle = lens _drTitle (\ s a -> s{_drTitle = a})
+
+instance FromJSON DriveReference where
+        parseJSON
+          = withObject "DriveReference"
+              (\ o ->
+                 DriveReference' <$>
+                   (o .:? "name") <*> (o .:? "title"))
+
+instance ToJSON DriveReference where
+        toJSON DriveReference'{..}
+          = object
+              (catMaybes
+                 [("name" .=) <$> _drName, ("title" .=) <$> _drTitle])
+
 -- | Information about a group.
 --
 -- /See:/ 'group'' smart constructor.
-data Group = Group'
+data Group =
+  Group'
     { _gEmail :: !(Maybe Text)
     , _gTitle :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Group' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -269,12 +381,9 @@
 -- * 'gTitle'
 group'
     :: Group
-group' =
-    Group'
-    { _gEmail = Nothing
-    , _gTitle = Nothing
-    }
+group' = Group' {_gEmail = Nothing, _gTitle = Nothing}
 
+
 -- | The email address of the group.
 gEmail :: Lens' Group (Maybe Text)
 gEmail = lens _gEmail (\ s a -> s{_gEmail = a})
@@ -295,14 +404,39 @@
               (catMaybes
                  [("email" .=) <$> _gEmail, ("title" .=) <$> _gTitle])
 
+-- | A Drive item which is a file.
+--
+-- /See:/ 'driveFile' smart constructor.
+data DriveFile =
+  DriveFile'
+  deriving (Eq, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DriveFile' with the minimum fields required to make a request.
+--
+driveFile
+    :: DriveFile
+driveFile = DriveFile'
+
+
+instance FromJSON DriveFile where
+        parseJSON
+          = withObject "DriveFile" (\ o -> pure DriveFile')
+
+instance ToJSON DriveFile where
+        toJSON = const emptyObject
+
 -- | Information about time ranges.
 --
 -- /See:/ 'timeRange' smart constructor.
-data TimeRange = TimeRange'
+data TimeRange =
+  TimeRange'
     { _trStartTime :: !(Maybe DateTime')
     , _trEndTime   :: !(Maybe DateTime')
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'TimeRange' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -312,12 +446,9 @@
 -- * 'trEndTime'
 timeRange
     :: TimeRange
-timeRange =
-    TimeRange'
-    { _trStartTime = Nothing
-    , _trEndTime = Nothing
-    }
+timeRange = TimeRange' {_trStartTime = Nothing, _trEndTime = Nothing}
 
+
 -- | The start of the time range.
 trStartTime :: Lens' TimeRange (Maybe UTCTime)
 trStartTime
@@ -347,15 +478,18 @@
 -- | The request message for querying Drive activity.
 --
 -- /See:/ 'queryDriveActivityRequest' smart constructor.
-data QueryDriveActivityRequest = QueryDriveActivityRequest'
+data QueryDriveActivityRequest =
+  QueryDriveActivityRequest'
     { _qdarAncestorName          :: !(Maybe Text)
     , _qdarItemName              :: !(Maybe Text)
     , _qdarConsolidationStrategy :: !(Maybe ConsolidationStrategy)
     , _qdarFilter                :: !(Maybe Text)
     , _qdarPageToken             :: !(Maybe Text)
     , _qdarPageSize              :: !(Maybe (Textual Int32))
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'QueryDriveActivityRequest' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -374,7 +508,7 @@
 queryDriveActivityRequest
     :: QueryDriveActivityRequest
 queryDriveActivityRequest =
-    QueryDriveActivityRequest'
+  QueryDriveActivityRequest'
     { _qdarAncestorName = Nothing
     , _qdarItemName = Nothing
     , _qdarConsolidationStrategy = Nothing
@@ -383,6 +517,7 @@
     , _qdarPageSize = Nothing
     }
 
+
 -- | Return activities for this Drive folder and all children and
 -- descendants. The format is \"items\/ITEM_ID\".
 qdarAncestorName :: Lens' QueryDriveActivityRequest (Maybe Text)
@@ -458,35 +593,52 @@
 -- | A lightweight reference to a Drive item, such as a file or folder.
 --
 -- /See:/ 'driveItemReference' smart constructor.
-data DriveItemReference = DriveItemReference'
-    { _dirFolder :: !(Maybe Folder)
-    , _dirName   :: !(Maybe Text)
-    , _dirTitle  :: !(Maybe Text)
-    , _dirFile   :: !(Maybe File)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+data DriveItemReference =
+  DriveItemReference'
+    { _dirDriveFile   :: !(Maybe DriveFile)
+    , _dirFolder      :: !(Maybe Folder)
+    , _dirName        :: !(Maybe Text)
+    , _dirDriveFolder :: !(Maybe DriveFolder)
+    , _dirTitle       :: !(Maybe Text)
+    , _dirFile        :: !(Maybe File)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DriveItemReference' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'dirDriveFile'
+--
 -- * 'dirFolder'
 --
 -- * 'dirName'
 --
+-- * 'dirDriveFolder'
+--
 -- * 'dirTitle'
 --
 -- * 'dirFile'
 driveItemReference
     :: DriveItemReference
 driveItemReference =
-    DriveItemReference'
-    { _dirFolder = Nothing
+  DriveItemReference'
+    { _dirDriveFile = Nothing
+    , _dirFolder = Nothing
     , _dirName = Nothing
+    , _dirDriveFolder = Nothing
     , _dirTitle = Nothing
     , _dirFile = Nothing
     }
 
--- | The Drive item is a folder.
+
+-- | The Drive item is a file.
+dirDriveFile :: Lens' DriveItemReference (Maybe DriveFile)
+dirDriveFile
+  = lens _dirDriveFile (\ s a -> s{_dirDriveFile = a})
+
+-- | This field is deprecated; please use the \`driveFolder\` field instead.
 dirFolder :: Lens' DriveItemReference (Maybe Folder)
 dirFolder
   = lens _dirFolder (\ s a -> s{_dirFolder = a})
@@ -495,11 +647,17 @@
 dirName :: Lens' DriveItemReference (Maybe Text)
 dirName = lens _dirName (\ s a -> s{_dirName = a})
 
+-- | The Drive item is a folder.
+dirDriveFolder :: Lens' DriveItemReference (Maybe DriveFolder)
+dirDriveFolder
+  = lens _dirDriveFolder
+      (\ s a -> s{_dirDriveFolder = a})
+
 -- | The title of the Drive item.
 dirTitle :: Lens' DriveItemReference (Maybe Text)
 dirTitle = lens _dirTitle (\ s a -> s{_dirTitle = a})
 
--- | The Drive item is a file.
+-- | This field is deprecated; please use the \`driveFile\` field instead.
 dirFile :: Lens' DriveItemReference (Maybe File)
 dirFile = lens _dirFile (\ s a -> s{_dirFile = a})
 
@@ -508,26 +666,34 @@
           = withObject "DriveItemReference"
               (\ o ->
                  DriveItemReference' <$>
-                   (o .:? "folder") <*> (o .:? "name") <*>
-                     (o .:? "title")
+                   (o .:? "driveFile") <*> (o .:? "folder") <*>
+                     (o .:? "name")
+                     <*> (o .:? "driveFolder")
+                     <*> (o .:? "title")
                      <*> (o .:? "file"))
 
 instance ToJSON DriveItemReference where
         toJSON DriveItemReference'{..}
           = object
               (catMaybes
-                 [("folder" .=) <$> _dirFolder,
-                  ("name" .=) <$> _dirName, ("title" .=) <$> _dirTitle,
+                 [("driveFile" .=) <$> _dirDriveFile,
+                  ("folder" .=) <$> _dirFolder,
+                  ("name" .=) <$> _dirName,
+                  ("driveFolder" .=) <$> _dirDriveFolder,
+                  ("title" .=) <$> _dirTitle,
                   ("file" .=) <$> _dirFile])
 
 -- | A known user.
 --
 -- /See:/ 'knownUser' smart constructor.
-data KnownUser = KnownUser'
+data KnownUser =
+  KnownUser'
     { _kuPersonName    :: !(Maybe Text)
     , _kuIsCurrentUser :: !(Maybe Bool)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'KnownUser' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -537,12 +703,9 @@
 -- * 'kuIsCurrentUser'
 knownUser
     :: KnownUser
-knownUser =
-    KnownUser'
-    { _kuPersonName = Nothing
-    , _kuIsCurrentUser = Nothing
-    }
+knownUser = KnownUser' {_kuPersonName = Nothing, _kuIsCurrentUser = Nothing}
 
+
 -- | The identifier for this user that can be used with the People API to get
 -- more information. The format is \"people\/ACCOUNT_ID\". See
 -- https:\/\/developers.google.com\/people\/.
@@ -573,27 +736,36 @@
 -- | A lightweight reference to the target of activity.
 --
 -- /See:/ 'targetReference' smart constructor.
-data TargetReference = TargetReference'
-    { _trTeamDrive :: !(Maybe TeamDriveReference)
+data TargetReference =
+  TargetReference'
+    { _trDrive     :: !(Maybe DriveReference)
+    , _trTeamDrive :: !(Maybe TeamDriveReference)
     , _trDriveItem :: !(Maybe DriveItemReference)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'TargetReference' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'trDrive'
+--
 -- * 'trTeamDrive'
 --
 -- * 'trDriveItem'
 targetReference
     :: TargetReference
 targetReference =
-    TargetReference'
-    { _trTeamDrive = Nothing
-    , _trDriveItem = Nothing
-    }
+  TargetReference'
+    {_trDrive = Nothing, _trTeamDrive = Nothing, _trDriveItem = Nothing}
 
--- | The target is a Team Drive.
+
+-- | The target is a shared drive.
+trDrive :: Lens' TargetReference (Maybe DriveReference)
+trDrive = lens _trDrive (\ s a -> s{_trDrive = a})
+
+-- | This field is deprecated; please use the \`drive\` field instead.
 trTeamDrive :: Lens' TargetReference (Maybe TeamDriveReference)
 trTeamDrive
   = lens _trTeamDrive (\ s a -> s{_trTeamDrive = a})
@@ -608,22 +780,27 @@
           = withObject "TargetReference"
               (\ o ->
                  TargetReference' <$>
-                   (o .:? "teamDrive") <*> (o .:? "driveItem"))
+                   (o .:? "drive") <*> (o .:? "teamDrive") <*>
+                     (o .:? "driveItem"))
 
 instance ToJSON TargetReference where
         toJSON TargetReference'{..}
           = object
               (catMaybes
-                 [("teamDrive" .=) <$> _trTeamDrive,
+                 [("drive" .=) <$> _trDrive,
+                  ("teamDrive" .=) <$> _trTeamDrive,
                   ("driveItem" .=) <$> _trDriveItem])
 
 -- | An object was created by copying an existing object.
 --
 -- /See:/ 'copy' smart constructor.
-newtype Copy = Copy'
+newtype Copy =
+  Copy'
     { _cOriginalObject :: Maybe TargetReference
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Copy' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -631,11 +808,9 @@
 -- * 'cOriginalObject'
 copy
     :: Copy
-copy =
-    Copy'
-    { _cOriginalObject = Nothing
-    }
+copy = Copy' {_cOriginalObject = Nothing}
 
+
 -- | The the original object.
 cOriginalObject :: Lens' Copy (Maybe TargetReference)
 cOriginalObject
@@ -656,11 +831,14 @@
 -- | A change of the permission setting on an item.
 --
 -- /See:/ 'permissionChange' smart constructor.
-data PermissionChange = PermissionChange'
+data PermissionChange =
+  PermissionChange'
     { _pcAddedPermissions   :: !(Maybe [Permission])
     , _pcRemovedPermissions :: !(Maybe [Permission])
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'PermissionChange' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -671,11 +849,10 @@
 permissionChange
     :: PermissionChange
 permissionChange =
-    PermissionChange'
-    { _pcAddedPermissions = Nothing
-    , _pcRemovedPermissions = Nothing
-    }
+  PermissionChange'
+    {_pcAddedPermissions = Nothing, _pcRemovedPermissions = Nothing}
 
+
 -- | The set of permissions added by this change.
 pcAddedPermissions :: Lens' PermissionChange [Permission]
 pcAddedPermissions
@@ -710,11 +887,14 @@
 -- | Response message for querying Drive activity.
 --
 -- /See:/ 'queryDriveActivityResponse' smart constructor.
-data QueryDriveActivityResponse = QueryDriveActivityResponse'
+data QueryDriveActivityResponse =
+  QueryDriveActivityResponse'
     { _qdarNextPageToken :: !(Maybe Text)
     , _qdarActivities    :: !(Maybe [DriveActivity])
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'QueryDriveActivityResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -725,11 +905,10 @@
 queryDriveActivityResponse
     :: QueryDriveActivityResponse
 queryDriveActivityResponse =
-    QueryDriveActivityResponse'
-    { _qdarNextPageToken = Nothing
-    , _qdarActivities = Nothing
-    }
+  QueryDriveActivityResponse'
+    {_qdarNextPageToken = Nothing, _qdarActivities = Nothing}
 
+
 -- | Token to retrieve the next page of results, or empty if there are no
 -- more results in the list.
 qdarNextPageToken :: Lens' QueryDriveActivityResponse (Maybe Text)
@@ -763,10 +942,13 @@
 -- | A regular posted comment.
 --
 -- /See:/ 'post' smart constructor.
-newtype Post' = Post''
+newtype Post' =
+  Post''
     { _pSubtype :: Maybe PostSubtype
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Post' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -774,11 +956,9 @@
 -- * 'pSubtype'
 post
     :: Post'
-post =
-    Post''
-    { _pSubtype = Nothing
-    }
+post = Post'' {_pSubtype = Nothing}
 
+
 -- | The sub-type of this event.
 pSubtype :: Lens' Post' (Maybe PostSubtype)
 pSubtype = lens _pSubtype (\ s a -> s{_pSubtype = a})
@@ -795,10 +975,13 @@
 -- | A deleted object was restored.
 --
 -- /See:/ 'restore' smart constructor.
-newtype Restore = Restore'
+newtype Restore =
+  Restore'
     { _rType :: Maybe RestoreType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Restore' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -806,11 +989,9 @@
 -- * 'rType'
 restore
     :: Restore
-restore =
-    Restore'
-    { _rType = Nothing
-    }
+restore = Restore' {_rType = Nothing}
 
+
 -- | The type of restore action taken.
 rType :: Lens' Restore (Maybe RestoreType)
 rType = lens _rType (\ s a -> s{_rType = a})
@@ -827,34 +1008,34 @@
 -- | Information about a domain.
 --
 -- /See:/ 'domain' smart constructor.
-data Domain = Domain'
-    { _dLegacyId :: !(Maybe Text)
-    , _dName     :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+data Domain =
+  Domain'
+    { _domLegacyId :: !(Maybe Text)
+    , _domName     :: !(Maybe Text)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Domain' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
--- * 'dLegacyId'
+-- * 'domLegacyId'
 --
--- * 'dName'
+-- * 'domName'
 domain
     :: Domain
-domain =
-    Domain'
-    { _dLegacyId = Nothing
-    , _dName = Nothing
-    }
+domain = Domain' {_domLegacyId = Nothing, _domName = Nothing}
 
+
 -- | An opaque string used to identify this domain.
-dLegacyId :: Lens' Domain (Maybe Text)
-dLegacyId
-  = lens _dLegacyId (\ s a -> s{_dLegacyId = a})
+domLegacyId :: Lens' Domain (Maybe Text)
+domLegacyId
+  = lens _domLegacyId (\ s a -> s{_domLegacyId = a})
 
 -- | The name of the domain, e.g. \"google.com\".
-dName :: Lens' Domain (Maybe Text)
-dName = lens _dName (\ s a -> s{_dName = a})
+domName :: Lens' Domain (Maybe Text)
+domName = lens _domName (\ s a -> s{_domName = a})
 
 instance FromJSON Domain where
         parseJSON
@@ -866,22 +1047,24 @@
         toJSON Domain'{..}
           = object
               (catMaybes
-                 [("legacyId" .=) <$> _dLegacyId,
-                  ("name" .=) <$> _dName])
+                 [("legacyId" .=) <$> _domLegacyId,
+                  ("name" .=) <$> _domName])
 
 -- | Empty message representing an administrator.
 --
 -- /See:/ 'administrator' smart constructor.
 data Administrator =
-    Administrator'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  Administrator'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Administrator' with the minimum fields required to make a request.
 --
 administrator
     :: Administrator
 administrator = Administrator'
 
+
 instance FromJSON Administrator where
         parseJSON
           = withObject "Administrator"
@@ -893,10 +1076,13 @@
 -- | A change in the object\'s data leak prevention status.
 --
 -- /See:/ 'dataLeakPreventionChange' smart constructor.
-newtype DataLeakPreventionChange = DataLeakPreventionChange'
+newtype DataLeakPreventionChange =
+  DataLeakPreventionChange'
     { _dlpcType :: Maybe DataLeakPreventionChangeType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DataLeakPreventionChange' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -904,11 +1090,9 @@
 -- * 'dlpcType'
 dataLeakPreventionChange
     :: DataLeakPreventionChange
-dataLeakPreventionChange =
-    DataLeakPreventionChange'
-    { _dlpcType = Nothing
-    }
+dataLeakPreventionChange = DataLeakPreventionChange' {_dlpcType = Nothing}
 
+
 -- | The type of Data Leak Prevention (DLP) change.
 dlpcType :: Lens' DataLeakPreventionChange (Maybe DataLeakPreventionChangeType)
 dlpcType = lens _dlpcType (\ s a -> s{_dlpcType = a})
@@ -925,14 +1109,17 @@
 -- | The actor of a Drive activity.
 --
 -- /See:/ 'actor' smart constructor.
-data Actor = Actor'
+data Actor =
+  Actor'
     { _aImpersonation :: !(Maybe Impersonation)
     , _aSystem        :: !(Maybe SystemEvent)
     , _aAdministrator :: !(Maybe Administrator)
     , _aUser          :: !(Maybe User)
     , _aAnonymous     :: !(Maybe AnonymousUser)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Actor' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -949,7 +1136,7 @@
 actor
     :: Actor
 actor =
-    Actor'
+  Actor'
     { _aImpersonation = Nothing
     , _aSystem = Nothing
     , _aAdministrator = Nothing
@@ -957,6 +1144,7 @@
     , _aAnonymous = Nothing
     }
 
+
 -- | An account acting on behalf of another.
 aImpersonation :: Lens' Actor (Maybe Impersonation)
 aImpersonation
@@ -1002,13 +1190,16 @@
                   ("user" .=) <$> _aUser,
                   ("anonymous" .=) <$> _aAnonymous])
 
--- | A Drive item which is a folder.
+-- | This item is deprecated; please see \`DriveFolder\` instead.
 --
 -- /See:/ 'folder' smart constructor.
-newtype Folder = Folder'
+newtype Folder =
+  Folder'
     { _fType :: Maybe FolderType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Folder' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1016,12 +1207,10 @@
 -- * 'fType'
 folder
     :: Folder
-folder =
-    Folder'
-    { _fType = Nothing
-    }
+folder = Folder' {_fType = Nothing}
 
--- | The type of Drive folder.
+
+-- | This field is deprecated; please see \`DriveFolder.type\` instead.
 fType :: Lens' Folder (Maybe FolderType)
 fType = lens _fType (\ s a -> s{_fType = a})
 
@@ -1037,14 +1226,17 @@
 -- | Information about the action.
 --
 -- /See:/ 'action' smart constructor.
-data Action = Action'
+data Action =
+  Action'
     { _aTimeRange :: !(Maybe TimeRange)
     , _aActor     :: !(Maybe Actor)
     , _aTimestamp :: !(Maybe DateTime')
     , _aTarget    :: !(Maybe Target)
     , _aDetail    :: !(Maybe ActionDetail)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Action' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1061,7 +1253,7 @@
 action
     :: Action
 action =
-    Action'
+  Action'
     { _aTimeRange = Nothing
     , _aActor = Nothing
     , _aTimestamp = Nothing
@@ -1069,6 +1261,7 @@
     , _aDetail = Nothing
     }
 
+
 -- | The action occurred over this time range.
 aTimeRange :: Lens' Action (Maybe TimeRange)
 aTimeRange
@@ -1115,15 +1308,18 @@
                   ("target" .=) <$> _aTarget,
                   ("detail" .=) <$> _aDetail])
 
--- | Information about a Team Drive.
+-- | This item is deprecated; please see \`Drive\` instead.
 --
 -- /See:/ 'teamDrive' smart constructor.
-data TeamDrive = TeamDrive'
+data TeamDrive =
+  TeamDrive'
     { _tdRoot  :: !(Maybe DriveItem)
     , _tdName  :: !(Maybe Text)
     , _tdTitle :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'TeamDrive' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1136,22 +1332,18 @@
 teamDrive
     :: TeamDrive
 teamDrive =
-    TeamDrive'
-    { _tdRoot = Nothing
-    , _tdName = Nothing
-    , _tdTitle = Nothing
-    }
+  TeamDrive' {_tdRoot = Nothing, _tdName = Nothing, _tdTitle = Nothing}
 
--- | The root of this Team Drive.
+
+-- | This field is deprecated; please see \`Drive.root\` instead.
 tdRoot :: Lens' TeamDrive (Maybe DriveItem)
 tdRoot = lens _tdRoot (\ s a -> s{_tdRoot = a})
 
--- | The resource name of the Team Drive. The format is
--- \"teamDrives\/TEAM_DRIVE_ID\".
+-- | This field is deprecated; please see \`Drive.name\` instead.
 tdName :: Lens' TeamDrive (Maybe Text)
 tdName = lens _tdName (\ s a -> s{_tdName = a})
 
--- | The title of the Team Drive.
+-- | This field is deprecated; please see \`Drive.title\` instead.
 tdTitle :: Lens' TeamDrive (Maybe Text)
 tdTitle = lens _tdTitle (\ s a -> s{_tdTitle = a})
 
@@ -1174,15 +1366,17 @@
 --
 -- /See:/ 'unknownUser' smart constructor.
 data UnknownUser =
-    UnknownUser'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  UnknownUser'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'UnknownUser' with the minimum fields required to make a request.
 --
 unknownUser
     :: UnknownUser
 unknownUser = UnknownUser'
 
+
 instance FromJSON UnknownUser where
         parseJSON
           = withObject "UnknownUser" (\ o -> pure UnknownUser')
@@ -1193,16 +1387,22 @@
 -- | Information about the owner of a Drive item.
 --
 -- /See:/ 'owner' smart constructor.
-data Owner = Owner'
-    { _oDomain    :: !(Maybe Domain)
+data Owner =
+  Owner'
+    { _oDrive     :: !(Maybe DriveReference)
+    , _oDomain    :: !(Maybe Domain)
     , _oTeamDrive :: !(Maybe TeamDriveReference)
     , _oUser      :: !(Maybe User)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Owner' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'oDrive'
+--
 -- * 'oDomain'
 --
 -- * 'oTeamDrive'
@@ -1211,17 +1411,23 @@
 owner
     :: Owner
 owner =
-    Owner'
-    { _oDomain = Nothing
+  Owner'
+    { _oDrive = Nothing
+    , _oDomain = Nothing
     , _oTeamDrive = Nothing
     , _oUser = Nothing
     }
 
+
+-- | The drive that owns the item.
+oDrive :: Lens' Owner (Maybe DriveReference)
+oDrive = lens _oDrive (\ s a -> s{_oDrive = a})
+
 -- | The domain of the Drive item owner.
 oDomain :: Lens' Owner (Maybe Domain)
 oDomain = lens _oDomain (\ s a -> s{_oDomain = a})
 
--- | The Team Drive that owns the Drive item.
+-- | This field is deprecated; please use the \`drive\` field instead.
 oTeamDrive :: Lens' Owner (Maybe TeamDriveReference)
 oTeamDrive
   = lens _oTeamDrive (\ s a -> s{_oTeamDrive = a})
@@ -1235,24 +1441,29 @@
           = withObject "Owner"
               (\ o ->
                  Owner' <$>
-                   (o .:? "domain") <*> (o .:? "teamDrive") <*>
-                     (o .:? "user"))
+                   (o .:? "drive") <*> (o .:? "domain") <*>
+                     (o .:? "teamDrive")
+                     <*> (o .:? "user"))
 
 instance ToJSON Owner where
         toJSON Owner'{..}
           = object
               (catMaybes
-                 [("domain" .=) <$> _oDomain,
+                 [("drive" .=) <$> _oDrive,
+                  ("domain" .=) <$> _oDomain,
                   ("teamDrive" .=) <$> _oTeamDrive,
                   ("user" .=) <$> _oUser])
 
 -- | Activity in applications other than Drive.
 --
 -- /See:/ 'applicationReference' smart constructor.
-newtype ApplicationReference = ApplicationReference'
+newtype ApplicationReference =
+  ApplicationReference'
     { _arType :: Maybe ApplicationReferenceType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ApplicationReference' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1260,11 +1471,9 @@
 -- * 'arType'
 applicationReference
     :: ApplicationReference
-applicationReference =
-    ApplicationReference'
-    { _arType = Nothing
-    }
+applicationReference = ApplicationReference' {_arType = Nothing}
 
+
 -- | The reference type corresponding to this event.
 arType :: Lens' ApplicationReference (Maybe ApplicationReferenceType)
 arType = lens _arType (\ s a -> s{_arType = a})
@@ -1285,11 +1494,14 @@
 -- strategy defines the rules for which activities are related.
 --
 -- /See:/ 'consolidationStrategy' smart constructor.
-data ConsolidationStrategy = ConsolidationStrategy'
+data ConsolidationStrategy =
+  ConsolidationStrategy'
     { _csNone   :: !(Maybe NoConsolidation)
     , _csLegacy :: !(Maybe Legacy)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ConsolidationStrategy' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1300,11 +1512,9 @@
 consolidationStrategy
     :: ConsolidationStrategy
 consolidationStrategy =
-    ConsolidationStrategy'
-    { _csNone = Nothing
-    , _csLegacy = Nothing
-    }
+  ConsolidationStrategy' {_csNone = Nothing, _csLegacy = Nothing}
 
+
 -- | The individual activities are not consolidated.
 csNone :: Lens' ConsolidationStrategy (Maybe NoConsolidation)
 csNone = lens _csNone (\ s a -> s{_csNone = a})
@@ -1330,12 +1540,15 @@
 -- | Information about an end user.
 --
 -- /See:/ 'user' smart constructor.
-data User = User'
+data User =
+  User'
     { _uKnownUser   :: !(Maybe KnownUser)
     , _uUnknownUser :: !(Maybe UnknownUser)
     , _uDeletedUser :: !(Maybe DeletedUser)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'User' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1348,12 +1561,10 @@
 user
     :: User
 user =
-    User'
-    { _uKnownUser = Nothing
-    , _uUnknownUser = Nothing
-    , _uDeletedUser = Nothing
-    }
+  User'
+    {_uKnownUser = Nothing, _uUnknownUser = Nothing, _uDeletedUser = Nothing}
 
+
 -- | A known user.
 uKnownUser :: Lens' User (Maybe KnownUser)
 uKnownUser
@@ -1389,15 +1600,17 @@
 --
 -- /See:/ 'deletedUser' smart constructor.
 data DeletedUser =
-    DeletedUser'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  DeletedUser'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DeletedUser' with the minimum fields required to make a request.
 --
 deletedUser
     :: DeletedUser
 deletedUser = DeletedUser'
 
+
 instance FromJSON DeletedUser where
         parseJSON
           = withObject "DeletedUser" (\ o -> pure DeletedUser')
@@ -1408,12 +1621,15 @@
 -- | An object was created.
 --
 -- /See:/ 'create' smart constructor.
-data Create = Create'
+data Create =
+  Create'
     { _cCopy   :: !(Maybe Copy)
     , _cNew    :: !(Maybe New)
     , _cUpload :: !(Maybe Upload)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Create' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1425,13 +1641,9 @@
 -- * 'cUpload'
 create
     :: Create
-create =
-    Create'
-    { _cCopy = Nothing
-    , _cNew = Nothing
-    , _cUpload = Nothing
-    }
+create = Create' {_cCopy = Nothing, _cNew = Nothing, _cUpload = Nothing}
 
+
 -- | If present, indicates the object was created by copying an existing
 -- Drive object.
 cCopy :: Lens' Create (Maybe Copy)
@@ -1466,29 +1678,34 @@
 --
 -- /See:/ 'new' smart constructor.
 data New =
-    New'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  New'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'New' with the minimum fields required to make a request.
 --
 new
     :: New
 new = New'
 
+
 instance FromJSON New where
         parseJSON = withObject "New" (\ o -> pure New')
 
 instance ToJSON New where
         toJSON = const emptyObject
 
--- | A lightweight reference to a Team Drive.
+-- | This item is deprecated; please see \`DriveReference\` instead.
 --
 -- /See:/ 'teamDriveReference' smart constructor.
-data TeamDriveReference = TeamDriveReference'
+data TeamDriveReference =
+  TeamDriveReference'
     { _tdrName  :: !(Maybe Text)
     , _tdrTitle :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'TeamDriveReference' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1499,17 +1716,14 @@
 teamDriveReference
     :: TeamDriveReference
 teamDriveReference =
-    TeamDriveReference'
-    { _tdrName = Nothing
-    , _tdrTitle = Nothing
-    }
+  TeamDriveReference' {_tdrName = Nothing, _tdrTitle = Nothing}
 
--- | The resource name of the Team Drive. The format is
--- \"teamDrives\/TEAM_DRIVE_ID\".
+
+-- | This field is deprecated; please see \`DriveReference.name\` instead.
 tdrName :: Lens' TeamDriveReference (Maybe Text)
 tdrName = lens _tdrName (\ s a -> s{_tdrName = a})
 
--- | The title of the Team Drive.
+-- | This field is deprecated; please see \`DriveReference.title\` instead.
 tdrTitle :: Lens' TeamDriveReference (Maybe Text)
 tdrTitle = lens _tdrTitle (\ s a -> s{_tdrTitle = a})
 
@@ -1532,15 +1746,17 @@
 --
 -- /See:/ 'anonymousUser' smart constructor.
 data AnonymousUser =
-    AnonymousUser'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  AnonymousUser'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'AnonymousUser' with the minimum fields required to make a request.
 --
 anonymousUser
     :: AnonymousUser
 anonymousUser = AnonymousUser'
 
+
 instance FromJSON AnonymousUser where
         parseJSON
           = withObject "AnonymousUser"
@@ -1549,19 +1765,54 @@
 instance ToJSON AnonymousUser where
         toJSON = const emptyObject
 
+-- | A Drive item which is a folder.
+--
+-- /See:/ 'driveFolder' smart constructor.
+newtype DriveFolder =
+  DriveFolder'
+    { _dfType :: Maybe DriveFolderType
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DriveFolder' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dfType'
+driveFolder
+    :: DriveFolder
+driveFolder = DriveFolder' {_dfType = Nothing}
+
+
+-- | The type of Drive folder.
+dfType :: Lens' DriveFolder (Maybe DriveFolderType)
+dfType = lens _dfType (\ s a -> s{_dfType = a})
+
+instance FromJSON DriveFolder where
+        parseJSON
+          = withObject "DriveFolder"
+              (\ o -> DriveFolder' <$> (o .:? "type"))
+
+instance ToJSON DriveFolder where
+        toJSON DriveFolder'{..}
+          = object (catMaybes [("type" .=) <$> _dfType])
+
 -- | Represents any user (including a logged out user).
 --
 -- /See:/ 'anyone' smart constructor.
 data Anyone =
-    Anyone'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  Anyone'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Anyone' with the minimum fields required to make a request.
 --
 anyone
     :: Anyone
 anyone = Anyone'
 
+
 instance FromJSON Anyone where
         parseJSON = withObject "Anyone" (\ o -> pure Anyone')
 
@@ -1571,11 +1822,14 @@
 -- | Information about restriction policy changes to a feature.
 --
 -- /See:/ 'restrictionChange' smart constructor.
-data RestrictionChange = RestrictionChange'
+data RestrictionChange =
+  RestrictionChange'
     { _rcFeature        :: !(Maybe RestrictionChangeFeature)
     , _rcNewRestriction :: !(Maybe RestrictionChangeNewRestriction)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'RestrictionChange' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1586,11 +1840,9 @@
 restrictionChange
     :: RestrictionChange
 restrictionChange =
-    RestrictionChange'
-    { _rcFeature = Nothing
-    , _rcNewRestriction = Nothing
-    }
+  RestrictionChange' {_rcFeature = Nothing, _rcNewRestriction = Nothing}
 
+
 -- | The feature which had a change in restriction policy.
 rcFeature :: Lens' RestrictionChange (Maybe RestrictionChangeFeature)
 rcFeature
@@ -1625,15 +1877,17 @@
 --
 -- /See:/ 'legacy' smart constructor.
 data Legacy =
-    Legacy'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  Legacy'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Legacy' with the minimum fields required to make a request.
 --
 legacy
     :: Legacy
 legacy = Legacy'
 
+
 instance FromJSON Legacy where
         parseJSON = withObject "Legacy" (\ o -> pure Legacy')
 
@@ -1643,13 +1897,16 @@
 -- | A comment on a file.
 --
 -- /See:/ 'fileComment' smart constructor.
-data FileComment = FileComment'
+data FileComment =
+  FileComment'
     { _fcParent             :: !(Maybe DriveItem)
     , _fcLegacyDiscussionId :: !(Maybe Text)
     , _fcLegacyCommentId    :: !(Maybe Text)
     , _fcLinkToDiscussion   :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'FileComment' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1664,13 +1921,14 @@
 fileComment
     :: FileComment
 fileComment =
-    FileComment'
+  FileComment'
     { _fcParent = Nothing
     , _fcLegacyDiscussionId = Nothing
     , _fcLegacyCommentId = Nothing
     , _fcLinkToDiscussion = Nothing
     }
 
+
 -- | The Drive item containing this comment.
 fcParent :: Lens' FileComment (Maybe DriveItem)
 fcParent = lens _fcParent (\ s a -> s{_fcParent = a})
@@ -1720,11 +1978,14 @@
 -- | An object was renamed.
 --
 -- /See:/ 'rename' smart constructor.
-data Rename = Rename'
+data Rename =
+  Rename'
     { _rNewTitle :: !(Maybe Text)
     , _rOldTitle :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Rename' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1734,12 +1995,9 @@
 -- * 'rOldTitle'
 rename
     :: Rename
-rename =
-    Rename'
-    { _rNewTitle = Nothing
-    , _rOldTitle = Nothing
-    }
+rename = Rename' {_rNewTitle = Nothing, _rOldTitle = Nothing}
 
+
 -- | The new title of the drive object.
 rNewTitle :: Lens' Rename (Maybe Text)
 rNewTitle
@@ -1768,15 +2026,17 @@
 --
 -- /See:/ 'upload' smart constructor.
 data Upload =
-    Upload'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  Upload'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Upload' with the minimum fields required to make a request.
 --
 upload
     :: Upload
 upload = Upload'
 
+
 instance FromJSON Upload where
         parseJSON = withObject "Upload" (\ o -> pure Upload')
 
@@ -1787,15 +2047,17 @@
 --
 -- /See:/ 'noConsolidation' smart constructor.
 data NoConsolidation =
-    NoConsolidation'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  NoConsolidation'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'NoConsolidation' with the minimum fields required to make a request.
 --
 noConsolidation
     :: NoConsolidation
 noConsolidation = NoConsolidation'
 
+
 instance FromJSON NoConsolidation where
         parseJSON
           = withObject "NoConsolidation"
@@ -1807,10 +2069,13 @@
 -- | A comment with an assignment.
 --
 -- /See:/ 'assignment' smart constructor.
-newtype Assignment = Assignment'
+newtype Assignment =
+  Assignment'
     { _aSubtype :: Maybe AssignmentSubtype
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Assignment' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1818,11 +2083,9 @@
 -- * 'aSubtype'
 assignment
     :: Assignment
-assignment =
-    Assignment'
-    { _aSubtype = Nothing
-    }
+assignment = Assignment' {_aSubtype = Nothing}
 
+
 -- | The sub-type of this event.
 aSubtype :: Lens' Assignment (Maybe AssignmentSubtype)
 aSubtype = lens _aSubtype (\ s a -> s{_aSubtype = a})
@@ -1839,10 +2102,13 @@
 -- | Information about settings changes.
 --
 -- /See:/ 'settingsChange' smart constructor.
-newtype SettingsChange = SettingsChange'
+newtype SettingsChange =
+  SettingsChange'
     { _scRestrictionChanges :: Maybe [RestrictionChange]
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'SettingsChange' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1850,11 +2116,9 @@
 -- * 'scRestrictionChanges'
 settingsChange
     :: SettingsChange
-settingsChange =
-    SettingsChange'
-    { _scRestrictionChanges = Nothing
-    }
+settingsChange = SettingsChange' {_scRestrictionChanges = Nothing}
 
+
 -- | The set of changes made to restrictions.
 scRestrictionChanges :: Lens' SettingsChange [RestrictionChange]
 scRestrictionChanges
@@ -1880,13 +2144,16 @@
 -- | A change about comments on an object.
 --
 -- /See:/ 'comment' smart constructor.
-data Comment = Comment'
+data Comment =
+  Comment'
     { _cSuggestion     :: !(Maybe Suggestion)
     , _cPost           :: !(Maybe Post')
     , _cMentionedUsers :: !(Maybe [User])
     , _cAssignment     :: !(Maybe Assignment)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Comment' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1901,13 +2168,14 @@
 comment
     :: Comment
 comment =
-    Comment'
+  Comment'
     { _cSuggestion = Nothing
     , _cPost = Nothing
     , _cMentionedUsers = Nothing
     , _cAssignment = Nothing
     }
 
+
 -- | A change on a suggestion.
 cSuggestion :: Lens' Comment (Maybe Suggestion)
 cSuggestion
@@ -1951,15 +2219,18 @@
 -- | The permission setting of an object.
 --
 -- /See:/ 'permission' smart constructor.
-data Permission = Permission'
+data Permission =
+  Permission'
     { _pGroup          :: !(Maybe Group)
     , _pDomain         :: !(Maybe Domain)
     , _pUser           :: !(Maybe User)
     , _pRole           :: !(Maybe PermissionRole)
     , _pAnyone         :: !(Maybe Anyone)
     , _pAllowDiscovery :: !(Maybe Bool)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Permission' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -1978,7 +2249,7 @@
 permission
     :: Permission
 permission =
-    Permission'
+  Permission'
     { _pGroup = Nothing
     , _pDomain = Nothing
     , _pUser = Nothing
@@ -1987,6 +2258,7 @@
     , _pAllowDiscovery = Nothing
     }
 
+
 -- | The group to whom this permission applies.
 pGroup :: Lens' Permission (Maybe Group)
 pGroup = lens _pGroup (\ s a -> s{_pGroup = a})
@@ -2036,19 +2308,21 @@
                   ("role" .=) <$> _pRole, ("anyone" .=) <$> _pAnyone,
                   ("allowDiscovery" .=) <$> _pAllowDiscovery])
 
--- | A Drive item which is a file.
+-- | This item is deprecated; please see \`DriveFile\` instead.
 --
 -- /See:/ 'file' smart constructor.
 data File =
-    File'
-    deriving (Eq,Show,Data,Typeable,Generic)
+  File'
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'File' with the minimum fields required to make a request.
 --
 file
     :: File
 file = File'
 
+
 instance FromJSON File where
         parseJSON = withObject "File" (\ o -> pure File')
 
@@ -2058,10 +2332,13 @@
 -- | An object was deleted.
 --
 -- /See:/ 'delete'' smart constructor.
-newtype Delete' = Delete''
+newtype Delete' =
+  Delete''
     { _dType :: Maybe DeleteType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Delete' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -2069,11 +2346,9 @@
 -- * 'dType'
 delete'
     :: Delete'
-delete' =
-    Delete''
-    { _dType = Nothing
-    }
+delete' = Delete'' {_dType = Nothing}
 
+
 -- | The type of delete action taken.
 dType :: Lens' Delete' (Maybe DeleteType)
 dType = lens _dType (\ s a -> s{_dType = a})
@@ -2090,16 +2365,22 @@
 -- | Information about the target of activity.
 --
 -- /See:/ 'target' smart constructor.
-data Target = Target'
-    { _tTeamDrive   :: !(Maybe TeamDrive)
+data Target =
+  Target'
+    { _tDrive       :: !(Maybe Drive)
+    , _tTeamDrive   :: !(Maybe TeamDrive)
     , _tFileComment :: !(Maybe FileComment)
     , _tDriveItem   :: !(Maybe DriveItem)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Target' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'tDrive'
+--
 -- * 'tTeamDrive'
 --
 -- * 'tFileComment'
@@ -2108,13 +2389,19 @@
 target
     :: Target
 target =
-    Target'
-    { _tTeamDrive = Nothing
+  Target'
+    { _tDrive = Nothing
+    , _tTeamDrive = Nothing
     , _tFileComment = Nothing
     , _tDriveItem = Nothing
     }
 
--- | The target is a Team Drive.
+
+-- | The target is a shared drive.
+tDrive :: Lens' Target (Maybe Drive)
+tDrive = lens _tDrive (\ s a -> s{_tDrive = a})
+
+-- | This field is deprecated; please use the \`drive\` field instead.
 tTeamDrive :: Lens' Target (Maybe TeamDrive)
 tTeamDrive
   = lens _tTeamDrive (\ s a -> s{_tTeamDrive = a})
@@ -2134,25 +2421,30 @@
           = withObject "Target"
               (\ o ->
                  Target' <$>
-                   (o .:? "teamDrive") <*> (o .:? "fileComment") <*>
-                     (o .:? "driveItem"))
+                   (o .:? "drive") <*> (o .:? "teamDrive") <*>
+                     (o .:? "fileComment")
+                     <*> (o .:? "driveItem"))
 
 instance ToJSON Target where
         toJSON Target'{..}
           = object
               (catMaybes
-                 [("teamDrive" .=) <$> _tTeamDrive,
+                 [("drive" .=) <$> _tDrive,
+                  ("teamDrive" .=) <$> _tTeamDrive,
                   ("fileComment" .=) <$> _tFileComment,
                   ("driveItem" .=) <$> _tDriveItem])
 
 -- | An object was moved.
 --
 -- /See:/ 'move' smart constructor.
-data Move = Move'
+data Move =
+  Move'
     { _mAddedParents   :: !(Maybe [TargetReference])
     , _mRemovedParents :: !(Maybe [TargetReference])
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Move' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -2162,12 +2454,9 @@
 -- * 'mRemovedParents'
 move
     :: Move
-move =
-    Move'
-    { _mAddedParents = Nothing
-    , _mRemovedParents = Nothing
-    }
+move = Move' {_mAddedParents = Nothing, _mRemovedParents = Nothing}
 
+
 -- | The added parent object(s).
 mAddedParents :: Lens' Move [TargetReference]
 mAddedParents
@@ -2208,15 +2497,18 @@
 -- QueryDriveActivityRequest.
 --
 -- /See:/ 'driveActivity' smart constructor.
-data DriveActivity = DriveActivity'
+data DriveActivity =
+  DriveActivity'
     { _daTimeRange           :: !(Maybe TimeRange)
     , _daActions             :: !(Maybe [Action])
     , _daActors              :: !(Maybe [Actor])
     , _daTargets             :: !(Maybe [Target])
     , _daPrimaryActionDetail :: !(Maybe ActionDetail)
     , _daTimestamp           :: !(Maybe DateTime')
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DriveActivity' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -2235,7 +2527,7 @@
 driveActivity
     :: DriveActivity
 driveActivity =
-    DriveActivity'
+  DriveActivity'
     { _daTimeRange = Nothing
     , _daActions = Nothing
     , _daActors = Nothing
@@ -2244,6 +2536,7 @@
     , _daTimestamp = Nothing
     }
 
+
 -- | The activity occurred over this time range.
 daTimeRange :: Lens' DriveActivity (Maybe TimeRange)
 daTimeRange
@@ -2263,8 +2556,8 @@
       _Default
       . _Coerce
 
--- | All Drive objects this activity is about (e.g. file, folder, Team
--- Drive). This represents the state of the target immediately after the
+-- | All Google Drive objects this activity is about (e.g. file, folder,
+-- drive). This represents the state of the target immediately after the
 -- actions occurred.
 daTargets :: Lens' DriveActivity [Target]
 daTargets
@@ -2312,19 +2605,26 @@
 -- | A Drive item, such as a file or folder.
 --
 -- /See:/ 'driveItem' smart constructor.
-data DriveItem = DriveItem'
-    { _diFolder   :: !(Maybe Folder)
-    , _diOwner    :: !(Maybe Owner)
-    , _diMimeType :: !(Maybe Text)
-    , _diName     :: !(Maybe Text)
-    , _diTitle    :: !(Maybe Text)
-    , _diFile     :: !(Maybe File)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+data DriveItem =
+  DriveItem'
+    { _diDriveFile   :: !(Maybe DriveFile)
+    , _diFolder      :: !(Maybe Folder)
+    , _diOwner       :: !(Maybe Owner)
+    , _diMimeType    :: !(Maybe Text)
+    , _diName        :: !(Maybe Text)
+    , _diDriveFolder :: !(Maybe DriveFolder)
+    , _diTitle       :: !(Maybe Text)
+    , _diFile        :: !(Maybe File)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DriveItem' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
 --
+-- * 'diDriveFile'
+--
 -- * 'diFolder'
 --
 -- * 'diOwner'
@@ -2333,22 +2633,32 @@
 --
 -- * 'diName'
 --
+-- * 'diDriveFolder'
+--
 -- * 'diTitle'
 --
 -- * 'diFile'
 driveItem
     :: DriveItem
 driveItem =
-    DriveItem'
-    { _diFolder = Nothing
+  DriveItem'
+    { _diDriveFile = Nothing
+    , _diFolder = Nothing
     , _diOwner = Nothing
     , _diMimeType = Nothing
     , _diName = Nothing
+    , _diDriveFolder = Nothing
     , _diTitle = Nothing
     , _diFile = Nothing
     }
 
--- | The Drive item is a folder.
+
+-- | The Drive item is a file.
+diDriveFile :: Lens' DriveItem (Maybe DriveFile)
+diDriveFile
+  = lens _diDriveFile (\ s a -> s{_diDriveFile = a})
+
+-- | This field is deprecated; please use the \`driveFolder\` field instead.
 diFolder :: Lens' DriveItem (Maybe Folder)
 diFolder = lens _diFolder (\ s a -> s{_diFolder = a})
 
@@ -2366,11 +2676,17 @@
 diName :: Lens' DriveItem (Maybe Text)
 diName = lens _diName (\ s a -> s{_diName = a})
 
+-- | The Drive item is a folder.
+diDriveFolder :: Lens' DriveItem (Maybe DriveFolder)
+diDriveFolder
+  = lens _diDriveFolder
+      (\ s a -> s{_diDriveFolder = a})
+
 -- | The title of the Drive item.
 diTitle :: Lens' DriveItem (Maybe Text)
 diTitle = lens _diTitle (\ s a -> s{_diTitle = a})
 
--- | The Drive item is a file.
+-- | This field is deprecated; please use the \`driveFile\` field instead.
 diFile :: Lens' DriveItem (Maybe File)
 diFile = lens _diFile (\ s a -> s{_diFile = a})
 
@@ -2379,9 +2695,11 @@
           = withObject "DriveItem"
               (\ o ->
                  DriveItem' <$>
-                   (o .:? "folder") <*> (o .:? "owner") <*>
-                     (o .:? "mimeType")
+                   (o .:? "driveFile") <*> (o .:? "folder") <*>
+                     (o .:? "owner")
+                     <*> (o .:? "mimeType")
                      <*> (o .:? "name")
+                     <*> (o .:? "driveFolder")
                      <*> (o .:? "title")
                      <*> (o .:? "file"))
 
@@ -2389,19 +2707,24 @@
         toJSON DriveItem'{..}
           = object
               (catMaybes
-                 [("folder" .=) <$> _diFolder,
+                 [("driveFile" .=) <$> _diDriveFile,
+                  ("folder" .=) <$> _diFolder,
                   ("owner" .=) <$> _diOwner,
                   ("mimeType" .=) <$> _diMimeType,
-                  ("name" .=) <$> _diName, ("title" .=) <$> _diTitle,
-                  ("file" .=) <$> _diFile])
+                  ("name" .=) <$> _diName,
+                  ("driveFolder" .=) <$> _diDriveFolder,
+                  ("title" .=) <$> _diTitle, ("file" .=) <$> _diFile])
 
 -- | Event triggered by system operations instead of end users.
 --
 -- /See:/ 'systemEvent' smart constructor.
-newtype SystemEvent = SystemEvent'
+newtype SystemEvent =
+  SystemEvent'
     { _seType :: Maybe SystemEventType
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'SystemEvent' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -2409,10 +2732,8 @@
 -- * 'seType'
 systemEvent
     :: SystemEvent
-systemEvent =
-    SystemEvent'
-    { _seType = Nothing
-    }
+systemEvent = SystemEvent' {_seType = Nothing}
+
 
 -- | The type of the system event that may triggered activity.
 seType :: Lens' SystemEvent (Maybe SystemEventType)
diff --git a/gen/Network/Google/DriveActivity/Types/Sum.hs b/gen/Network/Google/DriveActivity/Types/Sum.hs
--- a/gen/Network/Google/DriveActivity/Types/Sum.hs
+++ b/gen/Network/Google/DriveActivity/Types/Sum.hs
@@ -118,6 +118,45 @@
 instance ToJSON RestrictionChangeNewRestriction where
     toJSON = toJSONText
 
+-- | The type of Drive folder.
+data DriveFolderType
+    = TypeUnspecified
+      -- ^ @TYPE_UNSPECIFIED@
+      -- The folder type is unknown.
+    | MyDriveRoot
+      -- ^ @MY_DRIVE_ROOT@
+      -- The folder is the root of a user\'s MyDrive.
+    | SharedDriveRoot
+      -- ^ @SHARED_DRIVE_ROOT@
+      -- The folder is the root of a shared drive.
+    | StandardFolder
+      -- ^ @STANDARD_FOLDER@
+      -- The folder is a standard, non-root, folder.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable DriveFolderType
+
+instance FromHttpApiData DriveFolderType where
+    parseQueryParam = \case
+        "TYPE_UNSPECIFIED" -> Right TypeUnspecified
+        "MY_DRIVE_ROOT" -> Right MyDriveRoot
+        "SHARED_DRIVE_ROOT" -> Right SharedDriveRoot
+        "STANDARD_FOLDER" -> Right StandardFolder
+        x -> Left ("Unable to parse DriveFolderType from: " <> x)
+
+instance ToHttpApiData DriveFolderType where
+    toQueryParam = \case
+        TypeUnspecified -> "TYPE_UNSPECIFIED"
+        MyDriveRoot -> "MY_DRIVE_ROOT"
+        SharedDriveRoot -> "SHARED_DRIVE_ROOT"
+        StandardFolder -> "STANDARD_FOLDER"
+
+instance FromJSON DriveFolderType where
+    parseJSON = parseJSONText "DriveFolderType"
+
+instance ToJSON DriveFolderType where
+    toJSON = toJSONText
+
 -- | The feature which had a change in restriction policy.
 data RestrictionChangeFeature
     = FeatureUnspecified
@@ -166,13 +205,13 @@
 
 -- | The type of the system event that may triggered activity.
 data SystemEventType
-    = TypeUnspecified
+    = SETTypeUnspecified
       -- ^ @TYPE_UNSPECIFIED@
       -- The event type is unspecified.
-    | UserDeletion
+    | SETUserDeletion
       -- ^ @USER_DELETION@
       -- The event is a consequence of a user account being deleted.
-    | TrashAutoPurge
+    | SETTrashAutoPurge
       -- ^ @TRASH_AUTO_PURGE@
       -- The event is due to the system automatically purging trash.
       deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
@@ -181,16 +220,16 @@
 
 instance FromHttpApiData SystemEventType where
     parseQueryParam = \case
-        "TYPE_UNSPECIFIED" -> Right TypeUnspecified
-        "USER_DELETION" -> Right UserDeletion
-        "TRASH_AUTO_PURGE" -> Right TrashAutoPurge
+        "TYPE_UNSPECIFIED" -> Right SETTypeUnspecified
+        "USER_DELETION" -> Right SETUserDeletion
+        "TRASH_AUTO_PURGE" -> Right SETTrashAutoPurge
         x -> Left ("Unable to parse SystemEventType from: " <> x)
 
 instance ToHttpApiData SystemEventType where
     toQueryParam = \case
-        TypeUnspecified -> "TYPE_UNSPECIFIED"
-        UserDeletion -> "USER_DELETION"
-        TrashAutoPurge -> "TRASH_AUTO_PURGE"
+        SETTypeUnspecified -> "TYPE_UNSPECIFIED"
+        SETUserDeletion -> "USER_DELETION"
+        SETTrashAutoPurge -> "TRASH_AUTO_PURGE"
 
 instance FromJSON SystemEventType where
     parseJSON = parseJSONText "SystemEventType"
@@ -501,21 +540,20 @@
 instance ToJSON DataLeakPreventionChangeType where
     toJSON = toJSONText
 
--- | The type of Drive folder.
+-- | This field is deprecated; please see \`DriveFolder.type\` instead.
 data FolderType
     = FTTypeUnspecified
       -- ^ @TYPE_UNSPECIFIED@
-      -- The folder type is unknown.
+      -- This item is deprecated; please see \`DriveFolder.Type\` instead.
     | FTMyDriveRoot
       -- ^ @MY_DRIVE_ROOT@
-      -- The folder is the root of a user\'s MyDrive.
+      -- This item is deprecated; please see \`DriveFolder.Type\` instead.
     | FTTeamDriveRoot
       -- ^ @TEAM_DRIVE_ROOT@
-      -- The folder is the root of a Team Drive. Note that this folder is a Drive
-      -- item, and is a distinct entity from the Team Drive itself.
+      -- This item is deprecated; please see \`DriveFolder.Type\` instead.
     | FTStandardFolder
       -- ^ @STANDARD_FOLDER@
-      -- The folder is a standard, non-root, folder.
+      -- This item is deprecated; please see \`DriveFolder.Type\` instead.
       deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
 
 instance Hashable FolderType
diff --git a/gen/Network/Google/Resource/DriveActivity/Activity/Query.hs b/gen/Network/Google/Resource/DriveActivity/Activity/Query.hs
--- a/gen/Network/Google/Resource/DriveActivity/Activity/Query.hs
+++ b/gen/Network/Google/Resource/DriveActivity/Activity/Query.hs
@@ -61,15 +61,18 @@
 -- | Query past activity in Google Drive.
 --
 -- /See:/ 'activityQuery' smart constructor.
-data ActivityQuery = ActivityQuery'
+data ActivityQuery =
+  ActivityQuery'
     { _aqXgafv          :: !(Maybe Xgafv)
     , _aqUploadProtocol :: !(Maybe Text)
     , _aqAccessToken    :: !(Maybe Text)
     , _aqUploadType     :: !(Maybe Text)
     , _aqPayload        :: !QueryDriveActivityRequest
     , _aqCallback       :: !(Maybe Text)
-    } deriving (Eq,Show,Data,Typeable,Generic)
+    }
+  deriving (Eq, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ActivityQuery' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -89,7 +92,7 @@
     :: QueryDriveActivityRequest -- ^ 'aqPayload'
     -> ActivityQuery
 activityQuery pAqPayload_ =
-    ActivityQuery'
+  ActivityQuery'
     { _aqXgafv = Nothing
     , _aqUploadProtocol = Nothing
     , _aqAccessToken = Nothing
@@ -97,6 +100,7 @@
     , _aqPayload = pAqPayload_
     , _aqCallback = Nothing
     }
+
 
 -- | V1 error format.
 aqXgafv :: Lens' ActivityQuery (Maybe Xgafv)
diff --git a/gogol-driveactivity.cabal b/gogol-driveactivity.cabal
--- a/gogol-driveactivity.cabal
+++ b/gogol-driveactivity.cabal
@@ -1,5 +1,5 @@
 name:                  gogol-driveactivity
-version:               0.4.0
+version:               0.5.0
 synopsis:              Google Drive Activity SDK.
 homepage:              https://github.com/brendanhay/gogol
 bug-reports:           https://github.com/brendanhay/gogol/issues
@@ -42,5 +42,5 @@
         , Network.Google.DriveActivity.Types.Sum
 
     build-depends:
-          gogol-core == 0.4.0.*
+          gogol-core == 0.5.0.*
         , base       >= 4.7 && < 5
