diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`0.5.0`
+`1.0.0`
 
 
 ## Description
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,2 +1,3 @@
-import           Distribution.Simple
+import Distribution.Simple
+
 main = defaultMain
diff --git a/gen/Gogol/ConsumerSurveys.hs b/gen/Gogol/ConsumerSurveys.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys.hs
@@ -0,0 +1,187 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates and conducts surveys, lists the surveys that an authenticated user owns, and retrieves survey results and information about specified surveys.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference>
+module Gogol.ConsumerSurveys
+  ( -- * Configuration
+    consumerSurveysService,
+
+    -- * OAuth Scopes
+    Consumersurveys'FullControl,
+    Consumersurveys'Readonly,
+    Userinfo'Email,
+
+    -- * Resources
+
+    -- ** consumersurveys.mobileapppanels.get
+    ConsumerSurveysMobileapppanelsGetResource,
+    ConsumerSurveysMobileapppanelsGet (..),
+    newConsumerSurveysMobileapppanelsGet,
+
+    -- ** consumersurveys.mobileapppanels.list
+    ConsumerSurveysMobileapppanelsListResource,
+    ConsumerSurveysMobileapppanelsList (..),
+    newConsumerSurveysMobileapppanelsList,
+
+    -- ** consumersurveys.mobileapppanels.update
+    ConsumerSurveysMobileapppanelsUpdateResource,
+    ConsumerSurveysMobileapppanelsUpdate (..),
+    newConsumerSurveysMobileapppanelsUpdate,
+
+    -- ** consumersurveys.results.get
+    ConsumerSurveysResultsGetResource,
+    ConsumerSurveysResultsGet (..),
+    newConsumerSurveysResultsGet,
+
+    -- ** consumersurveys.surveys.delete
+    ConsumerSurveysSurveysDeleteResource,
+    ConsumerSurveysSurveysDelete (..),
+    newConsumerSurveysSurveysDelete,
+
+    -- ** consumersurveys.surveys.get
+    ConsumerSurveysSurveysGetResource,
+    ConsumerSurveysSurveysGet (..),
+    newConsumerSurveysSurveysGet,
+
+    -- ** consumersurveys.surveys.insert
+    ConsumerSurveysSurveysInsertResource,
+    ConsumerSurveysSurveysInsert (..),
+    newConsumerSurveysSurveysInsert,
+
+    -- ** consumersurveys.surveys.list
+    ConsumerSurveysSurveysListResource,
+    ConsumerSurveysSurveysList (..),
+    newConsumerSurveysSurveysList,
+
+    -- ** consumersurveys.surveys.start
+    ConsumerSurveysSurveysStartResource,
+    ConsumerSurveysSurveysStart (..),
+    newConsumerSurveysSurveysStart,
+
+    -- ** consumersurveys.surveys.stop
+    ConsumerSurveysSurveysStopResource,
+    ConsumerSurveysSurveysStop (..),
+    newConsumerSurveysSurveysStop,
+
+    -- ** consumersurveys.surveys.update
+    ConsumerSurveysSurveysUpdateResource,
+    ConsumerSurveysSurveysUpdate (..),
+    newConsumerSurveysSurveysUpdate,
+
+    -- * Types
+
+    -- ** FieldMask
+    FieldMask (..),
+    newFieldMask,
+
+    -- ** MobileAppPanel
+    MobileAppPanel (..),
+    newMobileAppPanel,
+
+    -- ** MobileAppPanelsListResponse
+    MobileAppPanelsListResponse (..),
+    newMobileAppPanelsListResponse,
+
+    -- ** PageInfo
+    PageInfo (..),
+    newPageInfo,
+
+    -- ** ResultsGetRequest
+    ResultsGetRequest (..),
+    newResultsGetRequest,
+
+    -- ** ResultsMask
+    ResultsMask (..),
+    newResultsMask,
+
+    -- ** Survey
+    Survey (..),
+    newSurvey,
+
+    -- ** SurveyAudience
+    SurveyAudience (..),
+    newSurveyAudience,
+
+    -- ** SurveyCost
+    SurveyCost (..),
+    newSurveyCost,
+
+    -- ** SurveyQuestion
+    SurveyQuestion (..),
+    newSurveyQuestion,
+
+    -- ** SurveyQuestionImage
+    SurveyQuestionImage (..),
+    newSurveyQuestionImage,
+
+    -- ** SurveyRejection
+    SurveyRejection (..),
+    newSurveyRejection,
+
+    -- ** SurveyResults
+    SurveyResults (..),
+    newSurveyResults,
+
+    -- ** SurveysDeleteResponse
+    SurveysDeleteResponse (..),
+    newSurveysDeleteResponse,
+
+    -- ** SurveysListResponse
+    SurveysListResponse (..),
+    newSurveysListResponse,
+
+    -- ** SurveysStartRequest
+    SurveysStartRequest (..),
+    newSurveysStartRequest,
+
+    -- ** SurveysStartResponse
+    SurveysStartResponse (..),
+    newSurveysStartResponse,
+
+    -- ** SurveysStopResponse
+    SurveysStopResponse (..),
+    newSurveysStopResponse,
+
+    -- ** TokenPagination
+    TokenPagination (..),
+    newTokenPagination,
+  )
+where
+
+import Gogol.ConsumerSurveys.Mobileapppanels.Get
+import Gogol.ConsumerSurveys.Mobileapppanels.List
+import Gogol.ConsumerSurveys.Mobileapppanels.Update
+import Gogol.ConsumerSurveys.Results.Get
+import Gogol.ConsumerSurveys.Surveys.Delete
+import Gogol.ConsumerSurveys.Surveys.Get
+import Gogol.ConsumerSurveys.Surveys.Insert
+import Gogol.ConsumerSurveys.Surveys.List
+import Gogol.ConsumerSurveys.Surveys.Start
+import Gogol.ConsumerSurveys.Surveys.Stop
+import Gogol.ConsumerSurveys.Surveys.Update
+import Gogol.ConsumerSurveys.Types
diff --git a/gen/Gogol/ConsumerSurveys/Internal/Product.hs b/gen/Gogol/ConsumerSurveys/Internal/Product.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Internal/Product.hs
@@ -0,0 +1,912 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Internal.Product
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.ConsumerSurveys.Internal.Product
+  ( -- * FieldMask
+    FieldMask (..),
+    newFieldMask,
+
+    -- * MobileAppPanel
+    MobileAppPanel (..),
+    newMobileAppPanel,
+
+    -- * MobileAppPanelsListResponse
+    MobileAppPanelsListResponse (..),
+    newMobileAppPanelsListResponse,
+
+    -- * PageInfo
+    PageInfo (..),
+    newPageInfo,
+
+    -- * ResultsGetRequest
+    ResultsGetRequest (..),
+    newResultsGetRequest,
+
+    -- * ResultsMask
+    ResultsMask (..),
+    newResultsMask,
+
+    -- * Survey
+    Survey (..),
+    newSurvey,
+
+    -- * SurveyAudience
+    SurveyAudience (..),
+    newSurveyAudience,
+
+    -- * SurveyCost
+    SurveyCost (..),
+    newSurveyCost,
+
+    -- * SurveyQuestion
+    SurveyQuestion (..),
+    newSurveyQuestion,
+
+    -- * SurveyQuestionImage
+    SurveyQuestionImage (..),
+    newSurveyQuestionImage,
+
+    -- * SurveyRejection
+    SurveyRejection (..),
+    newSurveyRejection,
+
+    -- * SurveyResults
+    SurveyResults (..),
+    newSurveyResults,
+
+    -- * SurveysDeleteResponse
+    SurveysDeleteResponse (..),
+    newSurveysDeleteResponse,
+
+    -- * SurveysListResponse
+    SurveysListResponse (..),
+    newSurveysListResponse,
+
+    -- * SurveysStartRequest
+    SurveysStartRequest (..),
+    newSurveysStartRequest,
+
+    -- * SurveysStartResponse
+    SurveysStartResponse (..),
+    newSurveysStartResponse,
+
+    -- * SurveysStopResponse
+    SurveysStopResponse (..),
+    newSurveysStopResponse,
+
+    -- * TokenPagination
+    TokenPagination (..),
+    newTokenPagination,
+  )
+where
+
+import Gogol.ConsumerSurveys.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+--
+-- /See:/ 'newFieldMask' smart constructor.
+data FieldMask = FieldMask
+  { fields :: (Core.Maybe [FieldMask]),
+    id :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'FieldMask' with the minimum fields required to make a request.
+newFieldMask ::
+  FieldMask
+newFieldMask = FieldMask {fields = Core.Nothing, id = Core.Nothing}
+
+instance Core.FromJSON FieldMask where
+  parseJSON =
+    Core.withObject
+      "FieldMask"
+      ( \o ->
+          FieldMask
+            Core.<$> (o Core..:? "fields")
+            Core.<*> (o Core..:? "id")
+      )
+
+instance Core.ToJSON FieldMask where
+  toJSON FieldMask {..} =
+    Core.object
+      ( Core.catMaybes
+          [("fields" Core..=) Core.<$> fields, ("id" Core..=) Core.<$> id]
+      )
+
+--
+-- /See:/ 'newMobileAppPanel' smart constructor.
+data MobileAppPanel = MobileAppPanel
+  { country :: (Core.Maybe Core.Text),
+    isPublicPanel :: (Core.Maybe Core.Bool),
+    language :: (Core.Maybe Core.Text),
+    mobileAppPanelId :: (Core.Maybe Core.Text),
+    name :: (Core.Maybe Core.Text),
+    owners :: (Core.Maybe [Core.Text])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileAppPanel' with the minimum fields required to make a request.
+newMobileAppPanel ::
+  MobileAppPanel
+newMobileAppPanel =
+  MobileAppPanel
+    { country = Core.Nothing,
+      isPublicPanel = Core.Nothing,
+      language = Core.Nothing,
+      mobileAppPanelId = Core.Nothing,
+      name = Core.Nothing,
+      owners = Core.Nothing
+    }
+
+instance Core.FromJSON MobileAppPanel where
+  parseJSON =
+    Core.withObject
+      "MobileAppPanel"
+      ( \o ->
+          MobileAppPanel
+            Core.<$> (o Core..:? "country")
+            Core.<*> (o Core..:? "isPublicPanel")
+            Core.<*> (o Core..:? "language")
+            Core.<*> (o Core..:? "mobileAppPanelId")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "owners")
+      )
+
+instance Core.ToJSON MobileAppPanel where
+  toJSON MobileAppPanel {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("country" Core..=) Core.<$> country,
+            ("isPublicPanel" Core..=) Core.<$> isPublicPanel,
+            ("language" Core..=) Core.<$> language,
+            ("mobileAppPanelId" Core..=) Core.<$> mobileAppPanelId,
+            ("name" Core..=) Core.<$> name,
+            ("owners" Core..=) Core.<$> owners
+          ]
+      )
+
+--
+-- /See:/ 'newMobileAppPanelsListResponse' smart constructor.
+data MobileAppPanelsListResponse = MobileAppPanelsListResponse
+  { pageInfo :: (Core.Maybe PageInfo),
+    -- | Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.
+    requestId :: (Core.Maybe Core.Text),
+    -- | An individual predefined panel of Opinion Rewards mobile users.
+    resources :: (Core.Maybe [MobileAppPanel]),
+    tokenPagination :: (Core.Maybe TokenPagination)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'MobileAppPanelsListResponse' with the minimum fields required to make a request.
+newMobileAppPanelsListResponse ::
+  MobileAppPanelsListResponse
+newMobileAppPanelsListResponse =
+  MobileAppPanelsListResponse
+    { pageInfo = Core.Nothing,
+      requestId = Core.Nothing,
+      resources = Core.Nothing,
+      tokenPagination = Core.Nothing
+    }
+
+instance Core.FromJSON MobileAppPanelsListResponse where
+  parseJSON =
+    Core.withObject
+      "MobileAppPanelsListResponse"
+      ( \o ->
+          MobileAppPanelsListResponse
+            Core.<$> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "requestId")
+            Core.<*> (o Core..:? "resources")
+            Core.<*> (o Core..:? "tokenPagination")
+      )
+
+instance Core.ToJSON MobileAppPanelsListResponse where
+  toJSON MobileAppPanelsListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("requestId" Core..=) Core.<$> requestId,
+            ("resources" Core..=) Core.<$> resources,
+            ("tokenPagination" Core..=) Core.<$> tokenPagination
+          ]
+      )
+
+--
+-- /See:/ 'newPageInfo' smart constructor.
+data PageInfo = PageInfo
+  { resultPerPage :: (Core.Maybe Core.Int32),
+    startIndex :: (Core.Maybe Core.Int32),
+    totalResults :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'PageInfo' with the minimum fields required to make a request.
+newPageInfo ::
+  PageInfo
+newPageInfo =
+  PageInfo
+    { resultPerPage = Core.Nothing,
+      startIndex = Core.Nothing,
+      totalResults = Core.Nothing
+    }
+
+instance Core.FromJSON PageInfo where
+  parseJSON =
+    Core.withObject
+      "PageInfo"
+      ( \o ->
+          PageInfo
+            Core.<$> (o Core..:? "resultPerPage")
+            Core.<*> (o Core..:? "startIndex")
+            Core.<*> (o Core..:? "totalResults")
+      )
+
+instance Core.ToJSON PageInfo where
+  toJSON PageInfo {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("resultPerPage" Core..=) Core.<$> resultPerPage,
+            ("startIndex" Core..=) Core.<$> startIndex,
+            ("totalResults" Core..=) Core.<$> totalResults
+          ]
+      )
+
+--
+-- /See:/ 'newResultsGetRequest' smart constructor.
+newtype ResultsGetRequest = ResultsGetRequest
+  { resultMask :: (Core.Maybe ResultsMask)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ResultsGetRequest' with the minimum fields required to make a request.
+newResultsGetRequest ::
+  ResultsGetRequest
+newResultsGetRequest = ResultsGetRequest {resultMask = Core.Nothing}
+
+instance Core.FromJSON ResultsGetRequest where
+  parseJSON =
+    Core.withObject
+      "ResultsGetRequest"
+      (\o -> ResultsGetRequest Core.<$> (o Core..:? "resultMask"))
+
+instance Core.ToJSON ResultsGetRequest where
+  toJSON ResultsGetRequest {..} =
+    Core.object
+      (Core.catMaybes [("resultMask" Core..=) Core.<$> resultMask])
+
+--
+-- /See:/ 'newResultsMask' smart constructor.
+data ResultsMask = ResultsMask
+  { fields :: (Core.Maybe [FieldMask]),
+    projection :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ResultsMask' with the minimum fields required to make a request.
+newResultsMask ::
+  ResultsMask
+newResultsMask =
+  ResultsMask {fields = Core.Nothing, projection = Core.Nothing}
+
+instance Core.FromJSON ResultsMask where
+  parseJSON =
+    Core.withObject
+      "ResultsMask"
+      ( \o ->
+          ResultsMask
+            Core.<$> (o Core..:? "fields")
+            Core.<*> (o Core..:? "projection")
+      )
+
+instance Core.ToJSON ResultsMask where
+  toJSON ResultsMask {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("fields" Core..=) Core.<$> fields,
+            ("projection" Core..=) Core.<$> projection
+          ]
+      )
+
+--
+-- /See:/ 'newSurvey' smart constructor.
+data Survey = Survey
+  { audience :: (Core.Maybe SurveyAudience),
+    cost :: (Core.Maybe SurveyCost),
+    customerData :: (Core.Maybe Core.Base64),
+    description :: (Core.Maybe Core.Text),
+    owners :: (Core.Maybe [Core.Text]),
+    questions :: (Core.Maybe [SurveyQuestion]),
+    rejectionReason :: (Core.Maybe SurveyRejection),
+    state :: (Core.Maybe Core.Text),
+    surveyUrlId :: (Core.Maybe Core.Text),
+    title :: (Core.Maybe Core.Text),
+    wantedResponseCount :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'Survey' with the minimum fields required to make a request.
+newSurvey ::
+  Survey
+newSurvey =
+  Survey
+    { audience = Core.Nothing,
+      cost = Core.Nothing,
+      customerData = Core.Nothing,
+      description = Core.Nothing,
+      owners = Core.Nothing,
+      questions = Core.Nothing,
+      rejectionReason = Core.Nothing,
+      state = Core.Nothing,
+      surveyUrlId = Core.Nothing,
+      title = Core.Nothing,
+      wantedResponseCount = Core.Nothing
+    }
+
+instance Core.FromJSON Survey where
+  parseJSON =
+    Core.withObject
+      "Survey"
+      ( \o ->
+          Survey
+            Core.<$> (o Core..:? "audience")
+            Core.<*> (o Core..:? "cost")
+            Core.<*> (o Core..:? "customerData")
+            Core.<*> (o Core..:? "description")
+            Core.<*> (o Core..:? "owners")
+            Core.<*> (o Core..:? "questions")
+            Core.<*> (o Core..:? "rejectionReason")
+            Core.<*> (o Core..:? "state")
+            Core.<*> (o Core..:? "surveyUrlId")
+            Core.<*> (o Core..:? "title")
+            Core.<*> (o Core..:? "wantedResponseCount")
+      )
+
+instance Core.ToJSON Survey where
+  toJSON Survey {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("audience" Core..=) Core.<$> audience,
+            ("cost" Core..=) Core.<$> cost,
+            ("customerData" Core..=) Core.<$> customerData,
+            ("description" Core..=) Core.<$> description,
+            ("owners" Core..=) Core.<$> owners,
+            ("questions" Core..=) Core.<$> questions,
+            ("rejectionReason" Core..=) Core.<$> rejectionReason,
+            ("state" Core..=) Core.<$> state,
+            ("surveyUrlId" Core..=) Core.<$> surveyUrlId,
+            ("title" Core..=) Core.<$> title,
+            ("wantedResponseCount" Core..=) Core.<$> wantedResponseCount
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyAudience' smart constructor.
+data SurveyAudience = SurveyAudience
+  { ages :: (Core.Maybe [Core.Text]),
+    country :: (Core.Maybe Core.Text),
+    countrySubdivision :: (Core.Maybe Core.Text),
+    gender :: (Core.Maybe Core.Text),
+    languages :: (Core.Maybe [Core.Text]),
+    mobileAppPanelId :: (Core.Maybe Core.Text),
+    populationSource :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyAudience' with the minimum fields required to make a request.
+newSurveyAudience ::
+  SurveyAudience
+newSurveyAudience =
+  SurveyAudience
+    { ages = Core.Nothing,
+      country = Core.Nothing,
+      countrySubdivision = Core.Nothing,
+      gender = Core.Nothing,
+      languages = Core.Nothing,
+      mobileAppPanelId = Core.Nothing,
+      populationSource = Core.Nothing
+    }
+
+instance Core.FromJSON SurveyAudience where
+  parseJSON =
+    Core.withObject
+      "SurveyAudience"
+      ( \o ->
+          SurveyAudience
+            Core.<$> (o Core..:? "ages")
+            Core.<*> (o Core..:? "country")
+            Core.<*> (o Core..:? "countrySubdivision")
+            Core.<*> (o Core..:? "gender")
+            Core.<*> (o Core..:? "languages")
+            Core.<*> (o Core..:? "mobileAppPanelId")
+            Core.<*> (o Core..:? "populationSource")
+      )
+
+instance Core.ToJSON SurveyAudience where
+  toJSON SurveyAudience {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("ages" Core..=) Core.<$> ages,
+            ("country" Core..=) Core.<$> country,
+            ("countrySubdivision" Core..=) Core.<$> countrySubdivision,
+            ("gender" Core..=) Core.<$> gender,
+            ("languages" Core..=) Core.<$> languages,
+            ("mobileAppPanelId" Core..=) Core.<$> mobileAppPanelId,
+            ("populationSource" Core..=) Core.<$> populationSource
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyCost' smart constructor.
+data SurveyCost = SurveyCost
+  { costPerResponseNanos :: (Core.Maybe Core.Int64),
+    currencyCode :: (Core.Maybe Core.Text),
+    maxCostPerResponseNanos :: (Core.Maybe Core.Int64),
+    nanos :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyCost' with the minimum fields required to make a request.
+newSurveyCost ::
+  SurveyCost
+newSurveyCost =
+  SurveyCost
+    { costPerResponseNanos = Core.Nothing,
+      currencyCode = Core.Nothing,
+      maxCostPerResponseNanos = Core.Nothing,
+      nanos = Core.Nothing
+    }
+
+instance Core.FromJSON SurveyCost where
+  parseJSON =
+    Core.withObject
+      "SurveyCost"
+      ( \o ->
+          SurveyCost
+            Core.<$> ( o
+                         Core..:? "costPerResponseNanos"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "currencyCode")
+            Core.<*> ( o
+                         Core..:? "maxCostPerResponseNanos"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "nanos" Core.<&> Core.fmap Core.fromAsText)
+      )
+
+instance Core.ToJSON SurveyCost where
+  toJSON SurveyCost {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("costPerResponseNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> costPerResponseNanos,
+            ("currencyCode" Core..=) Core.<$> currencyCode,
+            ("maxCostPerResponseNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> maxCostPerResponseNanos,
+            ("nanos" Core..=) Core.. Core.AsText Core.<$> nanos
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyQuestion' smart constructor.
+data SurveyQuestion = SurveyQuestion
+  { answerOrder :: (Core.Maybe Core.Text),
+    answers :: (Core.Maybe [Core.Text]),
+    hasOther :: (Core.Maybe Core.Bool),
+    highValueLabel :: (Core.Maybe Core.Text),
+    images :: (Core.Maybe [SurveyQuestionImage]),
+    lastAnswerPositionPinned :: (Core.Maybe Core.Bool),
+    lowValueLabel :: (Core.Maybe Core.Text),
+    mustPickSuggestion :: (Core.Maybe Core.Bool),
+    numStars :: (Core.Maybe Core.Text),
+    openTextPlaceholder :: (Core.Maybe Core.Text),
+    openTextSuggestions :: (Core.Maybe [Core.Text]),
+    question :: (Core.Maybe Core.Text),
+    sentimentText :: (Core.Maybe Core.Text),
+    singleLineResponse :: (Core.Maybe Core.Bool),
+    thresholdAnswers :: (Core.Maybe [Core.Text]),
+    type' :: (Core.Maybe Core.Text),
+    unitOfMeasurementLabel :: (Core.Maybe Core.Text),
+    videoId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyQuestion' with the minimum fields required to make a request.
+newSurveyQuestion ::
+  SurveyQuestion
+newSurveyQuestion =
+  SurveyQuestion
+    { answerOrder = Core.Nothing,
+      answers = Core.Nothing,
+      hasOther = Core.Nothing,
+      highValueLabel = Core.Nothing,
+      images = Core.Nothing,
+      lastAnswerPositionPinned = Core.Nothing,
+      lowValueLabel = Core.Nothing,
+      mustPickSuggestion = Core.Nothing,
+      numStars = Core.Nothing,
+      openTextPlaceholder = Core.Nothing,
+      openTextSuggestions = Core.Nothing,
+      question = Core.Nothing,
+      sentimentText = Core.Nothing,
+      singleLineResponse = Core.Nothing,
+      thresholdAnswers = Core.Nothing,
+      type' = Core.Nothing,
+      unitOfMeasurementLabel = Core.Nothing,
+      videoId = Core.Nothing
+    }
+
+instance Core.FromJSON SurveyQuestion where
+  parseJSON =
+    Core.withObject
+      "SurveyQuestion"
+      ( \o ->
+          SurveyQuestion
+            Core.<$> (o Core..:? "answerOrder")
+            Core.<*> (o Core..:? "answers")
+            Core.<*> (o Core..:? "hasOther")
+            Core.<*> (o Core..:? "highValueLabel")
+            Core.<*> (o Core..:? "images")
+            Core.<*> (o Core..:? "lastAnswerPositionPinned")
+            Core.<*> (o Core..:? "lowValueLabel")
+            Core.<*> (o Core..:? "mustPickSuggestion")
+            Core.<*> (o Core..:? "numStars")
+            Core.<*> (o Core..:? "openTextPlaceholder")
+            Core.<*> (o Core..:? "openTextSuggestions")
+            Core.<*> (o Core..:? "question")
+            Core.<*> (o Core..:? "sentimentText")
+            Core.<*> (o Core..:? "singleLineResponse")
+            Core.<*> (o Core..:? "thresholdAnswers")
+            Core.<*> (o Core..:? "type")
+            Core.<*> (o Core..:? "unitOfMeasurementLabel")
+            Core.<*> (o Core..:? "videoId")
+      )
+
+instance Core.ToJSON SurveyQuestion where
+  toJSON SurveyQuestion {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("answerOrder" Core..=) Core.<$> answerOrder,
+            ("answers" Core..=) Core.<$> answers,
+            ("hasOther" Core..=) Core.<$> hasOther,
+            ("highValueLabel" Core..=) Core.<$> highValueLabel,
+            ("images" Core..=) Core.<$> images,
+            ("lastAnswerPositionPinned" Core..=)
+              Core.<$> lastAnswerPositionPinned,
+            ("lowValueLabel" Core..=) Core.<$> lowValueLabel,
+            ("mustPickSuggestion" Core..=) Core.<$> mustPickSuggestion,
+            ("numStars" Core..=) Core.<$> numStars,
+            ("openTextPlaceholder" Core..=) Core.<$> openTextPlaceholder,
+            ("openTextSuggestions" Core..=) Core.<$> openTextSuggestions,
+            ("question" Core..=) Core.<$> question,
+            ("sentimentText" Core..=) Core.<$> sentimentText,
+            ("singleLineResponse" Core..=) Core.<$> singleLineResponse,
+            ("thresholdAnswers" Core..=) Core.<$> thresholdAnswers,
+            ("type" Core..=) Core.<$> type',
+            ("unitOfMeasurementLabel" Core..=) Core.<$> unitOfMeasurementLabel,
+            ("videoId" Core..=) Core.<$> videoId
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyQuestionImage' smart constructor.
+data SurveyQuestionImage = SurveyQuestionImage
+  { altText :: (Core.Maybe Core.Text),
+    data' :: (Core.Maybe Core.Base64),
+    url :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyQuestionImage' with the minimum fields required to make a request.
+newSurveyQuestionImage ::
+  SurveyQuestionImage
+newSurveyQuestionImage =
+  SurveyQuestionImage
+    { altText = Core.Nothing,
+      data' = Core.Nothing,
+      url = Core.Nothing
+    }
+
+instance Core.FromJSON SurveyQuestionImage where
+  parseJSON =
+    Core.withObject
+      "SurveyQuestionImage"
+      ( \o ->
+          SurveyQuestionImage
+            Core.<$> (o Core..:? "altText")
+            Core.<*> (o Core..:? "data")
+            Core.<*> (o Core..:? "url")
+      )
+
+instance Core.ToJSON SurveyQuestionImage where
+  toJSON SurveyQuestionImage {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("altText" Core..=) Core.<$> altText,
+            ("data" Core..=) Core.<$> data',
+            ("url" Core..=) Core.<$> url
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyRejection' smart constructor.
+data SurveyRejection = SurveyRejection
+  { explanation :: (Core.Maybe Core.Text),
+    type' :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyRejection' with the minimum fields required to make a request.
+newSurveyRejection ::
+  SurveyRejection
+newSurveyRejection =
+  SurveyRejection {explanation = Core.Nothing, type' = Core.Nothing}
+
+instance Core.FromJSON SurveyRejection where
+  parseJSON =
+    Core.withObject
+      "SurveyRejection"
+      ( \o ->
+          SurveyRejection
+            Core.<$> (o Core..:? "explanation")
+            Core.<*> (o Core..:? "type")
+      )
+
+instance Core.ToJSON SurveyRejection where
+  toJSON SurveyRejection {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("explanation" Core..=) Core.<$> explanation,
+            ("type" Core..=) Core.<$> type'
+          ]
+      )
+
+--
+-- /See:/ 'newSurveyResults' smart constructor.
+data SurveyResults = SurveyResults
+  { status :: (Core.Maybe Core.Text),
+    surveyUrlId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveyResults' with the minimum fields required to make a request.
+newSurveyResults ::
+  SurveyResults
+newSurveyResults =
+  SurveyResults {status = Core.Nothing, surveyUrlId = Core.Nothing}
+
+instance Core.FromJSON SurveyResults where
+  parseJSON =
+    Core.withObject
+      "SurveyResults"
+      ( \o ->
+          SurveyResults
+            Core.<$> (o Core..:? "status")
+            Core.<*> (o Core..:? "surveyUrlId")
+      )
+
+instance Core.ToJSON SurveyResults where
+  toJSON SurveyResults {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("status" Core..=) Core.<$> status,
+            ("surveyUrlId" Core..=) Core.<$> surveyUrlId
+          ]
+      )
+
+--
+-- /See:/ 'newSurveysDeleteResponse' smart constructor.
+newtype SurveysDeleteResponse = SurveysDeleteResponse
+  { -- | Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.
+    requestId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveysDeleteResponse' with the minimum fields required to make a request.
+newSurveysDeleteResponse ::
+  SurveysDeleteResponse
+newSurveysDeleteResponse =
+  SurveysDeleteResponse {requestId = Core.Nothing}
+
+instance Core.FromJSON SurveysDeleteResponse where
+  parseJSON =
+    Core.withObject
+      "SurveysDeleteResponse"
+      (\o -> SurveysDeleteResponse Core.<$> (o Core..:? "requestId"))
+
+instance Core.ToJSON SurveysDeleteResponse where
+  toJSON SurveysDeleteResponse {..} =
+    Core.object
+      (Core.catMaybes [("requestId" Core..=) Core.<$> requestId])
+
+--
+-- /See:/ 'newSurveysListResponse' smart constructor.
+data SurveysListResponse = SurveysListResponse
+  { pageInfo :: (Core.Maybe PageInfo),
+    -- | Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.
+    requestId :: (Core.Maybe Core.Text),
+    -- | An individual survey resource.
+    resources :: (Core.Maybe [Survey]),
+    tokenPagination :: (Core.Maybe TokenPagination)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveysListResponse' with the minimum fields required to make a request.
+newSurveysListResponse ::
+  SurveysListResponse
+newSurveysListResponse =
+  SurveysListResponse
+    { pageInfo = Core.Nothing,
+      requestId = Core.Nothing,
+      resources = Core.Nothing,
+      tokenPagination = Core.Nothing
+    }
+
+instance Core.FromJSON SurveysListResponse where
+  parseJSON =
+    Core.withObject
+      "SurveysListResponse"
+      ( \o ->
+          SurveysListResponse
+            Core.<$> (o Core..:? "pageInfo")
+            Core.<*> (o Core..:? "requestId")
+            Core.<*> (o Core..:? "resources")
+            Core.<*> (o Core..:? "tokenPagination")
+      )
+
+instance Core.ToJSON SurveysListResponse where
+  toJSON SurveysListResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("pageInfo" Core..=) Core.<$> pageInfo,
+            ("requestId" Core..=) Core.<$> requestId,
+            ("resources" Core..=) Core.<$> resources,
+            ("tokenPagination" Core..=) Core.<$> tokenPagination
+          ]
+      )
+
+--
+-- /See:/ 'newSurveysStartRequest' smart constructor.
+newtype SurveysStartRequest = SurveysStartRequest
+  { -- | Threshold to start a survey automically if the quoted prices is less than or equal to this value. See Survey.Cost for more details.
+    maxCostPerResponseNanos :: (Core.Maybe Core.Int64)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveysStartRequest' with the minimum fields required to make a request.
+newSurveysStartRequest ::
+  SurveysStartRequest
+newSurveysStartRequest =
+  SurveysStartRequest {maxCostPerResponseNanos = Core.Nothing}
+
+instance Core.FromJSON SurveysStartRequest where
+  parseJSON =
+    Core.withObject
+      "SurveysStartRequest"
+      ( \o ->
+          SurveysStartRequest
+            Core.<$> ( o
+                         Core..:? "maxCostPerResponseNanos"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+      )
+
+instance Core.ToJSON SurveysStartRequest where
+  toJSON SurveysStartRequest {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("maxCostPerResponseNanos" Core..=)
+              Core.. Core.AsText
+              Core.<$> maxCostPerResponseNanos
+          ]
+      )
+
+--
+-- /See:/ 'newSurveysStartResponse' smart constructor.
+newtype SurveysStartResponse = SurveysStartResponse
+  { -- | Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.
+    requestId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveysStartResponse' with the minimum fields required to make a request.
+newSurveysStartResponse ::
+  SurveysStartResponse
+newSurveysStartResponse =
+  SurveysStartResponse {requestId = Core.Nothing}
+
+instance Core.FromJSON SurveysStartResponse where
+  parseJSON =
+    Core.withObject
+      "SurveysStartResponse"
+      (\o -> SurveysStartResponse Core.<$> (o Core..:? "requestId"))
+
+instance Core.ToJSON SurveysStartResponse where
+  toJSON SurveysStartResponse {..} =
+    Core.object
+      (Core.catMaybes [("requestId" Core..=) Core.<$> requestId])
+
+--
+-- /See:/ 'newSurveysStopResponse' smart constructor.
+newtype SurveysStopResponse = SurveysStopResponse
+  { -- | Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests.
+    requestId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SurveysStopResponse' with the minimum fields required to make a request.
+newSurveysStopResponse ::
+  SurveysStopResponse
+newSurveysStopResponse =
+  SurveysStopResponse {requestId = Core.Nothing}
+
+instance Core.FromJSON SurveysStopResponse where
+  parseJSON =
+    Core.withObject
+      "SurveysStopResponse"
+      (\o -> SurveysStopResponse Core.<$> (o Core..:? "requestId"))
+
+instance Core.ToJSON SurveysStopResponse where
+  toJSON SurveysStopResponse {..} =
+    Core.object
+      (Core.catMaybes [("requestId" Core..=) Core.<$> requestId])
+
+--
+-- /See:/ 'newTokenPagination' smart constructor.
+data TokenPagination = TokenPagination
+  { nextPageToken :: (Core.Maybe Core.Text),
+    previousPageToken :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TokenPagination' with the minimum fields required to make a request.
+newTokenPagination ::
+  TokenPagination
+newTokenPagination =
+  TokenPagination
+    { nextPageToken = Core.Nothing,
+      previousPageToken = Core.Nothing
+    }
+
+instance Core.FromJSON TokenPagination where
+  parseJSON =
+    Core.withObject
+      "TokenPagination"
+      ( \o ->
+          TokenPagination
+            Core.<$> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "previousPageToken")
+      )
+
+instance Core.ToJSON TokenPagination where
+  toJSON TokenPagination {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("previousPageToken" Core..=) Core.<$> previousPageToken
+          ]
+      )
diff --git a/gen/Gogol/ConsumerSurveys/Internal/Sum.hs b/gen/Gogol/ConsumerSurveys/Internal/Sum.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Internal/Sum.hs
@@ -0,0 +1,31 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Internal.Sum
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.ConsumerSurveys.Internal.Sum
+  (
+  )
+where
+
+import Gogol.Prelude qualified as Core
diff --git a/gen/Gogol/ConsumerSurveys/Mobileapppanels/Get.hs b/gen/Gogol/ConsumerSurveys/Mobileapppanels/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Mobileapppanels/Get.hs
@@ -0,0 +1,86 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Mobileapppanels.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves a MobileAppPanel that is available to the authenticated user.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.get@.
+module Gogol.ConsumerSurveys.Mobileapppanels.Get
+  ( -- * Resource
+    ConsumerSurveysMobileapppanelsGetResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysMobileapppanelsGet (..),
+    newConsumerSurveysMobileapppanelsGet,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.mobileapppanels.get@ method which the
+-- 'ConsumerSurveysMobileapppanelsGet' request conforms to.
+type ConsumerSurveysMobileapppanelsGetResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "mobileAppPanels"
+    Core.:> Core.Capture "panelId" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] MobileAppPanel
+
+-- | Retrieves a MobileAppPanel that is available to the authenticated user.
+--
+-- /See:/ 'newConsumerSurveysMobileapppanelsGet' smart constructor.
+newtype ConsumerSurveysMobileapppanelsGet = ConsumerSurveysMobileapppanelsGet
+  { -- | External URL ID for the panel.
+    panelId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysMobileapppanelsGet' with the minimum fields required to make a request.
+newConsumerSurveysMobileapppanelsGet ::
+  -- |  External URL ID for the panel. See 'panelId'.
+  Core.Text ->
+  ConsumerSurveysMobileapppanelsGet
+newConsumerSurveysMobileapppanelsGet panelId =
+  ConsumerSurveysMobileapppanelsGet {panelId = panelId}
+
+instance Core.GoogleRequest ConsumerSurveysMobileapppanelsGet where
+  type Rs ConsumerSurveysMobileapppanelsGet = MobileAppPanel
+  type
+    Scopes ConsumerSurveysMobileapppanelsGet =
+      '[ Consumersurveys'FullControl,
+         Consumersurveys'Readonly,
+         Userinfo'Email
+       ]
+  requestClient ConsumerSurveysMobileapppanelsGet {..} =
+    go panelId (Core.Just Core.AltJSON) consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy ConsumerSurveysMobileapppanelsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Mobileapppanels/List.hs b/gen/Gogol/ConsumerSurveys/Mobileapppanels/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Mobileapppanels/List.hs
@@ -0,0 +1,98 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Mobileapppanels.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the MobileAppPanels available to the authenticated user.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.list@.
+module Gogol.ConsumerSurveys.Mobileapppanels.List
+  ( -- * Resource
+    ConsumerSurveysMobileapppanelsListResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysMobileapppanelsList (..),
+    newConsumerSurveysMobileapppanelsList,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.mobileapppanels.list@ method which the
+-- 'ConsumerSurveysMobileapppanelsList' request conforms to.
+type ConsumerSurveysMobileapppanelsListResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "mobileAppPanels"
+    Core.:> Core.QueryParam "maxResults" Core.Word32
+    Core.:> Core.QueryParam "startIndex" Core.Word32
+    Core.:> Core.QueryParam "token" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] MobileAppPanelsListResponse
+
+-- | Lists the MobileAppPanels available to the authenticated user.
+--
+-- /See:/ 'newConsumerSurveysMobileapppanelsList' smart constructor.
+data ConsumerSurveysMobileapppanelsList = ConsumerSurveysMobileapppanelsList
+  { maxResults :: (Core.Maybe Core.Word32),
+    startIndex :: (Core.Maybe Core.Word32),
+    token :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysMobileapppanelsList' with the minimum fields required to make a request.
+newConsumerSurveysMobileapppanelsList ::
+  ConsumerSurveysMobileapppanelsList
+newConsumerSurveysMobileapppanelsList =
+  ConsumerSurveysMobileapppanelsList
+    { maxResults = Core.Nothing,
+      startIndex = Core.Nothing,
+      token = Core.Nothing
+    }
+
+instance Core.GoogleRequest ConsumerSurveysMobileapppanelsList where
+  type
+    Rs ConsumerSurveysMobileapppanelsList =
+      MobileAppPanelsListResponse
+  type
+    Scopes ConsumerSurveysMobileapppanelsList =
+      '[ Consumersurveys'FullControl,
+         Consumersurveys'Readonly,
+         Userinfo'Email
+       ]
+  requestClient ConsumerSurveysMobileapppanelsList {..} =
+    go
+      maxResults
+      startIndex
+      token
+      (Core.Just Core.AltJSON)
+      consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy ConsumerSurveysMobileapppanelsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Mobileapppanels/Update.hs b/gen/Gogol/ConsumerSurveys/Mobileapppanels/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Mobileapppanels/Update.hs
@@ -0,0 +1,95 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Mobileapppanels.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates a MobileAppPanel. Currently the only property that can be updated is the owners property.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.update@.
+module Gogol.ConsumerSurveys.Mobileapppanels.Update
+  ( -- * Resource
+    ConsumerSurveysMobileapppanelsUpdateResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysMobileapppanelsUpdate (..),
+    newConsumerSurveysMobileapppanelsUpdate,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.mobileapppanels.update@ method which the
+-- 'ConsumerSurveysMobileapppanelsUpdate' request conforms to.
+type ConsumerSurveysMobileapppanelsUpdateResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "mobileAppPanels"
+    Core.:> Core.Capture "panelId" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] MobileAppPanel
+    Core.:> Core.Put '[Core.JSON] MobileAppPanel
+
+-- | Updates a MobileAppPanel. Currently the only property that can be updated is the owners property.
+--
+-- /See:/ 'newConsumerSurveysMobileapppanelsUpdate' smart constructor.
+data ConsumerSurveysMobileapppanelsUpdate = ConsumerSurveysMobileapppanelsUpdate
+  { -- | External URL ID for the panel.
+    panelId :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: MobileAppPanel
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysMobileapppanelsUpdate' with the minimum fields required to make a request.
+newConsumerSurveysMobileapppanelsUpdate ::
+  -- |  External URL ID for the panel. See 'panelId'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  MobileAppPanel ->
+  ConsumerSurveysMobileapppanelsUpdate
+newConsumerSurveysMobileapppanelsUpdate panelId payload =
+  ConsumerSurveysMobileapppanelsUpdate
+    { panelId = panelId,
+      payload = payload
+    }
+
+instance Core.GoogleRequest ConsumerSurveysMobileapppanelsUpdate where
+  type Rs ConsumerSurveysMobileapppanelsUpdate = MobileAppPanel
+  type
+    Scopes ConsumerSurveysMobileapppanelsUpdate =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysMobileapppanelsUpdate {..} =
+    go
+      panelId
+      (Core.Just Core.AltJSON)
+      payload
+      consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy ConsumerSurveysMobileapppanelsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Results/Get.hs b/gen/Gogol/ConsumerSurveys/Results/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Results/Get.hs
@@ -0,0 +1,122 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Results.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves any survey results that have been produced so far. Results are formatted as an Excel file. You must add \"?alt=media\" to the URL as an argument to get results.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.results.get@.
+module Gogol.ConsumerSurveys.Results.Get
+  ( -- * Resource
+    ConsumerSurveysResultsGetResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysResultsGet (..),
+    newConsumerSurveysResultsGet,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.results.get@ method which the
+-- 'ConsumerSurveysResultsGet' request conforms to.
+type ConsumerSurveysResultsGetResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "surveyUrlId" Core.Text
+    Core.:> "results"
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] ResultsGetRequest
+    Core.:> Core.Get '[Core.JSON] SurveyResults
+    Core.:<|> "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "surveyUrlId" Core.Text
+    Core.:> "results"
+    Core.:> Core.QueryParam "alt" Core.AltMedia
+    Core.:> Core.Get '[Core.OctetStream] Core.Stream
+
+-- | Retrieves any survey results that have been produced so far. Results are formatted as an Excel file. You must add \"?alt=media\" to the URL as an argument to get results.
+--
+-- /See:/ 'newConsumerSurveysResultsGet' smart constructor.
+data ConsumerSurveysResultsGet = ConsumerSurveysResultsGet
+  { -- | Multipart request metadata.
+    payload :: ResultsGetRequest,
+    -- | External URL ID for the survey.
+    surveyUrlId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysResultsGet' with the minimum fields required to make a request.
+newConsumerSurveysResultsGet ::
+  -- |  Multipart request metadata. See 'payload'.
+  ResultsGetRequest ->
+  -- |  External URL ID for the survey. See 'surveyUrlId'.
+  Core.Text ->
+  ConsumerSurveysResultsGet
+newConsumerSurveysResultsGet payload surveyUrlId =
+  ConsumerSurveysResultsGet
+    { payload = payload,
+      surveyUrlId = surveyUrlId
+    }
+
+instance Core.GoogleRequest ConsumerSurveysResultsGet where
+  type Rs ConsumerSurveysResultsGet = SurveyResults
+  type
+    Scopes ConsumerSurveysResultsGet =
+      '[ Consumersurveys'FullControl,
+         Consumersurveys'Readonly,
+         Userinfo'Email
+       ]
+  requestClient ConsumerSurveysResultsGet {..} =
+    go
+      surveyUrlId
+      (Core.Just Core.AltJSON)
+      payload
+      consumerSurveysService
+    where
+      go Core.:<|> _ =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysResultsGetResource)
+          Core.mempty
+
+instance
+  Core.GoogleRequest
+    (Core.MediaDownload ConsumerSurveysResultsGet)
+  where
+  type
+    Rs (Core.MediaDownload ConsumerSurveysResultsGet) =
+      Core.Stream
+  type
+    Scopes (Core.MediaDownload ConsumerSurveysResultsGet) =
+      Core.Scopes ConsumerSurveysResultsGet
+  requestClient (Core.MediaDownload ConsumerSurveysResultsGet {..}) =
+    go surveyUrlId (Core.Just Core.AltMedia) consumerSurveysService
+    where
+      _ Core.:<|> go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysResultsGetResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Delete.hs b/gen/Gogol/ConsumerSurveys/Surveys/Delete.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Delete.hs
@@ -0,0 +1,81 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Delete
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Removes a survey from view in all user GET requests.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.delete@.
+module Gogol.ConsumerSurveys.Surveys.Delete
+  ( -- * Resource
+    ConsumerSurveysSurveysDeleteResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysDelete (..),
+    newConsumerSurveysSurveysDelete,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.delete@ method which the
+-- 'ConsumerSurveysSurveysDelete' request conforms to.
+type ConsumerSurveysSurveysDeleteResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "surveyUrlId" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] SurveysDeleteResponse
+
+-- | Removes a survey from view in all user GET requests.
+--
+-- /See:/ 'newConsumerSurveysSurveysDelete' smart constructor.
+newtype ConsumerSurveysSurveysDelete = ConsumerSurveysSurveysDelete
+  { -- | External URL ID for the survey.
+    surveyUrlId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysDelete' with the minimum fields required to make a request.
+newConsumerSurveysSurveysDelete ::
+  -- |  External URL ID for the survey. See 'surveyUrlId'.
+  Core.Text ->
+  ConsumerSurveysSurveysDelete
+newConsumerSurveysSurveysDelete surveyUrlId =
+  ConsumerSurveysSurveysDelete {surveyUrlId = surveyUrlId}
+
+instance Core.GoogleRequest ConsumerSurveysSurveysDelete where
+  type Rs ConsumerSurveysSurveysDelete = SurveysDeleteResponse
+  type
+    Scopes ConsumerSurveysSurveysDelete =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysSurveysDelete {..} =
+    go surveyUrlId (Core.Just Core.AltJSON) consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysDeleteResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Get.hs b/gen/Gogol/ConsumerSurveys/Surveys/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Get.hs
@@ -0,0 +1,84 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Retrieves information about the specified survey.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.get@.
+module Gogol.ConsumerSurveys.Surveys.Get
+  ( -- * Resource
+    ConsumerSurveysSurveysGetResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysGet (..),
+    newConsumerSurveysSurveysGet,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.get@ method which the
+-- 'ConsumerSurveysSurveysGet' request conforms to.
+type ConsumerSurveysSurveysGetResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "surveyUrlId" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] Survey
+
+-- | Retrieves information about the specified survey.
+--
+-- /See:/ 'newConsumerSurveysSurveysGet' smart constructor.
+newtype ConsumerSurveysSurveysGet = ConsumerSurveysSurveysGet
+  { -- | External URL ID for the survey.
+    surveyUrlId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysGet' with the minimum fields required to make a request.
+newConsumerSurveysSurveysGet ::
+  -- |  External URL ID for the survey. See 'surveyUrlId'.
+  Core.Text ->
+  ConsumerSurveysSurveysGet
+newConsumerSurveysSurveysGet surveyUrlId =
+  ConsumerSurveysSurveysGet {surveyUrlId = surveyUrlId}
+
+instance Core.GoogleRequest ConsumerSurveysSurveysGet where
+  type Rs ConsumerSurveysSurveysGet = Survey
+  type
+    Scopes ConsumerSurveysSurveysGet =
+      '[ Consumersurveys'FullControl,
+         Consumersurveys'Readonly,
+         Userinfo'Email
+       ]
+  requestClient ConsumerSurveysSurveysGet {..} =
+    go surveyUrlId (Core.Just Core.AltJSON) consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysGetResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Insert.hs b/gen/Gogol/ConsumerSurveys/Surveys/Insert.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Insert.hs
@@ -0,0 +1,81 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Insert
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates a survey.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.insert@.
+module Gogol.ConsumerSurveys.Surveys.Insert
+  ( -- * Resource
+    ConsumerSurveysSurveysInsertResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysInsert (..),
+    newConsumerSurveysSurveysInsert,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.insert@ method which the
+-- 'ConsumerSurveysSurveysInsert' request conforms to.
+type ConsumerSurveysSurveysInsertResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] Survey
+    Core.:> Core.Post '[Core.JSON] Survey
+
+-- | Creates a survey.
+--
+-- /See:/ 'newConsumerSurveysSurveysInsert' smart constructor.
+newtype ConsumerSurveysSurveysInsert = ConsumerSurveysSurveysInsert
+  { -- | Multipart request metadata.
+    payload :: Survey
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysInsert' with the minimum fields required to make a request.
+newConsumerSurveysSurveysInsert ::
+  -- |  Multipart request metadata. See 'payload'.
+  Survey ->
+  ConsumerSurveysSurveysInsert
+newConsumerSurveysSurveysInsert payload =
+  ConsumerSurveysSurveysInsert {payload = payload}
+
+instance Core.GoogleRequest ConsumerSurveysSurveysInsert where
+  type Rs ConsumerSurveysSurveysInsert = Survey
+  type
+    Scopes ConsumerSurveysSurveysInsert =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysSurveysInsert {..} =
+    go (Core.Just Core.AltJSON) payload consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysInsertResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/List.hs b/gen/Gogol/ConsumerSurveys/Surveys/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/List.hs
@@ -0,0 +1,94 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the surveys owned by the authenticated user.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.list@.
+module Gogol.ConsumerSurveys.Surveys.List
+  ( -- * Resource
+    ConsumerSurveysSurveysListResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysList (..),
+    newConsumerSurveysSurveysList,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.list@ method which the
+-- 'ConsumerSurveysSurveysList' request conforms to.
+type ConsumerSurveysSurveysListResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.QueryParam "maxResults" Core.Word32
+    Core.:> Core.QueryParam "startIndex" Core.Word32
+    Core.:> Core.QueryParam "token" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] SurveysListResponse
+
+-- | Lists the surveys owned by the authenticated user.
+--
+-- /See:/ 'newConsumerSurveysSurveysList' smart constructor.
+data ConsumerSurveysSurveysList = ConsumerSurveysSurveysList
+  { maxResults :: (Core.Maybe Core.Word32),
+    startIndex :: (Core.Maybe Core.Word32),
+    token :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysList' with the minimum fields required to make a request.
+newConsumerSurveysSurveysList ::
+  ConsumerSurveysSurveysList
+newConsumerSurveysSurveysList =
+  ConsumerSurveysSurveysList
+    { maxResults = Core.Nothing,
+      startIndex = Core.Nothing,
+      token = Core.Nothing
+    }
+
+instance Core.GoogleRequest ConsumerSurveysSurveysList where
+  type Rs ConsumerSurveysSurveysList = SurveysListResponse
+  type
+    Scopes ConsumerSurveysSurveysList =
+      '[ Consumersurveys'FullControl,
+         Consumersurveys'Readonly,
+         Userinfo'Email
+       ]
+  requestClient ConsumerSurveysSurveysList {..} =
+    go
+      maxResults
+      startIndex
+      token
+      (Core.Just Core.AltJSON)
+      consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysListResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Start.hs b/gen/Gogol/ConsumerSurveys/Surveys/Start.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Start.hs
@@ -0,0 +1,93 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Start
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Begins running a survey.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.start@.
+module Gogol.ConsumerSurveys.Surveys.Start
+  ( -- * Resource
+    ConsumerSurveysSurveysStartResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysStart (..),
+    newConsumerSurveysSurveysStart,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.start@ method which the
+-- 'ConsumerSurveysSurveysStart' request conforms to.
+type ConsumerSurveysSurveysStartResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "resourceId" Core.Text
+    Core.:> "start"
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] SurveysStartRequest
+    Core.:> Core.Post '[Core.JSON] SurveysStartResponse
+
+-- | Begins running a survey.
+--
+-- /See:/ 'newConsumerSurveysSurveysStart' smart constructor.
+data ConsumerSurveysSurveysStart = ConsumerSurveysSurveysStart
+  { -- | Multipart request metadata.
+    payload :: SurveysStartRequest,
+    resourceId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysStart' with the minimum fields required to make a request.
+newConsumerSurveysSurveysStart ::
+  -- |  Multipart request metadata. See 'payload'.
+  SurveysStartRequest ->
+  -- |  See 'resourceId'.
+  Core.Text ->
+  ConsumerSurveysSurveysStart
+newConsumerSurveysSurveysStart payload resourceId =
+  ConsumerSurveysSurveysStart
+    { payload = payload,
+      resourceId = resourceId
+    }
+
+instance Core.GoogleRequest ConsumerSurveysSurveysStart where
+  type Rs ConsumerSurveysSurveysStart = SurveysStartResponse
+  type
+    Scopes ConsumerSurveysSurveysStart =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysSurveysStart {..} =
+    go
+      resourceId
+      (Core.Just Core.AltJSON)
+      payload
+      consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysStartResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Stop.hs b/gen/Gogol/ConsumerSurveys/Surveys/Stop.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Stop.hs
@@ -0,0 +1,81 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Stop
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Stops a running survey.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.stop@.
+module Gogol.ConsumerSurveys.Surveys.Stop
+  ( -- * Resource
+    ConsumerSurveysSurveysStopResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysStop (..),
+    newConsumerSurveysSurveysStop,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.stop@ method which the
+-- 'ConsumerSurveysSurveysStop' request conforms to.
+type ConsumerSurveysSurveysStopResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "resourceId" Core.Text
+    Core.:> "stop"
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Post '[Core.JSON] SurveysStopResponse
+
+-- | Stops a running survey.
+--
+-- /See:/ 'newConsumerSurveysSurveysStop' smart constructor.
+newtype ConsumerSurveysSurveysStop = ConsumerSurveysSurveysStop
+  { resourceId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysStop' with the minimum fields required to make a request.
+newConsumerSurveysSurveysStop ::
+  -- |  See 'resourceId'.
+  Core.Text ->
+  ConsumerSurveysSurveysStop
+newConsumerSurveysSurveysStop resourceId =
+  ConsumerSurveysSurveysStop {resourceId = resourceId}
+
+instance Core.GoogleRequest ConsumerSurveysSurveysStop where
+  type Rs ConsumerSurveysSurveysStop = SurveysStopResponse
+  type
+    Scopes ConsumerSurveysSurveysStop =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysSurveysStop {..} =
+    go resourceId (Core.Just Core.AltJSON) consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysStopResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Surveys/Update.hs b/gen/Gogol/ConsumerSurveys/Surveys/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Surveys/Update.hs
@@ -0,0 +1,93 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Surveys.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates a survey. Currently the only property that can be updated is the owners property.
+--
+-- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.update@.
+module Gogol.ConsumerSurveys.Surveys.Update
+  ( -- * Resource
+    ConsumerSurveysSurveysUpdateResource,
+
+    -- ** Constructing a Request
+    ConsumerSurveysSurveysUpdate (..),
+    newConsumerSurveysSurveysUpdate,
+  )
+where
+
+import Gogol.ConsumerSurveys.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @consumersurveys.surveys.update@ method which the
+-- 'ConsumerSurveysSurveysUpdate' request conforms to.
+type ConsumerSurveysSurveysUpdateResource =
+  "consumersurveys"
+    Core.:> "v2"
+    Core.:> "surveys"
+    Core.:> Core.Capture "surveyUrlId" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] Survey
+    Core.:> Core.Put '[Core.JSON] Survey
+
+-- | Updates a survey. Currently the only property that can be updated is the owners property.
+--
+-- /See:/ 'newConsumerSurveysSurveysUpdate' smart constructor.
+data ConsumerSurveysSurveysUpdate = ConsumerSurveysSurveysUpdate
+  { -- | Multipart request metadata.
+    payload :: Survey,
+    -- | External URL ID for the survey.
+    surveyUrlId :: Core.Text
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ConsumerSurveysSurveysUpdate' with the minimum fields required to make a request.
+newConsumerSurveysSurveysUpdate ::
+  -- |  Multipart request metadata. See 'payload'.
+  Survey ->
+  -- |  External URL ID for the survey. See 'surveyUrlId'.
+  Core.Text ->
+  ConsumerSurveysSurveysUpdate
+newConsumerSurveysSurveysUpdate payload surveyUrlId =
+  ConsumerSurveysSurveysUpdate
+    { payload = payload,
+      surveyUrlId = surveyUrlId
+    }
+
+instance Core.GoogleRequest ConsumerSurveysSurveysUpdate where
+  type Rs ConsumerSurveysSurveysUpdate = Survey
+  type
+    Scopes ConsumerSurveysSurveysUpdate =
+      '[Consumersurveys'FullControl, Userinfo'Email]
+  requestClient ConsumerSurveysSurveysUpdate {..} =
+    go
+      surveyUrlId
+      (Core.Just Core.AltJSON)
+      payload
+      consumerSurveysService
+    where
+      go =
+        Core.buildClient
+          (Core.Proxy :: Core.Proxy ConsumerSurveysSurveysUpdateResource)
+          Core.mempty
diff --git a/gen/Gogol/ConsumerSurveys/Types.hs b/gen/Gogol/ConsumerSurveys/Types.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/ConsumerSurveys/Types.hs
@@ -0,0 +1,136 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.ConsumerSurveys.Types
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.ConsumerSurveys.Types
+  ( -- * Configuration
+    consumerSurveysService,
+
+    -- * OAuth Scopes
+    Consumersurveys'FullControl,
+    Consumersurveys'Readonly,
+    Userinfo'Email,
+
+    -- * Types
+
+    -- ** FieldMask
+    FieldMask (..),
+    newFieldMask,
+
+    -- ** MobileAppPanel
+    MobileAppPanel (..),
+    newMobileAppPanel,
+
+    -- ** MobileAppPanelsListResponse
+    MobileAppPanelsListResponse (..),
+    newMobileAppPanelsListResponse,
+
+    -- ** PageInfo
+    PageInfo (..),
+    newPageInfo,
+
+    -- ** ResultsGetRequest
+    ResultsGetRequest (..),
+    newResultsGetRequest,
+
+    -- ** ResultsMask
+    ResultsMask (..),
+    newResultsMask,
+
+    -- ** Survey
+    Survey (..),
+    newSurvey,
+
+    -- ** SurveyAudience
+    SurveyAudience (..),
+    newSurveyAudience,
+
+    -- ** SurveyCost
+    SurveyCost (..),
+    newSurveyCost,
+
+    -- ** SurveyQuestion
+    SurveyQuestion (..),
+    newSurveyQuestion,
+
+    -- ** SurveyQuestionImage
+    SurveyQuestionImage (..),
+    newSurveyQuestionImage,
+
+    -- ** SurveyRejection
+    SurveyRejection (..),
+    newSurveyRejection,
+
+    -- ** SurveyResults
+    SurveyResults (..),
+    newSurveyResults,
+
+    -- ** SurveysDeleteResponse
+    SurveysDeleteResponse (..),
+    newSurveysDeleteResponse,
+
+    -- ** SurveysListResponse
+    SurveysListResponse (..),
+    newSurveysListResponse,
+
+    -- ** SurveysStartRequest
+    SurveysStartRequest (..),
+    newSurveysStartRequest,
+
+    -- ** SurveysStartResponse
+    SurveysStartResponse (..),
+    newSurveysStartResponse,
+
+    -- ** SurveysStopResponse
+    SurveysStopResponse (..),
+    newSurveysStopResponse,
+
+    -- ** TokenPagination
+    TokenPagination (..),
+    newTokenPagination,
+  )
+where
+
+import Gogol.ConsumerSurveys.Internal.Product
+import Gogol.ConsumerSurveys.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Default request referring to version @v2@ of the Consumer Surveys API. This contains the host and root path used as a starting point for constructing service requests.
+consumerSurveysService :: Core.ServiceConfig
+consumerSurveysService =
+  Core.defaultService
+    (Core.ServiceId "consumersurveys:v2")
+    "www.googleapis.com"
+
+-- | View and edit your surveys and results
+type Consumersurveys'FullControl =
+  "https://www.googleapis.com/auth/consumersurveys"
+
+-- | View the results for your surveys
+type Consumersurveys'Readonly =
+  "https://www.googleapis.com/auth/consumersurveys.readonly"
+
+-- | View your email address
+type Userinfo'Email =
+  "https://www.googleapis.com/auth/userinfo.email"
diff --git a/gen/Network/Google/ConsumerSurveys.hs b/gen/Network/Google/ConsumerSurveys.hs
deleted file mode 100644
--- a/gen/Network/Google/ConsumerSurveys.hs
+++ /dev/null
@@ -1,253 +0,0 @@
-{-# LANGUAGE DataKinds         #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TypeOperators     #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-
--- |
--- Module      : Network.Google.ConsumerSurveys
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Creates and conducts surveys, lists the surveys that an authenticated
--- user owns, and retrieves survey results and information about specified
--- surveys.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference>
-module Network.Google.ConsumerSurveys
-    (
-    -- * Service Configuration
-      consumerSurveysService
-
-    -- * OAuth Scopes
-    , userInfoEmailScope
-    , consumerSurveysReadOnlyScope
-    , consumerSurveysScope
-
-    -- * API Declaration
-    , ConsumerSurveysAPI
-
-    -- * Resources
-
-    -- ** consumersurveys.mobileapppanels.get
-    , module Network.Google.Resource.ConsumerSurveys.MobileApppanels.Get
-
-    -- ** consumersurveys.mobileapppanels.list
-    , module Network.Google.Resource.ConsumerSurveys.MobileApppanels.List
-
-    -- ** consumersurveys.mobileapppanels.update
-    , module Network.Google.Resource.ConsumerSurveys.MobileApppanels.Update
-
-    -- ** consumersurveys.results.get
-    , module Network.Google.Resource.ConsumerSurveys.Results.Get
-
-    -- ** consumersurveys.surveys.delete
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Delete
-
-    -- ** consumersurveys.surveys.get
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Get
-
-    -- ** consumersurveys.surveys.insert
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Insert
-
-    -- ** consumersurveys.surveys.list
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.List
-
-    -- ** consumersurveys.surveys.start
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Start
-
-    -- ** consumersurveys.surveys.stop
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Stop
-
-    -- ** consumersurveys.surveys.update
-    , module Network.Google.Resource.ConsumerSurveys.Surveys.Update
-
-    -- * Types
-
-    -- ** SurveysListResponse
-    , SurveysListResponse
-    , surveysListResponse
-    , slrRequestId
-    , slrTokenPagination
-    , slrPageInfo
-    , slrResources
-
-    -- ** MobileAppPanel
-    , MobileAppPanel
-    , mobileAppPanel
-    , mapOwners
-    , mapCountry
-    , mapName
-    , mapMobileAppPanelId
-    , mapLanguage
-    , mapIsPublicPanel
-
-    -- ** TokenPagination
-    , TokenPagination
-    , tokenPagination
-    , tpNextPageToken
-    , tpPreviousPageToken
-
-    -- ** ResultsGetRequest
-    , ResultsGetRequest
-    , resultsGetRequest
-    , rgrResultMask
-
-    -- ** MobileAppPanelsListResponse
-    , MobileAppPanelsListResponse
-    , mobileAppPanelsListResponse
-    , maplrRequestId
-    , maplrTokenPagination
-    , maplrPageInfo
-    , maplrResources
-
-    -- ** PageInfo
-    , PageInfo
-    , pageInfo
-    , piResultPerPage
-    , piTotalResults
-    , piStartIndex
-
-    -- ** FieldMask
-    , FieldMask
-    , fieldMask
-    , fmId
-    , fmFields
-
-    -- ** Survey
-    , Survey
-    , survey
-    , sAudience
-    , sState
-    , sOwners
-    , sWantedResponseCount
-    , sSurveyURLId
-    , sCost
-    , sRejectionReason
-    , sCustomerData
-    , sQuestions
-    , sTitle
-    , sDescription
-
-    -- ** SurveysStartResponse
-    , SurveysStartResponse
-    , surveysStartResponse
-    , ssrRequestId
-
-    -- ** SurveysStopResponse
-    , SurveysStopResponse
-    , surveysStopResponse
-    , sRequestId
-
-    -- ** ResultsMask
-    , ResultsMask
-    , resultsMask
-    , rmProjection
-    , rmFields
-
-    -- ** SurveyRejection
-    , SurveyRejection
-    , surveyRejection
-    , srExplanation
-    , srType
-
-    -- ** SurveyResults
-    , SurveyResults
-    , surveyResults
-    , srStatus
-    , srSurveyURLId
-
-    -- ** SurveysStartRequest
-    , SurveysStartRequest
-    , surveysStartRequest
-    , ssrMaxCostPerResponseNanos
-
-    -- ** SurveysDeleteResponse
-    , SurveysDeleteResponse
-    , surveysDeleteResponse
-    , sdrRequestId
-
-    -- ** SurveyQuestionImage
-    , SurveyQuestionImage
-    , surveyQuestionImage
-    , sqiData
-    , sqiURL
-    , sqiAltText
-
-    -- ** SurveyAudience
-    , SurveyAudience
-    , surveyAudience
-    , saCountry
-    , saAges
-    , saLanguages
-    , saGender
-    , saMobileAppPanelId
-    , saCountrySubdivision
-    , saPopulationSource
-
-    -- ** SurveyCost
-    , SurveyCost
-    , surveyCost
-    , scCurrencyCode
-    , scNanos
-    , scMaxCostPerResponseNanos
-    , scCostPerResponseNanos
-
-    -- ** SurveyQuestion
-    , SurveyQuestion
-    , surveyQuestion
-    , sqImages
-    , sqAnswers
-    , sqSingleLineResponse
-    , sqMustPickSuggestion
-    , sqSentimentText
-    , sqThresholdAnswers
-    , sqHasOther
-    , sqOpenTextSuggestions
-    , sqVideoId
-    , sqLastAnswerPositionPinned
-    , sqAnswerOrder
-    , sqOpenTextPlaceholder
-    , sqType
-    , sqUnitOfMeasurementLabel
-    , sqHighValueLabel
-    , sqQuestion
-    , sqNumStars
-    , sqLowValueLabel
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-import           Network.Google.Resource.ConsumerSurveys.MobileApppanels.Get
-import           Network.Google.Resource.ConsumerSurveys.MobileApppanels.List
-import           Network.Google.Resource.ConsumerSurveys.MobileApppanels.Update
-import           Network.Google.Resource.ConsumerSurveys.Results.Get
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Delete
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Get
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Insert
-import           Network.Google.Resource.ConsumerSurveys.Surveys.List
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Start
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Stop
-import           Network.Google.Resource.ConsumerSurveys.Surveys.Update
-
-{- $resources
-TODO
--}
-
--- | Represents the entirety of the methods and resources available for the Consumer Surveys API service.
-type ConsumerSurveysAPI =
-     MobileApppanelsListResource :<|>
-       MobileApppanelsGetResource
-       :<|> MobileApppanelsUpdateResource
-       :<|> ResultsGetResource
-       :<|> SurveysInsertResource
-       :<|> SurveysListResource
-       :<|> SurveysStartResource
-       :<|> SurveysGetResource
-       :<|> SurveysStopResource
-       :<|> SurveysDeleteResource
-       :<|> SurveysUpdateResource
diff --git a/gen/Network/Google/ConsumerSurveys/Types.hs b/gen/Network/Google/ConsumerSurveys/Types.hs
deleted file mode 100644
--- a/gen/Network/Google/ConsumerSurveys/Types.hs
+++ /dev/null
@@ -1,199 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.ConsumerSurveys.Types
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.ConsumerSurveys.Types
-    (
-    -- * Service Configuration
-      consumerSurveysService
-
-    -- * OAuth Scopes
-    , userInfoEmailScope
-    , consumerSurveysReadOnlyScope
-    , consumerSurveysScope
-
-    -- * SurveysListResponse
-    , SurveysListResponse
-    , surveysListResponse
-    , slrRequestId
-    , slrTokenPagination
-    , slrPageInfo
-    , slrResources
-
-    -- * MobileAppPanel
-    , MobileAppPanel
-    , mobileAppPanel
-    , mapOwners
-    , mapCountry
-    , mapName
-    , mapMobileAppPanelId
-    , mapLanguage
-    , mapIsPublicPanel
-
-    -- * TokenPagination
-    , TokenPagination
-    , tokenPagination
-    , tpNextPageToken
-    , tpPreviousPageToken
-
-    -- * ResultsGetRequest
-    , ResultsGetRequest
-    , resultsGetRequest
-    , rgrResultMask
-
-    -- * MobileAppPanelsListResponse
-    , MobileAppPanelsListResponse
-    , mobileAppPanelsListResponse
-    , maplrRequestId
-    , maplrTokenPagination
-    , maplrPageInfo
-    , maplrResources
-
-    -- * PageInfo
-    , PageInfo
-    , pageInfo
-    , piResultPerPage
-    , piTotalResults
-    , piStartIndex
-
-    -- * FieldMask
-    , FieldMask
-    , fieldMask
-    , fmId
-    , fmFields
-
-    -- * Survey
-    , Survey
-    , survey
-    , sAudience
-    , sState
-    , sOwners
-    , sWantedResponseCount
-    , sSurveyURLId
-    , sCost
-    , sRejectionReason
-    , sCustomerData
-    , sQuestions
-    , sTitle
-    , sDescription
-
-    -- * SurveysStartResponse
-    , SurveysStartResponse
-    , surveysStartResponse
-    , ssrRequestId
-
-    -- * SurveysStopResponse
-    , SurveysStopResponse
-    , surveysStopResponse
-    , sRequestId
-
-    -- * ResultsMask
-    , ResultsMask
-    , resultsMask
-    , rmProjection
-    , rmFields
-
-    -- * SurveyRejection
-    , SurveyRejection
-    , surveyRejection
-    , srExplanation
-    , srType
-
-    -- * SurveyResults
-    , SurveyResults
-    , surveyResults
-    , srStatus
-    , srSurveyURLId
-
-    -- * SurveysStartRequest
-    , SurveysStartRequest
-    , surveysStartRequest
-    , ssrMaxCostPerResponseNanos
-
-    -- * SurveysDeleteResponse
-    , SurveysDeleteResponse
-    , surveysDeleteResponse
-    , sdrRequestId
-
-    -- * SurveyQuestionImage
-    , SurveyQuestionImage
-    , surveyQuestionImage
-    , sqiData
-    , sqiURL
-    , sqiAltText
-
-    -- * SurveyAudience
-    , SurveyAudience
-    , surveyAudience
-    , saCountry
-    , saAges
-    , saLanguages
-    , saGender
-    , saMobileAppPanelId
-    , saCountrySubdivision
-    , saPopulationSource
-
-    -- * SurveyCost
-    , SurveyCost
-    , surveyCost
-    , scCurrencyCode
-    , scNanos
-    , scMaxCostPerResponseNanos
-    , scCostPerResponseNanos
-
-    -- * SurveyQuestion
-    , SurveyQuestion
-    , surveyQuestion
-    , sqImages
-    , sqAnswers
-    , sqSingleLineResponse
-    , sqMustPickSuggestion
-    , sqSentimentText
-    , sqThresholdAnswers
-    , sqHasOther
-    , sqOpenTextSuggestions
-    , sqVideoId
-    , sqLastAnswerPositionPinned
-    , sqAnswerOrder
-    , sqOpenTextPlaceholder
-    , sqType
-    , sqUnitOfMeasurementLabel
-    , sqHighValueLabel
-    , sqQuestion
-    , sqNumStars
-    , sqLowValueLabel
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types.Product
-import           Network.Google.ConsumerSurveys.Types.Sum
-import           Network.Google.Prelude
-
--- | Default request referring to version 'v2' of the Consumer Surveys API. This contains the host and root path used as a starting point for constructing service requests.
-consumerSurveysService :: ServiceConfig
-consumerSurveysService
-  = defaultService (ServiceId "consumersurveys:v2")
-      "www.googleapis.com"
-
--- | View your email address
-userInfoEmailScope :: Proxy '["https://www.googleapis.com/auth/userinfo.email"]
-userInfoEmailScope = Proxy
-
--- | View the results for your surveys
-consumerSurveysReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/consumersurveys.readonly"]
-consumerSurveysReadOnlyScope = Proxy
-
--- | View and edit your surveys and results
-consumerSurveysScope :: Proxy '["https://www.googleapis.com/auth/consumersurveys"]
-consumerSurveysScope = Proxy
diff --git a/gen/Network/Google/ConsumerSurveys/Types/Product.hs b/gen/Network/Google/ConsumerSurveys/Types/Product.hs
deleted file mode 100644
--- a/gen/Network/Google/ConsumerSurveys/Types/Product.hs
+++ /dev/null
@@ -1,1343 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.ConsumerSurveys.Types.Product
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.ConsumerSurveys.Types.Product where
-
-import           Network.Google.ConsumerSurveys.Types.Sum
-import           Network.Google.Prelude
-
---
--- /See:/ 'surveysListResponse' smart constructor.
-data SurveysListResponse =
-  SurveysListResponse'
-    { _slrRequestId       :: !(Maybe Text)
-    , _slrTokenPagination :: !(Maybe TokenPagination)
-    , _slrPageInfo        :: !(Maybe PageInfo)
-    , _slrResources       :: !(Maybe [Survey])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'slrRequestId'
---
--- * 'slrTokenPagination'
---
--- * 'slrPageInfo'
---
--- * 'slrResources'
-surveysListResponse
-    :: SurveysListResponse
-surveysListResponse =
-  SurveysListResponse'
-    { _slrRequestId = Nothing
-    , _slrTokenPagination = Nothing
-    , _slrPageInfo = Nothing
-    , _slrResources = Nothing
-    }
-
-
--- | Unique request ID used for logging and debugging. Please include in any
--- error reporting or troubleshooting requests.
-slrRequestId :: Lens' SurveysListResponse (Maybe Text)
-slrRequestId
-  = lens _slrRequestId (\ s a -> s{_slrRequestId = a})
-
-slrTokenPagination :: Lens' SurveysListResponse (Maybe TokenPagination)
-slrTokenPagination
-  = lens _slrTokenPagination
-      (\ s a -> s{_slrTokenPagination = a})
-
-slrPageInfo :: Lens' SurveysListResponse (Maybe PageInfo)
-slrPageInfo
-  = lens _slrPageInfo (\ s a -> s{_slrPageInfo = a})
-
--- | An individual survey resource.
-slrResources :: Lens' SurveysListResponse [Survey]
-slrResources
-  = lens _slrResources (\ s a -> s{_slrResources = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON SurveysListResponse where
-        parseJSON
-          = withObject "SurveysListResponse"
-              (\ o ->
-                 SurveysListResponse' <$>
-                   (o .:? "requestId") <*> (o .:? "tokenPagination") <*>
-                     (o .:? "pageInfo")
-                     <*> (o .:? "resources" .!= mempty))
-
-instance ToJSON SurveysListResponse where
-        toJSON SurveysListResponse'{..}
-          = object
-              (catMaybes
-                 [("requestId" .=) <$> _slrRequestId,
-                  ("tokenPagination" .=) <$> _slrTokenPagination,
-                  ("pageInfo" .=) <$> _slrPageInfo,
-                  ("resources" .=) <$> _slrResources])
-
---
--- /See:/ 'mobileAppPanel' smart constructor.
-data MobileAppPanel =
-  MobileAppPanel'
-    { _mapOwners           :: !(Maybe [Text])
-    , _mapCountry          :: !(Maybe Text)
-    , _mapName             :: !(Maybe Text)
-    , _mapMobileAppPanelId :: !(Maybe Text)
-    , _mapLanguage         :: !(Maybe Text)
-    , _mapIsPublicPanel    :: !(Maybe Bool)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileAppPanel' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mapOwners'
---
--- * 'mapCountry'
---
--- * 'mapName'
---
--- * 'mapMobileAppPanelId'
---
--- * 'mapLanguage'
---
--- * 'mapIsPublicPanel'
-mobileAppPanel
-    :: MobileAppPanel
-mobileAppPanel =
-  MobileAppPanel'
-    { _mapOwners = Nothing
-    , _mapCountry = Nothing
-    , _mapName = Nothing
-    , _mapMobileAppPanelId = Nothing
-    , _mapLanguage = Nothing
-    , _mapIsPublicPanel = Nothing
-    }
-
-
-mapOwners :: Lens' MobileAppPanel [Text]
-mapOwners
-  = lens _mapOwners (\ s a -> s{_mapOwners = a}) .
-      _Default
-      . _Coerce
-
-mapCountry :: Lens' MobileAppPanel (Maybe Text)
-mapCountry
-  = lens _mapCountry (\ s a -> s{_mapCountry = a})
-
-mapName :: Lens' MobileAppPanel (Maybe Text)
-mapName = lens _mapName (\ s a -> s{_mapName = a})
-
-mapMobileAppPanelId :: Lens' MobileAppPanel (Maybe Text)
-mapMobileAppPanelId
-  = lens _mapMobileAppPanelId
-      (\ s a -> s{_mapMobileAppPanelId = a})
-
-mapLanguage :: Lens' MobileAppPanel (Maybe Text)
-mapLanguage
-  = lens _mapLanguage (\ s a -> s{_mapLanguage = a})
-
-mapIsPublicPanel :: Lens' MobileAppPanel (Maybe Bool)
-mapIsPublicPanel
-  = lens _mapIsPublicPanel
-      (\ s a -> s{_mapIsPublicPanel = a})
-
-instance FromJSON MobileAppPanel where
-        parseJSON
-          = withObject "MobileAppPanel"
-              (\ o ->
-                 MobileAppPanel' <$>
-                   (o .:? "owners" .!= mempty) <*> (o .:? "country") <*>
-                     (o .:? "name")
-                     <*> (o .:? "mobileAppPanelId")
-                     <*> (o .:? "language")
-                     <*> (o .:? "isPublicPanel"))
-
-instance ToJSON MobileAppPanel where
-        toJSON MobileAppPanel'{..}
-          = object
-              (catMaybes
-                 [("owners" .=) <$> _mapOwners,
-                  ("country" .=) <$> _mapCountry,
-                  ("name" .=) <$> _mapName,
-                  ("mobileAppPanelId" .=) <$> _mapMobileAppPanelId,
-                  ("language" .=) <$> _mapLanguage,
-                  ("isPublicPanel" .=) <$> _mapIsPublicPanel])
-
---
--- /See:/ 'tokenPagination' smart constructor.
-data TokenPagination =
-  TokenPagination'
-    { _tpNextPageToken     :: !(Maybe Text)
-    , _tpPreviousPageToken :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TokenPagination' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tpNextPageToken'
---
--- * 'tpPreviousPageToken'
-tokenPagination
-    :: TokenPagination
-tokenPagination =
-  TokenPagination' {_tpNextPageToken = Nothing, _tpPreviousPageToken = Nothing}
-
-
-tpNextPageToken :: Lens' TokenPagination (Maybe Text)
-tpNextPageToken
-  = lens _tpNextPageToken
-      (\ s a -> s{_tpNextPageToken = a})
-
-tpPreviousPageToken :: Lens' TokenPagination (Maybe Text)
-tpPreviousPageToken
-  = lens _tpPreviousPageToken
-      (\ s a -> s{_tpPreviousPageToken = a})
-
-instance FromJSON TokenPagination where
-        parseJSON
-          = withObject "TokenPagination"
-              (\ o ->
-                 TokenPagination' <$>
-                   (o .:? "nextPageToken") <*>
-                     (o .:? "previousPageToken"))
-
-instance ToJSON TokenPagination where
-        toJSON TokenPagination'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _tpNextPageToken,
-                  ("previousPageToken" .=) <$> _tpPreviousPageToken])
-
---
--- /See:/ 'resultsGetRequest' smart constructor.
-newtype ResultsGetRequest =
-  ResultsGetRequest'
-    { _rgrResultMask :: Maybe ResultsMask
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ResultsGetRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rgrResultMask'
-resultsGetRequest
-    :: ResultsGetRequest
-resultsGetRequest = ResultsGetRequest' {_rgrResultMask = Nothing}
-
-
-rgrResultMask :: Lens' ResultsGetRequest (Maybe ResultsMask)
-rgrResultMask
-  = lens _rgrResultMask
-      (\ s a -> s{_rgrResultMask = a})
-
-instance FromJSON ResultsGetRequest where
-        parseJSON
-          = withObject "ResultsGetRequest"
-              (\ o -> ResultsGetRequest' <$> (o .:? "resultMask"))
-
-instance ToJSON ResultsGetRequest where
-        toJSON ResultsGetRequest'{..}
-          = object
-              (catMaybes [("resultMask" .=) <$> _rgrResultMask])
-
---
--- /See:/ 'mobileAppPanelsListResponse' smart constructor.
-data MobileAppPanelsListResponse =
-  MobileAppPanelsListResponse'
-    { _maplrRequestId       :: !(Maybe Text)
-    , _maplrTokenPagination :: !(Maybe TokenPagination)
-    , _maplrPageInfo        :: !(Maybe PageInfo)
-    , _maplrResources       :: !(Maybe [MobileAppPanel])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileAppPanelsListResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'maplrRequestId'
---
--- * 'maplrTokenPagination'
---
--- * 'maplrPageInfo'
---
--- * 'maplrResources'
-mobileAppPanelsListResponse
-    :: MobileAppPanelsListResponse
-mobileAppPanelsListResponse =
-  MobileAppPanelsListResponse'
-    { _maplrRequestId = Nothing
-    , _maplrTokenPagination = Nothing
-    , _maplrPageInfo = Nothing
-    , _maplrResources = Nothing
-    }
-
-
--- | Unique request ID used for logging and debugging. Please include in any
--- error reporting or troubleshooting requests.
-maplrRequestId :: Lens' MobileAppPanelsListResponse (Maybe Text)
-maplrRequestId
-  = lens _maplrRequestId
-      (\ s a -> s{_maplrRequestId = a})
-
-maplrTokenPagination :: Lens' MobileAppPanelsListResponse (Maybe TokenPagination)
-maplrTokenPagination
-  = lens _maplrTokenPagination
-      (\ s a -> s{_maplrTokenPagination = a})
-
-maplrPageInfo :: Lens' MobileAppPanelsListResponse (Maybe PageInfo)
-maplrPageInfo
-  = lens _maplrPageInfo
-      (\ s a -> s{_maplrPageInfo = a})
-
--- | An individual predefined panel of Opinion Rewards mobile users.
-maplrResources :: Lens' MobileAppPanelsListResponse [MobileAppPanel]
-maplrResources
-  = lens _maplrResources
-      (\ s a -> s{_maplrResources = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON MobileAppPanelsListResponse where
-        parseJSON
-          = withObject "MobileAppPanelsListResponse"
-              (\ o ->
-                 MobileAppPanelsListResponse' <$>
-                   (o .:? "requestId") <*> (o .:? "tokenPagination") <*>
-                     (o .:? "pageInfo")
-                     <*> (o .:? "resources" .!= mempty))
-
-instance ToJSON MobileAppPanelsListResponse where
-        toJSON MobileAppPanelsListResponse'{..}
-          = object
-              (catMaybes
-                 [("requestId" .=) <$> _maplrRequestId,
-                  ("tokenPagination" .=) <$> _maplrTokenPagination,
-                  ("pageInfo" .=) <$> _maplrPageInfo,
-                  ("resources" .=) <$> _maplrResources])
-
---
--- /See:/ 'pageInfo' smart constructor.
-data PageInfo =
-  PageInfo'
-    { _piResultPerPage :: !(Maybe (Textual Int32))
-    , _piTotalResults  :: !(Maybe (Textual Int32))
-    , _piStartIndex    :: !(Maybe (Textual Int32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'PageInfo' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'piResultPerPage'
---
--- * 'piTotalResults'
---
--- * 'piStartIndex'
-pageInfo
-    :: PageInfo
-pageInfo =
-  PageInfo'
-    { _piResultPerPage = Nothing
-    , _piTotalResults = Nothing
-    , _piStartIndex = Nothing
-    }
-
-
-piResultPerPage :: Lens' PageInfo (Maybe Int32)
-piResultPerPage
-  = lens _piResultPerPage
-      (\ s a -> s{_piResultPerPage = a})
-      . mapping _Coerce
-
-piTotalResults :: Lens' PageInfo (Maybe Int32)
-piTotalResults
-  = lens _piTotalResults
-      (\ s a -> s{_piTotalResults = a})
-      . mapping _Coerce
-
-piStartIndex :: Lens' PageInfo (Maybe Int32)
-piStartIndex
-  = lens _piStartIndex (\ s a -> s{_piStartIndex = a})
-      . mapping _Coerce
-
-instance FromJSON PageInfo where
-        parseJSON
-          = withObject "PageInfo"
-              (\ o ->
-                 PageInfo' <$>
-                   (o .:? "resultPerPage") <*> (o .:? "totalResults")
-                     <*> (o .:? "startIndex"))
-
-instance ToJSON PageInfo where
-        toJSON PageInfo'{..}
-          = object
-              (catMaybes
-                 [("resultPerPage" .=) <$> _piResultPerPage,
-                  ("totalResults" .=) <$> _piTotalResults,
-                  ("startIndex" .=) <$> _piStartIndex])
-
---
--- /See:/ 'fieldMask' smart constructor.
-data FieldMask =
-  FieldMask'
-    { _fmId     :: !(Maybe (Textual Int32))
-    , _fmFields :: !(Maybe [FieldMask])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'FieldMask' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'fmId'
---
--- * 'fmFields'
-fieldMask
-    :: FieldMask
-fieldMask = FieldMask' {_fmId = Nothing, _fmFields = Nothing}
-
-
-fmId :: Lens' FieldMask (Maybe Int32)
-fmId
-  = lens _fmId (\ s a -> s{_fmId = a}) .
-      mapping _Coerce
-
-fmFields :: Lens' FieldMask [FieldMask]
-fmFields
-  = lens _fmFields (\ s a -> s{_fmFields = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON FieldMask where
-        parseJSON
-          = withObject "FieldMask"
-              (\ o ->
-                 FieldMask' <$>
-                   (o .:? "id") <*> (o .:? "fields" .!= mempty))
-
-instance ToJSON FieldMask where
-        toJSON FieldMask'{..}
-          = object
-              (catMaybes
-                 [("id" .=) <$> _fmId, ("fields" .=) <$> _fmFields])
-
---
--- /See:/ 'survey' smart constructor.
-data Survey =
-  Survey'
-    { _sAudience            :: !(Maybe SurveyAudience)
-    , _sState               :: !(Maybe Text)
-    , _sOwners              :: !(Maybe [Text])
-    , _sWantedResponseCount :: !(Maybe (Textual Int32))
-    , _sSurveyURLId         :: !(Maybe Text)
-    , _sCost                :: !(Maybe SurveyCost)
-    , _sRejectionReason     :: !(Maybe SurveyRejection)
-    , _sCustomerData        :: !(Maybe Bytes)
-    , _sQuestions           :: !(Maybe [SurveyQuestion])
-    , _sTitle               :: !(Maybe Text)
-    , _sDescription         :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'Survey' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sAudience'
---
--- * 'sState'
---
--- * 'sOwners'
---
--- * 'sWantedResponseCount'
---
--- * 'sSurveyURLId'
---
--- * 'sCost'
---
--- * 'sRejectionReason'
---
--- * 'sCustomerData'
---
--- * 'sQuestions'
---
--- * 'sTitle'
---
--- * 'sDescription'
-survey
-    :: Survey
-survey =
-  Survey'
-    { _sAudience = Nothing
-    , _sState = Nothing
-    , _sOwners = Nothing
-    , _sWantedResponseCount = Nothing
-    , _sSurveyURLId = Nothing
-    , _sCost = Nothing
-    , _sRejectionReason = Nothing
-    , _sCustomerData = Nothing
-    , _sQuestions = Nothing
-    , _sTitle = Nothing
-    , _sDescription = Nothing
-    }
-
-
-sAudience :: Lens' Survey (Maybe SurveyAudience)
-sAudience
-  = lens _sAudience (\ s a -> s{_sAudience = a})
-
-sState :: Lens' Survey (Maybe Text)
-sState = lens _sState (\ s a -> s{_sState = a})
-
-sOwners :: Lens' Survey [Text]
-sOwners
-  = lens _sOwners (\ s a -> s{_sOwners = a}) . _Default
-      . _Coerce
-
-sWantedResponseCount :: Lens' Survey (Maybe Int32)
-sWantedResponseCount
-  = lens _sWantedResponseCount
-      (\ s a -> s{_sWantedResponseCount = a})
-      . mapping _Coerce
-
-sSurveyURLId :: Lens' Survey (Maybe Text)
-sSurveyURLId
-  = lens _sSurveyURLId (\ s a -> s{_sSurveyURLId = a})
-
-sCost :: Lens' Survey (Maybe SurveyCost)
-sCost = lens _sCost (\ s a -> s{_sCost = a})
-
-sRejectionReason :: Lens' Survey (Maybe SurveyRejection)
-sRejectionReason
-  = lens _sRejectionReason
-      (\ s a -> s{_sRejectionReason = a})
-
-sCustomerData :: Lens' Survey (Maybe ByteString)
-sCustomerData
-  = lens _sCustomerData
-      (\ s a -> s{_sCustomerData = a})
-      . mapping _Bytes
-
-sQuestions :: Lens' Survey [SurveyQuestion]
-sQuestions
-  = lens _sQuestions (\ s a -> s{_sQuestions = a}) .
-      _Default
-      . _Coerce
-
-sTitle :: Lens' Survey (Maybe Text)
-sTitle = lens _sTitle (\ s a -> s{_sTitle = a})
-
-sDescription :: Lens' Survey (Maybe Text)
-sDescription
-  = lens _sDescription (\ s a -> s{_sDescription = a})
-
-instance FromJSON Survey where
-        parseJSON
-          = withObject "Survey"
-              (\ o ->
-                 Survey' <$>
-                   (o .:? "audience") <*> (o .:? "state") <*>
-                     (o .:? "owners" .!= mempty)
-                     <*> (o .:? "wantedResponseCount")
-                     <*> (o .:? "surveyUrlId")
-                     <*> (o .:? "cost")
-                     <*> (o .:? "rejectionReason")
-                     <*> (o .:? "customerData")
-                     <*> (o .:? "questions" .!= mempty)
-                     <*> (o .:? "title")
-                     <*> (o .:? "description"))
-
-instance ToJSON Survey where
-        toJSON Survey'{..}
-          = object
-              (catMaybes
-                 [("audience" .=) <$> _sAudience,
-                  ("state" .=) <$> _sState, ("owners" .=) <$> _sOwners,
-                  ("wantedResponseCount" .=) <$> _sWantedResponseCount,
-                  ("surveyUrlId" .=) <$> _sSurveyURLId,
-                  ("cost" .=) <$> _sCost,
-                  ("rejectionReason" .=) <$> _sRejectionReason,
-                  ("customerData" .=) <$> _sCustomerData,
-                  ("questions" .=) <$> _sQuestions,
-                  ("title" .=) <$> _sTitle,
-                  ("description" .=) <$> _sDescription])
-
---
--- /See:/ 'surveysStartResponse' smart constructor.
-newtype SurveysStartResponse =
-  SurveysStartResponse'
-    { _ssrRequestId :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysStartResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ssrRequestId'
-surveysStartResponse
-    :: SurveysStartResponse
-surveysStartResponse = SurveysStartResponse' {_ssrRequestId = Nothing}
-
-
--- | Unique request ID used for logging and debugging. Please include in any
--- error reporting or troubleshooting requests.
-ssrRequestId :: Lens' SurveysStartResponse (Maybe Text)
-ssrRequestId
-  = lens _ssrRequestId (\ s a -> s{_ssrRequestId = a})
-
-instance FromJSON SurveysStartResponse where
-        parseJSON
-          = withObject "SurveysStartResponse"
-              (\ o ->
-                 SurveysStartResponse' <$> (o .:? "requestId"))
-
-instance ToJSON SurveysStartResponse where
-        toJSON SurveysStartResponse'{..}
-          = object
-              (catMaybes [("requestId" .=) <$> _ssrRequestId])
-
---
--- /See:/ 'surveysStopResponse' smart constructor.
-newtype SurveysStopResponse =
-  SurveysStopResponse'
-    { _sRequestId :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysStopResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sRequestId'
-surveysStopResponse
-    :: SurveysStopResponse
-surveysStopResponse = SurveysStopResponse' {_sRequestId = Nothing}
-
-
--- | Unique request ID used for logging and debugging. Please include in any
--- error reporting or troubleshooting requests.
-sRequestId :: Lens' SurveysStopResponse (Maybe Text)
-sRequestId
-  = lens _sRequestId (\ s a -> s{_sRequestId = a})
-
-instance FromJSON SurveysStopResponse where
-        parseJSON
-          = withObject "SurveysStopResponse"
-              (\ o -> SurveysStopResponse' <$> (o .:? "requestId"))
-
-instance ToJSON SurveysStopResponse where
-        toJSON SurveysStopResponse'{..}
-          = object
-              (catMaybes [("requestId" .=) <$> _sRequestId])
-
---
--- /See:/ 'resultsMask' smart constructor.
-data ResultsMask =
-  ResultsMask'
-    { _rmProjection :: !(Maybe Text)
-    , _rmFields     :: !(Maybe [FieldMask])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ResultsMask' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rmProjection'
---
--- * 'rmFields'
-resultsMask
-    :: ResultsMask
-resultsMask = ResultsMask' {_rmProjection = Nothing, _rmFields = Nothing}
-
-
-rmProjection :: Lens' ResultsMask (Maybe Text)
-rmProjection
-  = lens _rmProjection (\ s a -> s{_rmProjection = a})
-
-rmFields :: Lens' ResultsMask [FieldMask]
-rmFields
-  = lens _rmFields (\ s a -> s{_rmFields = a}) .
-      _Default
-      . _Coerce
-
-instance FromJSON ResultsMask where
-        parseJSON
-          = withObject "ResultsMask"
-              (\ o ->
-                 ResultsMask' <$>
-                   (o .:? "projection") <*> (o .:? "fields" .!= mempty))
-
-instance ToJSON ResultsMask where
-        toJSON ResultsMask'{..}
-          = object
-              (catMaybes
-                 [("projection" .=) <$> _rmProjection,
-                  ("fields" .=) <$> _rmFields])
-
---
--- /See:/ 'surveyRejection' smart constructor.
-data SurveyRejection =
-  SurveyRejection'
-    { _srExplanation :: !(Maybe Text)
-    , _srType        :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyRejection' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'srExplanation'
---
--- * 'srType'
-surveyRejection
-    :: SurveyRejection
-surveyRejection = SurveyRejection' {_srExplanation = Nothing, _srType = Nothing}
-
-
-srExplanation :: Lens' SurveyRejection (Maybe Text)
-srExplanation
-  = lens _srExplanation
-      (\ s a -> s{_srExplanation = a})
-
-srType :: Lens' SurveyRejection (Maybe Text)
-srType = lens _srType (\ s a -> s{_srType = a})
-
-instance FromJSON SurveyRejection where
-        parseJSON
-          = withObject "SurveyRejection"
-              (\ o ->
-                 SurveyRejection' <$>
-                   (o .:? "explanation") <*> (o .:? "type"))
-
-instance ToJSON SurveyRejection where
-        toJSON SurveyRejection'{..}
-          = object
-              (catMaybes
-                 [("explanation" .=) <$> _srExplanation,
-                  ("type" .=) <$> _srType])
-
---
--- /See:/ 'surveyResults' smart constructor.
-data SurveyResults =
-  SurveyResults'
-    { _srStatus      :: !(Maybe Text)
-    , _srSurveyURLId :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyResults' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'srStatus'
---
--- * 'srSurveyURLId'
-surveyResults
-    :: SurveyResults
-surveyResults = SurveyResults' {_srStatus = Nothing, _srSurveyURLId = Nothing}
-
-
-srStatus :: Lens' SurveyResults (Maybe Text)
-srStatus = lens _srStatus (\ s a -> s{_srStatus = a})
-
-srSurveyURLId :: Lens' SurveyResults (Maybe Text)
-srSurveyURLId
-  = lens _srSurveyURLId
-      (\ s a -> s{_srSurveyURLId = a})
-
-instance FromJSON SurveyResults where
-        parseJSON
-          = withObject "SurveyResults"
-              (\ o ->
-                 SurveyResults' <$>
-                   (o .:? "status") <*> (o .:? "surveyUrlId"))
-
-instance ToJSON SurveyResults where
-        toJSON SurveyResults'{..}
-          = object
-              (catMaybes
-                 [("status" .=) <$> _srStatus,
-                  ("surveyUrlId" .=) <$> _srSurveyURLId])
-
---
--- /See:/ 'surveysStartRequest' smart constructor.
-newtype SurveysStartRequest =
-  SurveysStartRequest'
-    { _ssrMaxCostPerResponseNanos :: Maybe (Textual Int64)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysStartRequest' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ssrMaxCostPerResponseNanos'
-surveysStartRequest
-    :: SurveysStartRequest
-surveysStartRequest =
-  SurveysStartRequest' {_ssrMaxCostPerResponseNanos = Nothing}
-
-
--- | Threshold to start a survey automically if the quoted prices is less
--- than or equal to this value. See Survey.Cost for more details.
-ssrMaxCostPerResponseNanos :: Lens' SurveysStartRequest (Maybe Int64)
-ssrMaxCostPerResponseNanos
-  = lens _ssrMaxCostPerResponseNanos
-      (\ s a -> s{_ssrMaxCostPerResponseNanos = a})
-      . mapping _Coerce
-
-instance FromJSON SurveysStartRequest where
-        parseJSON
-          = withObject "SurveysStartRequest"
-              (\ o ->
-                 SurveysStartRequest' <$>
-                   (o .:? "maxCostPerResponseNanos"))
-
-instance ToJSON SurveysStartRequest where
-        toJSON SurveysStartRequest'{..}
-          = object
-              (catMaybes
-                 [("maxCostPerResponseNanos" .=) <$>
-                    _ssrMaxCostPerResponseNanos])
-
---
--- /See:/ 'surveysDeleteResponse' smart constructor.
-newtype SurveysDeleteResponse =
-  SurveysDeleteResponse'
-    { _sdrRequestId :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysDeleteResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sdrRequestId'
-surveysDeleteResponse
-    :: SurveysDeleteResponse
-surveysDeleteResponse = SurveysDeleteResponse' {_sdrRequestId = Nothing}
-
-
--- | Unique request ID used for logging and debugging. Please include in any
--- error reporting or troubleshooting requests.
-sdrRequestId :: Lens' SurveysDeleteResponse (Maybe Text)
-sdrRequestId
-  = lens _sdrRequestId (\ s a -> s{_sdrRequestId = a})
-
-instance FromJSON SurveysDeleteResponse where
-        parseJSON
-          = withObject "SurveysDeleteResponse"
-              (\ o ->
-                 SurveysDeleteResponse' <$> (o .:? "requestId"))
-
-instance ToJSON SurveysDeleteResponse where
-        toJSON SurveysDeleteResponse'{..}
-          = object
-              (catMaybes [("requestId" .=) <$> _sdrRequestId])
-
---
--- /See:/ 'surveyQuestionImage' smart constructor.
-data SurveyQuestionImage =
-  SurveyQuestionImage'
-    { _sqiData    :: !(Maybe Bytes)
-    , _sqiURL     :: !(Maybe Text)
-    , _sqiAltText :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyQuestionImage' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sqiData'
---
--- * 'sqiURL'
---
--- * 'sqiAltText'
-surveyQuestionImage
-    :: SurveyQuestionImage
-surveyQuestionImage =
-  SurveyQuestionImage'
-    {_sqiData = Nothing, _sqiURL = Nothing, _sqiAltText = Nothing}
-
-
-sqiData :: Lens' SurveyQuestionImage (Maybe ByteString)
-sqiData
-  = lens _sqiData (\ s a -> s{_sqiData = a}) .
-      mapping _Bytes
-
-sqiURL :: Lens' SurveyQuestionImage (Maybe Text)
-sqiURL = lens _sqiURL (\ s a -> s{_sqiURL = a})
-
-sqiAltText :: Lens' SurveyQuestionImage (Maybe Text)
-sqiAltText
-  = lens _sqiAltText (\ s a -> s{_sqiAltText = a})
-
-instance FromJSON SurveyQuestionImage where
-        parseJSON
-          = withObject "SurveyQuestionImage"
-              (\ o ->
-                 SurveyQuestionImage' <$>
-                   (o .:? "data") <*> (o .:? "url") <*>
-                     (o .:? "altText"))
-
-instance ToJSON SurveyQuestionImage where
-        toJSON SurveyQuestionImage'{..}
-          = object
-              (catMaybes
-                 [("data" .=) <$> _sqiData, ("url" .=) <$> _sqiURL,
-                  ("altText" .=) <$> _sqiAltText])
-
---
--- /See:/ 'surveyAudience' smart constructor.
-data SurveyAudience =
-  SurveyAudience'
-    { _saCountry            :: !(Maybe Text)
-    , _saAges               :: !(Maybe [Text])
-    , _saLanguages          :: !(Maybe [Text])
-    , _saGender             :: !(Maybe Text)
-    , _saMobileAppPanelId   :: !(Maybe Text)
-    , _saCountrySubdivision :: !(Maybe Text)
-    , _saPopulationSource   :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyAudience' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'saCountry'
---
--- * 'saAges'
---
--- * 'saLanguages'
---
--- * 'saGender'
---
--- * 'saMobileAppPanelId'
---
--- * 'saCountrySubdivision'
---
--- * 'saPopulationSource'
-surveyAudience
-    :: SurveyAudience
-surveyAudience =
-  SurveyAudience'
-    { _saCountry = Nothing
-    , _saAges = Nothing
-    , _saLanguages = Nothing
-    , _saGender = Nothing
-    , _saMobileAppPanelId = Nothing
-    , _saCountrySubdivision = Nothing
-    , _saPopulationSource = Nothing
-    }
-
-
-saCountry :: Lens' SurveyAudience (Maybe Text)
-saCountry
-  = lens _saCountry (\ s a -> s{_saCountry = a})
-
-saAges :: Lens' SurveyAudience [Text]
-saAges
-  = lens _saAges (\ s a -> s{_saAges = a}) . _Default .
-      _Coerce
-
-saLanguages :: Lens' SurveyAudience [Text]
-saLanguages
-  = lens _saLanguages (\ s a -> s{_saLanguages = a}) .
-      _Default
-      . _Coerce
-
-saGender :: Lens' SurveyAudience (Maybe Text)
-saGender = lens _saGender (\ s a -> s{_saGender = a})
-
-saMobileAppPanelId :: Lens' SurveyAudience (Maybe Text)
-saMobileAppPanelId
-  = lens _saMobileAppPanelId
-      (\ s a -> s{_saMobileAppPanelId = a})
-
-saCountrySubdivision :: Lens' SurveyAudience (Maybe Text)
-saCountrySubdivision
-  = lens _saCountrySubdivision
-      (\ s a -> s{_saCountrySubdivision = a})
-
-saPopulationSource :: Lens' SurveyAudience (Maybe Text)
-saPopulationSource
-  = lens _saPopulationSource
-      (\ s a -> s{_saPopulationSource = a})
-
-instance FromJSON SurveyAudience where
-        parseJSON
-          = withObject "SurveyAudience"
-              (\ o ->
-                 SurveyAudience' <$>
-                   (o .:? "country") <*> (o .:? "ages" .!= mempty) <*>
-                     (o .:? "languages" .!= mempty)
-                     <*> (o .:? "gender")
-                     <*> (o .:? "mobileAppPanelId")
-                     <*> (o .:? "countrySubdivision")
-                     <*> (o .:? "populationSource"))
-
-instance ToJSON SurveyAudience where
-        toJSON SurveyAudience'{..}
-          = object
-              (catMaybes
-                 [("country" .=) <$> _saCountry,
-                  ("ages" .=) <$> _saAges,
-                  ("languages" .=) <$> _saLanguages,
-                  ("gender" .=) <$> _saGender,
-                  ("mobileAppPanelId" .=) <$> _saMobileAppPanelId,
-                  ("countrySubdivision" .=) <$> _saCountrySubdivision,
-                  ("populationSource" .=) <$> _saPopulationSource])
-
---
--- /See:/ 'surveyCost' smart constructor.
-data SurveyCost =
-  SurveyCost'
-    { _scCurrencyCode            :: !(Maybe Text)
-    , _scNanos                   :: !(Maybe (Textual Int64))
-    , _scMaxCostPerResponseNanos :: !(Maybe (Textual Int64))
-    , _scCostPerResponseNanos    :: !(Maybe (Textual Int64))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyCost' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'scCurrencyCode'
---
--- * 'scNanos'
---
--- * 'scMaxCostPerResponseNanos'
---
--- * 'scCostPerResponseNanos'
-surveyCost
-    :: SurveyCost
-surveyCost =
-  SurveyCost'
-    { _scCurrencyCode = Nothing
-    , _scNanos = Nothing
-    , _scMaxCostPerResponseNanos = Nothing
-    , _scCostPerResponseNanos = Nothing
-    }
-
-
-scCurrencyCode :: Lens' SurveyCost (Maybe Text)
-scCurrencyCode
-  = lens _scCurrencyCode
-      (\ s a -> s{_scCurrencyCode = a})
-
-scNanos :: Lens' SurveyCost (Maybe Int64)
-scNanos
-  = lens _scNanos (\ s a -> s{_scNanos = a}) .
-      mapping _Coerce
-
-scMaxCostPerResponseNanos :: Lens' SurveyCost (Maybe Int64)
-scMaxCostPerResponseNanos
-  = lens _scMaxCostPerResponseNanos
-      (\ s a -> s{_scMaxCostPerResponseNanos = a})
-      . mapping _Coerce
-
-scCostPerResponseNanos :: Lens' SurveyCost (Maybe Int64)
-scCostPerResponseNanos
-  = lens _scCostPerResponseNanos
-      (\ s a -> s{_scCostPerResponseNanos = a})
-      . mapping _Coerce
-
-instance FromJSON SurveyCost where
-        parseJSON
-          = withObject "SurveyCost"
-              (\ o ->
-                 SurveyCost' <$>
-                   (o .:? "currencyCode") <*> (o .:? "nanos") <*>
-                     (o .:? "maxCostPerResponseNanos")
-                     <*> (o .:? "costPerResponseNanos"))
-
-instance ToJSON SurveyCost where
-        toJSON SurveyCost'{..}
-          = object
-              (catMaybes
-                 [("currencyCode" .=) <$> _scCurrencyCode,
-                  ("nanos" .=) <$> _scNanos,
-                  ("maxCostPerResponseNanos" .=) <$>
-                    _scMaxCostPerResponseNanos,
-                  ("costPerResponseNanos" .=) <$>
-                    _scCostPerResponseNanos])
-
---
--- /See:/ 'surveyQuestion' smart constructor.
-data SurveyQuestion =
-  SurveyQuestion'
-    { _sqImages                   :: !(Maybe [SurveyQuestionImage])
-    , _sqAnswers                  :: !(Maybe [Text])
-    , _sqSingleLineResponse       :: !(Maybe Bool)
-    , _sqMustPickSuggestion       :: !(Maybe Bool)
-    , _sqSentimentText            :: !(Maybe Text)
-    , _sqThresholdAnswers         :: !(Maybe [Text])
-    , _sqHasOther                 :: !(Maybe Bool)
-    , _sqOpenTextSuggestions      :: !(Maybe [Text])
-    , _sqVideoId                  :: !(Maybe Text)
-    , _sqLastAnswerPositionPinned :: !(Maybe Bool)
-    , _sqAnswerOrder              :: !(Maybe Text)
-    , _sqOpenTextPlaceholder      :: !(Maybe Text)
-    , _sqType                     :: !(Maybe Text)
-    , _sqUnitOfMeasurementLabel   :: !(Maybe Text)
-    , _sqHighValueLabel           :: !(Maybe Text)
-    , _sqQuestion                 :: !(Maybe Text)
-    , _sqNumStars                 :: !(Maybe Text)
-    , _sqLowValueLabel            :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveyQuestion' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sqImages'
---
--- * 'sqAnswers'
---
--- * 'sqSingleLineResponse'
---
--- * 'sqMustPickSuggestion'
---
--- * 'sqSentimentText'
---
--- * 'sqThresholdAnswers'
---
--- * 'sqHasOther'
---
--- * 'sqOpenTextSuggestions'
---
--- * 'sqVideoId'
---
--- * 'sqLastAnswerPositionPinned'
---
--- * 'sqAnswerOrder'
---
--- * 'sqOpenTextPlaceholder'
---
--- * 'sqType'
---
--- * 'sqUnitOfMeasurementLabel'
---
--- * 'sqHighValueLabel'
---
--- * 'sqQuestion'
---
--- * 'sqNumStars'
---
--- * 'sqLowValueLabel'
-surveyQuestion
-    :: SurveyQuestion
-surveyQuestion =
-  SurveyQuestion'
-    { _sqImages = Nothing
-    , _sqAnswers = Nothing
-    , _sqSingleLineResponse = Nothing
-    , _sqMustPickSuggestion = Nothing
-    , _sqSentimentText = Nothing
-    , _sqThresholdAnswers = Nothing
-    , _sqHasOther = Nothing
-    , _sqOpenTextSuggestions = Nothing
-    , _sqVideoId = Nothing
-    , _sqLastAnswerPositionPinned = Nothing
-    , _sqAnswerOrder = Nothing
-    , _sqOpenTextPlaceholder = Nothing
-    , _sqType = Nothing
-    , _sqUnitOfMeasurementLabel = Nothing
-    , _sqHighValueLabel = Nothing
-    , _sqQuestion = Nothing
-    , _sqNumStars = Nothing
-    , _sqLowValueLabel = Nothing
-    }
-
-
-sqImages :: Lens' SurveyQuestion [SurveyQuestionImage]
-sqImages
-  = lens _sqImages (\ s a -> s{_sqImages = a}) .
-      _Default
-      . _Coerce
-
-sqAnswers :: Lens' SurveyQuestion [Text]
-sqAnswers
-  = lens _sqAnswers (\ s a -> s{_sqAnswers = a}) .
-      _Default
-      . _Coerce
-
-sqSingleLineResponse :: Lens' SurveyQuestion (Maybe Bool)
-sqSingleLineResponse
-  = lens _sqSingleLineResponse
-      (\ s a -> s{_sqSingleLineResponse = a})
-
-sqMustPickSuggestion :: Lens' SurveyQuestion (Maybe Bool)
-sqMustPickSuggestion
-  = lens _sqMustPickSuggestion
-      (\ s a -> s{_sqMustPickSuggestion = a})
-
-sqSentimentText :: Lens' SurveyQuestion (Maybe Text)
-sqSentimentText
-  = lens _sqSentimentText
-      (\ s a -> s{_sqSentimentText = a})
-
-sqThresholdAnswers :: Lens' SurveyQuestion [Text]
-sqThresholdAnswers
-  = lens _sqThresholdAnswers
-      (\ s a -> s{_sqThresholdAnswers = a})
-      . _Default
-      . _Coerce
-
-sqHasOther :: Lens' SurveyQuestion (Maybe Bool)
-sqHasOther
-  = lens _sqHasOther (\ s a -> s{_sqHasOther = a})
-
-sqOpenTextSuggestions :: Lens' SurveyQuestion [Text]
-sqOpenTextSuggestions
-  = lens _sqOpenTextSuggestions
-      (\ s a -> s{_sqOpenTextSuggestions = a})
-      . _Default
-      . _Coerce
-
-sqVideoId :: Lens' SurveyQuestion (Maybe Text)
-sqVideoId
-  = lens _sqVideoId (\ s a -> s{_sqVideoId = a})
-
-sqLastAnswerPositionPinned :: Lens' SurveyQuestion (Maybe Bool)
-sqLastAnswerPositionPinned
-  = lens _sqLastAnswerPositionPinned
-      (\ s a -> s{_sqLastAnswerPositionPinned = a})
-
-sqAnswerOrder :: Lens' SurveyQuestion (Maybe Text)
-sqAnswerOrder
-  = lens _sqAnswerOrder
-      (\ s a -> s{_sqAnswerOrder = a})
-
-sqOpenTextPlaceholder :: Lens' SurveyQuestion (Maybe Text)
-sqOpenTextPlaceholder
-  = lens _sqOpenTextPlaceholder
-      (\ s a -> s{_sqOpenTextPlaceholder = a})
-
-sqType :: Lens' SurveyQuestion (Maybe Text)
-sqType = lens _sqType (\ s a -> s{_sqType = a})
-
-sqUnitOfMeasurementLabel :: Lens' SurveyQuestion (Maybe Text)
-sqUnitOfMeasurementLabel
-  = lens _sqUnitOfMeasurementLabel
-      (\ s a -> s{_sqUnitOfMeasurementLabel = a})
-
-sqHighValueLabel :: Lens' SurveyQuestion (Maybe Text)
-sqHighValueLabel
-  = lens _sqHighValueLabel
-      (\ s a -> s{_sqHighValueLabel = a})
-
-sqQuestion :: Lens' SurveyQuestion (Maybe Text)
-sqQuestion
-  = lens _sqQuestion (\ s a -> s{_sqQuestion = a})
-
-sqNumStars :: Lens' SurveyQuestion (Maybe Text)
-sqNumStars
-  = lens _sqNumStars (\ s a -> s{_sqNumStars = a})
-
-sqLowValueLabel :: Lens' SurveyQuestion (Maybe Text)
-sqLowValueLabel
-  = lens _sqLowValueLabel
-      (\ s a -> s{_sqLowValueLabel = a})
-
-instance FromJSON SurveyQuestion where
-        parseJSON
-          = withObject "SurveyQuestion"
-              (\ o ->
-                 SurveyQuestion' <$>
-                   (o .:? "images" .!= mempty) <*>
-                     (o .:? "answers" .!= mempty)
-                     <*> (o .:? "singleLineResponse")
-                     <*> (o .:? "mustPickSuggestion")
-                     <*> (o .:? "sentimentText")
-                     <*> (o .:? "thresholdAnswers" .!= mempty)
-                     <*> (o .:? "hasOther")
-                     <*> (o .:? "openTextSuggestions" .!= mempty)
-                     <*> (o .:? "videoId")
-                     <*> (o .:? "lastAnswerPositionPinned")
-                     <*> (o .:? "answerOrder")
-                     <*> (o .:? "openTextPlaceholder")
-                     <*> (o .:? "type")
-                     <*> (o .:? "unitOfMeasurementLabel")
-                     <*> (o .:? "highValueLabel")
-                     <*> (o .:? "question")
-                     <*> (o .:? "numStars")
-                     <*> (o .:? "lowValueLabel"))
-
-instance ToJSON SurveyQuestion where
-        toJSON SurveyQuestion'{..}
-          = object
-              (catMaybes
-                 [("images" .=) <$> _sqImages,
-                  ("answers" .=) <$> _sqAnswers,
-                  ("singleLineResponse" .=) <$> _sqSingleLineResponse,
-                  ("mustPickSuggestion" .=) <$> _sqMustPickSuggestion,
-                  ("sentimentText" .=) <$> _sqSentimentText,
-                  ("thresholdAnswers" .=) <$> _sqThresholdAnswers,
-                  ("hasOther" .=) <$> _sqHasOther,
-                  ("openTextSuggestions" .=) <$>
-                    _sqOpenTextSuggestions,
-                  ("videoId" .=) <$> _sqVideoId,
-                  ("lastAnswerPositionPinned" .=) <$>
-                    _sqLastAnswerPositionPinned,
-                  ("answerOrder" .=) <$> _sqAnswerOrder,
-                  ("openTextPlaceholder" .=) <$>
-                    _sqOpenTextPlaceholder,
-                  ("type" .=) <$> _sqType,
-                  ("unitOfMeasurementLabel" .=) <$>
-                    _sqUnitOfMeasurementLabel,
-                  ("highValueLabel" .=) <$> _sqHighValueLabel,
-                  ("question" .=) <$> _sqQuestion,
-                  ("numStars" .=) <$> _sqNumStars,
-                  ("lowValueLabel" .=) <$> _sqLowValueLabel])
diff --git a/gen/Network/Google/ConsumerSurveys/Types/Sum.hs b/gen/Network/Google/ConsumerSurveys/Types/Sum.hs
deleted file mode 100644
--- a/gen/Network/Google/ConsumerSurveys/Types/Sum.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE LambdaCase         #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.ConsumerSurveys.Types.Sum
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.ConsumerSurveys.Types.Sum where
-
-import           Network.Google.Prelude hiding (Bytes)
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Get.hs b/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Get.hs
+++ /dev/null
@@ -1,91 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.MobileApppanels.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves a MobileAppPanel that is available to the authenticated user.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.get@.
-module Network.Google.Resource.ConsumerSurveys.MobileApppanels.Get
-    (
-    -- * REST Resource
-      MobileApppanelsGetResource
-
-    -- * Creating a Request
-    , mobileApppanelsGet
-    , MobileApppanelsGet
-
-    -- * Request Lenses
-    , magPanelId
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.mobileapppanels.get@ method which the
--- 'MobileApppanelsGet' request conforms to.
-type MobileApppanelsGetResource =
-     "consumersurveys" :>
-       "v2" :>
-         "mobileAppPanels" :>
-           Capture "panelId" Text :>
-             QueryParam "alt" AltJSON :>
-               Get '[JSON] MobileAppPanel
-
--- | Retrieves a MobileAppPanel that is available to the authenticated user.
---
--- /See:/ 'mobileApppanelsGet' smart constructor.
-newtype MobileApppanelsGet =
-  MobileApppanelsGet'
-    { _magPanelId :: Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileApppanelsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'magPanelId'
-mobileApppanelsGet
-    :: Text -- ^ 'magPanelId'
-    -> MobileApppanelsGet
-mobileApppanelsGet pMagPanelId_ =
-  MobileApppanelsGet' {_magPanelId = pMagPanelId_}
-
-
--- | External URL ID for the panel.
-magPanelId :: Lens' MobileApppanelsGet Text
-magPanelId
-  = lens _magPanelId (\ s a -> s{_magPanelId = a})
-
-instance GoogleRequest MobileApppanelsGet where
-        type Rs MobileApppanelsGet = MobileAppPanel
-        type Scopes MobileApppanelsGet =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/consumersurveys.readonly",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient MobileApppanelsGet'{..}
-          = go _magPanelId (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy MobileApppanelsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/List.hs b/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/List.hs
+++ /dev/null
@@ -1,113 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.MobileApppanels.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists the MobileAppPanels available to the authenticated user.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.list@.
-module Network.Google.Resource.ConsumerSurveys.MobileApppanels.List
-    (
-    -- * REST Resource
-      MobileApppanelsListResource
-
-    -- * Creating a Request
-    , mobileApppanelsList
-    , MobileApppanelsList
-
-    -- * Request Lenses
-    , malToken
-    , malStartIndex
-    , malMaxResults
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.mobileapppanels.list@ method which the
--- 'MobileApppanelsList' request conforms to.
-type MobileApppanelsListResource =
-     "consumersurveys" :>
-       "v2" :>
-         "mobileAppPanels" :>
-           QueryParam "token" Text :>
-             QueryParam "startIndex" (Textual Word32) :>
-               QueryParam "maxResults" (Textual Word32) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] MobileAppPanelsListResponse
-
--- | Lists the MobileAppPanels available to the authenticated user.
---
--- /See:/ 'mobileApppanelsList' smart constructor.
-data MobileApppanelsList =
-  MobileApppanelsList'
-    { _malToken      :: !(Maybe Text)
-    , _malStartIndex :: !(Maybe (Textual Word32))
-    , _malMaxResults :: !(Maybe (Textual Word32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileApppanelsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'malToken'
---
--- * 'malStartIndex'
---
--- * 'malMaxResults'
-mobileApppanelsList
-    :: MobileApppanelsList
-mobileApppanelsList =
-  MobileApppanelsList'
-    {_malToken = Nothing, _malStartIndex = Nothing, _malMaxResults = Nothing}
-
-
-malToken :: Lens' MobileApppanelsList (Maybe Text)
-malToken = lens _malToken (\ s a -> s{_malToken = a})
-
-malStartIndex :: Lens' MobileApppanelsList (Maybe Word32)
-malStartIndex
-  = lens _malStartIndex
-      (\ s a -> s{_malStartIndex = a})
-      . mapping _Coerce
-
-malMaxResults :: Lens' MobileApppanelsList (Maybe Word32)
-malMaxResults
-  = lens _malMaxResults
-      (\ s a -> s{_malMaxResults = a})
-      . mapping _Coerce
-
-instance GoogleRequest MobileApppanelsList where
-        type Rs MobileApppanelsList =
-             MobileAppPanelsListResponse
-        type Scopes MobileApppanelsList =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/consumersurveys.readonly",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient MobileApppanelsList'{..}
-          = go _malToken _malStartIndex _malMaxResults
-              (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy MobileApppanelsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Update.hs b/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/MobileApppanels/Update.hs
+++ /dev/null
@@ -1,104 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.MobileApppanels.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates a MobileAppPanel. Currently the only property that can be
--- updated is the owners property.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.mobileapppanels.update@.
-module Network.Google.Resource.ConsumerSurveys.MobileApppanels.Update
-    (
-    -- * REST Resource
-      MobileApppanelsUpdateResource
-
-    -- * Creating a Request
-    , mobileApppanelsUpdate
-    , MobileApppanelsUpdate
-
-    -- * Request Lenses
-    , mauPayload
-    , mauPanelId
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.mobileapppanels.update@ method which the
--- 'MobileApppanelsUpdate' request conforms to.
-type MobileApppanelsUpdateResource =
-     "consumersurveys" :>
-       "v2" :>
-         "mobileAppPanels" :>
-           Capture "panelId" Text :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] MobileAppPanel :>
-                 Put '[JSON] MobileAppPanel
-
--- | Updates a MobileAppPanel. Currently the only property that can be
--- updated is the owners property.
---
--- /See:/ 'mobileApppanelsUpdate' smart constructor.
-data MobileApppanelsUpdate =
-  MobileApppanelsUpdate'
-    { _mauPayload :: !MobileAppPanel
-    , _mauPanelId :: !Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'MobileApppanelsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'mauPayload'
---
--- * 'mauPanelId'
-mobileApppanelsUpdate
-    :: MobileAppPanel -- ^ 'mauPayload'
-    -> Text -- ^ 'mauPanelId'
-    -> MobileApppanelsUpdate
-mobileApppanelsUpdate pMauPayload_ pMauPanelId_ =
-  MobileApppanelsUpdate'
-    {_mauPayload = pMauPayload_, _mauPanelId = pMauPanelId_}
-
-
--- | Multipart request metadata.
-mauPayload :: Lens' MobileApppanelsUpdate MobileAppPanel
-mauPayload
-  = lens _mauPayload (\ s a -> s{_mauPayload = a})
-
--- | External URL ID for the panel.
-mauPanelId :: Lens' MobileApppanelsUpdate Text
-mauPanelId
-  = lens _mauPanelId (\ s a -> s{_mauPanelId = a})
-
-instance GoogleRequest MobileApppanelsUpdate where
-        type Rs MobileApppanelsUpdate = MobileAppPanel
-        type Scopes MobileApppanelsUpdate =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient MobileApppanelsUpdate'{..}
-          = go _mauPanelId (Just AltJSON) _mauPayload
-              consumerSurveysService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy MobileApppanelsUpdateResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Results/Get.hs b/gen/Network/Google/Resource/ConsumerSurveys/Results/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Results/Get.hs
+++ /dev/null
@@ -1,127 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Results.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves any survey results that have been produced so far. Results are
--- formatted as an Excel file. You must add \"?alt=media\" to the URL as an
--- argument to get results.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.results.get@.
-module Network.Google.Resource.ConsumerSurveys.Results.Get
-    (
-    -- * REST Resource
-      ResultsGetResource
-
-    -- * Creating a Request
-    , resultsGet
-    , ResultsGet
-
-    -- * Request Lenses
-    , rgSurveyURLId
-    , rgPayload
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.results.get@ method which the
--- 'ResultsGet' request conforms to.
-type ResultsGetResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "surveyUrlId" Text :>
-             "results" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] ResultsGetRequest :>
-                   Get '[JSON] SurveyResults
-       :<|>
-       "consumersurveys" :>
-         "v2" :>
-           "surveys" :>
-             Capture "surveyUrlId" Text :>
-               "results" :>
-                 QueryParam "alt" AltMedia :>
-                   Get '[OctetStream] Stream
-
--- | Retrieves any survey results that have been produced so far. Results are
--- formatted as an Excel file. You must add \"?alt=media\" to the URL as an
--- argument to get results.
---
--- /See:/ 'resultsGet' smart constructor.
-data ResultsGet =
-  ResultsGet'
-    { _rgSurveyURLId :: !Text
-    , _rgPayload     :: !ResultsGetRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ResultsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'rgSurveyURLId'
---
--- * 'rgPayload'
-resultsGet
-    :: Text -- ^ 'rgSurveyURLId'
-    -> ResultsGetRequest -- ^ 'rgPayload'
-    -> ResultsGet
-resultsGet pRgSurveyURLId_ pRgPayload_ =
-  ResultsGet' {_rgSurveyURLId = pRgSurveyURLId_, _rgPayload = pRgPayload_}
-
-
--- | External URL ID for the survey.
-rgSurveyURLId :: Lens' ResultsGet Text
-rgSurveyURLId
-  = lens _rgSurveyURLId
-      (\ s a -> s{_rgSurveyURLId = a})
-
--- | Multipart request metadata.
-rgPayload :: Lens' ResultsGet ResultsGetRequest
-rgPayload
-  = lens _rgPayload (\ s a -> s{_rgPayload = a})
-
-instance GoogleRequest ResultsGet where
-        type Rs ResultsGet = SurveyResults
-        type Scopes ResultsGet =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/consumersurveys.readonly",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient ResultsGet'{..}
-          = go _rgSurveyURLId (Just AltJSON) _rgPayload
-              consumerSurveysService
-          where go :<|> _
-                  = buildClient (Proxy :: Proxy ResultsGetResource)
-                      mempty
-
-instance GoogleRequest (MediaDownload ResultsGet)
-         where
-        type Rs (MediaDownload ResultsGet) = Stream
-        type Scopes (MediaDownload ResultsGet) =
-             Scopes ResultsGet
-        requestClient (MediaDownload ResultsGet'{..})
-          = go _rgSurveyURLId (Just AltMedia)
-              consumerSurveysService
-          where _ :<|> go
-                  = buildClient (Proxy :: Proxy ResultsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Delete.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Delete.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Delete.hs
+++ /dev/null
@@ -1,90 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Delete
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Removes a survey from view in all user GET requests.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.delete@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Delete
-    (
-    -- * REST Resource
-      SurveysDeleteResource
-
-    -- * Creating a Request
-    , surveysDelete
-    , SurveysDelete
-
-    -- * Request Lenses
-    , sdSurveyURLId
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.delete@ method which the
--- 'SurveysDelete' request conforms to.
-type SurveysDeleteResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "surveyUrlId" Text :>
-             QueryParam "alt" AltJSON :>
-               Delete '[JSON] SurveysDeleteResponse
-
--- | Removes a survey from view in all user GET requests.
---
--- /See:/ 'surveysDelete' smart constructor.
-newtype SurveysDelete =
-  SurveysDelete'
-    { _sdSurveyURLId :: Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysDelete' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sdSurveyURLId'
-surveysDelete
-    :: Text -- ^ 'sdSurveyURLId'
-    -> SurveysDelete
-surveysDelete pSdSurveyURLId_ =
-  SurveysDelete' {_sdSurveyURLId = pSdSurveyURLId_}
-
-
--- | External URL ID for the survey.
-sdSurveyURLId :: Lens' SurveysDelete Text
-sdSurveyURLId
-  = lens _sdSurveyURLId
-      (\ s a -> s{_sdSurveyURLId = a})
-
-instance GoogleRequest SurveysDelete where
-        type Rs SurveysDelete = SurveysDeleteResponse
-        type Scopes SurveysDelete =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysDelete'{..}
-          = go _sdSurveyURLId (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysDeleteResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Get.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Get.hs
+++ /dev/null
@@ -1,89 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Retrieves information about the specified survey.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.get@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Get
-    (
-    -- * REST Resource
-      SurveysGetResource
-
-    -- * Creating a Request
-    , surveysGet
-    , SurveysGet
-
-    -- * Request Lenses
-    , sgSurveyURLId
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.get@ method which the
--- 'SurveysGet' request conforms to.
-type SurveysGetResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "surveyUrlId" Text :>
-             QueryParam "alt" AltJSON :> Get '[JSON] Survey
-
--- | Retrieves information about the specified survey.
---
--- /See:/ 'surveysGet' smart constructor.
-newtype SurveysGet =
-  SurveysGet'
-    { _sgSurveyURLId :: Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sgSurveyURLId'
-surveysGet
-    :: Text -- ^ 'sgSurveyURLId'
-    -> SurveysGet
-surveysGet pSgSurveyURLId_ = SurveysGet' {_sgSurveyURLId = pSgSurveyURLId_}
-
-
--- | External URL ID for the survey.
-sgSurveyURLId :: Lens' SurveysGet Text
-sgSurveyURLId
-  = lens _sgSurveyURLId
-      (\ s a -> s{_sgSurveyURLId = a})
-
-instance GoogleRequest SurveysGet where
-        type Rs SurveysGet = Survey
-        type Scopes SurveysGet =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/consumersurveys.readonly",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysGet'{..}
-          = go _sgSurveyURLId (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Insert.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Insert.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Insert.hs
+++ /dev/null
@@ -1,86 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Insert
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Creates a survey.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.insert@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Insert
-    (
-    -- * REST Resource
-      SurveysInsertResource
-
-    -- * Creating a Request
-    , surveysInsert
-    , SurveysInsert
-
-    -- * Request Lenses
-    , siPayload
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.insert@ method which the
--- 'SurveysInsert' request conforms to.
-type SurveysInsertResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           QueryParam "alt" AltJSON :>
-             ReqBody '[JSON] Survey :> Post '[JSON] Survey
-
--- | Creates a survey.
---
--- /See:/ 'surveysInsert' smart constructor.
-newtype SurveysInsert =
-  SurveysInsert'
-    { _siPayload :: Survey
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysInsert' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'siPayload'
-surveysInsert
-    :: Survey -- ^ 'siPayload'
-    -> SurveysInsert
-surveysInsert pSiPayload_ = SurveysInsert' {_siPayload = pSiPayload_}
-
-
--- | Multipart request metadata.
-siPayload :: Lens' SurveysInsert Survey
-siPayload
-  = lens _siPayload (\ s a -> s{_siPayload = a})
-
-instance GoogleRequest SurveysInsert where
-        type Rs SurveysInsert = Survey
-        type Scopes SurveysInsert =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysInsert'{..}
-          = go (Just AltJSON) _siPayload consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysInsertResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/List.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/List.hs
+++ /dev/null
@@ -1,109 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists the surveys owned by the authenticated user.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.list@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.List
-    (
-    -- * REST Resource
-      SurveysListResource
-
-    -- * Creating a Request
-    , surveysList
-    , SurveysList
-
-    -- * Request Lenses
-    , slToken
-    , slStartIndex
-    , slMaxResults
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.list@ method which the
--- 'SurveysList' request conforms to.
-type SurveysListResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           QueryParam "token" Text :>
-             QueryParam "startIndex" (Textual Word32) :>
-               QueryParam "maxResults" (Textual Word32) :>
-                 QueryParam "alt" AltJSON :>
-                   Get '[JSON] SurveysListResponse
-
--- | Lists the surveys owned by the authenticated user.
---
--- /See:/ 'surveysList' smart constructor.
-data SurveysList =
-  SurveysList'
-    { _slToken      :: !(Maybe Text)
-    , _slStartIndex :: !(Maybe (Textual Word32))
-    , _slMaxResults :: !(Maybe (Textual Word32))
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'slToken'
---
--- * 'slStartIndex'
---
--- * 'slMaxResults'
-surveysList
-    :: SurveysList
-surveysList =
-  SurveysList'
-    {_slToken = Nothing, _slStartIndex = Nothing, _slMaxResults = Nothing}
-
-
-slToken :: Lens' SurveysList (Maybe Text)
-slToken = lens _slToken (\ s a -> s{_slToken = a})
-
-slStartIndex :: Lens' SurveysList (Maybe Word32)
-slStartIndex
-  = lens _slStartIndex (\ s a -> s{_slStartIndex = a})
-      . mapping _Coerce
-
-slMaxResults :: Lens' SurveysList (Maybe Word32)
-slMaxResults
-  = lens _slMaxResults (\ s a -> s{_slMaxResults = a})
-      . mapping _Coerce
-
-instance GoogleRequest SurveysList where
-        type Rs SurveysList = SurveysListResponse
-        type Scopes SurveysList =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/consumersurveys.readonly",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysList'{..}
-          = go _slToken _slStartIndex _slMaxResults
-              (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Start.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Start.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Start.hs
+++ /dev/null
@@ -1,100 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Start
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Begins running a survey.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.start@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Start
-    (
-    -- * REST Resource
-      SurveysStartResource
-
-    -- * Creating a Request
-    , surveysStart
-    , SurveysStart
-
-    -- * Request Lenses
-    , ssResourceId
-    , ssPayload
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.start@ method which the
--- 'SurveysStart' request conforms to.
-type SurveysStartResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "resourceId" Text :>
-             "start" :>
-               QueryParam "alt" AltJSON :>
-                 ReqBody '[JSON] SurveysStartRequest :>
-                   Post '[JSON] SurveysStartResponse
-
--- | Begins running a survey.
---
--- /See:/ 'surveysStart' smart constructor.
-data SurveysStart =
-  SurveysStart'
-    { _ssResourceId :: !Text
-    , _ssPayload    :: !SurveysStartRequest
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysStart' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ssResourceId'
---
--- * 'ssPayload'
-surveysStart
-    :: Text -- ^ 'ssResourceId'
-    -> SurveysStartRequest -- ^ 'ssPayload'
-    -> SurveysStart
-surveysStart pSsResourceId_ pSsPayload_ =
-  SurveysStart' {_ssResourceId = pSsResourceId_, _ssPayload = pSsPayload_}
-
-
-ssResourceId :: Lens' SurveysStart Text
-ssResourceId
-  = lens _ssResourceId (\ s a -> s{_ssResourceId = a})
-
--- | Multipart request metadata.
-ssPayload :: Lens' SurveysStart SurveysStartRequest
-ssPayload
-  = lens _ssPayload (\ s a -> s{_ssPayload = a})
-
-instance GoogleRequest SurveysStart where
-        type Rs SurveysStart = SurveysStartResponse
-        type Scopes SurveysStart =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysStart'{..}
-          = go _ssResourceId (Just AltJSON) _ssPayload
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysStartResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Stop.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Stop.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Stop.hs
+++ /dev/null
@@ -1,88 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Stop
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Stops a running survey.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.stop@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Stop
-    (
-    -- * REST Resource
-      SurveysStopResource
-
-    -- * Creating a Request
-    , surveysStop
-    , SurveysStop
-
-    -- * Request Lenses
-    , sResourceId
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.stop@ method which the
--- 'SurveysStop' request conforms to.
-type SurveysStopResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "resourceId" Text :>
-             "stop" :>
-               QueryParam "alt" AltJSON :>
-                 Post '[JSON] SurveysStopResponse
-
--- | Stops a running survey.
---
--- /See:/ 'surveysStop' smart constructor.
-newtype SurveysStop =
-  SurveysStop'
-    { _sResourceId :: Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysStop' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'sResourceId'
-surveysStop
-    :: Text -- ^ 'sResourceId'
-    -> SurveysStop
-surveysStop pSResourceId_ = SurveysStop' {_sResourceId = pSResourceId_}
-
-
-sResourceId :: Lens' SurveysStop Text
-sResourceId
-  = lens _sResourceId (\ s a -> s{_sResourceId = a})
-
-instance GoogleRequest SurveysStop where
-        type Rs SurveysStop = SurveysStopResponse
-        type Scopes SurveysStop =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysStop'{..}
-          = go _sResourceId (Just AltJSON)
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysStopResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Update.hs b/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/ConsumerSurveys/Surveys/Update.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.ConsumerSurveys.Surveys.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Updates a survey. Currently the only property that can be updated is the
--- owners property.
---
--- /See:/ <https://developers.google.com/surveys/ Consumer Surveys API Reference> for @consumersurveys.surveys.update@.
-module Network.Google.Resource.ConsumerSurveys.Surveys.Update
-    (
-    -- * REST Resource
-      SurveysUpdateResource
-
-    -- * Creating a Request
-    , surveysUpdate
-    , SurveysUpdate
-
-    -- * Request Lenses
-    , suSurveyURLId
-    , suPayload
-    ) where
-
-import           Network.Google.ConsumerSurveys.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @consumersurveys.surveys.update@ method which the
--- 'SurveysUpdate' request conforms to.
-type SurveysUpdateResource =
-     "consumersurveys" :>
-       "v2" :>
-         "surveys" :>
-           Capture "surveyUrlId" Text :>
-             QueryParam "alt" AltJSON :>
-               ReqBody '[JSON] Survey :> Put '[JSON] Survey
-
--- | Updates a survey. Currently the only property that can be updated is the
--- owners property.
---
--- /See:/ 'surveysUpdate' smart constructor.
-data SurveysUpdate =
-  SurveysUpdate'
-    { _suSurveyURLId :: !Text
-    , _suPayload     :: !Survey
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SurveysUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'suSurveyURLId'
---
--- * 'suPayload'
-surveysUpdate
-    :: Text -- ^ 'suSurveyURLId'
-    -> Survey -- ^ 'suPayload'
-    -> SurveysUpdate
-surveysUpdate pSuSurveyURLId_ pSuPayload_ =
-  SurveysUpdate' {_suSurveyURLId = pSuSurveyURLId_, _suPayload = pSuPayload_}
-
-
--- | External URL ID for the survey.
-suSurveyURLId :: Lens' SurveysUpdate Text
-suSurveyURLId
-  = lens _suSurveyURLId
-      (\ s a -> s{_suSurveyURLId = a})
-
--- | Multipart request metadata.
-suPayload :: Lens' SurveysUpdate Survey
-suPayload
-  = lens _suPayload (\ s a -> s{_suPayload = a})
-
-instance GoogleRequest SurveysUpdate where
-        type Rs SurveysUpdate = Survey
-        type Scopes SurveysUpdate =
-             '["https://www.googleapis.com/auth/consumersurveys",
-               "https://www.googleapis.com/auth/userinfo.email"]
-        requestClient SurveysUpdate'{..}
-          = go _suSurveyURLId (Just AltJSON) _suPayload
-              consumerSurveysService
-          where go
-                  = buildClient (Proxy :: Proxy SurveysUpdateResource)
-                      mempty
diff --git a/gogol-consumersurveys.cabal b/gogol-consumersurveys.cabal
--- a/gogol-consumersurveys.cabal
+++ b/gogol-consumersurveys.cabal
@@ -1,58 +1,71 @@
-name:                  gogol-consumersurveys
-version:               0.5.0
-synopsis:              Google Consumer Surveys SDK.
-homepage:              https://github.com/brendanhay/gogol
-bug-reports:           https://github.com/brendanhay/gogol/issues
-license:               OtherLicense
-license-file:          LICENSE
-author:                Brendan Hay
-maintainer:            Brendan Hay <brendan.g.hay@gmail.com>
-copyright:             Copyright (c) 2015-2016 Brendan Hay
-category:              Network, Google, Cloud
-build-type:            Simple
-cabal-version:         >= 1.10
-extra-source-files:    README.md src/.gitkeep
+cabal-version:      2.2
+name:               gogol-consumersurveys
+version:            1.0.0
+synopsis:           Google Consumer Surveys SDK.
+homepage:           https://github.com/brendanhay/gogol
+bug-reports:        https://github.com/brendanhay/gogol/issues
+license:            MPL-2.0
+license-file:       LICENSE
+author:             Brendan Hay
+maintainer:
+  Brendan Hay <brendan.g.hay+gogol@gmail.com>, Toni Cebrián <toni@tonicebrian.com>
 
+copyright:          Copyright (c) 2015-2025 Brendan Hay
+category:           Google
+build-type:         Simple
+extra-source-files:
+  README.md
+  src/.gitkeep
+
 description:
-    Creates and conducts surveys, lists the surveys that an authenticated
-    user owns, and retrieves survey results and information about specified
-    surveys.
-    .
-    /Warning:/ This is an experimental prototype/preview release which is still
-    under exploratory development and not intended for public use, caveat emptor!
-    .
-    This library is compatible with version @v2@
-    of the API.
+  Creates and conducts surveys, lists the surveys that an authenticated user owns, and retrieves survey results and information about specified surveys.
+  .
+  /Warning:/ This is an experimental prototype/preview release which is still
+  under exploratory development and not intended for public use, caveat emptor!
+  .
+  This library is compatible with version @v2@
+  of the API.
 
 source-repository head
-    type:     git
-    location: git://github.com/brendanhay/gogol.git
+  type:     git
+  location: git://github.com/brendanhay/gogol.git
+  subdir:   gogol-consumersurveys
 
+flag field-selectors
+  description:
+    If record field selectors should be enabled. Disabling this requires GHC >=9.2 and the NoFieldSelectors extension.
+
+  default:     False
+  manual:      True
+
 library
-    default-language:  Haskell2010
-    hs-source-dirs:    src gen
+  default-language: GHC2021
+  hs-source-dirs:   src gen
+  ghc-options:
+    -Wall -fwarn-incomplete-uni-patterns
+    -fwarn-incomplete-record-updates -funbox-strict-fields
+    -fwarn-unused-packages
 
-    ghc-options:       -Wall
+  if (!flag(field-selectors) && impl(ghc >=9.2))
+    default-extensions: NoFieldSelectors
 
-    exposed-modules:
-          Network.Google.ConsumerSurveys
-        , Network.Google.ConsumerSurveys.Types
-        , Network.Google.Resource.ConsumerSurveys.MobileApppanels.Get
-        , Network.Google.Resource.ConsumerSurveys.MobileApppanels.List
-        , Network.Google.Resource.ConsumerSurveys.MobileApppanels.Update
-        , Network.Google.Resource.ConsumerSurveys.Results.Get
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Delete
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Get
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Insert
-        , Network.Google.Resource.ConsumerSurveys.Surveys.List
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Start
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Stop
-        , Network.Google.Resource.ConsumerSurveys.Surveys.Update
+  exposed-modules:
+    Gogol.ConsumerSurveys
+    Gogol.ConsumerSurveys.Mobileapppanels.Get
+    Gogol.ConsumerSurveys.Mobileapppanels.List
+    Gogol.ConsumerSurveys.Mobileapppanels.Update
+    Gogol.ConsumerSurveys.Results.Get
+    Gogol.ConsumerSurveys.Surveys.Delete
+    Gogol.ConsumerSurveys.Surveys.Get
+    Gogol.ConsumerSurveys.Surveys.Insert
+    Gogol.ConsumerSurveys.Surveys.List
+    Gogol.ConsumerSurveys.Surveys.Start
+    Gogol.ConsumerSurveys.Surveys.Stop
+    Gogol.ConsumerSurveys.Surveys.Update
+    Gogol.ConsumerSurveys.Types
 
-    other-modules:
-          Network.Google.ConsumerSurveys.Types.Product
-        , Network.Google.ConsumerSurveys.Types.Sum
+  other-modules:
+    Gogol.ConsumerSurveys.Internal.Product
+    Gogol.ConsumerSurveys.Internal.Sum
 
-    build-depends:
-          gogol-core == 0.5.0.*
-        , base       >= 4.7 && < 5
+  build-depends:    gogol-core ^>=1.0.0
